442 Commits

Author SHA1 Message Date
Brad King 0148923b5b Merge topic 'ci-xcode-14.2' into release-3.25
85d2ce0bfe gitlab-ci: update macOS jobs to use Xcode 14.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8023
2022-12-16 08:49:48 -05:00
Brad King 85d2ce0bfe gitlab-ci: update macOS jobs to use Xcode 14.2 2022-12-15 17:43:58 -05:00
Brad King 2bf1ce6cc3 gitlab-ci: drop unnecessary linux kernel version tag on 3.25 release branch
All our CI hosts now have Linux kernel version 3.17 or higher,
so we no longer need a dedicated tag.

This backports commit c212c7dc8b (gitlab-ci: drop unnecessary linux
kernel version tag, 2022-11-30) to the 3.25 release branch.
2022-12-06 13:27:39 -05:00
Brad King 429574a94e gitlab-ci: replace '$os' tags with '$os-x86_64' on 3.25 release branch
The latter tags are now available on our CI runners to more explicitly
distinguish `linux-x86_64` from `linux-aarch64` and to distinguish
`{macos,windows}-x86_64` from `{macos,windows}-arm64`.

This backports commit 33fe37a660 (gitlab-ci: replace '{macos,windows}'
tags with '{macos,windows}-x86_64', 2022-11-30) and commit 94d82d91d5
(gitlab-ci: replace 'linux' tags with 'linux-x86_64', 2022-11-30) to
the 3.25 release branch.
2022-12-06 13:24:07 -05:00
Ben Boeckel 12e4bc73cb MSVC: don't opt into dyndep support
Instead, just set the variables for how scanning works since that is
part of the compiler mechanisms.

Fixes: #24198
2022-11-28 18:02:51 -05:00
Ben Boeckel 0e9782b336 msvc: bless MSVC 19.34 support for C++ modules as experimental
Visual Studio 17.4 now contains official support for what CMake needs.
2022-11-11 16:54:05 -05:00
Brad King bd5176abac gitlab-ci: Update Windows packaging builds to MSVC 14.34 toolset
Problems with `cmake-gui` when compiled with the MSVC 14.33 toolset,
that did not occur with the MSVC 14.32 toolset, no longer occur with the
MSVC 14.34 toolset.  Revert commit cb8b27a901 (gitlab-ci: Use separate
MSVC toolset specification for packaging jobs, 2022-08-18, v3.24.2~24^2~1)
and update the remaining toolset version references.

Fixes: #23859
2022-11-10 13:27:38 -05:00
Brad King ccdff280f4 gitlab-ci: Update Windows non-packaging builds to MSVC 14.34 toolset 2022-11-10 13:27:37 -05:00
Brad King 46b2849550 ci: Update LLVM/Clang to 15.0 in nightly CI jobs on Windows 2022-11-10 13:24:57 -05:00
Brad King 3eb94e4d51 ci: Simplify LLVM/Clang CI job specs on Windows
Move environment setup to job-specific scripts so we can reuse
the common `.cmake_test_windows_external` code path.
2022-11-10 13:24:51 -05:00
Brad King 8ba5835c8d ci: Factor out helper to load clang into environment on Windows 2022-11-10 13:24:31 -05:00
Brad King bf2e4a2e85 ci: Factor out helper to load ninja into environment on Windows 2022-11-10 12:57:55 -05:00
Brad King 8ad7e55308 Merge topic 'ci-xcode-14.1' into release-3.25
0d3d687067 gitlab-ci: update macOS jobs to use Xcode 14.1
9684a589ca Source: Replace uses of sprintf with safer snprintf in CMake 3.24 branch
eea23d21a3 Source: Tell Git not to check whitespace in third-party curses form code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7863
2022-11-04 11:24:19 -04:00
Brad King 0d3d687067 gitlab-ci: update macOS jobs to use Xcode 14.1 2022-11-03 11:58:31 -04:00
Brad King 48ea2ce504 ci: Update debian10-ninja job to use Swift 5.7.1 2022-11-02 13:28:52 -04:00
Brad King c23ebfa333 ci: Tell Git to ignore files known to be downloaded by jobs 2022-10-05 12:22:49 -04:00
Kyle Edwards c239e7c259 ci: add include-what-you-use to Fedora base image 2022-10-04 13:30:52 -04:00
Brad King 42c0428e5f Merge topic 'ci-xcode-14.0'
9cdf4c9be4 gitlab-ci: update macOS jobs to use Xcode 14.0
5d2c2b2558 Tests: Update RunCMake.XcodeProject iOS cases for Xcode 14.0
12c6fec6b4 Xcode: Drop CMAKE_INTDIR= definition in Swift targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7732
2022-10-03 10:31:27 -04:00
Brad King 9cdf4c9be4 gitlab-ci: update macOS jobs to use Xcode 14.0 2022-09-30 13:08:06 -04:00
Brad King 9c8c965435 ci: Revert "add clang-tidy to Debian x86_64 base image"
Revert commit 0ac9ec47f6 (ci: add clang-tidy to Debian x86_64 base
image, 2022-09-20).  Our clang-tidy job runs under Fedora, and we need
the plugin to compile there anyway, so lints like IWYU will best be done
in the Fedora image.

