Commit Graph
39075 Commits
Author SHA1 Message Date
Matthew Woehlke 3f739b92ee clang-format: Fix order of QCmake* includes 2026-03-05 13:50:48 -05:00
Brad King d1afe5fb60 Merge topic 'instrumentation-gui-generate'
fb541168f0 instrumentation: Reset queries on repeat configure steps from CMake GUI
1a63a737c4 instrumentation: Disallow invocation from initial cache files
9cc2bdda10 Tests/Instrumentation: Require CMake 4.3
795f7c27c7 Tests/CMakeGUI: Place test executable in main `bin` directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11757
2026-03-05 10:04:51 -05:00
Brad King 8878fc61ed Merge topic 'import-std-local-target'
0ba9ef4b69 Merge branch 'backport-import-std-local-target'
df6b1f2997 c++modules: Restore use of local target for `import std`
3101d70902 c++modules: Restore use of local target for `import std`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11752
2026-03-05 09:59:58 -05:00
Brad King c9d5baaebe Merge topic 'fbuild_extend_light_cache_opt'
e894c7e163 FASTBuild: allow enabling light cache for non-MSVC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11766
2026-03-05 09:40:01 -05:00
Brad King 7fbd9e4f92 Merge topic 'math-expr-overflow'
2423db545f math: Avoid signed integer overflow on negation
d140e01447 cmExprParserHelper: Factor unary negation operation body out of the parser

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !11767
2026-03-05 09:37:02 -05:00
Kitware Robot dbc4d94715 CMake Nightly Date Stamp 2026-03-05 00:10:39 -05:00
Vito Gamberini df6b1f2997 c++modules: Restore use of local target for import std
Restore use of a project-local `STATIC` library to provide the stdlib's
module initialization symbols, as CMake 4.2's experimental support did.

In commit fa10dc6c22 (Experimental/CXXModules: Implement EcoStd Module
Metadata parser, 2025-10-21, v4.3.0-rc1~483^2) we switched to an
imported target to provide the BMI under the assumption that stdlib
implementations provide the symbols themselves, but they don't yet.

While refactoring the module metadata parser's properties logic, also
fix a relative path issue for local arguments.

Fixes: #27426, #27626, #27635
2026-03-04 16:45:23 -05:00
Martin DuffyandTyler Yankee fb541168f0 instrumentation: Reset queries on repeat configure steps from CMake GUI
Prevent repeat configure calls from the CMake GUI or `ccmake` tool from
loading query duplicates, which caused many duplicate callbacks to be
invoked on each subsequent hook.

Also ensure that multiple subsequent configure steps invoked by CMake
GUI and `ccmake` each have an associated snippet file during generate.

Fixes: #27651
Co-Authored-By: Tyler Yankee <tyler.yankee@kitware.com>
2026-03-04 16:22:47 -05:00
Tyler Yankee 1a63a737c4 instrumentation: Disallow invocation from initial cache files
Prepare for future changes which invalidate this approach due to the
cadence at which query files are cleared.
2026-03-04 15:32:17 -05:00
Eduard Voronkin e894c7e163 FASTBuild: allow enabling light cache for non-MSVC
Starting from version 1.19 FASTBuild now
supports `UseLightCache_Experimental` for
non-MSVC compilers: https://www.fastbuild.org/docs/changelog.html
2026-03-04 09:46:28 -05:00
Brad King 2423db545f math: Avoid signed integer overflow on negation
Extend commit 099c05dd04 (math: Avoid signed integer overflow when
intrinsics are available, 2026-02-26) to cover unary `-`.
2026-03-04 09:41:56 -05:00
Brad King d140e01447 cmExprParserHelper: Factor unary negation operation body out of the parser 2026-03-04 09:41:56 -05:00
Brad King 8bd6ca841e Merge topic 'ctest-show-only-no-custom-processing'
3e89f5ae83 ctest: Disable pre- and post-processing during `--show-only`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11763
2026-03-04 09:36:46 -05:00
Brad King c328f5cdfc Merge topic 'normalize-install-path'
0f1ba8f6bb install: Normalize DESTINATION `.`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11755
2026-03-04 09:31:42 -05:00
Brad King 368948c35e Merge topic 'ci-iwyu'
79610a2e75 IWYU: Include <cm/string_view> instead of <string_view>

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11764
2026-03-04 09:29:49 -05:00
Brad King aa8c50df4c Merge topic 'cpack-archive-error-detail'
c6cefac938 CPack/Archive: Show filename causing same-file-different-content

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11760
2026-03-04 09:27:27 -05:00
Kitware Robot 81809873fa CMake Nightly Date Stamp 2026-03-04 00:15:23 -05:00
Sebastian Sura 3e89f5ae83 ctest: Disable pre- and post-processing during --show-only
Do not run the custom pre-/post- test tasks when instructed to only show
the tests that would be executed.  Otherwise it's impossible to reliably
parse the output of this as is will be contaminated by all output
produced by the pre-/post-scripts!

