77821 Commits
Author SHA1 Message Date
Brad King d76510390b CMake 4.5.0-rc3 v4.5.0-rc3 2026-11-04 09:15:40 -05:00
Brad King 0ec9863aaf Merge branch 'release-4.4' into release-4.5 2026-11-04 08:49:06 -05:00
Brad King 44de8c0a22 Merge topic 'ctest-U-no-arg' into release-4.5
b150e8757c ctest: Restore handling of -U and --union with no value

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12765
2026-11-04 08:48:17 -05:00
Brad King 4b3cbac39b Merge branch 'release-4.3' into release-4.4 2026-11-04 08:47:46 -05:00
Brad King 8820c656cb Merge topic 'ctest-U-no-arg' into release-4.4
b150e8757c ctest: Restore handling of -U and --union with no value

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12765
2026-11-04 08:47:38 -05:00
Brad King 4e2589cfd7 Merge topic 'ctest-U-no-arg' into release-4.3
b150e8757c ctest: Restore handling of -U and --union with no value

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12765
2026-11-04 08:47:04 -05:00
Ralf Habacker b150e8757c ctest: Restore handling of -U and --union with no value
Refactoring in commit c0c4d48ba2 (cmCTest: Use cmCommandLineArgument
command-line parsing infrastructure, 2024-10-12, v4.0.0-rc1~646^2)
accidentally made `-U` and `--union` require an argument, but the
documentation states that no argument is required.

Closes: #28243
2026-11-03 10:42:40 -05:00
Brad King 934db8d3e6 Merge topic 'FindDoxygen-terminal-and-stamp' into release-4.5
6c4a0d284e FindDoxygen: Makes USES_TERMINAL compatible with USE_STAMP_FILE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12754
2026-11-03 10:16:13 -05:00
Brad King 10bf932bdd Merge topic 'codegen-test-fs-resolution' into release-4.5
4daf96a1eb Tests/RunCMake/Codegen: Fix rebuild cases on make tools with 1s resolution

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Tyler Yankee <tyler.yankee@kitware.com>
Merge-request: !12761
2026-11-03 09:07:47 -05:00
Brad King c5bdf509e4 Merge topic 'clang-tidy-empty-suppressions' into release-4.5
0fcac5aa18 clang-tidy: Enable checks that have no existing violations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12749
2026-11-03 09:05:47 -05:00
James Miro 6c4a0d284e FindDoxygen: Makes USES_TERMINAL compatible with USE_STAMP_FILE
Fixes: #28238
2026-11-03 09:03:57 -05:00
Brad King 4daf96a1eb Tests/RunCMake/Codegen: Fix rebuild cases on make tools with 1s resolution
Revise a test from commit 36fcfb3e01 (Tests/RunCMake/Codegen: Extend
coverage, 2026-10-25, v4.5.0-rc2~4^2) to pass more reliably on such
`make` tools.
2026-11-02 11:17:46 -05:00
Brad King 9e1c78ad92 Merge topic 'source_group-fix-TREE-with-empty-path' into release-4.5
809aacdd5c source_group: TREE with empty string must be supported

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12746
2026-11-02 10:16:20 -05:00
Brad King e9767d8f79 Merge topic 'sbom-fix-uninstalled-deps' into release-4.5
2d732c85de cmSbom: Export uninstalled libraries / references to private static deps

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12730
2026-11-02 10:13:20 -05:00
Brad King af4c807a86 Merge topic 'toolchain-change-empty' into release-4.5
fcce694567 CMAKE_TOOLCHAIN_FILE: Account for empty values when detecting changes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !12745
2026-11-02 10:09:39 -05:00
Brad King 55cf31922b Merge topic 'fix-ninja-interface-object-bmi' into release-4.5
8e127aa243 c++modules: Make interface object BMIs static Ninja outputs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !12744
2026-11-02 10:07:24 -05:00
Tyler Yankee 0fcac5aa18 clang-tidy: Enable checks that have no existing violations 2026-10-31 07:02:29 -04:00
Aiden Woodruff fcce694567 CMAKE_TOOLCHAIN_FILE: Account for empty values when detecting changes
Initially empty CMAKE_TOOLCHAIN_FILE values should not result in an
include() statement but should be recorded to later detect changes.