Issue: #23912
2022-09-29 11:19:42 -04:00
Kyle Edwards 0ac9ec47f6 ci: add clang-tidy to Debian x86_64 base image
Issue: #23912
2022-09-22 11:44:59 -04:00
Brad King 94b27ccc36 ci: add support for gitlab-runner 'shell = pwsh' executor
Run powershell child scripts using the same powershell tool as the
parent script.
2022-09-12 12:47:42 -04:00
Brad King de32c8ddbe ci: start every windows job with custom environment script 2022-09-12 12:45:45 -04:00
Brad King 906b1a0bc4 ci: allow powershell variables assigned in env scripts to persist
Load env scripts with `.` sourcing instead of `Invoke-Expression`.
This allows powershell variables to persist, much like bash.

Leave helper script loading unchanged, as those scripts may set
powershell variables that we do not want to persist.
2022-09-12 12:42:25 -04:00
Kyle Edwards 703f39354e ci: add clang-tidy development headers to Fedora base image
Prepare to build our own clang-tidy plugin in CI.
2022-08-31 15:07:20 -04:00
Dawid Wróbel e706da5f7e FindOpenSP: Add module to find the OpenSP library
OpenSP has not seen a release in seventeen years, so is unlikely to ever
provide a CMake package configuration file.  Add a find module instead.
2022-08-30 13:55:07 -04:00
Brad King 4bcdf1b992 ci: add OpenSP to Debian and Fedora base images 2022-08-30 12:46:03 -04:00
Brad King 3490d7a9fc ci: Enable MSVC C++ module support tests
Since commit b87645b6a5 (gitlab-ci: Update non-packaging Windows builds
to MSVC 14.33 toolset, 2022-08-18), the version of MSVC used in CI test
jobs supports the `cl -scanDependencies` functionality we need to
support C++ modules.  Enable the corresponding tests.
2022-08-22 16:50:51 -04:00
Brad King b9dd9b09a2 Merge topic 'ci-msvc-14.33'
b87645b6a5 gitlab-ci: Update non-packaging Windows builds to MSVC 14.33 toolset
cb8b27a901 gitlab-ci: Use separate MSVC toolset specification for packaging jobs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7597
2022-08-22 09:46:29 -04:00
Brad King b87645b6a5 gitlab-ci: Update non-packaging Windows builds to MSVC 14.33 toolset
Restore the change from commit 6f17996edc (gitlab-ci: Update Windows
builds to MSVC 14.33 toolset, 2022-08-15, v3.24.1~3^2), but not for
packaging jobs.  `cmake-gui` is still buggy when compiled with
the newer toolset.

Issue: #23859
2022-08-19 07:30:54 -04:00
Brad King cb8b27a901 gitlab-ci: Use separate MSVC toolset specification for packaging jobs
This will be useful for testing CMake with one version of MSVC
while packaging the official binaries with another version.

