I've been trying to duplicate the macintel builds from the meta/build system on mac 10.6 system with 64-bit kernel (uname -m => x86_64).
So in a git plt tree... ../src/configure --enable-sdk=/Developer/SDKs/MacOSX10.4u.sdk make both fails with... libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../../../src/foreign/libffi -I. -I../../../src/foreign/libffi/include -Iinclude -I../../../src/foreign/libffi/src -Wall -g -fexceptions -g -O2 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4 -DEXTRA_EXCEPTION_STUBS -MT src/x86/ffi64.lo -MD -MP -MF src/x86/.deps/ffi64.Tpo -c ../../../src/foreign/libffi/src/x86/ffi64.c -fno-common -DPIC -o src/x86/.libs/ffi64.o In file included from ../../../src/foreign/libffi/src/x86/ffi64.c:32: /Developer/SDKs/MacOSX10.4u.sdk/usr/include/stdarg.h:4:25: error: stdarg.h: No such file or directory ../../../src/foreign/libffi/src/x86/ffi64.c: In function ‘ffi_call’: ../../../src/foreign/libffi/src/x86/ffi64.c:452: warning: implicit declaration of function ‘memcpy’ ../../../src/foreign/libffi/src/x86/ffi64.c:452: warning: incompatible implicit declaration of built-in function ‘memcpy’ ../../../src/foreign/libffi/src/x86/ffi64.c:468: warning: incompatible implicit declaration of built-in function ‘memcpy’ ../../../src/foreign/libffi/src/x86/ffi64.c: In function ‘ffi_closure_unix64_inner’: ../../../src/foreign/libffi/src/x86/ffi64.c:613: warning: incompatible implicit declaration of built-in function ‘memcpy’ make[8]: *** [src/x86/ffi64.lo] Error 1 make[7]: *** [libffi/libffi.la] Error 2 make[6]: *** [all] Error 2 make[5]: *** [foreign-stuff] Error 2 make[4]: *** [common] Error 2 make[3]: *** [cgc] Error 2 make[2]: *** [cgc] Error 2 make[1]: *** [both] Error 2 It appears that the problem centers around the if test `${UNAME} -m` = "i386" ; then in the configure script and hacking out this test allows for the build to complete. diff --git a/src/configure b/src/configure index 29d69a8..68d7155 100755 --- a/src/configure +++ b/src/configure @@ -5327,7 +5327,6 @@ case $OS in # Force 32-bit build unless mac64 is enabled: if test "${enable_mac64}" != "yes" ; then - if test `${UNAME} -m` = "i386" ; then if test "${ORIG_CC}" = "" ; then PREFLAGS="${PREFLAGS} -m32" CPPFLAGS="${CPPFLAGS} -m32" @@ -5336,7 +5335,6 @@ case $OS in # instead of CFLAGS: SUB_CONFIGURE_EXTRAS="${SUB_CONFIGURE_EXTRAS} CC="'"'"${CC}"' -m32"' fi - fi fi if test "${enable_quartz}" = "yes" ; then This is only meant to be illustrative since the real fix needs to be in configure.ac and likely there was a reason for this check so removal may not be an option. Even with this change though, note that ../src/configure --enable-mac64 --enable-sdk=/Developer/SDKs/MacOSX10.4u.sdk also doesn't work because the CC=gcc-4.0 SUB_CONFIGURE_EXTRAS never gets set for libffi. Hm, also just noticed that enable_futures_by_default=yes also appears like it won't be set properly since it is with a uname -m == i386 check as well. I suspect these i386 checks are to distinguish from ppc, so maybe they should just change to uname -m != ppc in the darwin/mac sections. _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev