Commit Graph
9555 Commits
Author SHA1 Message Date
Brad King 3b85f214d2 Merge topic 'instrumentation-data-version-minor'
f5a0f6478e Merge branch 'backport-instrumentation-data-version-minor' into instrumentation-data-version-minor
dcf146c34d instrumentation: Revise Data Version format
df36317176 instrumentation: Revise Data Version format

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12117
2026-06-03 09:51:48 -04:00
Brad King bdad2cbd97 Merge topic 'parse-arguments-argn'
97c36916d9 cmake_parse_arguments: Add PARSE_ARGN mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12131
2026-06-02 09:26:04 -04:00
Brad King db0a8ee741 Merge topic 'ctest_cli_initial_configure'
9a0010eef2 ctest: add --source-dir argument to enable initial configure

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12121
2026-06-02 09:22:14 -04:00
Brad King 4bcb0a1dfa Merge topic 'fix-cmp0211-doc'
228795753f FILE_SET: Fix CMP0211-related documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12119
2026-06-02 09:19:40 -04:00
Brad King fe0537fa03 Merge topic 'SKIP_PRECOMPILE_HEADERS-fileset-property'
c06d409f12 FILE_SET: add SKIP_PRECOMPILE_HEADERS property support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12129
2026-06-02 09:17:53 -04:00
Brad King f4c858d328 Merge topic 'multi_export_sbom'
2900aa2911 SBOM: Update experimental UUID
273fc4cc49 SBOM: Support multi export set SBOMs
9669829573 Install: Refactor ResolveTargetsInGeneratorExpression
7c31cbf9ae SBOM: Handle PACKAGE_URL argument

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12080
2026-06-02 09:15:40 -04:00
Brad King c07ac2b941 Merge topic 'macro-argument-escape'
9d2e85373a macro: Add policy to preserve backslashes in arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11734
2026-06-02 09:06:21 -04:00
Martin Duffy dcf146c34d instrumentation: Revise Data Version format
Give data version the new format <major>.<minor>, so that
the version can be incremented with the introduction of new
features without bumping the major version.

Add support for loading instrumentation JSON queries of unknown
data versions without error.

Issue: #27833
2026-06-02 08:55:20 -04:00
Arha Gatram 97c36916d9 cmake_parse_arguments: Add PARSE_ARGN mode
Introduce a mode similar to `PARSE_ARGV` that avoids needing
to specify the number of normal function arguments.

Closes: #25376
2026-06-01 18:06:25 -04:00
Zack Galbreath 9a0010eef2 ctest: add --source-dir argument to enable initial configure
Add the --source-dir argument to ctest to allow it to perform an initial
configuration step for an empty binary directory when operating in
dashboard client mode.
2026-06-01 14:11:46 -04:00
Marc Chevrier c06d409f12 FILE_SET: add SKIP_PRECOMPILE_HEADERS property support 2026-06-01 18:39:23 +02:00
Tom Osika 2900aa2911 SBOM: Update experimental UUID 2026-06-01 12:27:13 -04:00
Tom Osika 273fc4cc49 SBOM: Support multi export set SBOMs 2026-06-01 12:27:13 -04:00
Alex Reinking 9d2e85373a macro: Add policy to preserve backslashes in arguments
Preserve backslashes in arguments passed to macros by re-escaping
them before substituting in the macro body, where they will be
parsed again.

Fixes: #19281, #22157, #23641, #25803, #27645, #20891
2026-05-31 14:36:15 -04:00
Zack Galbreath 7dc39e7221 ctest: prioritize presets over existing DartConfiguration.tcl commands
CMake writes ConfigureCommand and MakeCommand entries into
DartConfiguration.tcl when configuring a project that uses the CTest module.

These values prevented users from being able to use configure/build presets
in dashboard client mode from a pre-configured build directory.