Fixes: #28231
2026-10-30 13:05:16 -04:00
Marc Chevrier 809aacdd5c source_group: TREE with empty string must be supported
Fixes: #28230
2026-10-30 17:18:22 +01:00
Taylor Sasser 2d732c85de cmSbom: Export uninstalled libraries / references to private static deps
install(SBOM) could crash for dependencies outside an export set and
mishandle private dependencies expressed through LINK_ONLY.

Resolve link expressions before target lookup, traverse unexported
dependencies transitively, and isolate document state per configuration.
Preserve target license precedence and align document metadata inheritance
with CPS. Add regression coverage for these cases.

Fixes: #28141
Fixes: #28210
2026-10-30 11:12:21 -04:00
Brad King be82723c6a Merge branch 'release-4.4' into release-4.5 2026-10-30 10:22:03 -04:00
Brad King 86535dc4d8 Merge topic 'std-filesystem-windows' into release-4.5
57c68e39ea cm::filesystem: Restore detection of std::filesystem support on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12729
2026-10-30 10:21:32 -04:00
Brad King 10b3da9ee8 Merge branch 'release-4.3' into release-4.4 2026-10-30 10:19:57 -04:00
Brad King b5928d14a5 Merge topic 'std-filesystem-windows' into release-4.4
57c68e39ea cm::filesystem: Restore detection of std::filesystem support on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12729
2026-10-30 10:19:45 -04:00
Brad King c52f37782d Merge topic 'std-filesystem-windows' into release-4.3
57c68e39ea cm::filesystem: Restore detection of std::filesystem support on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12729
2026-10-30 10:19:10 -04:00
Brad King 4f7dbc9408 Merge topic 'python3.16' into release-4.5
959098d148 FindPython: Add support for Python 3.16

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12738
2026-10-30 10:17:49 -04:00
Brad King 2b6a1e403e Merge topic 'doxygen-defined-fix' into release-4.5
63e7673d0b FindDoxygen: Tolerate empty output formats
bc7346c06b Help/if: Fix indentation level of if(DEFINED)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12737
2026-10-30 10:14:30 -04:00
Vito Gamberini 8e127aa243 c++modules: Make interface object BMIs static Ninja outputs
Fixes: #28228
2026-10-30 06:29:19 -04:00
Miro Hrončok 959098d148 FindPython: Add support for Python 3.16 2026-10-29 13:32:07 -04:00
scivision 57c68e39ea cm::filesystem: Restore detection of std::filesystem support on Windows
Since commit b86a77e8c8 (cm::filesystem::path: ensure independence from
the program locale., 2026-01-05, v4.3.0-rc1~185^2) detection always
fails due on Windows to using `fs` instead of `std::filesystem`.

Also remove the `weakly_canonical` check I added in commit ad4481fa00
(Source: Enhance check for C++17 filesystem support, 2023-12-02,
v3.29.0-rc1~296^2).  It was a bad idea since it accesses the filesystem,
and so in general this can give false negative say in the case of
`CMAKE_BINARY_DIR` being on a symlinked drive.

Fixes: #28221
2026-10-29 11:09:05 -04:00
Tyler Yankee 63e7673d0b FindDoxygen: Tolerate empty output formats
Amend commit 8fc8f564c9 (FindDoxygen: Create and clean recursive
subdirectories for output formats, 2026-08-09) to avoid syntax errors
with undefined variables.

