Here is the patch:
--- D:/Tarball/gcc49s/libgcc/config.host.bak Thu Mar 27 22:40:31 2014 +++ D:/Tarball/gcc49s/libgcc/config.host Sun Sep 28 14:24:20 2014 @@ -646,8 +646,20 @@ if test x$enable_sjlj_exceptions = xyes; then tmake_eh_file="i386/t-sjlj-eh" else - tmake_eh_file="i386/t-dw2-eh" - md_unwind_header=i386/w32-unwind.h + case ${host} in + i[34567]86-w64-mingw*) + if [ "${enable_multilib}" = yes ]; then + tmake_eh_file="i386/t-seh-eh" + else + tmake_eh_file="i386/t-dw2-eh" + md_unwind_header=i386/w32-unwind.h + fi + ;; + i[34567]86-pc-mingw*) + tmake_eh_file="i386/t-dw2-eh" + md_unwind_header=i386/w32-unwind.h + ;; + esac fi # Shared libgcc DLL install dir depends on cross/native build. if test x${build} = x${host} ; then
Might be a bit ugly but still make sense and works! Overall that's just a naming/convention mess. With the patch we should have SJLJ in 32bit and SEH exception in 64bit mode by default (a.k.a no exception handling specified at configure).
How to build mingw core with msvcr90 or msvcr100.dll dependency(instead msvcrt.dll)? I want mingw produced dlls to use chosen msvcrXXX.dll runtime(to avoid possible crashes/bugs).
ReplyDeleteI would like to post about it as part Moluccas continuation...but it still put on hold because GCC 4.8 and later has broken LTO and I don't wish such huge regression at the cost of newer features for the next Moluccas...
Deleteby the way GCC 4.9 has rudimentary "default manifest" for non-specific purpose that help msvcr90/msvcr80 target, see gcc\config\i386\mingw32.h file.