Fixes: #23254
2026-03-03 16:57:05 -05:00
huangqinjin 0f1ba8f6bb install: Normalize DESTINATION .
Such that during installation, instead of printing

  -- Installing: /cmake/install/prefix/./file

now prints

  -- Installing: /cmake/install/prefix/file
2026-03-03 16:32:05 -05:00
Brad King 79610a2e75 IWYU: Include <cm/string_view> instead of <string_view>
This was missed during review of commit e531e7420d (Reduce string copies
by using View function alternatives, 2026-01-25, v4.3.0-rc1~63^2~4).
2026-03-03 16:24:14 -05:00
Rex Keen c6cefac938 CPack/Archive: Show filename causing same-file-different-content
When there are two files with the same name but different content, an
error is shown, but the error does not include the filename which caused
it. This adds the filename to the error.
2026-03-03 15:53:00 -05:00
Brad King 2defff58e2 CMake 4.3.0-rc2 2026-03-03 10:48:28 -05:00
Brad King e85fc58f4d Merge topic 'ctest-error-exit'
8dbb7f65f9 ctest: Exit 1 when argc == 1 and no input file exists
fa7c993ef9 Help: Document plain `ctest` command-line signature and exit code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !11743
2026-03-03 09:32:27 -05:00
Kitware Robot e442e78f07 CMake Nightly Date Stamp 2026-03-03 00:10:25 -05:00
Brad King 3fed7ab307 Merge topic 'pre-commit-update-typos'
69691f5bb2 pre-commit: version bump `typos` hook + fix found typo

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11756
2026-03-02 14:10:14 -05:00
Sertonix 8dbb7f65f9 ctest: Exit 1 when argc == 1 and no input file exists
Fixes: #26759
2026-03-02 12:20:08 -05:00
Alex Turbov 69691f5bb2 pre-commit: version bump typos hook + fix found typo 2026-03-02 09:54:13 -05:00
Brad King aa86ddc4df Merge topic 'FILE_SET-inspection-properties'
63775fe60f FILE_SET: add the support of properties for file set inspection
9696a44cd3 Sphinx: update infrastructure for File Set properties support

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11732
2026-03-02 09:42:07 -05:00
Kitware Robot 9e7e985b8a CMake Nightly Date Stamp 2026-03-02 00:06:45 -05:00
Kitware Robot 757c0c7b7e CMake Nightly Date Stamp 2026-03-01 00:10:29 -05:00
Marc Chevrier 63775fe60f FILE_SET: add the support of properties for file set inspection 2026-02-28 13:46:57 +01:00
Brad King c430057429 Merge topic 'fbuild_fix_iface_targets_with_private_sources'
af8f4ca675 FASTBuild: fix iface targets with private sources

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11744
2026-02-28 07:12:03 -05:00
Brad King d072d3b0c4 Merge topic 'fbuild_fix_iface_targets_with_private_sources' into release-4.3
af8f4ca675 FASTBuild: fix iface targets with private sources

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11744
2026-02-28 07:12:01 -05:00
Brad King 099c05dd04 math: Avoid signed integer overflow when intrinsics are available
The `math(EXPR)` command documents that results must fit in a 64-bit
signed integer.  When built with compilers that offer the relevant
intrinsics, detect overflow and issue warnings.
2026-02-28 07:03:51 -05:00
Brad King 3c1f9d059e cmExprParserHelper: Factor operation bodies out of the parser 2026-02-28 07:03:51 -05:00
Brad King 5a25810e9c cmExprParserHelper: Port from KWIML int.h to <cstdint> types
Since commit 5b0f73a15a (math: Use 64-bit integer type for computation,
2018-05-18, v3.13.0-rc1~357^2~3) we've started requiring `<cstdint>`.
2026-02-28 07:03:51 -05:00
Kitware Robot e50e73e456 CMake Nightly Date Stamp 2026-02-28 00:12:57 -05:00
Ben Boeckel e5b1a23f27 c++modules: Revert partial implementation of per-importer BMIs for 4.3
Introduced in commit 5c00749c5d (cmCxxModuleUsageEffects: Collect and
apply BMI compatibility requirements, 2025-12-29, v4.3.0-rc1~43^2), this
has exploded the set of BMIs generated in existing builds.  Revert this
partial implementation and comment out its corresponding test for the
4.3 release.  Work towards a full implementation will proceed in
post-4.3 development.

