diff options
author | Manuel M T Chakravarty <chak@cse.unsw.edu.au> | 2011-08-01 11:57:43 +1000 |
---|---|---|
committer | Manuel M T Chakravarty <chak@cse.unsw.edu.au> | 2011-08-01 11:57:43 +1000 |
commit | 353c15e16dbb98e5efcdb10558837c4303df9344 (patch) | |
tree | 9d19165cc1333e6537bce028d8338732205fa31c /distrib | |
parent | 96ebe2fa43b9ee98cd82d31760c57db0fea18495 (diff) | |
download | haskell-353c15e16dbb98e5efcdb10558837c4303df9344.tar.gz |
Os X: With Xcode 4, check for gcc-4.2 also in the setup for binary distributions
Diffstat (limited to 'distrib')
-rw-r--r-- | distrib/configure.ac.in | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/distrib/configure.ac.in b/distrib/configure.ac.in index facba914c2..a37800458b 100644 --- a/distrib/configure.ac.in +++ b/distrib/configure.ac.in @@ -50,7 +50,36 @@ AC_PATH_PROG(SedCmd,gsed sed,sed) # dnl ** How to invoke gcc/cpp ** # -FP_ARG_WITH_PATH_GNU_PROG([CC], [gcc]) +if test "$TargetOS_CPP" = "darwin" +then + AC_MSG_CHECKING(XCode version) + XCodeVersion=`xcodebuild -version | grep Xcode | sed "s/Xcode //"` + # Old XCode versions don't actually give the XCode version + if test "$XCodeVersion" = "" + then + AC_MSG_RESULT(not found (too old?)) + else + AC_MSG_RESULT($XCodeVersion) + XCodeVersion1=`echo "$XCodeVersion" | sed 's/\..*//'` +changequote(, )dnl + XCodeVersion2=`echo "$XCodeVersion" | sed 's/[^.]*\.\([^.]*\).*/\1/'` +changequote([, ])dnl + AC_MSG_NOTICE(XCode version component 1: $XCodeVersion1) + AC_MSG_NOTICE(XCode version component 2: $XCodeVersion2) + fi +fi + +dnl ** Which gcc to use? +dnl -------------------------------------------------------------- +if test "$TargetOS_CPP" = "darwin" && + test "$XCodeVersion1" -ge 4 +then + # From Xcode 4, use 'gcc-4.2' to force the use of the gcc legacy backend (instead of the LLVM + # backend) + FP_ARG_WITH_PATH_GNU_PROG([CC], [gcc-4.2]) +else + FP_ARG_WITH_PATH_GNU_PROG([CC], [gcc]) +fi export CC WhatGccIsCalled="$CC" AC_SUBST(WhatGccIsCalled) |