Commit Graph

67460 Commits

Author SHA1 Message Date
Brad King
3a96346a3f Configure CMake itself with policies through CMake 3.30 2024-10-10 09:32:06 -04:00
Brad King
10f8c6a274 export: Increase maximum policy version in exported files to 3.30
The files generated by `install(EXPORT)`, `export()`, and
`install_jar_exports()` commands are known to work with policies
as of CMake 3.30, so enable them in sufficiently new CMake versions.
2024-10-10 09:32:06 -04:00
Brad King
fe6cf6d28c Add deprecation warnings for policies CMP0139 and below
The OLD behaviors of all policies are deprecated, but only by
documentation.  Add an explicit deprecation diagnostic for policies
introduced in CMake 3.24 and below to encourage projects to port
away from setting policies to OLD.
2024-10-10 09:31:52 -04:00
Brad King
b51e6a0be7 Help/dev: Update export policy version in post-release development
Since commit 20fa4ce8d8 (export: Factor out CMake-specific export
generation (2/2), 2024-07-18) the code that needs editing is in a
different method.
2024-10-09 14:31:50 -04:00
Brad King
5d4f86326c Begin post-3.31 development 2024-10-09 10:04:17 -04:00
Brad King
5cb4e6fa71 Merge branch 'release-3.31' 2024-10-09 10:02:56 -04:00
Brad King
b062c18c64 Begin 3.31 release versioning 2024-10-09 10:02:30 -04:00
Brad King
801c94085f Help: Drop development topic notes to prepare release
Release versions do not have the development topic section of
the CMake Release Notes index page.
2024-10-09 10:01:05 -04:00
Brad King
be3efb4119 Merge topic 'doc-3.31-relnotes'
aa6bbc3135 Help: Update Sphinx versionadded directives for 3.31 release
738cf491d4 Help: Organize and revise 3.31 release notes
fae66f4751 Help: Consolidate 3.31 release notes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9878
2024-10-09 09:59:24 -04:00
Brad King
aa6bbc3135 Help: Update Sphinx versionadded directives for 3.31 release
Run the script:

    Utilities/Sphinx/update_versions.py --since v3.30.0 --overwrite
2024-10-09 09:32:54 -04:00
Brad King
738cf491d4 Help: Organize and revise 3.31 release notes
Add section headers similar to the 3.30 release notes and move each
individual bullet into an appropriate section.  Revise a few bullets.
2024-10-09 09:32:21 -04:00
Brad King
fae66f4751 Help: Consolidate 3.31 release notes
Run the `Utilities/Release/consolidate-relnotes.bash` script to move
notes from `Help/release/dev/*` into `Help/release/3.31.rst`.
2024-10-09 09:32:02 -04:00
Brad King
eed2b2d2cb Merge topic 'ci-script-cmake-version'
2a8d7e76ef ci: Update ctest scripts with policies through CMake 3.29

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9887
2024-10-09 09:22:13 -04:00
Brad King
a71652496a Merge topic 'project-vars-policy'
e5a9ccbcc8 project: Always set <PROJECT-NAME>_* as normal variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9879
2024-10-09 09:20:57 -04:00
Brad King
f7b29f0f0b Merge topic 'FindProtobuf-protoc-missing'
4a1177246d FindProtobuf: Fail protobuf_generate early if protoc is missing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9880
2024-10-09 09:12:52 -04:00
Kitware Robot
5d58adf282 CMake Nightly Date Stamp 2024-10-09 00:01:23 -04:00
Brad King
2a8d7e76ef ci: Update ctest scripts with policies through CMake 3.29
Since commit 84db8506ff (Deprecate compatibility with CMake versions
older than 3.10, 2024-10-03) some of the scripts warned when executed
with a `ctest` built earlier in the pipeline.
2024-10-08 10:32:06 -04:00
Craig Scott
e5a9ccbcc8 project: Always set <PROJECT-NAME>_* as normal variables
Re-introduce the behavior originally introduced in CMake 3.30.3 by
commit c1ece78d11 (project: non cache <project> prefix variables are
also created, 2024-08-27, v3.30.3~2^2), but this time with a policy for
compatibility.

