1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-10-14 02:08:27 +08:00
Commit Graph

275 Commits

Author SHA1 Message Date
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
35337bcc06 gitlab-ci: report JUnit results for memcheck runs 2025-10-06 15:26:00 -04:00
Brad King
8f166fa51e ci: Add jobs to perform coverage with BullseyeCoverage on Linux 2025-10-05 07:04:03 -04:00
Ben Boeckel
f7b0ddbe92 gitlab-ci: add a series of jobs to perform coverage 2025-09-30 23:17:14 -04:00
Brad King
b233e5bd05 ci: add job testing cuda13.0 with nvcc 2025-09-24 08:29:07 -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
Ben Boeckel
43633440e9 gitlab-ci: fix nightly -> no-mr job dependencies 2025-09-08 11:59:57 -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
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
Brad King
82ac700f78 ci: Drop nightly job that builds CMake with vendored curl on macOS
Revert commit 31884a7146 (ci: Add nightly job to build CMake with
vendored curl on macOS, 2024-05-09, v3.30.0-rc1~130^2).  After
curl 8.15.0 dropped support for the Secure Transport backend, we
rely on the curl provided by macOS to use the system certificate
store.
2025-07-21 14:03:33 -04:00
Brad King
608d88380d ci: add job testing Intel oneAPI 2025.2.0 compilers on Linux
There is no corresponding Intel classic C/C++ compiler version.
2025-06-26 11:13:47 -04:00
Brad King
63c3e1fd3b ci: Shorten name of job testing Intel 2021.9 compilers on Windows
We do not need to test more than one patch level.
2025-05-21 16:47:03 -04:00
Brad King
ebeee21983 ci: Update to IntelLLVM 2025.1 on Windows 2025-05-21 16:34:41 -04:00
Brad King
d249540a7e Merge topic 'ci-intel-compiler'
351169af23 gitlab-ci: add job testing Intel oneAPI 2025.1.0 compilers on Linux
a56adbdd60 gitlab-ci: add job testing Intel oneAPI 2025.0.0 compilers on Linux

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10806
2025-05-21 08:26:36 -04:00
Brad King
3955e9b614 Merge topic 'ci-msvc-14.44'
e37a40442a ci: Update Windows builds to MSVC 14.44 toolset
c955d5c31f ci: Tie Intel 2024.1 jobs on Windows to MSVC 14.43 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10802
2025-05-21 08:24:05 -04:00
Brad King
351169af23 gitlab-ci: add job testing Intel oneAPI 2025.1.0 compilers on Linux
There is no corresponding Intel classic C/C++ compiler version.
2025-05-20 11:17:07 -04:00
Brad King
a56adbdd60 gitlab-ci: add job testing Intel oneAPI 2025.0.0 compilers on Linux
There is no corresponding Intel classic C/C++ compiler version.
2025-05-20 11:16:28 -04:00
Brad King
c955d5c31f ci: Tie Intel 2024.1 jobs on Windows to MSVC 14.43 toolset
Intel 2024.1 tools do not work with the MSVC 14.44 standard library.
2025-05-20 10:23:30 -04:00
Brad King
5b21de16a0 ci: use Fedora 42 images and environments 2025-04-25 08:33:35 -04:00
Brad King
47f49e7b9c Merge topic 'ci-cuda'
dfe3b98387 Merge branch 'backport-ci-cuda' into ci-cuda
72e7636540 ci: add tags to tie CUDA jobs to runners with hardware supporting them
1395c1e19a ci: Tell CudaOnly.Architecture test what specific architecture to use
4f2178c4a8 ci: add tags to tie CUDA jobs to runners with hardware supporting them
63a5460faf ci: Tell CudaOnly.Architecture test what specific architecture to use

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10691
2025-04-22 09:22:20 -04:00
Brad King
72e7636540 ci: add tags to tie CUDA jobs to runners with hardware supporting them
CUDA 12.8 deprecated support for compute architectures below 75.
Presumably support will be removed from a future version of the
CUDA Toolkit.  Jobs using such a future version of CUDA will not
be able to compile support for CUDA architectures below 75, so
they will not be able to run on older hardware.  In preparation,
our CI runners now have `cuda-arch-#` tags for the architectures
they support.  Jobs may then be tagged with the minimum architecture
on which they can run.

