aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Smith <alex@alex-smith.me.uk>2012-07-29 21:03:14 +0100
committerAlex Smith <alex@alex-smith.me.uk>2012-07-29 21:03:14 +0100
commite715eca04c1f99684b5972dd7db4514b56e37b60 (patch)
treec0c7c7688533d911671bed8c7c77bee1a6a67344
parent1ac528017de1a6b9ce049005babd52fc41c11ac2 (diff)
Worked around broken GCC 2 on OS X hosts.hrev44430
GCC 2 built for OS X 10.7/10.8 was broken, the Haiku build would fail with some strange errors. Forcing compilation of GCC 2 in 32-bit mode results in a working GCC.
-rwxr-xr-xbuild/scripts/build_cross_tools7
1 files changed, 7 insertions, 0 deletions
diff --git a/build/scripts/build_cross_tools b/build/scripts/build_cross_tools
index 3f773a7383..ea442b5557 100755
--- a/build/scripts/build_cross_tools
+++ b/build/scripts/build_cross_tools
@@ -130,11 +130,18 @@ copy_headers $haikuSourceDir/headers/posix $tmpIncludeDir/posix
# configure gcc
cd $gccObjDir
+case `uname` in
+ Darwin)
+ # GCC 2 compiled for x86_64 OS X is broken, compile for i386.
+ export CC="gcc -arch i386"
+ ;;
+esac
CFLAGS="-O2 -U_FORTIFY_SOURCE" CXXFLAGS="-O2" $buildToolsDir/gcc/configure \
--prefix=$installDir \
--target=i586-pc-haiku --disable-nls --enable-shared=yes \
--enable-languages=c,c++ --with-headers=$tmpIncludeDir \
--with-libs=$tmpLibDir || exit 1
+unset CC
# hack the Makefile to avoid trouble with stuff we don't need anyway
sedExpr=