diff options
Diffstat (limited to 'mkspecs/features/ctest_testcase.prf')
-rw-r--r-- | mkspecs/features/ctest_testcase.prf | 97 |
1 files changed, 5 insertions, 92 deletions
diff --git a/mkspecs/features/ctest_testcase.prf b/mkspecs/features/ctest_testcase.prf index 8eb6f3263e..3b7f3091c5 100644 --- a/mkspecs/features/ctest_testcase.prf +++ b/mkspecs/features/ctest_testcase.prf @@ -1,96 +1,9 @@ -win32 { - CMAKE_VERSION = $$system(cmake --version 2>NUL) -} else { - CMAKE_VERSION = $$system(cmake --version 2>/dev/null) -} - - -check.commands = -isEmpty(CMAKE_VERSION) { - message("cmake executable not found. Not running CMake unit tests") -} else { - CTEST_VERSION = $$system(ctest --version) - isEmpty(CTEST_VERSION) { - message("ctest executable not found. Not running CMake unit tests") - } else { - CMAKE_VERSION = $$last(CMAKE_VERSION) - CMAKE_VERSION_MAJOR = $$section(CMAKE_VERSION, ., 0, 0) - CMAKE_VERSION_MINOR = $$section(CMAKE_VERSION, ., 1, 1) - CMAKE_VERSION_PATCH = $$section(CMAKE_VERSION, ., 2, 2) - # CMake can report versions like 2.8.11-rc1, so strip off the rc part. - CMAKE_VERSION_PATCH ~= s,-.*,, - - VERSION_OK = - greaterThan(CMAKE_VERSION_MAJOR, 2) { - VERSION_OK = 1 - } else:greaterThan(CMAKE_VERSION_MAJOR, 1):greaterThan(CMAKE_VERSION_MINOR, 8) { - VERSION_OK = 1 - } else:greaterThan(CMAKE_VERSION_MAJOR, 1):greaterThan(CMAKE_VERSION_MINOR, 7):greaterThan(CMAKE_VERSION_PATCH, 2) { - VERSION_OK = 1 - } - - isEmpty(VERSION_OK) { - message("cmake $$CMAKE_VERSION is too old for this test.") - } else { - load(cmake_functions) - - CMAKE_BUILD_TYPE = Debug - CONFIG(release, debug|release):CMAKE_BUILD_TYPE = Release - win32-g++*:isEmpty(CROSS_COMPILE):CMAKE_GENERATOR = -G \"MinGW Makefiles\" - win32:equals(QT_ARCH, x86_64) { - win32-msvc2010:CMAKE_GENERATOR = -G \"Visual Studio 10 Win64\" - win32-msvc2012:CMAKE_GENERATOR = -G \"Visual Studio 11 Win64\" - } - - BUILD_DIR = $$replace($$list($$OUT_PWD/build), /, $$QMAKE_DIR_SEP) - - for(d, $$list($$split($$list($$[QMAKE_MKSPECS]), $$DIRLIST_SEPARATOR))) { - CMAKE_PREFIX_PATH *= $$dirname(d) - } - CMAKE_PREFIX_PATH=\"$$join(CMAKE_PREFIX_PATH, ;)\" - - !qtHaveModule(widgets): CMAKE_MODULE_DEFINES += -DNO_WIDGETS=True - !qtHaveModule(dbus): CMAKE_MODULE_DEFINES += -DNO_DBUS=True - - dependentmodules = $$resolve_depends(CMAKE_QT_MODULES_UNDER_TEST, "QT.") - dependentmodules -= $$CMAKE_QT_MODULES_UNDER_TEST - dependentmodules = $$cmakeModuleList($$dependentmodules) - - contains(QT_CONFIG, angle): CMAKE_GL_DEFINES = -DQT_WITH_ANGLE=True - !contains(QT_CONFIG, egl): CMAKE_GL_DEFINES += -DNO_EGL=True - - 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 && \ - cmake $$_PRO_FILE_PWD_ $$CMAKE_GENERATOR \ - -DCMAKE_VERBOSE_MAKEFILE=1 \ - $$CMAKE_MODULE_DEFINES \ - $$CMAKE_GL_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 - - } - } -} +CMAKE_TEST_LOCATION = $$_PRO_FILE_PWD_ -insignificant_test:!isEmpty(check.commands) { - check.commands = -$${check.commands} +for(d, $$list($$split($$list($$[QMAKE_MKSPECS]), $$DIRLIST_SEPARATOR))) { + CMAKE_PREFIX_PATH *= $$clean_path($$dirname(d)) } +CMAKE_PREFIX_PATH=\"$$join(CMAKE_PREFIX_PATH, ;)\" -QMAKE_EXTRA_TARGETS *= check +include(ctest_testcase_common.prf) |