Tag each job with the highest of the following requirements:

* Most of CMake's tests use the CUDA compiler's default architecture,
  which is based on the version the CUDA toolkit.

* For Clang we currently select architecture 52 if supported by the
  CUDA toolkit, even if that toolkit's NVCC defaults to an older arch.

* The `CudaOnly.Architecture` test uses a specific architecture
  configured by each CI job.
2025-04-21 18:25:49 -04:00
Brad King
4f2178c4a8 ci: add tags to tie CUDA jobs to runners with hardware supporting them
CUDA 12.8 deprecated support for compute architectures below 75.
Presumably support will be removed from a future version of the
CUDA Toolkit.  Jobs using such a future version of CUDA will not
be able to compile support for CUDA architectures below 75, so
they will not be able to run on older hardware.  In preparation,
our CI runners now have `cuda-arch-#` tags for the architectures
they support.  Jobs may then be tagged with the minimum architecture
on which they can run.

Tag each job with the highest of the following requirements:

* Most of CMake's tests use the CUDA compiler's default architecture,
  which is based on the version the CUDA toolkit.

* For Clang we currently select architecture 52 if supported by the
  CUDA toolkit, even if that toolkit's NVCC defaults to an older arch.

* The `CudaOnly.Architecture` test uses a specific architecture
  configured by each CI job.
2025-04-21 18:17:55 -04:00
Brad King
f80de64581 ci: add tags to tie HIP jobs to runners with matching hardware
This is necessary to add CI runners with newer AMD GPUs over time.
2025-04-11 14:40:31 -04:00
Brad King
1f46bc299b ci: Extend packaging pipeline to sign Windows binaries automatically
Split packaging on Windows into dedicated jobs that run with access to
an EV signing certificate.

Prior to commit 0929221ca3 (gitlab-ci: Simplify Windows packaging
pipeline, 2023-02-28, v3.26.0-rc5~3^2~3) we had separate packaging jobs,
but they did not run in release packaging pipelines.  Restore them, and
run them in both nightly and release packaging pipelines.
2025-03-19 11:22:30 -04:00
Brad King
5dd973f900 ci: Convert sunos packaging jobs to build sunos-{x86_64,sparc64} binaries 2025-02-27 16:35:09 -05:00
Brad King
28f1da4b25 ci: Add jobs to build sunos-{i386,sparc} binaries 2025-02-15 07:28:07 -05:00
Brad King
bc94c018c4 ci: Update HIP image to ROCm 6.3 on Ubuntu 24.04
The problem described in commit ec682ff22a (ci: Update to ROCm 6 HIP on
Fedora 41, 2024-12-02, v3.31.2~3^2) occurs here too.  Move the CI work
directory to a path without spaces.

Issue: #25932
2025-02-14 16:17:45 -05:00
Brad King
7f1250ca68 ci: Drop redundant job testing cuda12.2 with nvcc -ccbin=clang++-18
It has been superseded by an equivalent job with cuda12.6,
which does not need `--allow-unsupported-compiler`.
2025-01-30 12:00:33 -05:00
Brad King
1ffa199c55 ci: add jobs testing cuda12.6 with nvcc and clang 18 2025-01-30 09:34:41 -05:00
Brad King
54dfadaf5a ci: Rename "codespell" job to more general name "spellcheck" 2025-01-22 08:51:44 -05:00
Brad King
569221f40f ci: Update NVHPC to version 24.9
Fixes: #24187
2025-01-15 13:49:18 -05:00
Ben Boeckel
2a0ca6a26d ci: add jobs to test GCC 15-to-be with import std 2025-01-08 16:32:14 -05:00
Brad King
0f82d07266 ci: add job to update CMake Nightly Date Stamp
Previously the nightly version update was performed by an
externally-managed scheduled task.  Move it to CI.
2024-12-17 14:48:08 -05:00
Brad King
055e17054f Merge topic 'ci-fedora-41'
ec682ff22a ci: Update to ROCm 6 HIP on Fedora 41

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10069
2024-12-05 08:07:56 -05:00
Brad King
ec682ff22a ci: Update to ROCm 6 HIP on Fedora 41
The problem that motivated commit 3a44b8dfc0 (ci: Move job for HIP tests
on Fedora 39 to a dedicated base image, 2024-04-24, v3.30.0-rc1~202^2~11)
turns out to be exposed by spaces in the path to HIP binaries.  Move the
CI work directory to a path without spaces.

