Commit Graph

68522 Commits

Author SHA1 Message Date
Brad King 74c462b4f8 Merge topic 'xcode-scheme-test-config'
7d28005244 Xcode: Support for test action 'Build Configuration' scheme property
1f4e1ccbc8 Help: Move launch config scheme property to the correct section
8aaae0f643 vim: Remove duplicated keywords from cmake.vim

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10154
2025-01-13 11:37:31 -05:00
Brad King 3c57d9bbc3 Merge topic 'patch-feature-summary'
0dab706e94 FeatureSummary: Enhance documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10142
2025-01-13 11:28:57 -05:00
Brad King 6a800f666f Merge topic 'CMAKE_LANG_LINK_MODE-variable-creation'
00932ea864 Introduce CMAKE_<LANG>_LINK_MODE variable.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Merge-request: !10162
2025-01-13 11:23:32 -05:00
Brad King eb616ed6fd Merge topic 'fix-Fortran_BUILDING_INTRINSIC_MODULES'
b65930a7a7 Fortran: Add Fortran_BUILDING_INTRINSIC_MODULES for building intrinsics

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10158
2025-01-13 11:22:05 -05:00
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
Peter Kokot 0dab706e94 FeatureSummary: Enhance documentation
This fixes typos, syncs docs code style a bit and refactors functions
descriptions.

- Initial example improved and synced with the current
  `feature_summary()` output
- The global properties are listed with indentation
- Added reference links where it makes sense to better understand the
  terminology
- CMake versions added for all properties (they got introduced in CMake
  3.8)
- All "macro" words renamed to "function"
- "Legacy Macros" renamed to "Deprecated Functions"
2025-01-10 18:39:15 +01:00
Brad King e6d5a518b1 Merge branch 'release-3.31' 2025-01-10 10:58:32 -05:00
Brad King 569b821a13 CMake 3.31.4 v3.31.4 2025-01-10 09:59:02 -05:00
Brad King bc21c8ad97 Merge branch 'release-3.31' 2025-01-10 09:28:16 -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 92b260387d Merge topic 'duplicate-source-behavior' into release-3.31
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:14 -05:00
Brad King 9a17116942 Merge branch 'release-3.31' 2025-01-10 09:26:59 -05:00
Brad King 02b7250712 Merge topic 'lfortran-generate-object-code'
daf6cc89ee LFortran: Remove hard-coded --generate-object-code flag

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10159
2025-01-10 09:26:58 -05:00
Brad King 3df8890638 Merge topic 'lfortran-generate-object-code' into release-3.31
daf6cc89ee LFortran: Remove hard-coded --generate-object-code flag

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10159
2025-01-10 09:26:54 -05:00
Brad King 5c8643fae7 Merge branch 'release-3.31' 2025-01-10 09:21:04 -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 8f45140baf Merge topic 'revert-genex-tco-subgraph' into release-3.31
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:01 -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 553df0000f Merge topic 'tasking-flags'
a2f24a7ba7 Tasking: Fix C Compiler standard and extension flags
730f72aa20 Tasking: Fix flag for COMPILE_WARNING_AS_ERROR

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10152
2025-01-10 09:09:32 -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
Marc Chevrier 00932ea864 Introduce CMAKE_<LANG>_LINK_MODE variable.
This variable define how the link step is done. Possible values are:
* DRIVER: the compiler is used as driver for the link step
* LINKER: the linker is used directly for the link step.
2025-01-10 13:24:16 +01: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
Ben Boeckel 5cfb8ae790 Tests/CXXModules: add a test with duplicate sources
See: #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
Alex Turbov b65930a7a7 Fortran: Add Fortran_BUILDING_INTRINSIC_MODULES for building intrinsics
In commit fe3f846e1b (Makefiles: Add support for building Fortran
intrinsics, 2020-11-19, v3.22.0-rc1~565^2) the property was added with
incorrect spelling `Fortran_BUILDING_INSTRINSIC_MODULES`.  Add a new
property with the correct spelling.  Keep the old one for compatibility.

Issue: #21463
2025-01-09 15:30:00 -05:00
Saurabh Kumar daf6cc89ee LFortran: Remove hard-coded --generate-object-code flag
This was added in commit 98d0f918ba (LFortran: Add support for this
compiler, 2024-01-25, v3.31.0-rc1~303^2~2) because it is needed for
cases covered by CMake's Fortran tests.  However, it does not work
with Fortran modules and breaks lfortran's own `examples/project1`.
Move the flag to the test cases that need it, just as the original
commit did with `--implicit-interface`.

Fixes: #26597
Co-authored-by: Brad King <brad.king@kitware.com>
2025-01-09 14:49:39 -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
Alaa Mahran a2f24a7ba7 Tasking: Fix C Compiler standard and extension flags
- Remove incorrect `--strict` flag for the C compiler.
- Add C compiler extensions.

Fixes: #26591
2025-01-09 11:49:07 -05:00
Alaa Mahran 730f72aa20 Tasking: Fix flag for COMPILE_WARNING_AS_ERROR
Issue: #26591
2025-01-09 11:49:07 -05:00
Cristiano Carvalheiro 7d28005244 Xcode: Support for test action 'Build Configuration' scheme property
Also allow scoped property checking on Xcode scheme tests to
 be able to distinguish between launch and test actions build config.
2025-01-09 16:36:33 +00: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 cf9018ad6f Merge topic 'test-musl'
5bbbdf36f4 Tests/RunCMake/RuntimePath: Fix Stub case for musl C library

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10150
2025-01-09 10:55:05 -05:00
Brad King 9d0ceffd8b Merge topic 'reorder_compiler_detection_error'
52d1b4ad05 CompilerId: Console error output has first try last

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10141
2025-01-09 10:51:41 -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 f875830868 Merge topic 'patch-script-mode'
b8067f1967 FPHSA: Hide hint message when running CMake in script mode

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10144
2025-01-09 10:48:24 -05:00
Brad King 5733f2bfcb Merge topic 'patch-file-make-directory'
d7b33ed8e2 file(MAKE_DIRECTORY): Update synopsis signature

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10145
2025-01-09 10:46:55 -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
Brad King 462e720bd8 Merge topic 'FeatureSummary-include_guard'
5fada06d6e FeatureSummary: Add include_guard

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10140
2025-01-09 10:41:34 -05:00
Brad King 519c252bc8 Merge topic 'tutorial-step1-files-to-edit'
e61ba188b6 Tutorial: Add missing entry in Step 1 list of files to edit

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Nirav Nirmal <nirmalnirav@outlook.com>
Merge-request: !10135
2025-01-09 10:36:43 -05:00
Brad King ecfdebc9f4 Merge topic 'bison-flex-output-directories'
c01d4e7698 FindBISON, FindFLEX: Create output directories

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10130
2025-01-09 10:34:22 -05:00
Brad King 4f692fd093 Merge topic 'update-liblzma'
8f9b5ff8d6 liblzma: Disable inline assembly when compiled with conflicting flag
63a2a79c4f Merge branch 'upstream-liblzma' into update-liblzma
86e027bce3 liblzma 2024-10-01 (9331ce40)
7ad473b020 liblzma: Update script to get 5.6.3
bfa489b933 liblzma: Revise conditions for LCC

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10148
2025-01-09 10:28:32 -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