Fixes: #28222
2026-10-29 09:30:36 -04:00
Tyler Yankee bc7346c06b Help/if: Fix indentation level of if(DEFINED) 2026-10-29 09:30:34 -04:00
Brad King 739fe769fe CMake 4.5.0-rc2 v4.5.0-rc2 2026-10-28 09:31:47 -04:00
Brad King b11b03e9f0 Merge topic 'ci-fedora-45' into release-4.5
fca05ac459 ci: use Fedora 45 images and environments
6e50523aa4 ci: update Fedora base images to Fedora 45
25ba11fa71 ci: Fix CMake_TEST_HIP cache entry type
ce5fb4628e CTestCustom: Suppress clang-analyzer warning in libuv
efd6a0fdcd clang-tidy: ignore warnings new in version 23
387b496b4f cmake: Avoid else-after-exit
5ebdde2240 cmConfigureLog: Avoid else-after-break
d158a7fabb cmNinjaNormalTargetGenerator: Avoid else-after-return

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !12725
2026-10-28 09:16:02 -04:00
Brad King 2a4177cac1 Merge branch 'release-4.4' into release-4.5 2026-10-27 12:07:33 -04:00
Brad King aa4fae824a CMake 4.4.5 v4.4.5 2026-10-27 11:28:05 -04:00
Brad King 5e5619361d Merge branch 'release-4.4' into release-4.5 2026-10-27 11:22:40 -04:00
Brad King fd1c2c2378 Merge branch 'release-4.3' into release-4.4 2026-10-27 11:19:36 -04:00
Brad King 1b053f63d2 CMake 4.3.6 v4.3.6 2026-10-27 10:43:57 -04:00
Brad King fca05ac459 ci: use Fedora 45 images and environments
Disable some FindHDF5 tests for now because we need updates.

Issue: #28215
2026-10-27 08:15:40 -04:00
Brad King 6e50523aa4 ci: update Fedora base images to Fedora 45
This also updates `typos` from commit 76a8381c98 (ci(pre-commit):
version bump `typos` hook..., 2026-08-29, v4.5.0-rc1~243^2).
2026-10-26 16:15:30 -04:00
Brad King 25ba11fa71 ci: Fix CMake_TEST_HIP cache entry type 2026-10-26 16:15:30 -04:00
Brad King ce5fb4628e CTestCustom: Suppress clang-analyzer warning in libuv
This is third-party code.
2026-10-26 16:15:30 -04:00
Brad King efd6a0fdcd clang-tidy: ignore warnings new in version 23
These warnings can be fixed in the future.  Ignore them for now.
2026-10-26 16:15:30 -04:00
Brad King 387b496b4f cmake: Avoid else-after-exit 2026-10-26 16:15:30 -04:00
Brad King 5ebdde2240 cmConfigureLog: Avoid else-after-break 2026-10-26 16:15:30 -04:00
Brad King d158a7fabb cmNinjaNormalTargetGenerator: Avoid else-after-return 2026-10-26 16:15:29 -04:00
Brad King 3378751f22 Merge topic 'codegen-noop-fix' into release-4.5
36fcfb3e01 Tests/RunCMake/Codegen: Extend coverage
fe95f96096 Ninja Multi-Config: Fix cross-config codegen target suffix
f54117c6b1 Ninja: Evaluate generator expressions in CODEGEN outputs
902ec85438 Makefile, Ninja: Fix no-op codegen builds with no CODEGEN
17de9500e8 Help: Clarify existing CODEGEN behavior

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex Overchenko <aleksandr9809@gmail.com>
Merge-request: !12715
2026-10-26 15:21:40 -04:00
Tyler Yankee 36fcfb3e01 Tests/RunCMake/Codegen: Extend coverage
Cover additional cases pertaining to add_dependencies:

* dependencies followed through an intermediate target,
* a dependency's non-CODEGEN commands must not run,
* dependencies of EXCLUDE_FROM_ALL targets are not followed,
* a dependency in an EXCLUDE_FROM_ALL subdirectory is reached.

Also verify that codegen re-runs a command only when its inputs change.
2026-10-25 19:52:43 -04:00
Tyler Yankee fe95f96096 Ninja Multi-Config: Fix cross-config codegen target suffix
The target that runs codegen for all cross-configs was named
`codegen:codegen`. Name it `codegen:all` to follow the documented
`<target>:all` convention, as the `all` target already does.

Amends commit 197cb419d1 (add_custom_command: Add CODEGEN support,
2024-05-27, v3.31.0-rc1~394^2).
2026-10-25 19:52:43 -04:00