diff --git a/cmake/QtTestHelpers.cmake b/cmake/QtTestHelpers.cmake index f64e25b6764..e84a9bfa6b0 100644 --- a/cmake/QtTestHelpers.cmake +++ b/cmake/QtTestHelpers.cmake @@ -100,6 +100,10 @@ function(qt_internal_add_manual_test target) qt_internal_add_test(${ARGV} MANUAL) endfunction() +macro(qt_internal_skip_docker_compose) + set(QT_SKIP_DOCKER_COMPOSE ON CACHE BOOL "Skip setting docker on Linux." FORCE) +endmacro() + # This function will configure the fixture for the network tests that require docker network services # qmake counterpart: qtbase/mkspecs/features/unsupported/testserver.prf function(qt_internal_setup_docker_test_fixture name) @@ -119,6 +123,7 @@ function(qt_internal_setup_docker_test_fixture name) find_program(QT_DOCKER_COMPOSE docker-compose) if (NOT QT_DOCKER_COMPOSE) message(WARNING "docker-compose was not found. Docker network tests will not be run.") + qt_internal_skip_docker_compose() return() endif() if (NOT DEFINED QT_DOCKER_COMPOSE_VERSION) @@ -130,20 +135,17 @@ function(qt_internal_setup_docker_test_fixture name) find_program(QT_DOCKER docker) if (NOT QT_DOCKER) message(WARNING "docker was not found. Docker network tests will not be run.") + qt_internal_skip_docker_compose() return() endif() if (NOT DEFINED QT_DOCKER_TEST_SERVER) execute_process(COMMAND "${QT_DOCKER}" images -aq "qt-test-server-*" OUTPUT_VARIABLE QT_DOCKER_TEST_SERVER) if (NOT QT_DOCKER_TEST_SERVER) - get_cmake_property(warning_shown QT_TEST_DOCKER_WARNING_SHOWN) - if(warning_shown) - return() - endif() - set_property(GLOBAL PROPERTY QT_TEST_DOCKER_WARNING_SHOWN ON) message(WARNING "Docker image qt-test-server-* not found.\n" "Run the provisioning script (coin/provisioning/.../testserver/docker_testserver.sh) in advance\n" "Docker network tests will not be run.") + qt_internal_skip_docker_compose() return() endif() set(QT_DOCKER_TEST_SERVER "ON" CACHE BOOL "docker qt-test-server-* present")