Brad King
6d8fd22a03
Merge branch 'release-3.31'
2026-01-26 14:22:33 -05:00
Brad King
cd51ca47cb
CMake 3.31.11
2026-01-26 13:45:51 -05:00
Brad King
1fba1a17c3
Merge topic 'instrumentation-docs-result'
...
65014c0ee3 Help/instrumentation: Fix "result" key in example snippet file
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11624
2026-01-24 08:00:52 -05:00
Brad King
b6a60d9ebe
Merge topic 'FindRuby-components'
...
c5e7cb691c FindRuby: Add support for interpreter and development components
dc8e05c4d2 FindRuby: Simplify finding the Ruby library - Ruby already knows!
b192f706aa FindRuby: Remove broken, untested and unmaintained cross-compiling support
ee75b3e7b4 FindRuby: Clean up variables read from Ruby
ba37066185 FindRuby: Versions are strings not paths.
b2bd6b221c FindRuby: Enclose Ruby executable in quotes
752d5cace6 FindRuby: Fix incorrect code and versions
deb67fa837 FindRuby: Remove duplicate word
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Osyotr <zhenchik35026@gmail.com>
Merge-request: !11544
2026-01-24 07:58:49 -05:00
Martin Duffy
65014c0ee3
Help/instrumentation: Fix "result" key in example snippet file
...
Snippet file example erroneously included a key of "return" instead of "result".
2026-01-23 17:04:27 -05:00
Charlie Savage
c5e7cb691c
FindRuby: Add support for interpreter and development components
2026-01-23 10:35:43 -05:00
Kyle Edwards
a4d9a20c49
Merge topic 'bin2c'
...
3dd49d857a ci: Enable bin2c large file test on some builds
3a893806bb cmake -E: Add bin2c mode
8cca26e562 cm::optional: Suppress GCC -Wmaybe-uninitialized false positive
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Brad King <brad.king@kitware.com>
Merge-request: !11536
2026-01-23 10:05:58 -05:00
Brad King
9461f0c8e2
Merge topic 'dyndep-manifest-support'
...
ef7533113d cmake-cxxmodule: Document cxx-modules map members
dddd0794c1 cmCxxModuleMetadata: Don't serialize default values
ce309f8885 cmDyndepCollation: Cxx module manifest format
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !11617
2026-01-23 09:01:04 -05:00
Kyle Edwards
3a893806bb
cmake -E: Add bin2c mode
...
Run Tests/RunCMake/cmake-E-bin2c/generate_files.sh to regenerate the
following files:
- Tests/RunCMake/cmake-E-bin2c/long.c.txt
- Tests/RunCMake/cmake-E-bin2c/long_signed.c.txt
- Tests/RunCMake/cmake-E-bin2c/long_decimal.c.txt
- Tests/RunCMake/cmake-E-bin2c/long_signed_decimal.c.txt
- Tests/RunCMake/cmake-E-bin2c/hashes.cmake
Run it with --very-long to regenerate the following additional files:
- Tests/RunCMake/cmake-E-bin2c/very_long_params.cmake
2026-01-22 14:33:17 -05:00
Vito Gamberini
ef7533113d
cmake-cxxmodule: Document cxx-modules map members
2026-01-22 00:59:49 -05:00
Marc Chevrier
e2a38a3990
GenEx SOURCE_PROPERTY
...
This feature is required for the support of the future feature of
pattern rules (see #27383 ).
But it is also a valuable addition in the context of custom command and target.
2026-01-21 16:03:30 +01:00
Brad King
ad3242493d
Merge topic 'instrumentation-cdashsubmit'
...
614715d56f instrumentation: Fix cdashSubmit option
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Tyler Yankee <tyler.yankee@kitware.com>
Merge-request: !11612
2026-01-21 09:51:27 -05:00
Brad King
b8943b87eb
Merge topic 'hip-chipStar'
...
47c3e55d4a HIP: Add support for SPIR-V platform
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11487
2026-01-21 09:48:42 -05:00
Paulius Velesko
47c3e55d4a
HIP: Add support for SPIR-V platform
...
Add `spirv` as a known value for `CMAKE_HIP_PLATFORM`.
Default `CMAKE_HIP_ARCHITECTURES` to `OFF` for `spirv`.
Fixes : #27410
2026-01-20 13:18:18 -05:00
Garrett Campbell
1964be5d56
Help: Clarify DEBUGGER_WORKING_DIRECTORY documentation
...
Closes : #27523
2026-01-20 10:57:26 -05:00
Brad King
3044be73a9
Merge branch 'release-4.2'
2026-01-20 10:42:30 -05:00
Brad King
3356d93e66
CMake 4.2.2
2026-01-20 09:46:37 -05:00
Brad King
463095b324
Merge topic 'patch-genex-versionadded'
...
8002d039e8 Help: Add versionadded for STRING FIND genex
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11609
2026-01-19 16:05:28 -05:00
Martin Duffy
614715d56f
instrumentation: Fix cdashSubmit option
...
Setting cdashSubmit option automatically enables the dynamicSystemInformation
option and prepareForCDash hooks.
2026-01-19 13:26:29 -05:00
Brad King
59c3422974
Merge topic 'pvs-analyze'
...
ef12ef1bd6 pvs-studio: Add support for linting with PVS-Studio
8f722e0fac cmList: Expose container reserve
5d1f269658 cmcmd: Allow passing object file to co_compile commands
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex Overchenko <aleksandr9809@gmail.com>
Merge-request: !11323
2026-01-19 09:30:58 -05:00
Brad King
ec4af051eb
Merge topic 'doc-file-sys-commands'
...
d8c6bbe693 Help: Improve formatting for `cmake_host_system_information`
307c2240ad Help: Improve command formatting atop `file` page
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11603
2026-01-19 09:29:28 -05:00
Brad King
18c98682f5
Merge topic 'verify-private-header-sets'
...
b61637f90f File sets: Add verification of private file sets
61df2e15a2 Help: Verification target also sets CXX_SCAN_FOR_MODULES to false
909b54023a File sets: Specify verify file set target names in one place
20219414c3 File sets: Always verify interface files sets of executable targets
c7a1d5ee58 Tests: Rename VerifyHeaderSets tests to VerifyInterfaceHeaderSets
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11565
2026-01-19 09:27:59 -05:00
Brad King
f71894a17d
Merge topic 'fix-archive-path-traversal'
...
03f19aa4ea cmSystemTools: Fix path traversal vulnerability in archive extraction
be2ac223b0 cmSystemTools: Factor out libarchive extraction flags
9c408b844b Tests/RunCMake/CMP0135: Avoid paths with .. components in test archive
6015ef807d cmake -E tar: Improve error message formatting
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11564
2026-01-19 09:24:40 -05:00
Brad King
c64b6c50f7
Merge topic 'patch-1'
...
1d8d22c0be Tutorial: fix a thinko in a TODO item
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Tyler Yankee <tyler.yankee@kitware.com>
Merge-request: !11552
2026-01-19 09:15:53 -05:00
Peter Kokot
8002d039e8
Help: Add versionadded for STRING FIND genex
2026-01-17 21:56:14 +01:00
Martin Duffy
ef12ef1bd6
pvs-studio: Add support for linting with PVS-Studio
2026-01-16 11:25:59 -05:00
Brad King
e9b2f1ff5e
Merge topic 'filesystem-path-enhancements'
...
b86a77e8c8 cm::filesystem::path: ensure independence from the program locale.
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11583
2026-01-16 10:05:04 -05:00
Brad King
17aa90f9c6
Merge topic 'experimental-fixes'
...
28647db676 Experimental: Add CMAKE_EXPERIMENTAL_MAPPED_PACKAGE_INFO
197099e393 Experimental: Update PACKAGE_INFO, SBOM documentation
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11599
2026-01-16 09:43:54 -05:00
Leslie P. Polzer
03f19aa4ea
cmSystemTools: Fix path traversal vulnerability in archive extraction
...
Add security flags to libarchive extraction to prevent path traversal
(Zip Slip) and absolute path attacks:
- ARCHIVE_EXTRACT_SECURE_NODOTDOT: Block ".." path components
- ARCHIVE_EXTRACT_SECURE_NOABSOLUTEPATHS: Block absolute paths
- ARCHIVE_EXTRACT_SECURE_SYMLINKS: Block symlinks escaping extract dir
This hardens both `cmake -E tar` and `file(ARCHIVE_EXTRACT)` against
malicious archives that attempt to write files outside the intended
extraction directory.
2026-01-16 08:54:07 -05:00
Craig Scott
b61637f90f
File sets: Add verification of private file sets
...
Add support for PRIVATE header sets, analogous to the existing
INTERFACE header sets support. A key difference between the two is
the way they handle build and usage requirements. INTERFACE
header sets rely on the original target's INTERFACE, whereas PRIVATE
header sets copy across various properties from the original target.
Generated files need special handling for PRIVATE header sets.
Add a dependency on the original target to the verification target to
ensure such generated files will exist.
Fixes : #23448
2026-01-16 18:10:17 +11:00
Craig Scott
61df2e15a2
Help: Verification target also sets CXX_SCAN_FOR_MODULES to false
...
4fd596c34c (cmGeneratorTarget: disable C++ module scanning for
verify targets, 2023-12-11) added the CXX_SCAN_FOR_MODULES
property to the list of properties set to false in the verification target
when VERIFY_INTERFACE_HEADER_SETS is true, but it didn't update
the documentation of that target property. This adds the missing
doc update.
2026-01-16 18:10:15 +11:00
Craig Scott
20219414c3
File sets: Always verify interface files sets of executable targets
...
When VERIFY_INTERFACE_FILE_SETS is set to true on an executable
target, verification of that target's interface file sets was only being
performed if the target's ENABLE_EXPORTS property was set to true.
We now always verify the interface file sets of executable targets,
subject to the new CMP0209 policy. This allows interface file sets to
be verified even for executable targets that do not export symbols.
Interface file sets containing headers that are fully inlined is an
example use case for this scenario. Unit test executables may link
to the executable under test, possibly with $<COMPILE_ONLY:...>.
Issue: #23448 #27046
2026-01-16 18:10:14 +11:00
Tyler Yankee
d8c6bbe693
Help: Improve formatting for cmake_host_system_information
...
Use the signature directive to improve formatting of links to each
sub-command, especially `QUERY WINDOWS_REGISTRY`.
2026-01-15 20:30:17 -05:00
Tyler Yankee
307c2240ad
Help: Improve command formatting atop file page
...
Amend the references to the `file` page from commit c575d84555 (Help:
Use signature directive for `cmake_path` command, 2025-10-08).
2026-01-15 20:26:16 -05:00
Marc Chevrier
b86a77e8c8
cm::filesystem::path: ensure independence from the program locale.
...
Fixes : #27472
2026-01-15 19:44:14 +01:00
Tyler Yankee
435e403e5a
Tutorial: Fix typo in Step 5
2026-01-15 11:38:45 -05:00
Matthew Woehlke
28647db676
Experimental: Add CMAKE_EXPERIMENTAL_MAPPED_PACKAGE_INFO
...
Update experimental documentation to mention support for generating CPS
package info from `install(EXPORT)`.
2026-01-14 13:06:17 -05:00
Matthew Woehlke
197099e393
Experimental: Update PACKAGE_INFO, SBOM documentation
...
Update experimental documentation to mention that the `install`
command's PACKAGE_INFO and SBOM modes have an `export` equivalent.
2026-01-14 13:06:17 -05:00
Brad King
093b6974f1
Merge topic 'export-refactor-arguments'
...
254916dfc6 export: Make PACKAGE_INFO, SBOM sub-commands
a121e5d49e export: Reset CPS export experimental gate
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11584
2026-01-14 13:00:48 -05:00
Brad King
3976ed27eb
Merge topic 'doc-enable_language-block'
...
bf4a63c7b0 Help: Document that enable_language cannot be used in block()
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11589
2026-01-14 06:39:15 -05:00
Brad King
8194b8ff5c
Utilities/Release: Update docker specs for linux-aarch64 to centos 8 vault
...
Update the centos base image from centos 7 to centos 8. The latter is
available in `vault.centos.org` repositories, so we can rebuild in the
future. The resulting binaries require GLIBC 2.28.
While at it, update to OpenSSL 3.6.0.
2026-01-13 11:38:30 -05:00
Robert Maynard
bf4a63c7b0
Help: Document that enable_language cannot be used in block()
...
Issue: #27389
2026-01-13 11:16:54 -05:00
Brad King
08e1d1001a
Merge topic 'fix-cmp0199'
...
35d5a4fd6d GenEx: Partially restore pre-CMP0199 behavior of $<CONFIG>
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Matthew Woehlke <matthew.woehlke@kitware.com>
Merge-request: !11581
2026-01-13 11:05:11 -05:00
Brad King
0c2e4d8422
Merge topic 'fix-cmp0199' into release-4.2
...
35d5a4fd6d GenEx: Partially restore pre-CMP0199 behavior of $<CONFIG>
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Matthew Woehlke <matthew.woehlke@kitware.com>
Merge-request: !11581
2026-01-13 11:05:09 -05:00
Brad King
dc652e91c6
Merge topic 'E_sum-stdin'
...
394ab1fcfb cmake -E *sum: Add ability to read from stdin
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !11590
2026-01-13 10:52:24 -05:00
Brad King
145b6c8de8
Merge topic 'cxxmodules-docs'
...
3309e34fd2 Help/cmake-cxxmodules: remove outdated `import std` mention
e9e94de9cb Help/cmake-cxxmodules: document the implementation
7006c2fb85 Help/cmake-cxxmodules: document alternative designs
491ecd47ce Help/cmake-cxxmodules: document the chosen design
65fd821d77 Help/cmake-cxxmodules: document use cases
45eb0d5a6a Help/cmake-cxxmodules: document the design goals
d8ef1da8b6 Help/cmake-cxxmodules: document the design space
64a58224dd Help/cmake-cxxmodules: discuss troubleshooting module problems
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11507
2026-01-13 10:47:30 -05:00
Brad King
2e11aef70a
Merge topic 'cudatoolkit-bin2c'
...
2d2036c9e9 FindCUDAToolkit: Add CUDA::bin2c target
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11587
2026-01-13 10:40:14 -05:00
Brad King
6ac852bff2
Merge topic 'instrumentation-no-undoc-commands'
...
16b8cb2669 Help/instrumentation: Remove mention of undocumented options
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11574
2026-01-13 10:23:32 -05:00
Matthew Woehlke
254916dfc6
export: Make PACKAGE_INFO, SBOM sub-commands
...
Change the interface of the `export` command so that `PACKAGE_INFO` and
`SBOM` are proper, first-level sub-commands, rather than being implemented via
`export(EXPORT ... (PACKAGE_INFO|SBOM) ...)`. This brings consistency with the
`install` command and also simplifies argument parsing.
Update the documentation and test cases accordingly. Some of the
argument handling test cases are now rather gratuitous, and are removed,
which also improves consistency with the `install` tests.
2026-01-12 14:05:27 -05:00
Kyle Edwards
394ab1fcfb
cmake -E *sum: Add ability to read from stdin
2026-01-12 13:58:53 -05:00