Hello, Possibly somebody could give me a hint what the issue here is. In the patch I attached, I enable multilib for x86 default mingw target (i686-w64-mingw32). The core compilers are translating nicely. But when it tries to build libgcc by -m64 it throws always the same error message for any array : "error: size of array "..." is too large". I am curious as the configuration patch is pretty equal to linux version, but something I seem to miss here.
Thanks in advance, Kai -- | (\_/) This is Bunny. Copy and paste | (='.'=) Bunny into your signature to help | (")_(") him gain world domination
Index: gcc/gcc/config/i386/mingw-w64.h =================================================================== --- gcc.orig/gcc/config/i386/mingw-w64.h 2009-07-21 14:27:18.820073000 +0200 +++ gcc/gcc/config/i386/mingw-w64.h 2009-07-21 15:07:27.718073000 +0200 @@ -37,6 +37,10 @@ #undef STANDARD_INCLUDE_DIR #define STANDARD_INCLUDE_DIR "/mingw/include" +/* Adjust STANDARD_STARTFILE_PREFIX_1 pointing to lib. */ +#undef STANDARD_STARTFILE_PREFIX_1 +#define STANDARD_STARTFILE_PREFIX_1 "/mingw/lib/" + /* Enable multilib. */ #undef ASM_SPEC @@ -67,3 +71,4 @@ %{static:-Bstatic} %{!static:-Bdynamic} \ %{shared|mdll: -e _dllmaincrtstar...@12 --enable-auto-image-base} \ %(shared_libgcc_undefs)" + Index: gcc/gcc/config.gcc =================================================================== --- gcc.orig/gcc/config.gcc 2009-07-21 14:27:18.825073000 +0200 +++ gcc/gcc/config.gcc 2009-07-21 17:19:12.217073000 +0200 @@ -1294,9 +1294,28 @@ use_gcc_stdint=wrap ;; i[34567]86-*-mingw* | x86_64-*-mingw*) - tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/mingw32.h" + tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h" xm_file=i386/xm-mingw32.h # This makes the logic if mingw's or the w64 feature set has to be used + if test x$enable_targets = xall; then + tm_defines="${tm_defines} TARGET_BI_ARCH=1" + need_64bit_hwint=yes + case X"${with_cpu}" in + Xgeneric|Xatom|Xcore2|Xnocona|Xx86-64|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx) + ;; + X) + if test x$with_cpu_64 = x; then + with_cpu_64=generic + fi + ;; + *) + echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 + echo "generic atom core2 nocona x86-64 amdfam10 barcelona k8 opteron athlon64 athlon-fx" 1>&2 + exit 1 + ;; + esac + fi + tm_file="${tm_file} i386/cygming.h i386/mingw32.h" case ${target} in *-w64-*) tm_file="${tm_file} i386/mingw-w64.h"