Commit Graph

36734 Commits

Author SHA1 Message Date
Brad King 80bac4de30 Merge topic 'cmake-self-symlinks'
6d9ab7964d cmake: Restore finding installed resources in their real path

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10160
2025-01-13 11:19:56 -05:00
Kitware Robot 0410dfbe76 CMake Nightly Date Stamp 2025-01-13 00:06:20 -05:00
Kitware Robot 4f68bfdc15 CMake Nightly Date Stamp 2025-01-12 00:07:58 -05:00
Kitware Robot 0cc144ecfd CMake Nightly Date Stamp 2025-01-11 00:06:29 -05:00
Brad King 92f6b92155 Merge topic 'duplicate-source-behavior'
3e15419bd4 target_sources: Restore toleration of duplicate CXX_MODULES sources
5cfb8ae790 Tests/CXXModules: add a test with duplicate sources

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !10155
2025-01-10 09:28:16 -05:00
Brad King 675518ea81 Merge topic 'revert-genex-tco-subgraph'
a6b84a438f GenEx: Revert "Limit TARGET_PROPERTY transitive closure optimization"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10156
2025-01-10 09:21:04 -05:00
Brad King 8bd397dce6 Merge topic 'vs-solution-items-absolute'
6c187aae3b VS: Fix VS_SOLUTION_ITEMS for absolute paths

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10153
2025-01-10 09:18:49 -05:00
Brad King 853c75ac61 Merge topic 'relax-rng-access'
339c2b886a cmSystemTools: Add RandomNumber method that avoid re-seeding from OS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10132
2025-01-10 09:16:21 -05:00
Brad King 1ebfd7ac81 Merge topic 'gcc-import-std'
2a0ca6a26d ci: add jobs to test GCC 15-to-be with `import std`
469175c2e6 Experimental: recycle the `import std` UUID
a980dab9b1 gcc: support `import std`
2791b7564b Tests/RunCMake: handle C++26 support where needed

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10023
2025-01-10 09:04:38 -05:00
Brad King c298905998 Merge topic 'find-cps-fix-defs'
8843407d52 cmPackageInfoReader: Improve warning messages
5fb1726761 cmPackageInfoReader: "Fix" handling of "includes"
c44c5b07be cmPackageInfoReader: Fix handling of "definitions"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10117
2025-01-10 08:59:43 -05:00
Kitware Robot db740c72ca CMake Nightly Date Stamp 2025-01-10 00:06:22 -05:00
Ben Boeckel 3e15419bd4 target_sources: Restore toleration of duplicate CXX_MODULES sources
In commit 9c0491a3e4 (cmDyndepCollation: write out scanned source
information too, 2024-03-25) via !9708, the `sf_map` gained a new job of
also being used to track non-file set sources which could import
modules. This was implemented by removing processed `FILE_SET TYPE
CXX_MODULES` sources from the map and working with the sources
remaining. When a `FILE_SET TYPE CXX_MODULES` source appeared multiple
times, this would then erroneously complain that it "was not scheduled
for compilation". Use a set of source paths to track sources that have
already been processed. If duplicates are found, trigger an author
warning and skip the duplicate file.

Fixes: #26549
2025-01-09 22:36:06 +01:00
Brad King 6d9ab7964d cmake: Restore finding installed resources in their real path
In commit 0994bc7929 (cmake: Preserve symlinks in references to itself
when possible, 2024-11-11) we stopped looking for resources using the
real path of the directory containing `cmake`.  Restore it as a fallback
to support layouts like `/{bin -> usr/bin}/cmake`.

Fixes: #26570
2025-01-09 16:23:54 -05:00
Brad King a6b84a438f GenEx: Revert "Limit TARGET_PROPERTY transitive closure optimization"
Revert commit 4a11772618 (GenEx: Limit TARGET_PROPERTY transitive
closure optimization to subgraphs, 2024-05-31, v3.31.0-rc1~114^2).
The change caused substantial performance regressions in some
existing use cases.  Revert it pending further investigation.

Issue: #25728
Fixes: #26457
2025-01-09 11:56:20 -05:00
Lauri Vasama 6c187aae3b VS: Fix VS_SOLUTION_ITEMS for absolute paths
This was missed in commit 0bb13ba0e6 (VS: Add support for Visual Studio
solution items, 2024-10-27).

