Commit Graph

698 Commits

Author SHA1 Message Date
Brad King
ad91bc558a ci: Make node available to Emscripten tests 2025-11-25 15:45:46 -05:00
Brad King
ffa010e32d 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.
2025-11-22 18:58:25 -05:00
Brad King
87c4af996f ci: Enable c++modules shared libraries test on VS ARM64 jobs
This was missed in commit d90a61d671 (VS: Make C++ module BMIs public by
default for shared libraries, 2023-06-08, v3.27.0-rc4~12^2).
2025-11-22 18:54:42 -05:00
Brad King
f5cc8869fb ci: Update CMake version to 4.2.0 2025-11-20 10:57:05 -05:00
Brad King
1445a8e7db ci: use Debian 13 images and environments 2025-11-12 14:35:12 -05:00
Brad King
9eedf6c1a9 ci: Update base images to Debian 13 2025-11-12 14:35:11 -05:00
Brad King
36bdb7b2de ci: Update to TIClang 4.0.4 2025-11-12 14:35:11 -05:00
Brad King
48f091a166 ci: Update debian12-ninja job to use Swift 6.2.1 2025-11-12 14:35:11 -05:00
Brad King
a61ef50ea6 ci: Update Fedora 43 base image to get bzr and flang fixes
* breezy: https://bugzilla.redhat.com/show_bug.cgi?id=2366194
* flang: https://bugzilla.redhat.com/show_bug.cgi?id=2401176
2025-11-06 15:46:52 -05:00
Brad King
2338d987d5 ci: use Fedora 43 images and environments 2025-10-30 17:46:06 -04:00
Brad King
5219f383fe ci: update Fedora base images to Fedora 43
Also update to typos 1.38.1.
2025-10-30 17:43:17 -04:00
Brad King
d3fff14192 Merge topic 'ci-macos-sdk' into release-4.2
baa8cab401 ci: Revert packaging to macOS 15.5 SDK to restore cmake-gui rendering
aa1a122514 ci: Add script to install macOS SDK version 15.5
b33a5366f4 ci: Add script to repackage macOS SDKs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11359
2025-10-27 09:21:43 -04:00
Brad King
baa8cab401 ci: Revert packaging to macOS 15.5 SDK to restore cmake-gui rendering
Since commit 965a12cb8a (ci: update macOS jobs to use Xcode 26.0,
2025-09-18, v4.1.2~9^2) and commit 9d302ecd47 (ci: update macOS jobs to
use Xcode 26.0 in CMake 3.31 branch, 2025-10-07) our macOS 10.13+
packages are built using the macOS 26 SDK, with which Qt 5.15.2 does not
render buttons in `cmake-gui` correctly.  Revert to an older macOS SDK
to avoid the problem until we update our Qt version.

Fixes: #27325
2025-10-25 20:57:13 -04:00
Brad King
aa1a122514 ci: Add script to install macOS SDK version 15.5
With Xcode 16.4, run

    env SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk \
    .gitlab/ci/repackage/macos.sh

and host `MacOSX15.5.sdk.tar.bz2` ourselves.
2025-10-25 20:54:16 -04:00
Brad King
b33a5366f4 ci: Add script to repackage macOS SDKs 2025-10-25 20:49:13 -04:00
Brad King
2cfae5e140 ci: Add job for CUDA with FASTBuild generator on Linux
Issue: #27318
2025-10-25 08:58:38 -04:00
Brad King
491ff20ab3 ci: add unzip to cuda13.0 base image
This is needed to extract FASTBuild binaries in CI jobs.
2025-10-20 15:44:45 -04:00
Brad King
d5cfe692c9 Merge topic 'ci-valgrind'
e981fc4f4d gitlab-ci: add a job to test with Valgrind on Linux with Ninja
f1e8762a8b ci: support valgrind memcheck runs
f22d8a3f36 ci: support memcheck-testing external test processes
35337bcc06 gitlab-ci: report JUnit results for memcheck runs
8459ff022b ci: factor out memcheck "prep" logic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11257
2025-10-08 09:11:58 -04:00
Ben Boeckel
e981fc4f4d gitlab-ci: add a job to test with Valgrind on Linux with Ninja 2025-10-07 10:47:42 -04:00
Ben Boeckel
f1e8762a8b ci: support valgrind memcheck runs 2025-10-07 10:47:42 -04:00
Ben Boeckel
f22d8a3f36 ci: support memcheck-testing external test processes 2025-10-06 15:26:00 -04:00
Ben Boeckel
35337bcc06 gitlab-ci: report JUnit results for memcheck runs 2025-10-06 15:26:00 -04:00
Ben Boeckel
8459ff022b ci: factor out memcheck "prep" logic
This is to support running memcheck as part of the "standalone"
workflow.
2025-10-06 15:26:00 -04:00
Brad King
fa9a556c7f ci: Drop unnecessary hard-coding of C++11 in gcov jobs
In commit f7b0ddbe92 (gitlab-ci: add a series of jobs to perform
coverage, 2025-09-24) we accidentally copied the C++11 specification
from the `fedora42-ninja` jobs.  Drop it.
2025-10-06 10:03:14 -04:00
Brad King
8f166fa51e ci: Add jobs to perform coverage with BullseyeCoverage on Linux 2025-10-05 07:04:03 -04:00
Brad King
cb3d917289 ci: Add script to install BullseyeCoverage in Linux jobs 2025-10-05 07:03:49 -04:00
Brad King
2548b6e24d ci: add pre-test step 2025-10-03 18:33:39 -04:00
Brad King
8d0ecda821 ci: add pre-build step after configure but before build 2025-10-03 18:17:15 -04:00
Brad King
206b831973 ci: rename pre-build step to pre-configure since that is when it runs 2025-10-03 18:17:14 -04:00
Brad King
ceecafd7d5 Merge topic 'ci-gcov'
f7b0ddbe92 gitlab-ci: add a series of jobs to perform coverage
cedd32892e ci: support setting a different test timeout for CI
da4a1ec2ff gitlab-ci: add support for running gcov-based coverage
61aed5e5f2 CTestCustom: ignore coverage results from coverage tests
7191d72acd Tests/EnforceConfig: clear the `CMAKE_BUILD_TYPE` environment variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11245
2025-10-01 11:39:29 -04:00
Ben Boeckel
f7b0ddbe92 gitlab-ci: add a series of jobs to perform coverage 2025-09-30 23:17:14 -04:00
Ben Boeckel
cedd32892e ci: support setting a different test timeout for CI 2025-09-30 23:17:14 -04:00
Brad King
a562072eb1 ci: Add valgrind to Fedora base image
Make it available for a `ctest_memcheck` step in CI, or for a test
case of `ctest` itself.
2025-09-29 15:53:34 -04:00
Ben Boeckel
da4a1ec2ff gitlab-ci: add support for running gcov-based coverage 2025-09-29 11:11:07 -04:00
Brad King
b233e5bd05 ci: add job testing cuda13.0 with nvcc 2025-09-24 08:29:07 -04:00
Brad King
87f60d81b9 ci: add cuda13.0 base image
Include support for cross-compiling to aarch64.
2025-09-24 08:29:06 -04:00
Ben Boeckel
85e536b5eb gitlab-ci: test CMAKE_CXX_STDLIB_MODULES_JSON in CI
Do this by relocating the file to a sibling directory so that its `../`
contents continue to find the correct module interface files, but it
won't be found by default.
2025-09-11 23:42:31 -04:00
Alex Turbov
8fb6449275 ci: Update to typos 1.36.1 in Fedora base image 2025-09-08 12:20:28 -04:00
Daniel Nicoletti
1a6dbcc9ea CPack: Add AppImage generator
This AppImage generator only relies on appimagetool and patchelf.

