Browse Source

gitlab-ci: add nightly job testing Ninja Multi-Config on Windows

Brad King 3 years ago
parent
commit
3ed06404bf

+ 14 - 0
.gitlab-ci.yml

@@ -843,6 +843,20 @@ t:windows-vs2022-x64-ninja:
     variables:
         CMAKE_CI_JOB_NIGHTLY_NINJA: "true"
 
+t:windows-vs2022-x64-ninja-multi:
+    extends:
+        - .windows_vs2022_x64_ninja_multi
+        - .cmake_test_windows_external
+        - .windows_tags_concurrent_vs2022
+        - .cmake_junit_artifacts
+        - .run_dependent
+    dependencies:
+        - t:windows-vs2022-x64-ninja
+    needs:
+        - t:windows-vs2022-x64-ninja
+    variables:
+        CMAKE_CI_JOB_NIGHTLY: "true"
+
 t:windows-vs2022-x64:
     extends:
         - .windows_vs2022_x64

+ 5 - 0
.gitlab/ci/configure_windows_vs2022_x64_ninja_multi.cmake

@@ -0,0 +1,5 @@
+if (NOT "$ENV{CMAKE_CI_NIGHTLY}" STREQUAL "")
+  set(CMake_TEST_ISPC "ON" CACHE STRING "")
+endif()
+
+include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_msvc_common.cmake")

+ 10 - 0
.gitlab/ci/env_windows_vs2022_x64_ninja_multi.ps1

@@ -0,0 +1,10 @@
+if ("$env:CMAKE_CI_NIGHTLY" -eq "true") {
+  Invoke-Expression -Command ".gitlab/ci/ispc-env.ps1"
+}
+
+$pwdpath = $pwd.Path
+powershell -File ".gitlab/ci/ninja.ps1"
+Set-Item -Force -Path "env:PATH" -Value "$pwdpath\.gitlab;$env:PATH"
+ninja --version
+
+Invoke-Expression -Command .gitlab/ci/vcvarsall.ps1

+ 15 - 0
.gitlab/os-windows.yml

@@ -125,6 +125,13 @@
         CMAKE_CI_BUILD_TYPE: Release
         CMAKE_CI_NIGHTLY_IGNORE_DEPS: "true"
 
+.windows_ninja_multi:
+    extends: .windows
+
+    variables:
+        CMAKE_GENERATOR: "Ninja Multi-Config"
+        CMAKE_CI_NIGHTLY_IGNORE_DEPS: "true"
+
 .windows_nmake:
     extends: .windows
 
@@ -157,6 +164,14 @@
     variables:
         CMAKE_CONFIGURATION: windows_vs2022_x64_jom
 
+.windows_vs2022_x64_ninja_multi:
+    extends:
+        - .windows_ninja_multi
+        - .windows_vcvarsall_vs2022_x64
+
+    variables:
+        CMAKE_CONFIGURATION: windows_vs2022_x64_ninja_multi
+
 .windows_clang_ninja:
     extends:
         - .windows_ninja