diff options
author | Patrik Nyblom <[email protected]> | 2011-11-08 18:04:05 +0100 |
---|---|---|
committer | Patrik Nyblom <[email protected]> | 2011-11-16 18:06:04 +0100 |
commit | 8412a400e92d5cbcd70f02765de2ba4f5908f1f3 (patch) | |
tree | a37bcc3f572a4a4ea6b374a8acf01938b56e728b /erts | |
parent | 8e8fa01525dabf757009054798569aba115d2952 (diff) | |
download | otp-8412a400e92d5cbcd70f02765de2ba4f5908f1f3.tar.gz otp-8412a400e92d5cbcd70f02765de2ba4f5908f1f3.tar.bz2 otp-8412a400e92d5cbcd70f02765de2ba4f5908f1f3.zip |
Make OTP build w/alternative gcc on MacOS Lion
Requires own build of wxMac for wx to work:
$ arch_flags="-arch i386"
$ ./configure CFLAGS="$arch_flags" CXXFLAGS="$arch_flags" \
CPPFLAGS="$arch_flags" LDFLAGS="$arch_flags" OBJCFLAGS="$arch_flags" \
OBJCXXFLAGS="$arch_flags" --prefix=/usr/local \
--with-macosx-sdk=/Developer/SDKs/MacOSX10.6.sdk \
--with-macosx-version-min=10.6 --enable-unicode --with-opengl
$ make
$ sudo make install
- and we have macports gcc 4.5 in /opt/local/bin, so we configure
and build OTP like this for 32bit (which is required for wx):
$ cd $ERL_TOP
$ PATH=/usr/local/bin:$PATH CC=/opt/local/bin/gcc-mp-4.5 CXX=/opt/local/bin/g++-mp-4.5 ./configure --enable-m32-build
$ MAKEFLAGS="-j6" PATH=/usr/local/bin:$PATH make
Diffstat (limited to 'erts')
-rw-r--r-- | erts/configure.in | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/erts/configure.in b/erts/configure.in index fafa1c7e92..4f0c6efc3e 100644 --- a/erts/configure.in +++ b/erts/configure.in @@ -490,7 +490,19 @@ CFLAG_RUNTIME_LIBRARY_PATH="-Wl,-R" case $host_os in darwin*) CFLAG_RUNTIME_LIBRARY_PATH= - CFLAGS="$CFLAGS -no-cpp-precomp" + AC_TRY_COMPILE([],[ + #if __GNUC__ >= 4 + ; + #else + #error old or no gcc + #endif + ], + gcc_need_no_cpp_precomp=no, + gcc_need_no_cpp_precomp=yes) + + if test x$gcc_need_no_cpp_precomp = xyes; then + CFLAGS="$CFLAGS -no-cpp-precomp" + fi ;; win32) CFLAG_RUNTIME_LIBRARY_PATH= @@ -1000,7 +1012,7 @@ case $ERTS_BUILD_SMP_EMU in ], gcc_smp=okgcc, gcc_smp=oldornogcc) - ERTS_BUILD_SMP_EMU=yes +Ω ERTS_BUILD_SMP_EMU=yes case "$enable_threads-$gcc_smp-$found_threads-$host_os" in no-*) |