Fixes: #26593
2025-01-09 11:29:32 -05:00
Tim Blechmann 339c2b886a cmSystemTools: Add RandomNumber method that avoid re-seeding from OS
When profiling Qt builds on macos, about 2.2% of a `cmake` invocation
was spent reading from `/dev/urandom`.  Use a (thread)local rng to
mitigate this cost, particularly in `cmGeneratedFileStreamBase::Open`.
2025-01-09 11:17:20 -05:00
Brad King 52b31ff751 Merge topic 'multi-format-export'
c8997fc046 export: Allow depending on targets exported multiple times
7b553a3b1d cmExportInstallFileGenerator: Report errors with IssueMessage
6195cefcfe export: Convert ExportInfo to a struct with meaningful field names

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10114
2025-01-09 10:57:43 -05:00
Brad King 519738a5b6 Merge topic 'vs-fix-project-imports-for-sdk-style-projects'
3e88e9b4b3 VS: DOTNET_SDK support for VS_PROJECT_IMPORT target property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10149
2025-01-09 10:49:48 -05:00
Brad King ac54f5d50d Merge topic 'patch-found-var'
1a8e43d57d FindPackageHandleStandardArgs: Clarify the FOUND_VAR option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10134
2025-01-09 10:44:01 -05:00
Matthew Woehlke 8843407d52 cmPackageInfoReader: Improve warning messages
Adjust some warning messages to quote information that comes from the
file(s) being read.
2025-01-09 10:23:01 -05:00
Matthew Woehlke 5fb1726761 cmPackageInfoReader: "Fix" handling of "includes"
Rewrite how cmPackageInfoReader parses "includes" to also support
language-specific includes (i.e. map-of-string-to-list-of-string).
Previously, we only supported the simpler list-of-string shorthand for
"includes" that do not have any language-specific includes.
2025-01-09 10:23:01 -05:00
Matthew Woehlke c44c5b07be cmPackageInfoReader: Fix handling of "definitions"
Rewrite cmPackageInfoReader's parsing of the "definitions" attribute.
The old logic (having been originally adapted from proof-of-concept
parsing code circa 2023) was parsing the attribute according to its
specification as of CPS 0.11, but the representation was changed in
CPS 0.12. Add a test to verify that definitions are being imported
correctly. Remove unnecessary setting and resetting of CMAKE_PREFIX_PATH
in the test.
2025-01-09 10:22:52 -05:00
Kitware Robot ef6f5774fa CMake Nightly Date Stamp 2025-01-09 00:05:43 -05:00
Ben Boeckel 469175c2e6 Experimental: recycle the import std UUID
Now that GCC is supported, update the feature UUID.
2025-01-08 16:32:14 -05:00
Leonid Pospelov 3e88e9b4b3 VS: DOTNET_SDK support for VS_PROJECT_IMPORT target property
Closes: #25119
Issue: #23190
2025-01-08 11:48:24 -05:00
Brad King c75adc398b Merge topic 'codegen-help'
45726d93a8 Makefile: List codegen target in help

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10146
2025-01-08 09:24:01 -05:00
Kitware Robot b5ba273119 CMake Nightly Date Stamp 2025-01-08 00:07:42 -05:00
Martin Duffy c8997fc046 export: Allow depending on targets exported multiple times
Fixes: #26556
2025-01-07 15:27:14 -05:00
Brad King 45726d93a8 Makefile: List codegen target in help
This was left out of commit 197cb419d1 (add_custom_command: Add
CODEGEN support, 2024-05-27, v3.31.0-rc1~394^2).

Fixes: #26545
2025-01-07 15:14:53 -05:00
Kitware Robot f0e3f57896 CMake Nightly Date Stamp 2025-01-07 00:06:41 -05:00
Kitware Robot 90971c9188 CMake Nightly Date Stamp 2025-01-06 00:10:00 -05:00
Kitware Robot 3c4b9cd979 CMake Nightly Date Stamp 2025-01-05 00:10:20 -05:00
Kitware Robot fdf56b5bb2 CMake Nightly Date Stamp 2025-01-04 00:09:50 -05:00
Kitware Robot d71717dcdd CMake Nightly Date Stamp 2025-01-03 00:09:10 -05:00
Kitware Robot 7739b5b492 CMake Nightly Date Stamp 2025-01-02 00:12:41 -05:00
Kitware Robot 42e76dd0ef CMake Nightly Date Stamp 2025-01-01 00:07:58 -05:00
Kitware Robot f99a933dfd CMake Nightly Date Stamp 2024-12-31 00:10:59 -05:00
Peter Kokot 1a8e43d57d FindPackageHandleStandardArgs: Clarify the FOUND_VAR option
The `find_package_handle_standard_args(FOUND_VAR)` is deprecated as of
CMake 3.3 and both the `<PackageName>_FOUND` and the upper-cased
`<PACKAGE_NAME>_FOUND` are set with or without using this option.
Additionally, find modules and docs are also synced with this to make it
clearer.
2024-12-31 02:07:16 +01:00
Martin Duffy 7b553a3b1d cmExportInstallFileGenerator: Report errors with IssueMessage 2024-12-30 10:59:44 -05:00
Martin Duffy 6195cefcfe export: Convert ExportInfo to a struct with meaningful field names 2024-12-30 10:59:33 -05:00
Kitware Robot a66fd391c9 CMake Nightly Date Stamp 2024-12-30 00:09:23 -05:00
Kitware Robot a3ae12ff96 CMake Nightly Date Stamp 2024-12-29 00:09:50 -05:00
Kitware Robot 249811016b CMake Nightly Date Stamp 2024-12-28 00:08:37 -05:00
Kitware Robot 1c52e53ca4 CMake Nightly Date Stamp 2024-12-27 00:06:09 -05:00
Kitware Robot 6d233764ff CMake Nightly Date Stamp 2024-12-26 00:08:50 -05:00
Kitware Robot dbaffb6596 CMake Nightly Date Stamp 2024-12-25 00:07:08 -05:00
Kitware Robot a548d65e39 CMake Nightly Date Stamp 2024-12-24 00:11:36 -05:00
Kitware Robot 5c3ccdabba CMake Nightly Date Stamp 2024-12-23 00:11:14 -05:00
Kitware Robot b964dc8181 CMake Nightly Date Stamp 2024-12-22 00:07:49 -05:00
Kitware Robot c94cd43584 CMake Nightly Date Stamp 2024-12-21 00:06:38 -05:00