diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2021-03-15 17:03:38 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-04-07 06:33:47 +0000 |
commit | 37801c6c537ef8e79094b405e64481a0246330a0 (patch) | |
tree | d6f846a3359a4976a70df6ed77f154274df35c0c /cmake | |
parent | c197629f8035023353c2ab678a46e212477f1536 (diff) |
CMake: Build minimal subset of tests in desktop static builds
Add new configure option -make minimal-static-tests and CMake option
QT_BUILD_MINIMAL_STATIC_TESTS. In conjunction with QT_BUILD_TESTS
it will enable building a minimal subset of tests when targeting
a static desktop Qt build.
In qtbase the minimal subset includes all the auto tests of testlib,
tools, corelib and cmake. In particular this will also do cmake build
tests and qmake build tests (tst_qmake)
Adjust CI instructions to enable building a minimal subset of static
tests when a platform configuration is tagged with the
MinimalStaticTests feature.
Fix and skip a few tests that were failing.
Task-number: QTBUG-87580
Task-number: QTBUG-91869
Change-Id: I1fc311b8d5e743ccf05047fb9a7fdb813a645206
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit 0e6c4224f00999d4089d7c2ac462bb5a60a14adc)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/QtBuildInternals/QtBuildInternalsConfig.cmake | 12 | ||||
-rw-r--r-- | cmake/QtProcessConfigureArgs.cmake | 2 | ||||
-rw-r--r-- | cmake/QtSetup.cmake | 1 |
3 files changed, 9 insertions, 6 deletions
diff --git a/cmake/QtBuildInternals/QtBuildInternalsConfig.cmake b/cmake/QtBuildInternals/QtBuildInternalsConfig.cmake index 0afd9e7299..934c34b01c 100644 --- a/cmake/QtBuildInternals/QtBuildInternalsConfig.cmake +++ b/cmake/QtBuildInternals/QtBuildInternalsConfig.cmake @@ -473,11 +473,13 @@ macro(qt_build_tests) if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/auto/CMakeLists.txt") add_subdirectory(auto) endif() - if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/benchmarks/CMakeLists.txt" AND QT_BUILD_BENCHMARKS) - add_subdirectory(benchmarks) - endif() - if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/manual/CMakeLists.txt" AND QT_BUILD_MANUAL_TESTS) - add_subdirectory(manual) + if(NOT QT_BUILD_MINIMAL_STATIC_TESTS) + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/benchmarks/CMakeLists.txt" AND QT_BUILD_BENCHMARKS) + add_subdirectory(benchmarks) + endif() + if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/manual/CMakeLists.txt" AND QT_BUILD_MANUAL_TESTS) + add_subdirectory(manual) + endif() endif() endmacro() diff --git a/cmake/QtProcessConfigureArgs.cmake b/cmake/QtProcessConfigureArgs.cmake index 07ac50e000..f9687dd4e7 100644 --- a/cmake/QtProcessConfigureArgs.cmake +++ b/cmake/QtProcessConfigureArgs.cmake @@ -647,7 +647,7 @@ function(check_qt_build_parts type) set(buildFlag "FALSE") endif() - list(APPEND knownParts "tests" "examples" "benchmarks") + list(APPEND knownParts "tests" "examples" "benchmarks" "manual-tests" "minimal-static-tests") foreach(part ${${input}}) if(part IN_LIST knownParts) diff --git a/cmake/QtSetup.cmake b/cmake/QtSetup.cmake index 256206a99d..dcdd47db0d 100644 --- a/cmake/QtSetup.cmake +++ b/cmake/QtSetup.cmake @@ -164,6 +164,7 @@ option(QT_BUILD_EXAMPLES "Build Qt examples" OFF) option(QT_BUILD_EXAMPLES_BY_DEFAULT "Should examples be built as part of the default 'all' target." ON) option(QT_BUILD_MANUAL_TESTS "Build Qt manual tests" OFF) +option(QT_BUILD_MINIMAL_STATIC_TESTS "Build minimal subset of tests for static Qt builds" OFF) ## Find host tools (if non native): set(QT_HOST_PATH "" CACHE PATH "Installed Qt host directory path, used for cross compiling.") |