Commit Graph

70390 Commits

Author SHA1 Message Date
Oleg Derevenetz 89df8efba4 CheckLanguage: Bias compiler selection using already-enabled languages
In a project that has enabled C or CXX, we bias ASM and Fortran compiler
selection to match.  Propagate this bias into the `check_language` test
project so that if it succeeds, we will select the same compiler when
enabling the tested language in the calling project.

Fixes: #19350
2025-04-24 11:02:45 -04:00
Brad King f290240b0b CheckLanguage: Simplify test project generation
Inspired-by: Oleg Derevenetz <oleg-derevenetz@yandex.ru>
2025-04-24 11:02:45 -04:00
Brad King 7ae8764710 Tests: Extend CMakeOnly.CheckLanguage to enable languages whose checks succeed 2025-04-24 08:56:00 -04:00
Brad King a049413bb6 Tests: Extend CMakeOnly.CheckLanguage to cover ASM 2025-04-24 08:55:10 -04:00
Brad King 0a0f33dfad Merge branch 'release-4.0' 2025-04-23 08:58:01 -04:00
Brad King c5669f92a5 Merge branch 'release-3.31' 2025-04-23 08:57:53 -04:00
Brad King 7280dc5e02 Merge branch 'release-3.31' into release-4.0 2025-04-23 08:57:43 -04:00
Brad King c25c787198 Merge branch 'release-4.0' 2025-04-23 08:57:08 -04:00
Brad King 9510900be0 Merge topic 'clang-cuda-default-arch'
47ddbc9ded CUDA/Clang: Prefer NVCC's default architecture for each CUDA Toolkit version

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !10698
2025-04-23 08:57:07 -04:00
Brad King 8dee757664 Merge topic 'clang-cuda-default-arch' into release-4.0
47ddbc9ded CUDA/Clang: Prefer NVCC's default architecture for each CUDA Toolkit version

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !10698
2025-04-23 08:57:06 -04:00
Brad King 26fd56549a Merge topic 'clang-cuda-default-arch' into release-3.31
47ddbc9ded CUDA/Clang: Prefer NVCC's default architecture for each CUDA Toolkit version

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10698
2025-04-23 08:56:24 -04:00
Brad King 21353b5547 Merge branch 'release-4.0' 2025-04-23 08:43:06 -04:00
Brad King bf5661bb25 Merge topic 'test-ctest-regression'
6bc5b467a9 Tests: Fix RunCMake.CTestCommandLine under ctest -T Coverage

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10699
2025-04-23 08:43:05 -04:00
Brad King 7d36c4e960 Merge topic 'test-ctest-regression' into release-4.0
6bc5b467a9 Tests: Fix RunCMake.CTestCommandLine under ctest -T Coverage

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10699
2025-04-23 08:43:04 -04:00
Brad King 66b0b66fe1 Merge topic 'patch-FindProducer'
825d38a3cb FindProducer: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10694
2025-04-23 08:39:46 -04:00
Brad King a37f463f5e Merge topic 'patch-FindODBC'
92a6069ed0 FindODBC: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10697
2025-04-23 08:35:27 -04:00
Brad King 82802ab740 Merge topic 'patch-FindVulkan'
4376b15bae FindVulkan: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10693
2025-04-23 08:34:04 -04:00
Kitware Robot ccde2db4ff CMake Nightly Date Stamp 2025-04-23 00:04:03 -04:00
Brad King 6bc5b467a9 Tests: Fix RunCMake.CTestCommandLine under ctest -T Coverage
Update commit 712cb8cb14 (ctest: Restore support for -T Test without
dashboard configuration, 2025-03-06, v4.0.0-rc4~11^2) to avoid
conflating coverage of CMake itself with the coverage mode of ctest
being tested.
2025-04-22 11:25:24 -04:00
Brad King 47ddbc9ded CUDA/Clang: Prefer NVCC's default architecture for each CUDA Toolkit version
This makes the default CUDA architecture consistent across compilers,
and makes it more likely that the resulting binary will run on the
user's hardware.

