diff options
author | Tor Arne Vestbø <tor.arne.vestbo@digia.com> | 2013-04-03 15:05:06 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-04-05 14:23:23 +0200 |
commit | 3d0a60aaa4077a897d02ca5f3c0cc2d7da1007c3 (patch) | |
tree | 9aff6f552df44e04b4f9062a642454bae61b7896 /mkspecs | |
parent | 30d01db3a59f40af2352aeea0c4ce3cc79721975 (diff) |
Enable C++11 on OSX when using Clang
This means we have to bump the deployment target to Lion (10.7), as the
LLVM 'libc++' C++ standard library does not support Snow Leopard (10.6).
For iOS the deployment target has to be bumped from 4.3 to 5.0, but we
don't enable C++11 by default yet as it's not tested enough on iOS.
Users who wish to deploy to 10.6 need to build their own Qt,
passing -no-c++11 to configure.
Change-Id: I7b5d20ab002db889d1091a4b7ff600f62caa7f06
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/common/clang-mac.conf | 3 | ||||
-rw-r--r-- | mkspecs/features/c++11.prf | 7 | ||||
-rw-r--r-- | mkspecs/features/mac/sdk.prf | 3 |
3 files changed, 13 insertions, 0 deletions
diff --git a/mkspecs/common/clang-mac.conf b/mkspecs/common/clang-mac.conf index efe771d24d..3280274f36 100644 --- a/mkspecs/common/clang-mac.conf +++ b/mkspecs/common/clang-mac.conf @@ -5,3 +5,6 @@ QMAKE_OBJCXXFLAGS_PRECOMPILE = -x objective-c++-header -c ${QMAKE_PCH_INPUT} QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE QMAKE_XCODE_GCC_VERSION = com.apple.compilers.llvm.clang.1_0 + +QMAKE_CXXFLAGS_CXX11 += -stdlib=libc++ +QMAKE_LFLAGS_CXX11 += -stdlib=libc++ diff --git a/mkspecs/features/c++11.prf b/mkspecs/features/c++11.prf index 4b56fa9fd2..32eaca4a9b 100644 --- a/mkspecs/features/c++11.prf +++ b/mkspecs/features/c++11.prf @@ -1,3 +1,10 @@ QMAKE_CXXFLAGS += $$QMAKE_CXXFLAGS_CXX11 QMAKE_OBJECTIVE_CFLAGS += $$QMAKE_CXXFLAGS_CXX11 QMAKE_LFLAGS += $$QMAKE_LFLAGS_CXX11 + +contains(QMAKE_LFLAGS, -stdlib=libc++) { + equals(QMAKE_MACOSX_DEPLOYMENT_TARGET, 10.6): \ + QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7 + contains(QMAKE_IOS_DEPLOYMENT_TARGET, ^4.*): \ + QMAKE_IOS_DEPLOYMENT_TARGET = 5.0 +} diff --git a/mkspecs/features/mac/sdk.prf b/mkspecs/features/mac/sdk.prf index eaa3108a8b..10d94bed11 100644 --- a/mkspecs/features/mac/sdk.prf +++ b/mkspecs/features/mac/sdk.prf @@ -40,6 +40,9 @@ isEmpty(QMAKE_MAC_PLATFORM_NAME): error("Could not resolve platform name for SDK # FIXME: Get the version_min_flag out of the platform's 'Native Build System.xcspec' version_identifier = $$replace(QMAKE_MAC_PLATFORM_NAME, iphonesimulator, ios-simulator) + # C++11 support may affect the deployment target + c++11: load(c++11) + ios:!host_build: \ deployment_target = $$QMAKE_IOS_DEPLOYMENT_TARGET else: \ |