Commit Graph

38484 Commits

Author SHA1 Message Date
Kitware Robot
c65ee4d036 CMake Nightly Date Stamp 2025-11-25 00:06:30 -05:00
Kitware Robot
efed08ac1a CMake Nightly Date Stamp 2025-11-24 00:08:31 -05:00
Kitware Robot
33a4a3c43a CMake Nightly Date Stamp 2025-11-23 00:11:15 -05:00
Brad King
0fbb18d03b Merge topic 'fix-cps-export-definitions'
37b15eda3b CPS: Fix exporting definitions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !11436
2025-11-22 18:53:00 -05:00
Kitware Robot
2007766f9f CMake Nightly Date Stamp 2025-11-22 00:06:48 -05:00
Matthew Woehlke
37b15eda3b CPS: Fix exporting definitions
Export compile definitions to CPS using the correct attribute name.

Fixes: #27403
2025-11-21 15:32:41 -05:00
Brad King
fdc1de26c9 Merge topic 'build-dir-override-presets'
19296f507d cmake --build: Allow CLI build dir to override presets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11425
2025-11-21 09:52:11 -05:00
Brad King
aa39871396 Merge topic 'astgrep-has-prefix-suffix-simplifications'
366b25e62e ast-grep: simplify `cmHasLiteral{Suf,Pre}fix` with char literals
9945be27af Utilities/ast-grep: add rules for `cmHasLiteral{Suf,Pre}fix` with char needles
eab4c033ea ast-grep: simplify `cmHas{Suf,Pre}fix` with character needles
d9ee22f331 Utilities/ast-grep: add rules for `cmHas{Suf,Pre}fix` for character needles
aa477d8768 ast-grep: simplify `cmStrCat` calls with one-char strings
514cbbc76e ast-grep: combine string literal arguments in `cmStrCat`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11366
2025-11-21 08:27:11 -05:00
Kitware Robot
a1190b4a84 CMake Nightly Date Stamp 2025-11-21 00:05:31 -05:00
Ben Boeckel
366b25e62e ast-grep: simplify cmHasLiteral{Suf,Pre}fix with char literals 2025-11-20 12:14:14 -05:00
Ben Boeckel
eab4c033ea ast-grep: simplify cmHas{Suf,Pre}fix with character needles 2025-11-20 12:14:14 -05:00
Ben Boeckel
aa477d8768 ast-grep: simplify cmStrCat calls with one-char strings 2025-11-20 12:14:13 -05:00
Ben Boeckel
514cbbc76e ast-grep: combine string literal arguments in cmStrCat 2025-11-20 12:14:13 -05:00
Kitware Robot
b196a40b0d CMake Nightly Date Stamp 2025-11-20 00:07:55 -05:00
Brad King
bb0216e0a2 Merge topic 'cxx-module-metadata'
fa10dc6c22 Experimental/CXXModules: Implement EcoStd Module Metadata parser

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11422
2025-11-19 08:53:29 -05:00
Brad King
ad4a773d0c Merge topic 'vs-slnx'
06178da668 VS: Add include_external_msproject detection of `.wapproj` type
b9ce07b85b VS: Add SLNX project types

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11428
2025-11-19 08:47:07 -05:00
Kitware Robot
a0081ac0cb CMake Nightly Date Stamp 2025-11-19 00:06:52 -05:00
Vito Gamberini
fa10dc6c22 Experimental/CXXModules: Implement EcoStd Module Metadata parser
Adds a parser and serializer for the EcoStd Module Metadata format

RFC: https://github.com/ecostd/rfcs/pull/3

This adapts the existing experimental support for import std; to use
the new parser. The CMAKE_CXX_STDLIB_MODULES_JSON is now the canonical
variable for controlling how CMake discovers the stdlib module metadata,
and is used directly by compiler detection.