This also makes hardware requirements for CI builds more consistent.
See commit 4f2178c4a8 (ci: add tags to tie CUDA jobs to runners with
hardware supporting them, 2025-04-21).
2025-04-22 09:51:02 -04:00
Brad King dc8ead96c2 Merge topic 'file-download-url-error'
cc2cbfc61e file: Add more context to errors from file(DOWNLOAD)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !10672
2025-04-22 09:35:29 -04:00
Brad King 29b0b3d281 Merge topic 'remove-cmDynamicLoader'
b4b0d3f118 cmDynamicLoader: Remove unused code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10692
2025-04-22 09:34:02 -04:00
Brad King 6b2a89f479 Merge branch 'release-4.0' 2025-04-22 09:32:58 -04:00
Brad King 36ed383ad5 Merge branch 'release-3.31' 2025-04-22 09:32:52 -04:00
Brad King f9ee88c3f5 Merge branch 'release-3.31' into release-4.0 2025-04-22 09:32:37 -04:00
Brad King 4fd28049c5 Merge branch 'release-4.0' 2025-04-22 09:22:21 -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 680cd7634b Merge topic 'ci-cuda' into release-4.0
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:19 -04:00
Brad King ff52aa5b40 Merge topic 'backport-ci-cuda' into release-3.31
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:19:47 -04:00
Brad King 4ee1c6211d Merge branch 'release-4.0' 2025-04-22 09:18:06 -04:00
Brad King 124b09f055 Merge topic 'fix-footnote-css'
097d8fa7a5 Help: Fix overlapping text in footnotes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10690
2025-04-22 09:18:06 -04:00
Brad King 02a1929772 Merge topic 'fix-footnote-css' into release-4.0
097d8fa7a5 Help: Fix overlapping text in footnotes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10690
2025-04-22 09:18:05 -04:00
Brad King 852e920f01 Merge branch 'release-4.0' 2025-04-22 09:17:13 -04:00
Brad King 19e6184a7a Merge topic 'clang-msvc-c++26'
338f88a809 Clang: MSVC C++26 support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10685
2025-04-22 09:17:13 -04:00
Brad King 49ca63f3b1 Merge topic 'clang-msvc-c++26' into release-4.0
338f88a809 Clang: MSVC C++26 support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10685
2025-04-22 09:17:11 -04:00
Brad King 42fca98d42 Merge branch 'release-4.0' 2025-04-22 09:15:36 -04:00
Brad King cd44c127ef Merge topic 'FindPython-SABI_LIBRARY-definition'
25cbaf162f Merge branch 'backport-FindPython-SABI_LIBRARY-definition'
bd7a27bcc7 FindPython: fix the definition of SABI artifacts
554ef95470 FindPython: fix the definition of SABI artifacts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10687
2025-04-22 09:15:36 -04:00
Brad King 34c2e75e01 Merge topic 'FindPython-SABI_LIBRARY-definition' into release-4.0
554ef95470 FindPython: fix the definition of SABI artifacts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10687
2025-04-22 09:15:35 -04:00
Brad King b24c9d4408 Merge topic 'patch-Findosg_functions'
443440a75b Findosg_functions: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10680
2025-04-22 09:14:25 -04:00
Brad King 300dfc13e3 Merge topic 'patch-FindIce'
a993d12605 FindIce: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10681
2025-04-22 09:13:20 -04:00
Brad King 58c1683f8d Merge topic 'patch-FindGLUT'
eecc3d545b FindGLUT: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10686
2025-04-22 09:12:12 -04:00
Peter Kokot 92a6069ed0 FindODBC: Update documentation
- Synced module documentation with other similar find modules.
- Added examples section describing module usage, highlighting the
  imported target, and how to override ODBC configuration through
  cache variables on Unix-like systems. Some exotic or custom ODBC
  implementations might sometimes need such steps.
2025-04-22 14:22:29 +02:00
Peter Kokot 825d38a3cb FindProducer: Update documentation
- Added note about Producer library being obsolete.
- Added examples section.
- Module documentation updated and synced with other similar find
  modules and OpenSceneGraph related find modules.
- Used Producer_FOUND variable. The PRODUCER_FOUND is also set to the
  same value as of CMake 3.3.
2025-04-22 13:50:46 +02:00
Kitware Robot 18e07af049 CMake Nightly Date Stamp 2025-04-22 00:04:24 -04:00
Peter Kokot 4376b15bae FindVulkan: Update documentation
- Refactored components section.
- Module documentation synced with other similar find modules.
- Added examples section.
- Removed version note for VULKAN_SDK (this environment variable was
  used since 3.7 when module got introduced to CMake).
- Added missing volk component.
2025-04-22 03:00:32 +02:00
Brad King b4b0d3f118 cmDynamicLoader: Remove unused code
It has not been used since commit dc0c6734d3 (CMP0031: Remove support
for OLD load_command command, 2024-11-26, v4.0.0-rc1~174^2~21).
2025-04-21 19:36:26 -04:00
Brad King dfe3b98387 Merge branch 'backport-ci-cuda' into ci-cuda 2025-04-21 18:26:43 -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 1395c1e19a ci: Tell CudaOnly.Architecture test what specific architecture to use
CUDA 12.8 deprecates architectures below 75.  Presumably a future
version will remove it.  Prepare infrastructure to avoid relying on
hard-coded arch 52 in this test.
2025-04-21 18:24:41 -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