From ffa010e32d897ab8003118117e76f7c8bb8ca1a9 Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 21 Nov 2025 12:21:25 -0500 Subject: [PATCH] ci: Update Windows jobs to VS 2026 Convert most VS 2022 jobs to VS 2026. Do not convert the IntelLLVM and Clang jobs that need a VS 2022 command-line environment. Do not convert jobs covering the `Visual Studio 17 2022` generator. Add new ones for `Visual Studio 18 2026` instead. --- .gitlab-ci.yml | 162 ++++++++++-------- .../ci/configure_windows_arm64_vs2026.cmake | 4 + ...onfigure_windows_arm64_vs2026_ninja.cmake} | 0 .../configure_windows_vs2022_x64_i18n.cmake | 1 - .gitlab/ci/configure_windows_vs2026_x64.cmake | 8 + ...figure_windows_vs2026_x64_fastbuild.cmake} | 0 .../configure_windows_vs2026_x64_i18n.cmake | 1 + ...=> configure_windows_vs2026_x64_jom.cmake} | 0 ... configure_windows_vs2026_x64_ninja.cmake} | 0 ...gure_windows_vs2026_x64_ninja_multi.cmake} | 0 ... configure_windows_vs2026_x64_nmake.cmake} | 0 ...=> configure_windows_vs2026_x64_pch.cmake} | 0 .gitlab/ci/download_qt.cmake | 3 +- ...ps1 => env_windows_arm64_vs2026_ninja.ps1} | 0 .gitlab/ci/env_windows_vs2026_x64.ps1 | 4 + ...1 => env_windows_vs2026_x64_fastbuild.ps1} | 0 ...jom.ps1 => env_windows_vs2026_x64_jom.ps1} | 0 ...a.ps1 => env_windows_vs2026_x64_ninja.ps1} | 0 ...=> env_windows_vs2026_x64_ninja_multi.ps1} | 0 ...e.ps1 => env_windows_vs2026_x64_nmake.ps1} | 0 .gitlab/os-windows.yml | 148 +++++++++++----- 21 files changed, 213 insertions(+), 118 deletions(-) create mode 100644 .gitlab/ci/configure_windows_arm64_vs2026.cmake rename .gitlab/ci/{configure_windows_arm64_vs2022_ninja.cmake => configure_windows_arm64_vs2026_ninja.cmake} (100%) delete mode 100644 .gitlab/ci/configure_windows_vs2022_x64_i18n.cmake create mode 100644 .gitlab/ci/configure_windows_vs2026_x64.cmake rename .gitlab/ci/{configure_windows_vs2022_x64_fastbuild.cmake => configure_windows_vs2026_x64_fastbuild.cmake} (100%) create mode 100644 .gitlab/ci/configure_windows_vs2026_x64_i18n.cmake rename .gitlab/ci/{configure_windows_vs2022_x64_jom.cmake => configure_windows_vs2026_x64_jom.cmake} (100%) rename .gitlab/ci/{configure_windows_vs2022_x64_ninja.cmake => configure_windows_vs2026_x64_ninja.cmake} (100%) rename .gitlab/ci/{configure_windows_vs2022_x64_ninja_multi.cmake => configure_windows_vs2026_x64_ninja_multi.cmake} (100%) rename .gitlab/ci/{configure_windows_vs2022_x64_nmake.cmake => configure_windows_vs2026_x64_nmake.cmake} (100%) rename .gitlab/ci/{configure_windows_vs2022_x64_pch.cmake => configure_windows_vs2026_x64_pch.cmake} (100%) rename .gitlab/ci/{env_windows_arm64_vs2022_ninja.ps1 => env_windows_arm64_vs2026_ninja.ps1} (100%) create mode 100644 .gitlab/ci/env_windows_vs2026_x64.ps1 rename .gitlab/ci/{env_windows_vs2022_x64_fastbuild.ps1 => env_windows_vs2026_x64_fastbuild.ps1} (100%) rename .gitlab/ci/{env_windows_vs2022_x64_jom.ps1 => env_windows_vs2026_x64_jom.ps1} (100%) rename .gitlab/ci/{env_windows_vs2022_x64_ninja.ps1 => env_windows_vs2026_x64_ninja.ps1} (100%) rename .gitlab/ci/{env_windows_vs2022_x64_ninja_multi.ps1 => env_windows_vs2026_x64_ninja_multi.ps1} (100%) rename .gitlab/ci/{env_windows_vs2022_x64_nmake.ps1 => env_windows_vs2026_x64_nmake.ps1} (100%) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ed5ccdd719..b9097c6714 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1272,80 +1272,92 @@ u:macos10.10-package: # Windows x86_64 jobs -b:windows-vs2022-x64-ninja: +b:windows-vs2026-x64-ninja: extends: - - .windows_vs2022_x64_ninja + - .windows_vs2026_x64_ninja - .cmake_build_windows - .cmake_build_artifacts - - .windows_x86_64_tags_nonconcurrent_vs2022 + - .windows_x86_64_tags_nonconcurrent_vs2026 - .run_manually variables: CMAKE_CI_JOB_CONTINUOUS: "true" -b:windows-vs2022-x64-pch: +b:windows-vs2026-x64-pch: extends: - - .windows_vs2022_x64_pch + - .windows_vs2026_x64_pch - .cmake_build_windows - - .windows_x86_64_tags_nonconcurrent_vs2022 + - .windows_x86_64_tags_nonconcurrent_vs2026 - .run_manually variables: CMAKE_CI_JOB_NIGHTLY: "true" -t:windows-vs2022-x64-ninja: +t:windows-vs2026-x64-ninja: extends: - - .windows_vs2022_x64_ninja + - .windows_vs2026_x64_ninja - .cmake_test_windows - - .windows_x86_64_tags_nonconcurrent_vs2022 + - .windows_x86_64_tags_nonconcurrent_vs2026 - .cmake_test_artifacts - .run_dependent needs: - - b:windows-vs2022-x64-ninja + - b:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_CONTINUOUS: "true" CMAKE_CI_JOB_NIGHTLY_NINJA: "true" -t:windows-vs2022-x64-ninja-multi: +t:windows-vs2026-x64-ninja-multi: extends: - - .windows_vs2022_x64_ninja_multi + - .windows_vs2026_x64_ninja_multi - .cmake_test_windows_external - - .windows_x86_64_tags_concurrent_vs2022 + - .windows_x86_64_tags_concurrent_vs2026 - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" -.t:windows-vs2022-x64: +.t:windows-vs2026-x64: extends: - - .windows_vs2022_x64 + - .windows_vs2026_x64 - .cmake_test_windows_external - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja -t:windows-vs2022-x64: +t:windows-vs2026-x64: extends: - - .t:windows-vs2022-x64 - - .windows_x86_64_tags_concurrent_vs2022 + - .t:windows-vs2026-x64 + - .windows_x86_64_tags_concurrent_vs2026 variables: CMAKE_CI_JOB_NIGHTLY: "false" -t:windows-vs2022-x64-nightly: +t:windows-vs2026-x64-nightly: extends: - - .t:windows-vs2022-x64 - - .windows_x86_64_tags_concurrent_vs2022_android + - .t:windows-vs2026-x64 + - .windows_x86_64_tags_concurrent_vs2026_android variables: CMAKE_CI_JOB_NIGHTLY: "true" -t:windows-vs2022-x64-i18n: +t:windows-vs2026-x64-i18n: extends: - - .t:windows-vs2022-x64 - - .windows_x86_64_tags_concurrent_vs2022_android + - .t:windows-vs2026-x64 + - .windows_x86_64_tags_concurrent_vs2026_android variables: GIT_CLONE_PATH: "$CI_BUILDS_DIR\\cmake i18n cï\\$CI_CONCURRENT_ID" - CMAKE_CONFIGURATION: windows_vs2022_x64_i18n + CMAKE_CONFIGURATION: windows_vs2026_x64_i18n + CMAKE_CI_JOB_NIGHTLY: "true" + +t:windows-vs2022-x64: + extends: + - .windows_vs2022_x64 + - .cmake_test_windows_external + - .windows_x86_64_tags_concurrent_vs2022_android + - .cmake_junit_artifacts + - .run_dependent + needs: + - t:windows-vs2026-x64-ninja + variables: CMAKE_CI_JOB_NIGHTLY: "true" t:windows-vs2019-x64: @@ -1356,43 +1368,43 @@ t:windows-vs2019-x64: - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" -t:windows-vs2022-x64-nmake: +t:windows-vs2026-x64-nmake: extends: - - .windows_vs2022_x64_nmake + - .windows_vs2026_x64_nmake - .cmake_test_windows_external - - .windows_x86_64_tags_concurrent_vs2022 + - .windows_x86_64_tags_concurrent_vs2026 - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" -t:windows-vs2022-x64-jom: +t:windows-vs2026-x64-jom: extends: - - .windows_vs2022_x64_jom + - .windows_vs2026_x64_jom - .cmake_test_windows_external - - .windows_x86_64_tags_concurrent_vs2022 + - .windows_x86_64_tags_concurrent_vs2026 - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" -t:windows-vs2022-x64-fastbuild: +t:windows-vs2026-x64-fastbuild: extends: - - .windows_vs2022_x64_fastbuild + - .windows_vs2026_x64_fastbuild - .cmake_test_windows_external - - .windows_x86_64_tags_concurrent_vs2022 + - .windows_x86_64_tags_concurrent_vs2026 - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" @@ -1404,7 +1416,7 @@ t:windows-borland5.5: - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" @@ -1416,7 +1428,7 @@ t:windows-borland5.8: - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" @@ -1424,11 +1436,11 @@ t:windows-clang19.1-cl-ninja: extends: - .windows_clang_ninja - .cmake_test_windows_external - - .windows_x86_64_tags_concurrent_vs2022 + - .windows_x86_64_tags_concurrent_vs2022_msvc14.44 - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_BUILD_NAME: windows_clang19.1_cl_ninja CMAKE_CI_JOB_NIGHTLY: "true" @@ -1437,11 +1449,11 @@ t:windows-clang19.1-cl-nmake: extends: - .windows_clang_nmake - .cmake_test_windows_external - - .windows_x86_64_tags_concurrent_vs2022 + - .windows_x86_64_tags_concurrent_vs2022_msvc14.44 - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_BUILD_NAME: windows_clang19.1_cl_nmake CMAKE_CI_JOB_NIGHTLY: "true" @@ -1450,11 +1462,11 @@ t:windows-clang19.1-gnu-ninja: extends: - .windows_clang_ninja - .cmake_test_windows_external - - .windows_x86_64_tags_concurrent_vs2022 + - .windows_x86_64_tags_concurrent_vs2022_msvc14.44 - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_BUILD_NAME: windows_clang19.1_gnu_ninja CMAKE_CI_JOB_NIGHTLY: "true" @@ -1463,11 +1475,11 @@ t:windows-clang19.1-gnu-nmake: extends: - .windows_clang_nmake - .cmake_test_windows_external - - .windows_x86_64_tags_concurrent_vs2022 + - .windows_x86_64_tags_concurrent_vs2022_msvc14.44 - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_BUILD_NAME: windows_clang19.1_gnu_nmake CMAKE_CI_JOB_NIGHTLY: "true" @@ -1480,7 +1492,7 @@ t:windows-intel2021.9-ninja: - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_BUILD_NAME: windows_intel2021.9_ninja CMAKE_CI_JOB_NIGHTLY: "true" @@ -1489,11 +1501,11 @@ t:windows-oneapi2025.1-ninja: extends: - .windows_inteloneapi_ninja - .cmake_test_windows_external - - .windows_x86_64_tags_concurrent_vs2022 + - .windows_x86_64_tags_concurrent_vs2022_msvc14.44 - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_BUILD_NAME: windows_oneapi2025.1_ninja CMAKE_CI_JOB_NIGHTLY: "true" @@ -1506,7 +1518,7 @@ t:mingw_osdn_io-mingw_makefiles: - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" @@ -1518,7 +1530,7 @@ t:mingw_osdn_io-msys_makefiles: - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" @@ -1530,7 +1542,7 @@ t:windows-msvc-v71-nmake: - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" @@ -1542,7 +1554,7 @@ t:windows-openwatcom1.9: - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" @@ -1554,31 +1566,43 @@ t:windows-orangec6.73.1: - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-vs2022-x64-ninja + - t:windows-vs2026-x64-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" # Windows arm64 jobs -b:windows-arm64-vs2022-ninja: +b:windows-arm64-vs2026-ninja: extends: - - .windows_arm64_vs2022_ninja + - .windows_arm64_vs2026_ninja - .cmake_build_windows - .cmake_build_artifacts - - .windows_arm64_tags_nonconcurrent_vs2022 + - .windows_arm64_tags_nonconcurrent_vs2026 - .run_manually variables: CMAKE_CI_JOB_NIGHTLY: "true" -t:windows-arm64-vs2022-ninja: +t:windows-arm64-vs2026-ninja: extends: - - .windows_arm64_vs2022_ninja + - .windows_arm64_vs2026_ninja - .cmake_test_windows - - .windows_arm64_tags_nonconcurrent_vs2022 + - .windows_arm64_tags_nonconcurrent_vs2026 - .cmake_test_artifacts - .run_dependent needs: - - b:windows-arm64-vs2022-ninja + - b:windows-arm64-vs2026-ninja + variables: + CMAKE_CI_JOB_NIGHTLY: "true" + +t:windows-arm64-vs2026: + extends: + - .windows_arm64_vs2026 + - .cmake_test_windows_external + - .windows_arm64_tags_concurrent_vs2026 + - .cmake_junit_artifacts + - .run_dependent + needs: + - t:windows-arm64-vs2026-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" @@ -1590,7 +1614,7 @@ t:windows-arm64-vs2022: - .cmake_junit_artifacts - .run_dependent needs: - - t:windows-arm64-vs2022-ninja + - t:windows-arm64-vs2026-ninja variables: CMAKE_CI_JOB_NIGHTLY: "true" @@ -1601,7 +1625,7 @@ b:windows-x86_64-package: - .windows_x86_64_package - .cmake_build_windows - .cmake_build_package_artifacts - - .windows_x86_64_tags_nonconcurrent_vs2022 + - .windows_x86_64_tags_nonconcurrent_vs2026 - .run_only_for_package needs: - p:doc-package @@ -1632,7 +1656,7 @@ b:windows-i386-package: - .windows_i386_package - .cmake_build_windows - .cmake_build_package_artifacts - - .windows_x86_64_tags_nonconcurrent_vs2022 + - .windows_x86_64_tags_nonconcurrent_vs2026 - .run_only_for_package needs: - p:doc-package @@ -1663,7 +1687,7 @@ b:windows-arm64-package: - .windows_arm64_package - .cmake_build_windows - .cmake_build_package_artifacts - - .windows_x86_64_tags_nonconcurrent_vs2022_arm64 + - .windows_x86_64_tags_nonconcurrent_vs2026_arm64 - .run_only_for_package needs: - p:doc-package diff --git a/.gitlab/ci/configure_windows_arm64_vs2026.cmake b/.gitlab/ci/configure_windows_arm64_vs2026.cmake new file mode 100644 index 0000000000..51ee514eb2 --- /dev/null +++ b/.gitlab/ci/configure_windows_arm64_vs2026.cmake @@ -0,0 +1,4 @@ +set(CMake_TEST_MODULE_COMPILATION "named,partitions,internal_partitions,shared" CACHE STRING "") + +include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_msvc_cxx_modules_common.cmake") +include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_vs_common.cmake") diff --git a/.gitlab/ci/configure_windows_arm64_vs2022_ninja.cmake b/.gitlab/ci/configure_windows_arm64_vs2026_ninja.cmake similarity index 100% rename from .gitlab/ci/configure_windows_arm64_vs2022_ninja.cmake rename to .gitlab/ci/configure_windows_arm64_vs2026_ninja.cmake diff --git a/.gitlab/ci/configure_windows_vs2022_x64_i18n.cmake b/.gitlab/ci/configure_windows_vs2022_x64_i18n.cmake deleted file mode 100644 index 3932f8a6a3..0000000000 --- a/.gitlab/ci/configure_windows_vs2022_x64_i18n.cmake +++ /dev/null @@ -1 +0,0 @@ -include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_vs2022_x64.cmake") diff --git a/.gitlab/ci/configure_windows_vs2026_x64.cmake b/.gitlab/ci/configure_windows_vs2026_x64.cmake new file mode 100644 index 0000000000..89cfddafa7 --- /dev/null +++ b/.gitlab/ci/configure_windows_vs2026_x64.cmake @@ -0,0 +1,8 @@ +if (NOT "$ENV{CMAKE_CI_NIGHTLY}" STREQUAL "") + set(CMake_TEST_ANDROID_VS18 ON CACHE BOOL "") +endif() + +set(CMake_TEST_MODULE_COMPILATION "named,partitions,internal_partitions,shared" CACHE STRING "") + +include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_msvc_cxx_modules_common.cmake") +include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_vs_common.cmake") diff --git a/.gitlab/ci/configure_windows_vs2022_x64_fastbuild.cmake b/.gitlab/ci/configure_windows_vs2026_x64_fastbuild.cmake similarity index 100% rename from .gitlab/ci/configure_windows_vs2022_x64_fastbuild.cmake rename to .gitlab/ci/configure_windows_vs2026_x64_fastbuild.cmake diff --git a/.gitlab/ci/configure_windows_vs2026_x64_i18n.cmake b/.gitlab/ci/configure_windows_vs2026_x64_i18n.cmake new file mode 100644 index 0000000000..958351ddf0 --- /dev/null +++ b/.gitlab/ci/configure_windows_vs2026_x64_i18n.cmake @@ -0,0 +1 @@ +include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_vs2026_x64.cmake") diff --git a/.gitlab/ci/configure_windows_vs2022_x64_jom.cmake b/.gitlab/ci/configure_windows_vs2026_x64_jom.cmake similarity index 100% rename from .gitlab/ci/configure_windows_vs2022_x64_jom.cmake rename to .gitlab/ci/configure_windows_vs2026_x64_jom.cmake diff --git a/.gitlab/ci/configure_windows_vs2022_x64_ninja.cmake b/.gitlab/ci/configure_windows_vs2026_x64_ninja.cmake similarity index 100% rename from .gitlab/ci/configure_windows_vs2022_x64_ninja.cmake rename to .gitlab/ci/configure_windows_vs2026_x64_ninja.cmake diff --git a/.gitlab/ci/configure_windows_vs2022_x64_ninja_multi.cmake b/.gitlab/ci/configure_windows_vs2026_x64_ninja_multi.cmake similarity index 100% rename from .gitlab/ci/configure_windows_vs2022_x64_ninja_multi.cmake rename to .gitlab/ci/configure_windows_vs2026_x64_ninja_multi.cmake diff --git a/.gitlab/ci/configure_windows_vs2022_x64_nmake.cmake b/.gitlab/ci/configure_windows_vs2026_x64_nmake.cmake similarity index 100% rename from .gitlab/ci/configure_windows_vs2022_x64_nmake.cmake rename to .gitlab/ci/configure_windows_vs2026_x64_nmake.cmake diff --git a/.gitlab/ci/configure_windows_vs2022_x64_pch.cmake b/.gitlab/ci/configure_windows_vs2026_x64_pch.cmake similarity index 100% rename from .gitlab/ci/configure_windows_vs2022_x64_pch.cmake rename to .gitlab/ci/configure_windows_vs2026_x64_pch.cmake diff --git a/.gitlab/ci/download_qt.cmake b/.gitlab/ci/download_qt.cmake index d2560dd125..0c0d3d1df4 100644 --- a/.gitlab/ci/download_qt.cmake +++ b/.gitlab/ci/download_qt.cmake @@ -36,7 +36,8 @@ elseif ("$ENV{CMAKE_CONFIGURATION}" MATCHES "windows") set(qt_abi "win64_msvc${msvc_year}_64") elseif ("$ENV{CMAKE_CONFIGURATION}" MATCHES "vs2017" OR "$ENV{CMAKE_CONFIGURATION}" MATCHES "vs2019" OR - "$ENV{CMAKE_CONFIGURATION}" MATCHES "vs2022") + "$ENV{CMAKE_CONFIGURATION}" MATCHES "vs2022" OR + "$ENV{CMAKE_CONFIGURATION}" MATCHES "vs2026") set(qt_platform "windows_x86") set(msvc_year "2019") set(qt_abi "win64_msvc${msvc_year}_64") diff --git a/.gitlab/ci/env_windows_arm64_vs2022_ninja.ps1 b/.gitlab/ci/env_windows_arm64_vs2026_ninja.ps1 similarity index 100% rename from .gitlab/ci/env_windows_arm64_vs2022_ninja.ps1 rename to .gitlab/ci/env_windows_arm64_vs2026_ninja.ps1 diff --git a/.gitlab/ci/env_windows_vs2026_x64.ps1 b/.gitlab/ci/env_windows_vs2026_x64.ps1 new file mode 100644 index 0000000000..42aec1132d --- /dev/null +++ b/.gitlab/ci/env_windows_vs2026_x64.ps1 @@ -0,0 +1,4 @@ +if ("$env:CMAKE_CI_NIGHTLY" -eq "true") { + $cmake = "build\install\bin\cmake" + . ".gitlab/ci/qt-env.ps1" +} diff --git a/.gitlab/ci/env_windows_vs2022_x64_fastbuild.ps1 b/.gitlab/ci/env_windows_vs2026_x64_fastbuild.ps1 similarity index 100% rename from .gitlab/ci/env_windows_vs2022_x64_fastbuild.ps1 rename to .gitlab/ci/env_windows_vs2026_x64_fastbuild.ps1 diff --git a/.gitlab/ci/env_windows_vs2022_x64_jom.ps1 b/.gitlab/ci/env_windows_vs2026_x64_jom.ps1 similarity index 100% rename from .gitlab/ci/env_windows_vs2022_x64_jom.ps1 rename to .gitlab/ci/env_windows_vs2026_x64_jom.ps1 diff --git a/.gitlab/ci/env_windows_vs2022_x64_ninja.ps1 b/.gitlab/ci/env_windows_vs2026_x64_ninja.ps1 similarity index 100% rename from .gitlab/ci/env_windows_vs2022_x64_ninja.ps1 rename to .gitlab/ci/env_windows_vs2026_x64_ninja.ps1 diff --git a/.gitlab/ci/env_windows_vs2022_x64_ninja_multi.ps1 b/.gitlab/ci/env_windows_vs2026_x64_ninja_multi.ps1 similarity index 100% rename from .gitlab/ci/env_windows_vs2022_x64_ninja_multi.ps1 rename to .gitlab/ci/env_windows_vs2026_x64_ninja_multi.ps1 diff --git a/.gitlab/ci/env_windows_vs2022_x64_nmake.ps1 b/.gitlab/ci/env_windows_vs2026_x64_nmake.ps1 similarity index 100% rename from .gitlab/ci/env_windows_vs2022_x64_nmake.ps1 rename to .gitlab/ci/env_windows_vs2026_x64_nmake.ps1 diff --git a/.gitlab/os-windows.yml b/.gitlab/os-windows.yml index 7210323b9f..3b19d4c741 100644 --- a/.gitlab/os-windows.yml +++ b/.gitlab/os-windows.yml @@ -37,52 +37,58 @@ VCVARSPLATFORM: "x64" VCVARSVERSION: "14.43.34808" -.windows_vcvarsall_vs2022_x64: +.windows_vcvarsall_vs2022_x64_msvc14.44: variables: VCVARSALL: "${VS170COMNTOOLS}\\..\\..\\VC\\Auxiliary\\Build\\vcvarsall.bat" VCVARSPLATFORM: "x64" VCVARSVERSION: "14.44.35207" -.windows_vcvarsall_vs2022_x86: +.windows_vcvarsall_vs2026_x64: variables: - VCVARSALL: "${VS170COMNTOOLS}\\..\\..\\VC\\Auxiliary\\Build\\vcvarsall.bat" + VCVARSALL: "${VS180COMNTOOLS}\\..\\..\\VC\\Auxiliary\\Build\\vcvarsall.bat" + VCVARSPLATFORM: "x64" + VCVARSVERSION: "14.50.35717" + +.windows_vcvarsall_vs2026_x86: + variables: + VCVARSALL: "${VS180COMNTOOLS}\\..\\..\\VC\\Auxiliary\\Build\\vcvarsall.bat" VCVARSPLATFORM: "x86" - VCVARSVERSION: "14.44.35207" + VCVARSVERSION: "14.50.35717" -.windows_vcvarsall_vs2022_x64_arm64: +.windows_vcvarsall_vs2026_x64_arm64: variables: - VCVARSALL: "${VS170COMNTOOLS}\\..\\..\\VC\\Auxiliary\\Build\\vcvarsall.bat" + VCVARSALL: "${VS180COMNTOOLS}\\..\\..\\VC\\Auxiliary\\Build\\vcvarsall.bat" VCVARSPLATFORM: "x64_arm64" - VCVARSVERSION: "14.44.35207" + VCVARSVERSION: "14.50.35717" -.windows_arm64_vcvarsall_vs2022: +.windows_arm64_vcvarsall_vs2026: variables: - VCVARSALL: "${VS170COMNTOOLS}\\..\\..\\VC\\Auxiliary\\Build\\vcvarsall.bat" + VCVARSALL: "${VS180COMNTOOLS}\\..\\..\\VC\\Auxiliary\\Build\\vcvarsall.bat" VCVARSPLATFORM: "arm64" - VCVARSVERSION: "14.44.35207" + VCVARSVERSION: "14.50.35717" -.windows_vs2022_x64_pch: +.windows_vs2026_x64_pch: extends: - - .windows_vs2022_x64_ninja + - .windows_vs2026_x64_ninja variables: - CMAKE_CONFIGURATION: windows_vs2022_x64_pch + CMAKE_CONFIGURATION: windows_vs2026_x64_pch -.windows_vs2022_x64_ninja: +.windows_vs2026_x64_ninja: extends: - .windows_build_ninja - - .windows_vcvarsall_vs2022_x64 + - .windows_vcvarsall_vs2026_x64 variables: - CMAKE_CONFIGURATION: windows_vs2022_x64_ninja + CMAKE_CONFIGURATION: windows_vs2026_x64_ninja -.windows_arm64_vs2022_ninja: +.windows_arm64_vs2026_ninja: extends: - .windows_build_ninja - - .windows_arm64_vcvarsall_vs2022 + - .windows_arm64_vcvarsall_vs2026 variables: - CMAKE_CONFIGURATION: windows_arm64_vs2022_ninja + CMAKE_CONFIGURATION: windows_arm64_vs2026_ninja .windows_package: extends: @@ -95,7 +101,7 @@ .windows_x86_64_package: extends: - .windows_package - - .windows_vcvarsall_vs2022_x64 + - .windows_vcvarsall_vs2026_x64 variables: CMAKE_CONFIGURATION: windows_x86_64_package @@ -103,7 +109,7 @@ .windows_i386_package: extends: - .windows_package - - .windows_vcvarsall_vs2022_x86 + - .windows_vcvarsall_vs2026_x86 variables: CMAKE_CONFIGURATION: windows_i386_package @@ -111,13 +117,23 @@ .windows_arm64_package: extends: - .windows_package - - .windows_vcvarsall_vs2022_x64_arm64 + - .windows_vcvarsall_vs2026_x64_arm64 variables: CMAKE_CONFIGURATION: windows_arm64_package ### External testing +.windows_vs2026_x64: + extends: .windows + + variables: + CMAKE_CONFIGURATION: windows_vs2026_x64 + CMAKE_GENERATOR: "Visual Studio 18 2026" + CMAKE_GENERATOR_PLATFORM: "x64" + CMAKE_GENERATOR_TOOLSET: "v145,version=14.50.35717" + CMAKE_CI_NIGHTLY_IGNORE_DEPS: "true" + .windows_vs2022_x64: extends: .windows @@ -197,42 +213,42 @@ CMAKE_CI_BUILD_TYPE: Release CMAKE_CI_NIGHTLY_IGNORE_DEPS: "true" -.windows_vs2022_x64_nmake: +.windows_vs2026_x64_nmake: extends: - .windows_nmake - - .windows_vcvarsall_vs2022_x64 + - .windows_vcvarsall_vs2026_x64 variables: - CMAKE_CONFIGURATION: windows_vs2022_x64_nmake + CMAKE_CONFIGURATION: windows_vs2026_x64_nmake -.windows_vs2022_x64_jom: +.windows_vs2026_x64_jom: extends: - .windows_jom - - .windows_vcvarsall_vs2022_x64 + - .windows_vcvarsall_vs2026_x64 variables: - CMAKE_CONFIGURATION: windows_vs2022_x64_jom + CMAKE_CONFIGURATION: windows_vs2026_x64_jom -.windows_vs2022_x64_ninja_multi: +.windows_vs2026_x64_ninja_multi: extends: - .windows_ninja_multi - - .windows_vcvarsall_vs2022_x64 + - .windows_vcvarsall_vs2026_x64 variables: - CMAKE_CONFIGURATION: windows_vs2022_x64_ninja_multi + CMAKE_CONFIGURATION: windows_vs2026_x64_ninja_multi -.windows_vs2022_x64_fastbuild: +.windows_vs2026_x64_fastbuild: extends: - .windows_fastbuild - - .windows_vcvarsall_vs2022_x64 + - .windows_vcvarsall_vs2026_x64 variables: - CMAKE_CONFIGURATION: windows_vs2022_x64_fastbuild + CMAKE_CONFIGURATION: windows_vs2026_x64_fastbuild .windows_clang_ninja: extends: - .windows_ninja - - .windows_vcvarsall_vs2022_x64 + - .windows_vcvarsall_vs2022_x64_msvc14.44 variables: CMAKE_CONFIGURATION: windows_clang_ninja @@ -240,7 +256,7 @@ .windows_clang_nmake: extends: - .windows_nmake - - .windows_vcvarsall_vs2022_x64 + - .windows_vcvarsall_vs2022_x64_msvc14.44 variables: CMAKE_CONFIGURATION: windows_clang_nmake @@ -262,7 +278,7 @@ .windows_inteloneapi_ninja: extends: - .windows_ninja - - .windows_vcvarsall_vs2022_x64 + - .windows_vcvarsall_vs2022_x64_msvc14.44 variables: CMAKE_CONFIGURATION: windows_inteloneapi_ninja @@ -297,6 +313,16 @@ variables: CMAKE_CONFIGURATION: windows_orangec6.73.1 +.windows_arm64_vs2026: + extends: .windows + + variables: + CMAKE_CONFIGURATION: windows_arm64_vs2026 + CMAKE_GENERATOR: "Visual Studio 18 2026" + CMAKE_GENERATOR_PLATFORM: "ARM64" + CMAKE_GENERATOR_TOOLSET: "v145,version=14.50.35717" + CMAKE_CI_NIGHTLY_IGNORE_DEPS: "true" + .windows_arm64_vs2022: extends: .windows @@ -340,25 +366,44 @@ - sign-windows-v1 - nonconcurrent -.windows_x86_64_tags_nonconcurrent_vs2022: +.windows_x86_64_tags_nonconcurrent_vs2026: tags: - cmake # Since this is a bare runner, pin to a project. - windows-x86_64 - shell - - vs2022 - - msvc-14.44 + - vs2026 + - msvc-14.50 - nonconcurrent -.windows_x86_64_tags_nonconcurrent_vs2022_arm64: +.windows_x86_64_tags_nonconcurrent_vs2026_arm64: tags: - cmake # Since this is a bare runner, pin to a project. - windows-x86_64 - shell - - vs2022 - - msvc-14.44-arm64 + - vs2026 + - msvc-14.50-arm64 - nonconcurrent -.windows_x86_64_tags_concurrent_vs2022: +.windows_x86_64_tags_concurrent_vs2026: + tags: + - cmake # Since this is a bare runner, pin to a project. + - windows-x86_64 + - shell + - vs2026 + - msvc-14.50 + - concurrent + +.windows_x86_64_tags_concurrent_vs2026_android: + tags: + - cmake # Since this is a bare runner, pin to a project. + - windows-x86_64 + - shell + - vs2026 + - vs18-android + - msvc-14.50 + - concurrent + +.windows_x86_64_tags_concurrent_vs2022_msvc14.44: tags: - cmake # Since this is a bare runner, pin to a project. - windows-x86_64 @@ -403,15 +448,24 @@ - shell - concurrent -.windows_arm64_tags_nonconcurrent_vs2022: +.windows_arm64_tags_nonconcurrent_vs2026: tags: - cmake # Since this is a bare runner, pin to a project. - windows-arm64 - shell - - vs2022 - - msvc-14.44 + - vs2026 + - msvc-14.50 - nonconcurrent +.windows_arm64_tags_concurrent_vs2026: + tags: + - cmake # Since this is a bare runner, pin to a project. + - windows-arm64 + - shell + - vs2026 + - msvc-14.50 + - concurrent + .windows_arm64_tags_concurrent_vs2022: tags: - cmake # Since this is a bare runner, pin to a project.