Closes: #27104
Co-authored-by: Brad King <brad.king@kitware.com>
2025-09-03 18:50:40 -04:00
Brad King
9f2949bc68 ci: Add script to install appimagetool in Linux jobs 2025-09-03 18:00:57 -04:00
Brad King
069f858f42 ci: Add patchelf and appstream to Fedora base image
These are needed to test the CPack AppImage generator.
2025-09-03 17:47:39 -04:00
Brad King
94113ac687 ci: Add jobs for FASTBuild generator on Linux, macOS, and Windows 2025-08-26 14:29:05 -07:00
Brad King
383406fc18 Merge topic 'pass-trivial-by-value'
b1fdab3cc1 source: Pass small and trivially copyable types by value
7829ea76ad source: Pass cmFileTime by value
99c10afc26 source: Pass trivial dap::*Event by value
0bcb8d6e3c source: Pass cmFileAPI::Object by value
964e992ec5 source: Pass cmCTestResourceAllocator::Resource by value
ee1c32b6d7 source: Pass cmBuildOptions by value
fa0e5906ff source: Pass cmStringRange by value
0c4040057a source: Pass cm::string_view by value

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10948
2025-08-02 06:23:48 -04:00
Brad King
63753ed9ff Merge topic 'ci-iar'
49382f0377 ci: Update to IAR arm 9.70.1, riscv 3.40.1, rl78 5.20.1, rx 5.20.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10999
2025-08-02 06:16:42 -04:00
Brad King
49382f0377 ci: Update to IAR arm 9.70.1, riscv 3.40.1, rl78 5.20.1, rx 5.20.1
Run `.gitlab/ci/repackage/iar.ps1` with the installer and host the
package archives ourselves.
2025-08-01 12:18:19 -04:00
Brad King
26357b1ddf Merge topic 'ci-warning-flags'
b51127249e ci: Enable -Wstrict-prototypes in tests for merge request pipelines
58d5f34d31 Replace deprecated -Werror-implicit-function-declaration with -Werror=
78c0935c9b Enable -Wundefined-func-template when building CMake's C++ code
2c6dde430a Enable -Wstrict-prototypes when building CMake's C code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10983
2025-08-01 11:18:05 -04:00
Daniel Pfeifer
b1fdab3cc1 source: Pass small and trivially copyable types by value 2025-08-01 09:56:00 -04:00
Brad King
b51127249e ci: Enable -Wstrict-prototypes in tests for merge request pipelines
Enable it in Makefile generator jobs that run in merge requests.
In particular, this causes RunCMake tests to fail if they build
C code with a missing function prototype because the compiler's
stderr reaches RunCMake's checks.  Catch this before staging.

Skip enabling this in the Fedora+Makefiles job because Fedora's GCC
now defaults to C23 under which -Wstrict-prototypes does not warn.

Suggested-by: Matthew Woehlke <matthew.woehlke@kitware.com>
2025-07-31 10:10:15 -04:00
Brad King
15f788814e ci: Configure clazy job to build with system jsoncpp
Extend commit bdb9d818d2 (ci: Add lint job to run clazy on our
C++ code, 2025-07-22) to avoid linting third-party jsoncpp code.
2025-07-29 14:56:23 -04:00
Brad King
bdb9d818d2 ci: Add lint job to run clazy on our C++ code
Suppress all failing checks for now.  They can be incrementally
enabled and fixed in the future.
2025-07-24 10:45:05 -04:00