Closes: #25932
2024-12-04 12:35:01 -05:00
Brad King
cc626365ca ci: Add VS 2022 nightly job in path with international characters
Test that VS generators encode paths correctly.
2024-11-29 10:39:42 -05:00
Brad King
e98b1fc2b4 Merge topic 'ci-use-only-needs'
70fd49f0cf Merge branch 'ci-use-only-needs-3.30' into ci-use-only-needs
ea31d090c7 gitlab-ci: remove `dependencies` from jobs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9964
2024-11-01 09:06:03 -04:00
Ben Boeckel
70fd49f0cf Merge branch 'ci-use-only-needs-3.30' into ci-use-only-needs
* ci-use-only-needs-3.30:
  gitlab-ci: remove `dependencies` from jobs
2024-10-31 14:08:26 -04:00
Ben Boeckel
ea31d090c7 gitlab-ci: remove dependencies from jobs
Historically, `needs` specifies the jobs which need to complete
successfully and `dependencies` specifies the jobs which provide
artifacts which should be used. Modern GitLab discourages using both as
`needs` now supports an `artifacts` key to say "depend on but do not use
artifacts", so remove `dependencies` and use `needs:artifacts` where
necessary.

See: https://docs.gitlab.com/ee/ci/yaml/#needsartifacts
2024-10-31 14:07:32 -04:00
Brad King
8779b1ad28 Merge branch 'backport-ci-fedora-41' into ci-fedora-41 2024-10-26 06:02:18 -04:00
Brad King
c8591c61d8 ci: use Fedora 41 images and environments 2024-10-26 06:01:10 -04:00
Brad King
e6da61fcd9 ci: Run Fedora + Makefiles job on x86_64-v3 hosts for mpich+libfabric
Similar to commit 18145e8745 (ci: Update FindMPI test environment for
mpich on Fedora 39, 2023-11-16, v3.28.0-rc6~19^2~1), libfabric fails
with SIGILL on older hardware.
2024-10-26 06:01:10 -04:00
Brad King
43daf2ba7c gitlab-ci: add job testing Intel oneAPI 2024.2.0 compilers on Linux
There is no corresponding Intel classic C/C++ compiler version.
2024-10-16 09:32:43 -04:00
Brad King
515bcd77e5 ci: add job testing cuda12.2 with nvcc using clang 18 as host compiler 2024-09-25 16:53:06 -04:00
Brad King
96bcf7db16 ci: Update LLVM/Clang to 19.1 in nightly CI jobs on Windows 2024-09-19 11:58:41 -04:00
Brad King
15dc1a357b ci: Update LLVM/Clang to 18.1 in nightly CI jobs on Windows 2024-08-22 11:47:50 -04:00
Brad King
aff38fed4f ci: Add nightly jobs for LFortran on Fedora 2024-07-23 10:29:02 -04:00
Brad King
fd8c782ded ci: Update to IntelLLVM 2024.1.0 on Windows 2024-05-30 14:20:03 -04:00
Brad King
f28d88a351 ci: Fix tags of Intel and IntelLLVM jobs on Windows
These jobs require a MSVC toolchain.
2024-05-30 14:18:40 -04:00
Brad King
31884a7146 ci: Add nightly job to build CMake with vendored curl on macOS
We now build with the system curl on macOS by default.
Explicitly test that the vendored curl still works.
2024-05-09 14:58:26 -04:00