diff options
author | Sergio Ahumada <sergio.ahumada@digia.com> | 2013-04-10 15:41:47 +0200 |
---|---|---|
committer | Sergio Ahumada <sergio.ahumada@digia.com> | 2013-04-10 15:42:22 +0200 |
commit | 90297a64f203959f90041887ea31f4bd04bc059a (patch) | |
tree | 86f8ad6a5af26fd618cdb2e20601e6df89ac94d6 /mkspecs/features | |
parent | 537a4bc4011d32de193dc31caf09a44c1810ab33 (diff) | |
parent | f273d6fbc02055ff3999adc0df76360ca0670435 (diff) |
Merge branch 'stable' into dev
Change-Id: Icff019d74ae04c628a80f66aa478e4db40fae464
Diffstat (limited to 'mkspecs/features')
-rw-r--r-- | mkspecs/features/c++11.prf | 7 | ||||
-rw-r--r-- | mkspecs/features/create_cmake.prf | 8 | ||||
-rw-r--r-- | mkspecs/features/ctest_testcase.prf | 20 | ||||
-rw-r--r-- | mkspecs/features/data/android/dx.bat | 2 | ||||
-rw-r--r-- | mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in | 6 | ||||
-rw-r--r-- | mkspecs/features/exclusive_builds.prf | 2 | ||||
-rw-r--r-- | mkspecs/features/mac/default_post.prf | 4 | ||||
-rw-r--r-- | mkspecs/features/mac/sdk.prf | 9 | ||||
-rw-r--r-- | mkspecs/features/qt_parts.prf | 3 |
9 files changed, 48 insertions, 13 deletions
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/create_cmake.prf b/mkspecs/features/create_cmake.prf index 9aef37472f..cf0acaf4b7 100644 --- a/mkspecs/features/create_cmake.prf +++ b/mkspecs/features/create_cmake.prf @@ -55,10 +55,10 @@ CMAKE_BIN_DIR = $$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX]) CMAKE_BIN_DIR_IS_ABSOLUTE = True } -CMAKE_ARCHDATA_DIR = $$cmakeRelativePath($$[QT_INSTALL_ARCHDATA], $$[QT_INSTALL_PREFIX]) -!isEmpty(CMAKE_FORCE_ABSOLUTE_PATHS)|contains(CMAKE_ARCHDATA_DIR, "^\\.\\./.*") { # For the mkspecs - CMAKE_ARCHDATA_DIR = $$[QT_INSTALL_ARCHDATA]/ - CMAKE_ARCHDATA_DIR_IS_ABSOLUTE = True +CMAKE_HOST_DATA_DIR = $$cmakeRelativePath($$[QT_HOST_DATA], $$[QT_INSTALL_PREFIX]) +!isEmpty(CMAKE_FORCE_ABSOLUTE_PATHS)|contains(CMAKE_HOST_DATA_DIR, "^\\.\\./.*") { + CMAKE_HOST_DATA_DIR = $$[QT_HOST_DATA]/ + CMAKE_HOST_DATA_DIR_IS_ABSOLUTE = True } static|staticlib:CMAKE_STATIC_TYPE = true diff --git a/mkspecs/features/ctest_testcase.prf b/mkspecs/features/ctest_testcase.prf index 79adde3446..7faf738d6e 100644 --- a/mkspecs/features/ctest_testcase.prf +++ b/mkspecs/features/ctest_testcase.prf @@ -56,9 +56,27 @@ isEmpty(CMAKE_VERSION) { SET = set equals(QMAKE_DIR_SEP, "/"):SET = export + CMAKE_MODULE_VERSIONS = + CMAKE_MODULES_UNDER_TEST = + for (MODULE_UNDER_TEST, CMAKE_QT_MODULES_UNDER_TEST) { + CMAKE_NAME = $$cmakeModuleName($$MODULE_UNDER_TEST) + CMAKE_MODULE_VERSIONS += \ + -DCMAKE_$${CMAKE_NAME}_MODULE_MAJOR_VERSION=$$eval(QT.$${MODULE_UNDER_TEST}.MAJOR_VERSION) \ + -DCMAKE_$${CMAKE_NAME}_MODULE_MINOR_VERSION=$$eval(QT.$${MODULE_UNDER_TEST}.MINOR_VERSION) \ + -DCMAKE_$${CMAKE_NAME}_MODULE_PATCH_VERSION=$$eval(QT.$${MODULE_UNDER_TEST}.PATCH_VERSION) + CMAKE_MODULES_UNDER_TEST += $$CMAKE_NAME + } + CMAKE_MODULES_UNDER_TEST = $$join(CMAKE_MODULES_UNDER_TEST, ;) + check.commands = \ $(MKDIR) $$BUILD_DIR && cd $$BUILD_DIR && $$SET VERBOSE=1 && \ - cmake $$_PRO_FILE_PWD_ $$CMAKE_GENERATOR $$CMAKE_MODULE_DEFINES -DCMAKE_BUILD_TYPE=$${CMAKE_BUILD_TYPE} -DCMAKE_PREFIX_PATH=$$CMAKE_PREFIX_PATH -DQt5_MODULE_TEST_DEPENDS=\"$${dependentmodules}\" && \ + cmake $$_PRO_FILE_PWD_ $$CMAKE_GENERATOR \ + $$CMAKE_MODULE_DEFINES \ + -DCMAKE_BUILD_TYPE=$${CMAKE_BUILD_TYPE} \ + -DCMAKE_PREFIX_PATH=$$CMAKE_PREFIX_PATH \ + -DQt5_MODULE_TEST_DEPENDS=\"$${dependentmodules}\" \ + $${CMAKE_MODULE_VERSIONS} \ + -DCMAKE_MODULES_UNDER_TEST=\"$$CMAKE_MODULES_UNDER_TEST\" && \ $(TESTRUNNER) ctest --output-on-failure } diff --git a/mkspecs/features/data/android/dx.bat b/mkspecs/features/data/android/dx.bat index a60a1b4cbe..af143c52b5 100644 --- a/mkspecs/features/data/android/dx.bat +++ b/mkspecs/features/data/android/dx.bat @@ -41,7 +41,7 @@ set jarfile=dx.jar set "frameworkdir=%androidsdk%\platform-tools" if exist "%frameworkdir%\%jarfile%" goto JarFileOk - set "frameworkdir=%androidsdk%\lib" + set "frameworkdir=%frameworkdir%\lib" if exist "%frameworkdir%\%jarfile%" goto JarFileOk set "frameworkdir=%androidsdk%\framework" diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in index e5bbc97161..65ba03d44c 100644 --- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in +++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in @@ -9,9 +9,7 @@ get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURREN set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\") !!ENDIF -set(Qt5$${CMAKE_MODULE_NAME}_VERSION_MAJOR "$$eval(QT.$${MODULE}.MAJOR_VERSION)") -set(Qt5$${CMAKE_MODULE_NAME}_VERSION_MINOR "$$eval(QT.$${MODULE}.MINOR_VERSION)") -set(Qt5$${CMAKE_MODULE_NAME}_VERSION_PATCH "$$eval(QT.$${MODULE}.PATCH_VERSION)") +# For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead. set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.MAJOR_VERSION).$$eval(QT.$${MODULE}.MINOR_VERSION).$$eval(QT.$${MODULE}.PATCH_VERSION)") set(Qt5$${CMAKE_MODULE_NAME}_LIBRARIES Qt5::$${CMAKE_MODULE_NAME}) @@ -88,7 +86,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME}) ${Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING} ${_Qt5$${CMAKE_MODULE_NAME}_FIND_VERSION_EXACT} ${_Qt5$${CMAKE_MODULE_NAME}_DEPENDENCIES_FIND_QUIET} ${_Qt5$${CMAKE_MODULE_NAME}_FIND_DEPENDENCIES_REQUIRED} - PATHS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}\" NO_DEFAULT_PATH + PATHS \"${CMAKE_CURRENT_LIST_DIR}/..\" NO_DEFAULT_PATH ) endif() diff --git a/mkspecs/features/exclusive_builds.prf b/mkspecs/features/exclusive_builds.prf index adcad79fe1..c45ff22c06 100644 --- a/mkspecs/features/exclusive_builds.prf +++ b/mkspecs/features/exclusive_builds.prf @@ -6,7 +6,7 @@ defineTest(fixExclusiveOutputDirs) { count(ARGS, 2, greaterThan):isEqual($$list($$lower($$3)), false):appendFirstBuild = false else:appendFirstBuild = true - isEmpty(QMAKE_DIR_REPLACE):QMAKE_DIR_REPLACE += OBJECTS_DIR MOC_DIR RCC_DIR + isEmpty(QMAKE_DIR_REPLACE):QMAKE_DIR_REPLACE += OBJECTS_DIR MOC_DIR RCC_DIR PRECOMPILED_DIR lessThan(firstBuild, $$secondBuild):eval($${firstBuild}_and_$${secondBuild}_target:QMAKE_DIR_REPLACE += DESTDIR) else:eval($${secondBuild}_and_$${firstBuild}_target:QMAKE_DIR_REPLACE += DESTDIR) for(fix, QMAKE_DIR_REPLACE) { diff --git a/mkspecs/features/mac/default_post.prf b/mkspecs/features/mac/default_post.prf index 714b4c7d06..437e3d93e4 100644 --- a/mkspecs/features/mac/default_post.prf +++ b/mkspecs/features/mac/default_post.prf @@ -15,3 +15,7 @@ qt:!isEmpty(QT_CONFIG) { contains(QT_CONFIG, x86_64):!contains(QT_CONFIG, x86):CONFIG += x86_64 } } + +# Ensure that we process sdk.prf first, as it will update QMAKE_CXX +# and friends that other features/extra compilers may depend on. +sdk: load(sdk) diff --git a/mkspecs/features/mac/sdk.prf b/mkspecs/features/mac/sdk.prf index eaa3108a8b..ece0e27536 100644 --- a/mkspecs/features/mac/sdk.prf +++ b/mkspecs/features/mac/sdk.prf @@ -5,7 +5,7 @@ isEmpty(QMAKE_MAC_SDK): \ contains(QMAKE_MAC_SDK, .*/.*): \ error("QMAKE_MAC_SDK can only contain short-form SDK names (eg. macosx, iphoneos)") -QMAKE_MAC_SDK_PATH = $$system("xcodebuild -sdk $$QMAKE_MAC_SDK -version Path 2>/dev/null") +QMAKE_MAC_SDK_PATH = $$system("/usr/bin/xcodebuild -sdk $$QMAKE_MAC_SDK -version Path 2>/dev/null") isEmpty(QMAKE_MAC_SDK_PATH): error("Could not resolve SDK path for \'$$QMAKE_MAC_SDK\'") !equals(MAKEFILE_GENERATOR, XCODE) { @@ -24,7 +24,9 @@ for(tool, $$list(QMAKE_CC QMAKE_CXX QMAKE_FIX_RPATH QMAKE_AR QMAKE_RANLIB QMAKE_ value = $$eval($$tool) isEmpty(value): next() - sysrooted = $$system("xcrun -sdk $$QMAKE_MAC_SDK -find $$first(value)") + sysrooted = $$system("/usr/bin/xcrun -sdk $$QMAKE_MAC_SDK -find $$first(value) 2>/dev/null") + isEmpty(sysrooted): next() + $$tool = $$sysrooted $$member(value, 1, -1) } @@ -40,6 +42,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: \ diff --git a/mkspecs/features/qt_parts.prf b/mkspecs/features/qt_parts.prf index 12ba312bcd..37dc849f83 100644 --- a/mkspecs/features/qt_parts.prf +++ b/mkspecs/features/qt_parts.prf @@ -9,6 +9,9 @@ # We mean it. # +# Ensure that each module has a .qmake.cache when properly qmake'd. +cache() + load(qt_build_config) TEMPLATE = subdirs |