This commit updates ctest_configure() and ctest_build() to ignore
CTEST_CONFIGURE_COMMAND / CTEST_BUILD_COMMAND when a preset is specified.
This allows the requested preset to be honored.
2026-05-29 11:40:47 -04:00
Brad King cd807309bf Merge topic 'findcudatoolkit-target-for-cufilt'
507b641639 FindCUDAToolkit: Add cufilt target for CUDA 11.4 and above

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !12115
2026-05-29 09:34:58 -04:00
Brad King 3cbe1d5a91 Merge topic 'cache-doc-lookup'
7fdf315ba3 cmake: Populate help string from documentation table for -D entries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12092
2026-05-29 09:25:13 -04:00
Matthew Woehlke 228795753f FILE_SET: Fix CMP0211-related documentation
Commit 4f120beea9 (FILE_SET: relax file uniqueness for HEADERS type,
2026-05-10) relaxed the restriction on file uniqueness in file sets, but
did not correctly update all instances of the documentation. Change the
wording to be a bit clearer and update all instances.
2026-05-28 16:53:01 -04:00
Arha Gatram 507b641639 FindCUDAToolkit: Add cufilt target for CUDA 11.4 and above
Fixes: #26705
2026-05-28 10:03:34 -04:00
Brad King 0e6299c37f Merge topic 'ctest_preset_args_cli'
63b6e7d785 ctest: allow dashboard clients to specify presets via variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12109
2026-05-28 09:50:49 -04:00
Daksh Mamodiya 7fdf315ba3 cmake: Populate help string from documentation table for -D entries
When a built-in cache variable is set via `-D <var>=<value>` with no
help text supplied, populate `HELPSTRING` from the built-in
documentation table (sourced from `Help/variable/*.rst` and the
per-language pattern manuals).  Project-defined and unknown variables
continue to receive the legacy "No help, variable specified on the
command line." sentinel.

The cache entry's type and value are left untouched: type stays
`UNINITIALIZED` for bare `-D` and an explicit `-D <var>:TYPE=<value>`
is honored as before.  The `cmCacheManager::LoadCache` path is not
modified, so reload of existing caches is a fixed point.

Fixes: #27830
2026-05-28 09:25:41 -04:00
Brad King 645ca80972 Merge topic 'rust-make'
1102abd224 ci: Enable Rust tests in Fedora + Unix Makefiles configuration
03ac6b9c2b Rust: Update experimental UUID
8154a4bc5c Rust: Add support for compiling Rust with Makefile generator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12105
2026-05-27 11:45:23 -04:00
Brad King ec2da34f39 Merge topic 'docs-empty-if'
2bc862bc76 Help: Document if() behavior with empty condition

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12108
2026-05-27 11:42:48 -04:00
Brad King df42ad80d3 Merge topic 'test-deps'
ba6b6fbc24 Ninja: Add Build Dependencies for Tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11935
2026-05-27 11:41:41 -04:00
Brad King cc9dd53bc0 Merge topic 'doc-fileapi-codemodel-version'
69be06bad3 Help/fileAPI: Add version modified directives

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12100
2026-05-27 11:29:41 -04:00
Zack Galbreath 63b6e7d785 ctest: allow dashboard clients to specify presets via variables
Add variables to support specifying PRESET and PRESETS_FILE to
dashboard clients from the command-line.
2026-05-27 09:33:06 -04:00
Arha Gatram 2bc862bc76 Help: Document if() behavior with empty condition
Closes: #26527
2026-05-26 19:50:17 -04:00
Brad King 22c962a406 Merge topic 'build-databases-support-empty-configs'
575c3dd990 builddb: support builds with empty configuration
3469cc0a46 Tests/CXXModulesCompile: add a test for builddb with empty config
bf442e9deb Tests/CXXModulesCompile: fix `exp-builddb` name references in check scripts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12101
2026-05-26 16:20:21 -04:00
Brad King f29a0c4713 Merge topic 'fileset-manage-UNITY_BUILD-exclusion'
7d892786d8 FILE_SET: manage unity build exclusions based on file set type

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12093
2026-05-26 16:17:35 -04:00
Brad King 9000ffa974 Merge topic 'ctest_cli_define_script_vars'
2e214f0a5b ctest: allow CTest Script variables to be set via the command-line
21b9c20592 ctest: extend config mapping to include script-only variables
68489471a6 ctest: refactor SetCMakeVariables to use a mapping table

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12060
2026-05-26 16:15:59 -04:00
Martin Duffy ba6b6fbc24 Ninja: Add Build Dependencies for Tests
Add `test_prep/<test_name>` convenience targets to the ninja generator
to build dependencies of tests, and `test_prep/all` to build the dependencies
of all tests.