Issue: #23859
2022-08-19 07:30:42 -04:00
Brad King fbef4c6ced Merge topic 'ci-linux-extdeps'
b55152e7ad gitlab-ci: add jobs to test CMake with external dependencies on Linux
6a05d107ca ci: add CMake external build dependencies to Debian and Fedora base images
d3c1b8a491 jsoncpp: Require version 1.6.0 when using system-provided library
68d3ca7008 Tests: Fix RunCMake.FileAPI test with jsoncpp < 1.7.5

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7592
2022-08-19 07:20:18 -04:00
Brad King dc4c0e29a4 Merge topic 'ci-cmake-update'
05a1464689 ci: use CMake 3.24.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7590
2022-08-19 07:17:34 -04:00
Brad King b55152e7ad gitlab-ci: add jobs to test CMake with external dependencies on Linux
Test that CMake works without its bundled dependencies.
For some dependencies, test using the minimum supported version.
2022-08-18 15:49:08 -04:00
Brad King 6a05d107ca ci: add CMake external build dependencies to Debian and Fedora base images 2022-08-18 15:49:08 -04:00
Brad King 05a1464689 ci: use CMake 3.24.1 2022-08-18 10:01:20 -04:00
Brad King 1bb359464f Merge topic 'revert-ci-msvc-14.33'
3a7202bfc7 gitlab-ci: Revert Windows builds from MSVC 14.33 to MSVC 14.32 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7586
2022-08-17 12:51:07 -04:00
Brad King 3a7202bfc7 gitlab-ci: Revert Windows builds from MSVC 14.33 to MSVC 14.32 toolset
Revert commit 6f17996edc (gitlab-ci: Update Windows builds to MSVC 14.33
toolset, 2022-08-15).  A `cmake-gui` built with the MSVC 14.33 toolset
emits spurious errors when configuring CMake projects, even when the
adjacent `cmake` binary succeeds reliably.  Revert to the known-working
MSVC 14.32 toolset pending further investigation.

Issue: #23859
2022-08-17 12:43:07 -04:00
Brad King 8a2eafe485 Merge topic 'ci-msvc-14.33'
6f17996edc gitlab-ci: Update Windows builds to MSVC 14.33 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7578
2022-08-17 08:34:06 -04:00
Brad King 6f17996edc gitlab-ci: Update Windows builds to MSVC 14.33 toolset 2022-08-16 13:20:48 -04:00
Brad King 3afb7b25fb Merge topic 'remove-cmakeserverlib-references'
bf7e3124cb Remove stale references to CMakeServerLib

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7537
2022-08-03 09:45:55 -04:00
Brad King e2112b3778 Merge topic 'cpp-named-module-support-msvc'
4f95e6b284 ci: test BMI exporting and installation with GCC in CI
c49d5f137b RunCMake/CXXModules: add a "deep-chain" test
297e0f4dce cmCxxModuleMapper: support MSVC module map format
b3c2880cb2 cmCxxModuleMapper: track transitive modules for MSVC
a43713d615 CTestCustom: ignore `cm::optional` uninitialized memory false positive
b90de0b492 RunCMake/CXXModules: support MSVC extensions
a84c186a7d cmScanDepFormat: support the MSVC 17.3 toolchain temporarily
d7f5064ff7 cmScanDepFormat: support P1689R5
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7481
2022-08-03 09:45:15 -04:00
Brad King 734c2f8944 Merge topic 'ci-wix-host'
9ff7fffbf4 ci: host WiX 3.14.0.6526 binaries ourselves

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7538
2022-08-03 09:37:55 -04:00
Brad King 9ff7fffbf4 ci: host WiX 3.14.0.6526 binaries ourselves
Since commit 06c6e76a12 (ci: update to WiX 3.14.0.6526, 2022-06-10,
v3.24.0-rc1~4^2~2) we download the WiX binaries from `wixtoolset.org`
instead of a `github.com` CDN.  Avoid hitting their organization site
on every CI job by hosting the binaries at `cmake.org`.
2022-08-02 14:38:22 -04:00
Kyle Edwards bf7e3124cb Remove stale references to CMakeServerLib 2022-08-02 11:05:52 -04:00
Ben Boeckel 4f95e6b284 ci: test BMI exporting and installation with GCC in CI 2022-08-02 10:53:38 -04:00
Brad King 7d0d6d7e44 Merge topic 'ci-xcode-13.4'
eddf057830 gitlab-ci: update macOS jobs to use Xcode 13.4

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7520
2022-07-28 10:39:08 -04:00
Brad King da7f3c09bf Merge topic 'ci-xcode-13.4' into release-3.24
eddf057830 gitlab-ci: update macOS jobs to use Xcode 13.4

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7520
2022-07-28 10:39:07 -04:00
Brad King eddf057830 gitlab-ci: update macOS jobs to use Xcode 13.4 2022-07-28 09:27:27 -04:00
Brad King 71a6982e91 Merge topic 'gcc-modules-ci-missing-git'
5db79b5cd3 gitlab-ci: update to an image with git installed
3e1ace7f46 ci: add git to the CI image

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7398
2022-06-23 09:37:40 -04:00