Toolchains can still override the __CMAKE::CXX## targets if they wish,
either in conjunction with CMAKE_CXX_STDLIB_MODULE_JSON or not. It is
possible to disable automatic detection of
CMAKE_CXX_STDLIB_MODULE_JSON by setting it to the empty string.

When available, the CMAKE_CXX_STDLIB_MODULE_JSON will be used to create
all requested C++ stdlibs which do not already have targets.
2025-11-18 11:39:59 -05:00
Brad King
06178da668 VS: Add include_external_msproject detection of .wapproj type
It is a Windows Application Packaging Project.

Issue: #27392
2025-11-18 11:18:17 -05:00
Brad King
b9ce07b85b VS: Add SLNX project types
Extend commit e6aa7742b0 (VS: Generate .slnx files for VS 2026,
2025-09-17, v4.2.0-rc1~151^2) to add the `Type=` attribute on SLNX
`<Project>` elements.

Fixes: #27392
2025-11-18 11:10:22 -05:00
Kitware Robot
ba1996eb15 CMake Nightly Date Stamp 2025-11-18 00:08:20 -05:00
William Allen
19296f507d cmake --build: Allow CLI build dir to override presets
`cmake --build <dir>` and `cmake --build --preset <preset>` are currently
mutually exclusive options.  This commit allows `<dir>` to override the
build directory specified in a preset.  This change allows the requirement
for each build preset to have a configure preset to be dropped in a future
commit.

Closes: #27384
2025-11-17 15:10:38 -05:00
Brad King
9c091c7d17 CMake 4.2.0-rc4 2025-11-17 10:32:25 -05:00
Kitware Robot
fb87a6bbb0 CMake Nightly Date Stamp 2025-11-17 00:06:13 -05:00
Kitware Robot
271f358f1f CMake Nightly Date Stamp 2025-11-16 00:09:00 -05:00
Brad King
6087f56da9 Merge topic 'GenEx-STRING'
fd7e305097 GenEx: Add $<STRING> generator expression
7564cbae12 GenEx: add new expressions for string comparisons
dab5e6ebb1 introduce cm::CMakeString class as helper for string() command
34c0c7754f cmString: add methods append and insert
ab60f1a010 Extend usage for cm::string_view for more flexibility

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11382
2025-11-15 09:10:50 -05:00
Brad King
f741e53dfe Merge topic 'vs-cuda-forward-host-compiler-flags'
c185998420 VS/CUDA: Forward unknown flags to the host compiler when possible

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Patrik Huber <patrikhuber@gmail.com>
Merge-request: !11417
2025-11-15 09:08:44 -05:00
Brad King
42d94ff876 Merge topic 'file-GET_RUNTIME_DEPENDENCIES-matching'
bf3f69834d file(GET_RUNTIME_DEPENDENCIES): Normalize paths before matching

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !11351
2025-11-15 09:03:56 -05:00
Brad King
4e85f9078d Merge topic 'vs-slnx'
70ed720232 VS: Add SLNX default startup project

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11420
2025-11-15 09:01:50 -05:00
Brad King
38e86c8ea4 Merge topic 'vs-slnx' into release-4.2
70ed720232 VS: Add SLNX default startup project

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11420
2025-11-15 09:01:48 -05:00
Brad King
b4c8e00f9f Merge topic 'fbuild_fix_pch'
878d154322 FASTBuild: fix multi-language PCHs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11404
2025-11-15 08:59:05 -05:00
Brad King
9e38d74019 Merge topic 'fbuild_fix_pch' into release-4.2
878d154322 FASTBuild: fix multi-language PCHs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11404
2025-11-15 08:59:03 -05:00
Kitware Robot
dea6b14379 CMake Nightly Date Stamp 2025-11-15 00:07:41 -05:00
Brad King
70ed720232 VS: Add SLNX default startup project
At the time of commit e6aa7742b0 (VS: Generate .slnx files for VS 2026,
2025-09-17, v4.2.0-rc1~151^2), the VS 18 Insiders edition did not offer
support for specifying a default startup project in `.slnx` files.
This has since been added, so use it.

