summaryrefslogtreecommitdiffstats
path: root/configure
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@digia.com>2013-02-27 15:06:29 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-03-14 19:49:38 +0100
commit36a5873fac04ff8adf5eb3f3208fc59928f3359f (patch)
tree4e1c45ba3523a984a63b1165da7eaaf8c1508903 /configure
parent0ec541c9ad7c402a922cb31f701808ee218917cf (diff)
Detect Clang availability on Mac based on the SDK, not the OS X version
Since we use the Clang from Xcode's toolchain now, the OS version is not relevant. In practice this means we will use clang for Xcode 4.2 and up, which means it's possible to use clang also on Mac OS 10.6 (Snow Leopard), where Xcode 4.3 is not available. Change-Id: I9817e237cdd82d10b93aaaa3c90e35767cdca751 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure31
1 files changed, 18 insertions, 13 deletions
diff --git a/configure b/configure
index 1382fd7704..e4cf0fc273 100755
--- a/configure
+++ b/configure
@@ -2445,20 +2445,25 @@ if [ -z "$PLATFORM" ]; then
PLATFORM_NOTES=
case "$UNAME_SYSTEM:$UNAME_RELEASE" in
Darwin:*)
- OSX_VERSION=`uname -r | cut -d. -f1`
- # Select compiler. Use g++ unless we find a usable Clang version
- PLATFORM=macx-g++
- if [ "$OSX_VERSION" -ge 12 ]; then
- # We're on Mountain Lion or above. Use Clang. Don't advertise gcc.
+ # Select compiler. Use g++ unless we find a usable Clang version. Note that
+ # we are checking the "Apple" clang/LLVM version number, not the actual
+ # clang/LLVM version number that the Apple version was based on. We look
+ # for Apple clang version 3.0 or higher, which was branched off LLVM 3.0
+ # from SVN, and first included in Xcode 4.2. Also note that we do not care
+ # about the OS version, since we're not using the clang version that comes
+ # with the system. We use 'xcrun' to check the clang version that's part of
+ # the Xcode installation.
+ if [ "$(xcrun -sdk macosx clang -v 2>&1 | sed -n 's/.*version \([0-9]\).*/\1/p')" -ge 3 ]; then
PLATFORM=macx-clang
- elif [ "$OSX_VERSION" -eq 11 ]; then
- # We're on Lion. Check if we have a supported Clang version
- if [ "$(clang -v 2>&1 | grep -Po '(?<=version )[\d]')" -ge 3 ]; then
- PLATFORM=macx-clang
- PLATFORM_NOTES="\n - Also available for Mac OS X: macx-g++\n"
- fi
- fi
- ;;
+
+ # Advertise g++ as an alternative on Lion and below
+ if [ "$(uname -r | cut -d. -f1)" -le 11 ]; then
+ PLATFORM_NOTES="\n - Also available for Mac OS X: macx-g++\n"
+ fi
+ else
+ PLATFORM=macx-g++
+ fi
+ ;;
AIX:*)
#PLATFORM=aix-g++
#PLATFORM=aix-g++-64