Issue: #25714
Issue: #26243
2024-10-08 10:07:11 -04:00
Brad King
ddf1d2944f Merge branch 'release-3.30' 2024-10-08 09:23:28 -04:00
Brad King
9c4a0a9ff0 CMake 3.30.5 2024-10-08 08:56:04 -04:00
Brad King
51eb713098 Merge topic 'FindOpenMP-CUDA-Clang'
a4b60d948d FindOpenMP: Add support for CUDA when compiling with Clang

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9886
2024-10-08 08:49:03 -04:00
Brad King
e7cacb057d Merge topic 'clang-cuda-link-flags'
cfa888a6e2 Clang/CUDA: Add language-wide flags when linking with compiler driver

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9885
2024-10-08 08:47:53 -04:00
Brad King
f93640b4c0 Merge topic 'test-cuda-optixir-includes'
c75e873564 CUDA: OptiXIR test includes all required headers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9884
2024-10-08 08:47:02 -04:00
Brad King
70d0b3f265 Merge branch 'release-3.30' 2024-10-08 08:45:26 -04:00
Brad King
dc371e07fb Merge topic 'project-vars'
fa07ddfebf project: Only check non-cache vars when setting project vars

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9883
2024-10-08 08:45:26 -04:00
Brad King
f9324a73e0 Merge topic 'project-vars' into release-3.30
fa07ddfebf project: Only check non-cache vars when setting project vars

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9883
2024-10-08 08:45:24 -04:00
Kitware Robot
1de987a7e9 CMake Nightly Date Stamp 2024-10-08 00:01:12 -04:00
JiaRui Liu
4a1177246d FindProtobuf: Fail protobuf_generate early if protoc is missing 2024-10-08 08:33:35 +08:00
Brad King
a4b60d948d FindOpenMP: Add support for CUDA when compiling with Clang 2024-10-07 14:19:08 -04:00
Brad King
cfa888a6e2 Clang/CUDA: Add language-wide flags when linking with compiler driver
We do this for other compiler/language combinations, but these flags
were left out by commit 5df21adf46 (CUDA: Add support for Clang
compiler, 2020-03-07, v3.18.0-rc1~145^2~1).
2024-10-07 11:57:24 -04:00
Craig Scott
fa07ddfebf project: Only check non-cache vars when setting project vars
The change in commit 86ad7cc886 (project: Only define non-cache vars if
already defined, 2024-09-15, v3.30.4~2^2) was meant to only check for
non-cache variables when deciding whether to set non-cache project
variables for the current call.  However, it erroneously checked for any
variable, including cache variables.  This gives the intended result on
the first run, but on subsequent runs a cache variable will exist that
did not on the first run, leading to different behavior between the two
runs.  Fix the logic to only check for a pre-existing non-cache
variable, as was originally intended.

Fixes: #26355
2024-10-07 10:24:37 -04:00
Robert Maynard
c75e873564
CUDA: OptiXIR test includes all required headers 2024-10-07 10:23:42 -04:00
Brad King
5b7ab1818b Merge topic 'cmake--workflow-preset'
b80aa1d3a3 preset: Easier command line interface for Workflow Presets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !9866
2024-10-07 09:11:48 -04:00
Brad King
9a14348a2c Merge topic 'GoogleTest-DISCOVERY_EXTRA_ARGS'
2dcba446e2 GoogleTest: Add DISCOVERY_EXTRA_ARGS to gtest_discover_tests()
f55f9fd5c1 Help: Mention TEST_LIST with gtest_discover_tests() can omit tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9856
2024-10-07 09:10:44 -04:00
Brad King
ae64e85ca9 Merge topic 'ci-linkcheck'
7cc12caa32 FindDevIL: Restore http link after redirect was removed
51c737515b FindAVIFile: Restore http link after redirect was removed

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9877
2024-10-07 09:06:47 -04:00
Kitware Robot
2086ddf27e CMake Nightly Date Stamp 2024-10-07 00:02:40 -04:00
Kitware Robot
943fd14320 CMake Nightly Date Stamp 2024-10-06 00:02:00 -04:00
Kevin Tolle
b80aa1d3a3
preset: Easier command line interface for Workflow Presets
A positional option allows 'cmake --workflow --preset <preset>' to be
shortened to 'cmake --workflow <preset>'.

