64bits VM build works on 64 bits machine/kernel OS/X : I tried to build 32bits VM, still on 64 bits machine/kernel OS/X, using the following patch (http://code.google.com/p/openjdk-osx-build/source/browse/trunk/patches/Platform.gmk.patch) If ARCH_DATA_MODEL=32, ARCH=i586 (even on a 64bits machine) but it failed with
/Users/henri/Documents/jenkins/data/jobs/openjdk-1.7-bsdport-i586/workspace/ALT_COMPILER_PATH/g++ -D_ALLBSD_SOURCE -D_GNU_SOURCE -DIA32 -DPRODUCT -I. -I/Users/henri/Documents/jenkins/data/jobs/openjdk-1.7-bsdport-i586/workspace/hotspot/src/share/vm/prims -I/Users/henri/Documents/jenkins/data/jobs/openjdk-1.7-bsdport-i586/workspace/hotspot/src/share/vm -I/Users/henri/Documents/jenkins/data/jobs/openjdk-1.7-bsdport-i586/workspace/hotspot/src/cpu/x86/vm -I/Users/henri/Documents/jenkins/data/jobs/openjdk-1.7-bsdport-i586/workspace/hotspot/src/os_cpu/bsd_x86/vm -I/Users/henri/Documents/jenkins/data/jobs/openjdk-1.7-bsdport-i586/workspace/hotspot/src/os/bsd/vm -I/Users/henri/Documents/jenkins/data/jobs/openjdk-1.7-bsdport-i586/workspace/hotspot/src/os/posix/vm -I../generated -DHOTSPOT_RELEASE_VERSION="\"21.0-b03\"" -DHOTSPOT_BUILD_TARGET="\"product\"" -DHOTSPOT_BUILD_USER="\"henri\"" -DHOTSPOT_LIB_ARCH=\"i386\" -DJRE_RELEASE_VERSION="\"1.7.0-internal-henri_2011_03_09_23_40-b00\"" -DHOTSPOT_VM_DISTRO="\"OpenJDK\"" -DTARGET_OS_FAMILY_bsd -DTARGET_ARCH_x86 -DTARGET_ARCH_MODEL_x86_32 -DTARGET_OS_ARCH_bsd_x86 -DTARGET_OS_ARCH_MODEL_bsd_x86_32 -DTARGET_COMPILER_gcc -DCOMPILER2 -DCOMPILER1 -fPIC -fno-rtti -fno-exceptions -pthread -fcheck-new -m32 -march=i586 -mstackrealign -pipe -O3 -fno-strict-aliasing -DVM_LITTLE_ENDIAN -Werror -Wpointer-arith -Wconversion -Wsign-compare -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -c -MMD -MP -MF ../generated/dependencies/buildOopMap.o.d -o buildOopMap.o /Users/henri/Documents/jenkins/data/jobs/openjdk-1.7-bsdport-i586/workspace/hotspot/src/share/vm/opto/buildOopMap.cpp /Users/henri/Documents/jenkins/data/jobs/openjdk-1.7-bsdport-i586/workspace/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s:27:Unknown pseudo-op: .type /Users/henri/Documents/jenkins/data/jobs/openjdk-1.7-bsdport-i586/workspace/hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s:27:Rest of line ignored. 1st junk character valued 95 (_). make[6]: *** [bsd_x86_32.o] Error 1 make[6]: *** Waiting for unfinished jobs.... make[5]: *** [the_vm] Error 2 make[4]: *** [product] Error 2 make[3]: *** [generic_build2] Error 2 make[2]: *** [product] Error 2 make[1]: *** [hotspot-build] Error 2 make: *** [build_product_image] Error 2 Looking around line 27 of hotspot/src/os_cpu/bsd_x86/vm/bsd_x86_32.s : #ifdef __APPLE__ # Darwin uses _ prefixed global symbols #define SYMBOL(s) _ ## s #define ELF_TYPE(name, description) #else #define SYMBOL(s) s #define ELF_TYPE(name, description) .type name,description #endif Any ideas ?