diff options
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 4ce56974d..8c7b24a45 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,8 +11,16 @@ project(QtWebEngineRepoSuperBuild LANGUAGES CXX C ) +option(FORCE_TEST_RUN "Forces test run after compilation" FALSE) + find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core) +# coin configures 'just' for test build +if(QT_BUILD_STANDALONE_TESTS) + qt_build_repo() + return() +endif() + set(installDir ${CMAKE_CURRENT_BINARY_DIR}/install) ### FEATURES @@ -123,6 +131,30 @@ if(QT_BUILD_EXAMPLES AND BUILD_SHARED_LIBS) externalproject_add_stepdependencies(examples install libs) endif() +if(FORCE_TEST_RUN OR QT_BUILD_TESTS) + find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS QuickTest Test) + unset(testRunCommand) + if(FORCE_TEST_RUN) + set(testRunCommand TEST_COMMAND ctest) + endif() + externalproject_add(tests + SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/tests + BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/tests + PREFIX tests + USES_TERMINAL_BUILD ON + USES_TERMINAL_TEST ON + BUILD_ALWAYS TRUE + CMAKE_ARGS -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE} + "${featureList}" + INSTALL_COMMAND "" + ${testRunCommand} + ) + externalproject_add_stepdependencies(tests install libs) + if(QT_BUILD_EXAMPLES AND BUILD_SHARED_LIBS) + externalproject_add_stepdependencies(tests install examples) + endif() +endif() + if(NOT Gn_FOUND) externalproject_add_stepdependencies(libs install gn) endif() |