Fixes: #26270
2024-10-05 16:08:44 +10:00
Kitware Robot
581be8a0fd CMake Nightly Date Stamp 2024-10-05 00:01:32 -04:00
Brad King
d734f8dc6d Merge topic 'deprecate-pre-3.10'
84db8506ff Deprecate compatibility with CMake versions older than 3.10
9e3b559b6a Tests: Update cmake_minimum_required versions to 3.10
f4aa34daa7 Tests/RunCMake: Update cmake_minimum_required versions to 3.10
1d38d52995 Tests/RunCMake: Match diagnostic line numbers more robustly
55778f5a16 ExternalProject: Enable all policies in internal scripts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9875
2024-10-04 10:26:23 -04:00
Brad King
3b2b5ca096 Merge topic 'cpack-deb-depends-list'
443a06807c CPackDeb: always treat PACKAGE_DEPENDS as a list

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9873
2024-10-04 09:16:56 -04:00
Brad King
7cc12caa32 FindDevIL: Restore http link after redirect was removed
Revert the URL change from commit 8a59fb1c90 (FindDevIL: Replace http
link with its redirect, 2024-09-26), as the http redirect seems to have
been removed.
2024-10-04 09:13:07 -04:00
Brad King
51c737515b FindAVIFile: Restore http link after redirect was removed
Revert the URL change from commit f77e36aa37 (FindAVIFile: Replace http
link with its redirect, 2024-09-26), as the http redirect seems to have
been removed.
2024-10-04 09:12:05 -04:00
Cedric Martineau
2dcba446e2
GoogleTest: Add DISCOVERY_EXTRA_ARGS to gtest_discover_tests()
Fixes: #26261
Co-authored-by: Craig Scott <craig.scott@crascit.com>
2024-10-04 18:12:30 +10:00
Craig Scott
f55f9fd5c1
Help: Mention TEST_LIST with gtest_discover_tests() can omit tests
Test names with square brackets can't be safely parsed in the
list returned through TEST_LIST, so they are omitted from the
list. This was implemented in 8b85b10fb3 (GoogleTest: Add
handling for square brackets in test names, 2022-01-05), but the
documentation wasn't updated as part of that change.
2024-10-04 18:11:28 +10:00
Kitware Robot
f296e7c85b CMake Nightly Date Stamp 2024-10-04 00:01:20 -04:00
Brad King
84db8506ff Deprecate compatibility with CMake versions older than 3.10
Issue a deprecation warning on calls to `cmake_minimum_required` or
`cmake_policy` that set policies based on versions older than 3.10.
Note that the effective policy version includes `...<max>` treatment.
Update the check from commit 3a4791548d (Deprecate compatibility with
CMake versions older than 3.5, 2023-02-09, v3.27.0-rc1~508^2).
2024-10-03 14:18:26 -04:00
Brad King
9e3b559b6a Tests: Update cmake_minimum_required versions to 3.10 2024-10-03 14:18:16 -04:00
Brad King
f4aa34daa7 Tests/RunCMake: Update cmake_minimum_required versions to 3.10
For policy-specific tests, use the version before the policy was
introduced.  Otherwise, use 3.10 where possible.
2024-10-03 11:52:22 -04:00
Brad King
1d38d52995 Tests/RunCMake: Match diagnostic line numbers more robustly 2024-10-03 10:23:37 -04:00