Build dependencies of a test include:
- Executables directly invoked by test `COMMAND`.
- Targets mentioned in generator expressionf os test `COMMAND`.
- Anything explicitly listed with the new `BUILD_DEPENDS` argument of `add_test`.

Issue: #27613
2026-05-26 15:16:19 -04:00
Baudouin Feildel 03ac6b9c2b Rust: Update experimental UUID 2026-05-25 22:18:25 +02:00
Ben Boeckel 575c3dd990 builddb: support builds with empty configuration
Rotates the UUID to indicate changed behavior.

See: https://discourse.cmake.org/t/15654
2026-05-22 13:51:06 -04:00
Tyler Yankee 69be06bad3 Help/fileAPI: Add version modified directives
Extend (part of) commit f26e9fcbae (Help: Generate presets JSON schema,
documentation, 2026-04-08) to the `cmake-file-api(7)` page, for each of
the currently applicable object kinds (i.e., only those which have
undergone changes, which is predominantly the codemodel).

This standardization helps to improve both the readability and
maintainability of the document.
2026-05-22 08:22:04 -04:00
Brad King a45b3f0722 Merge branch 'release-4.3' 2026-05-21 14:58:11 -04:00
Brad King 06cc1d04d8 CMake 4.3.3 2026-05-21 14:32:22 -04:00
Brad King 4bc63347e2 Merge branch 'release-4.2' 2026-05-21 14:05:17 -04:00
Brad King 6de540b9d3 Merge branch 'release-4.2' into release-4.3 2026-05-21 14:04:57 -04:00
Brad King 046f192cf1 CMake 4.2.6 2026-05-21 13:31:34 -04:00
Brad King 0d2e9ce13c Merge topic 'instrumentation-data-version-doc'
1d0f587062 instrumentation: Clarify API and Data version distinction

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12091
2026-05-21 09:45:18 -04:00
Brad King 81397f4f12 Merge topic 'instrumentation-data-version-doc' into release-4.3
1d0f587062 instrumentation: Clarify API and Data version distinction

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12091
2026-05-21 09:45:16 -04:00
Brad King d7c0609e0d Merge topic 'tutorial-step-3-fix'
788364b927 Tutorial: Fix potentially misleading guidance on -D flags in script mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12089
2026-05-21 09:44:03 -04:00
Marc Chevrier 7d892786d8 FILE_SET: manage unity build exclusions based on file set type
This complements commit 5f7a7aa263 (FILE_SET: add SKIP_UNITY_BUILD_INCLUSION property support, 2026-05-11)
2026-05-21 15:23:43 +02:00
Martin Duffy 1d0f587062 instrumentation: Clarify API and Data version distinction
The instrumentation docs were unclear about the difference between API
and Data version, with the hierarchy of the table of contents being
particularly misleading.

Rework `cmake-instrumentation` manual and `cmake_instrumentation` command
documentation to be more clear.
2026-05-20 15:20:09 -04:00
Brad King d2e20c74ed Merge topic 'ctest-help-args'
c0eddfb8c8 ctest: Add missing help strings for documented options
2f3de9e2f3 Help/ctest: Improve formatting and grammar
36e486555d Help, ctest: Add argument placeholders
e16767d962 presets: Fix command help for --presets-file

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12088
2026-05-20 15:01:30 -04:00
Brad King 7f8ffcd77c Merge topic 'cps-fix-default-dest'
9d94a2abe6 Merge branch 'backport-cps-fix-default-dest' into cps-fix-default-dest
ed6e9abf98 CPS, SBOM: Fix default output destination

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12082
2026-05-20 14:57:56 -04:00
Brad King cae35b9687 Merge topic 'doc-fix-minsizerel-typo'
de6c5a50ca Tutorial: Fix typo in Before You Begin

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12076
2026-05-20 14:46:51 -04:00
Vito Gamberini 788364b927 Tutorial: Fix potentially misleading guidance on -D flags in script mode 2026-05-20 14:07:56 -04:00
Brad King 9d94a2abe6 Merge branch 'backport-cps-fix-default-dest' into cps-fix-default-dest 2026-05-19 15:26:46 -04:00
Xia Lei de6c5a50ca Tutorial: Fix typo in Before You Begin
Fix a spelling error.  Change "MinRelSize" to "MinSizeRel".
2026-05-19 14:00:47 -04:00