Fixes: #27387
2025-11-14 11:03:57 -05:00
Marc Chevrier
fd7e305097 GenEx: Add $<STRING> generator expression
Fixes: #27188
2025-11-14 16:44:29 +01:00
Marc Chevrier
7564cbae12 GenEx: add new expressions for string comparisons 2025-11-14 16:44:29 +01:00
Marc Chevrier
dab5e6ebb1 introduce cm::CMakeString class as helper for string() command
This class will be used, as helper for:
* string() command
* future $<STRING> generator expression
2025-11-14 16:44:29 +01:00
Marc Chevrier
34c0c7754f cmString: add methods append and insert 2025-11-14 16:44:29 +01:00
Marc Chevrier
ab60f1a010 Extend usage for cm::string_view for more flexibility 2025-11-14 16:44:29 +01:00
Brad King
3566a30938 Merge topic 'vs-slnx'
7c284f4278 VS: Fix SLNX with multiple solution-to-project configuration mappings

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11415
2025-11-14 09:46:33 -05:00
Brad King
ef89890a1a Merge topic 'vs-slnx' into release-4.2
7c284f4278 VS: Fix SLNX with multiple solution-to-project configuration mappings

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11415
2025-11-14 09:46:31 -05:00
Brad King
a799c49454 Merge topic 'clang-analyzer'
742c70a5da autogen: Remove unnecessary nullptr check

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11414
2025-11-14 09:40:58 -05:00
hanna.rusakovich
bf3f69834d file(GET_RUNTIME_DEPENDENCIES): Normalize paths before matching
Regex-based filtering should not have to account for slash differences.
Add policy CMP0207 for compatibility.

Fixes: #26202
2025-11-14 17:23:26 +03:00
Kitware Robot
a424a6987f CMake Nightly Date Stamp 2025-11-14 00:06:12 -05:00
Brad King
c185998420 VS/CUDA: Forward unknown flags to the host compiler when possible
Extend commit 7f15c99851 (CUDA: forward unknown flags to host compiler
when possible, 2019-11-29, v3.17.0-rc1~326^2~1) to work in VS too.

Fixes: #27210
2025-11-13 18:50:26 -05:00
Brad King
7c284f4278 VS: Fix SLNX with multiple solution-to-project configuration mappings
Filter each mapping to apply only to its intended solution-wide config.

Fixes: #27385
2025-11-13 12:01:51 -05:00
Eduard Voronkin
878d154322 FASTBuild: fix multi-language PCHs
Fixes: #27371
2025-11-13 10:00:33 -05:00
Brad King
742c70a5da autogen: Remove unnecessary nullptr check
In commit b1b3602cda (FASTBuild: remove non-existent autogen byproducts,
2025-11-10) we added an unnecessary nullptr check on a pointer we know
to be non-nullptr.  Since then, `clang-analyzer` takes that check as a
hint that the pointer might be nullptr, and has reported missing nullptr
checks elsewhere.
2025-11-13 09:46:18 -05:00
Brad King
733a92c943 Merge topic 'ci-debian-13'
322bf67a86 Merge branch 'backport-ci-debian-13' into ci-debian-13
8832f78dd6 IWYU: Update for Debian 13 CI job
f49b0e6759 IWYU: Update for Debian 13 CI job
3653b3e95e Merge branch 'backport-ci-debian-13' into ci-debian-13
1445a8e7db ci: use Debian 13 images and environments
9eedf6c1a9 ci: Update base images to Debian 13
36bdb7b2de ci: Update to TIClang 4.0.4
48f091a166 ci: Update debian12-ninja job to use Swift 6.2.1
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11412
2025-11-13 08:16:15 -05:00
Brad King
02bf95acfe Merge topic 'cmake-gui-reset-model'
327f50083b cmake-gui: Fix {begin|end}ResetModel warnings

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11406
2025-11-13 08:11:48 -05:00