summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitlab-ci.yml29
-rw-r--r--.gitlab/ci/configure_windows_vs2019_x64.cmake3
-rw-r--r--.gitlab/ci/ctest_exclusions.cmake9
3 files changed, 41 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d67d55b..a8b31da 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -117,6 +117,14 @@
VCVARSALL: "${VS160COMNTOOLS}\\..\\..\\VC\\Auxiliary\\Build\\vcvarsall.bat"
VCVARSPLATFORM: x64
+.windows_vs2019_x64: &windows_vs2019_x64
+ extends: .windows
+
+ variables:
+ CMAKE_CONFIGURATION: windows_vs2019_x64
+ CMAKE_GENERATOR: "Visual Studio 16 2019"
+ CMAKE_GENERATOR_PLATFORM: "x64"
+
.linux_builder_tags: &linux_builder_tags
tags:
- build
@@ -278,9 +286,18 @@
interruptible: true
+.cmake_test_windows_external: &cmake_test_windows_external
+ stage: test-ext
+
+ script:
+ - build/install/bin/ctest --output-on-failure -V -S .gitlab/ci/ctest_test_external.cmake
+
+ interruptible: true
+
stages:
- build
- test
+ - test-ext
build:debian10-iwyu:
<<:
@@ -392,8 +409,20 @@ test:windows-vs2019-x64-ninja:
- *windows_vs2019_x64_ninja
- *cmake_test_windows
- *windows_builder_tags
+ - *cmake_test_artifacts
rules: *rules_settings
dependencies:
- build:windows-vs2019-x64-ninja
needs:
- build:windows-vs2019-x64-ninja
+
+test:windows-vs2019-x64:
+ <<:
+ - *windows_vs2019_x64
+ - *cmake_test_windows_external
+ - *windows_builder_tags
+ rules: *rules_settings
+ dependencies:
+ - test:windows-vs2019-x64-ninja
+ needs:
+ - test:windows-vs2019-x64-ninja
diff --git a/.gitlab/ci/configure_windows_vs2019_x64.cmake b/.gitlab/ci/configure_windows_vs2019_x64.cmake
new file mode 100644
index 0000000..f6ece57
--- /dev/null
+++ b/.gitlab/ci/configure_windows_vs2019_x64.cmake
@@ -0,0 +1,3 @@
+set(CMake_TEST_WIX_NO_VERIFY "ON" CACHE BOOL "")
+
+include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake")
diff --git a/.gitlab/ci/ctest_exclusions.cmake b/.gitlab/ci/ctest_exclusions.cmake
index d8980f6..eb9b724 100644
--- a/.gitlab/ci/ctest_exclusions.cmake
+++ b/.gitlab/ci/ctest_exclusions.cmake
@@ -1,6 +1,15 @@
set(test_exclusions
)
+if (CTEST_CMAKE_GENERATOR MATCHES "Visual Studio")
+ list(APPEND test_exclusions
+ # This test takes around 5 minutes with Visual Studio.
+ # https://gitlab.kitware.com/cmake/cmake/-/issues/20733
+ "^ExternalProjectUpdate$"
+ # This test is a dependency of the above and is only required for it.
+ "^ExternalProjectUpdateSetup$")
+endif ()
+
string(REPLACE ";" "|" test_exclusions "${test_exclusions}")
if (test_exclusions)
set(test_exclusions "(${test_exclusions})")