Issue: #27597
2026-02-27 10:49:54 -05:00
Eduard Voronkin af8f4ca675 FASTBuild: fix iface targets with private sources
When `PRIVATE` sources are added to an `INTERFACE`
target A and A is a dependency of B - the target A
ends up in "direct dependencies" of the B targets
and it messes up the generated `fbuild.bff` file.

Fixes: #27644
2026-02-27 10:13:14 -05:00
Brad King 8f09b95037 Merge topic 'script-generator-quoted'
48115670b5 cmLocalGenerator: Use cmScriptGenerator::Quote
0dd7258287 cmInstallRuntimeDependencySetGenerator: Use cmScriptGenerator::Quote
56e90c4eb7 cmInstallCxxModuleBmiGenerator: Use cmScriptGenerator::Quote
01b8005996 cmGlobalNinjaGenerator: Use cmScriptGenerator::Quote
82802340c9 cmExportCMakeConfigGenerator: Use cmScriptGenerator::Quote
c778e75749 cmCoreTryCompile: Use cmScriptGenerator::Quote
1d76bec9b7 cmMakefileTargetGenerator: Use cmScriptGenerator::Quote
7c984778c5 cmLocalUnixMakefileGenerator3: Use cmScriptGenerator::Quote
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11735
2026-02-27 08:35:27 -05:00
Brad King eaecd6445b Merge topic 'import-std-experimental'
c1d58d3f3d Experimental: Restore `import std` gate
2e29354040 Experimental: Restore documentation link to CPS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !11745
2026-02-27 08:28:52 -05:00
Kitware Robot 87b049a2c0 CMake Nightly Date Stamp 2026-02-27 00:09:31 -05:00
Brad King c1d58d3f3d Experimental: Restore import std gate
Several problems with this feature came up while testing 4.3.0-rc1.
These include both broken stdlib distributions and regressions in our
implementation of the feature since CMake 4.2.

Revert commit 70c1f0f43d (Experimental: Remove import std experimental
gate, 2026-02-04, v4.3.0-rc1~61^2) except for its incidental fixes.

Remove the 4.3 release notes related to `import std`.

Rotate the experimental gate's UUID.

Issue: #27426
Issue: #27597
Issue: #27626
Issue: #27635
2026-02-26 17:19:19 -05:00
Brad King bc2f0574e6 Merge topic 'fix-build-with-system-expat'
06460b7764 expat: Fix linking with system Expat via its CMake package

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11730
2026-02-26 09:25:44 -05:00
Brad King d32170a997 Merge topic 'c++modules-subdir-spaces'
443014b840 c++modules: Fix scanning with spaces in subdirectory name
2d262efd29 cmNinjaTargetGenerator: Factor out helper for shell path arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !11738
2026-02-26 09:17:24 -05:00
Brad King 50fd168a0e Merge topic 'c++modules-subdir-spaces' into release-4.3
443014b840 c++modules: Fix scanning with spaces in subdirectory name
2d262efd29 cmNinjaTargetGenerator: Factor out helper for shell path arguments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !11738
2026-02-26 09:17:22 -05:00
Brad King 3fd4d2e11b Merge topic 'export-file-generator-error-messages'
428881a224 cmExportInstallFileGenerator: fix error message construction

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11736
2026-02-26 09:12:36 -05:00
Daniel Pfeifer 48115670b5 cmLocalGenerator: Use cmScriptGenerator::Quote 2026-02-26 14:12:48 +01:00
Daniel Pfeifer 0dd7258287 cmInstallRuntimeDependencySetGenerator: Use cmScriptGenerator::Quote 2026-02-26 14:12:47 +01:00
Daniel Pfeifer 56e90c4eb7 cmInstallCxxModuleBmiGenerator: Use cmScriptGenerator::Quote 2026-02-26 14:12:45 +01:00