Commit Graph

38173 Commits

Author SHA1 Message Date
Eduard Voronkin c4369b81aa FASTBuild: fix paths' comparison on Windows
On Windows we might have different slashes,
so ` if (binDir == converted)` will not work
even for semantically equivalent directories.
2025-09-29 13:13:57 -07:00
Kitware Robot 05a3f4a30d CMake Nightly Date Stamp 2025-09-28 00:04:54 -04:00
Kitware Robot a17bf203df CMake Nightly Date Stamp 2025-09-27 00:04:32 -04:00
Brad King 441b1ebe75 Merge topic 'patch-found-variables'
0fedf1592c Find*: Update *_FOUND variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11220
2025-09-26 09:58:27 -04:00
Brad King bd80d21c0c Merge topic 'instrumentation-trace-names'
6929baca2f instrumentation: Fix trace event names

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11250
2025-09-26 09:37:06 -04:00
Brad King 48957f9e16 Merge topic 'instrumentation-more-snippet-data'
2fdd1e787f instrumentation: Additional data in custom, install and link snippets
3db07b0189 cmInstallScriptHandler: Refactor to store config and path for each command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11241
2025-09-26 09:34:20 -04:00
Brad King fd20459601 Merge topic 'instrumentation-build-race'
67add75ad7 instrumentation: Load queries for postBuild hook after build is done
b7397f2f29 cmInstrumentation: Simplify test for .json file name suffix
67ed07af23 cmInstrumentation: De-duplicate query directory paths

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11252
2025-09-26 09:32:23 -04:00
Brad King 71443f8a6f Merge topic 'package-source-argument'
0696c9ac91 package_source: Remove redundant argument

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11246
2025-09-26 09:30:26 -04:00
Brad King 6e1de32c9d Merge topic 'pdb-postfix'
7a154bf4fd GenEx: Add POSTFIX option to $<TARGET_PDB_FILE_BASE_NAME>
5654207925 PDB: Always add the target per-config POSTFIX to .pdb names

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11235
2025-09-26 09:26:49 -04:00
Kitware Robot 17450523c3 CMake Nightly Date Stamp 2025-09-26 00:04:54 -04:00
Brad King 67add75ad7 instrumentation: Load queries for postBuild hook after build is done
We launch a `ctest --wait-and-collect-instrumentation` daemon at the
beginning of a build to implement the `postBuild` hook.  It waits for
the build tool to terminate and then collects instrumentation data.
If the build re-runs `cmake`, the instrumentation `query/generated`
directory may be regenerated.  Previously the daemon loaded the
queries up front, but that races with regeneration during the build.
Delay loading queries until after the build finishes.

This was exposed by intermittent test failures since commit a249e820a8
(instrumentation: Add file lock for build daemon, 2025-08-05), which
added build-time regeneration of the build system to an instrumentation
test case.
2025-09-25 17:42:30 -04:00
Brad King b7397f2f29 cmInstrumentation: Simplify test for .json file name suffix 2025-09-25 17:37:41 -04:00
Brad King 67ed07af23 cmInstrumentation: De-duplicate query directory paths 2025-09-25 17:37:14 -04:00
Tyler Yankee 6929baca2f instrumentation: Fix trace event names
Amend commit 933176c2d1 (instrumentation: Rename install and custom
trace events, 2025-09-04) to remove the trailing colon for trace events
which have no name suffix.
2025-09-25 13:59:27 -04:00
Brad King 7366ebb007 Merge topic 'version-macros'
f1ce50dc81 cmVersionMacros: Adopt CMake_VERSION_DEVEL
c5a1675436 cmVersionMacros: Adopt CMake_VERSION_ENCODE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11244
2025-09-25 09:18:52 -04:00
Brad King a0f4d45c52 Merge topic 'cpack-nsis-crc-check'
3c7fee0d99 CPack/NSIS: Allow setting CRCCheck

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11242
2025-09-25 09:15:12 -04:00
Brad King 002c6c845b Merge topic 'fbuild_fix_relative_paths'
0e54dc9589 FASTBuild: fix relative paths to includes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11236
2025-09-25 09:05:03 -04:00
Brad King 0d1d6b0f63 Merge topic 'bootstrap-devirtualization'
ea04e19daf bootstrap: Fix compilation with gcc 16 devirtualization

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11243
2025-09-25 09:00:41 -04:00
Daniel Pfeifer 0696c9ac91 package_source: Remove redundant argument 2025-09-25 11:48:51 +02:00
Marc Chevrier 7a154bf4fd GenEx: Add POSTFIX option to $<TARGET_PDB_FILE_BASE_NAME>
Extend commit 0b055a8893 (GenEx: add POSTFIX option to
$<TARGET_FILE_BASE_NAME>, 2025-09-07) to cover PDB names too.
2025-09-25 11:02:44 +02:00
Marc Chevrier 5654207925 PDB: Always add the target per-config POSTFIX to .pdb names
Manage the POSTFIX target property in the same way as other artifacts
names.  Add policy CMP0202 for compatibility.

Fixes: #27206
2025-09-25 11:00:39 +02:00
Kitware Robot f98e6109c0 CMake Nightly Date Stamp 2025-09-25 00:05:16 -04:00
Brad King f1ce50dc81 cmVersionMacros: Adopt CMake_VERSION_DEVEL
Rename it from DEVEL_CMAKE_VERSION.  It requires version macros
not guaranteed to be available from its old header anyway.
2025-09-24 17:40:40 -04:00
Brad King c5a1675436 cmVersionMacros: Adopt CMake_VERSION_ENCODE 2025-09-24 17:36:05 -04:00
Brad King ea04e19daf bootstrap: Fix compilation with gcc 16 devirtualization
Avoid including a header for a subclass whose implementation is not
compiled during bootstrap.

Fixes: #27256
2025-09-24 17:20:35 -04:00
Martin Duffy 2fdd1e787f instrumentation: Additional data in custom, install and link snippets
- Include `config` in all `install` and `custom` snippets
- Include `target` for `custom` snippets where applicable
- Document and test inclusion of `language` in `link` snippets

Issue: #27244
2025-09-24 16:39:09 -04:00
Daniel Pfeifer 3c7fee0d99 CPack/NSIS: Allow setting CRCCheck
Fixes: #27260
2025-09-24 19:30:27 +02:00
Brad King 622044ce33 CMake 3.31.9 2025-09-24 13:24:34 -04:00
Martin Duffy 3db07b0189 cmInstallScriptHandler: Refactor to store config and path for each command 2025-09-24 12:41:32 -04:00
Brad King 60cdc353c1 Merge topic 'feat/cmake_language_TRACE'
cb07358256 cmake_language: add `TRACE` subcommand

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11229
2025-09-24 08:59:50 -04:00
Brad King 4b9429662c Merge topic 'install-export-components'
a20e9569f1 install(PACKAGE_INFO): Record COMPONENT in global COMPONENTS list
5e7f21328c install(EXPORT_ANDROID_MK): Record COMPONENT in global COMPONENTS list
abfc07f91f install(EXPORT): Record COMPONENT in global COMPONENTS list

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11226
2025-09-24 08:52:29 -04:00
Brad King f1e883fbf2 Merge topic 'instrumentation-content-lifetime'
b8014633dc Experimental: Update the Instrumentation UUID
ba3c278da2 instrumentation: Don't remove content files older than an index
4683db44a1 instrumentation: Write index files to data/index/ subdirectory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11216
2025-09-24 08:50:42 -04:00
Brad King 26413a3e3d Merge topic 'file-GENERATE-CMP0189'
deb7b4b658 file(GENERATE): Record CMP0189 at each call site
9b862e7013 cmGeneratorTarget: Pass genex evaluation context to IsTransitiveProperty

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11234
2025-09-24 08:45:14 -04:00
Kitware Robot 9406a42a26 CMake Nightly Date Stamp 2025-09-24 00:05:12 -04:00
Peter Kokot 0fedf1592c Find*: Update *_FOUND variables
This marks all `<PACKAGENAME>_FOUND` result variables as deprecated
where possible (for `<PackageName>` find modules) to make it clearer
which variable to use.

In CMake 3.3, the FindPackageHandleStandardArgs module was refactored to
set both `<PackageName>_FOUND` and uppercase `<PACKAGENAME>_FOUND`
result variables to the same values. Before that, the FOUND_VAR argument
could be used to set the result variable.

* FindMatlab: Uppercased MATLAB_FOUND is not mentioned as it was never
  documented.
* Documentation for FindPythonInterp and FindPythonLibs modules synced
  accordingly to their deprecation (3.12 instead of 4.2).
* OPENGL_FOUND: deprecation version synced with other find modules.
* DevIL_FOUND was introduced in CMake 3.8. The uppercased variant not
  mentioned as it was previously never documented.

Fixes: #27242
2025-09-23 21:40:58 +02:00
Eduard Voronkin 0e54dc9589 FASTBuild: fix relative paths to includes
When include path is the same as binary dir - `cmSystemTools::RelativePath`
returns an empty string which results into incorrect compiler option
(`-I` without anything afterwards)
2025-09-23 11:19:30 -07:00
Brad King deb7b4b658 file(GENERATE): Record CMP0189 at each call site
Policy CMP0189, introduced by commit b3da9c6d60 (GenEx: Evaluate
LINK_LIBRARIES target properties transitively, 2025-02-24,
v4.1.0-rc1~731^2), takes effect at generation time, and so uses the
policy value as of the end of each directory.  However, some projects
may rely on `file(GENERATE)` with the policy's OLD behavior in order
to extract targets' *direct* dependencies from `LINK_LIBRARIES`.
Pending a first-class solution to that problem, make it easier for
projects to port to the policy's NEW behavior in general while
retaining the OLD behavior in an isolated context.

Fixes: #27220
2025-09-23 11:30:22 -04:00
Martin Duffy b8014633dc Experimental: Update the Instrumentation UUID
Update experimental UUID for instrumentation after commit 4683db44a1
(instrumentation: Write index files to data/index/ subdirectory, 2025-09-19)
updated the location of index files.
2025-09-23 10:59:54 -04:00
Brad King 9b862e7013 cmGeneratorTarget: Pass genex evaluation context to IsTransitiveProperty 2025-09-23 10:57:22 -04:00
F. Pichot a20e9569f1 install(PACKAGE_INFO): Record COMPONENT in global COMPONENTS list
Fixes: #27249
2025-09-23 10:23:37 -04:00
F. Pichot 5e7f21328c install(EXPORT_ANDROID_MK): Record COMPONENT in global COMPONENTS list
Issue: #27249
2025-09-23 10:20:21 -04:00
F. Pichot abfc07f91f install(EXPORT): Record COMPONENT in global COMPONENTS list
Issue: #27249
2025-09-23 10:19:13 -04:00
Brad King 42c1ca69e9 Merge topic 'GenEx-TARGET_FILE_BASE_NAME-POSTFIX'
0b055a8893 GenEx: add POSTFIX option to $<TARGET_FILE_BASE_NAME>

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11159
2025-09-23 09:09:48 -04:00
Brad King 3730fce039 Merge topic 'fortran-scan-include-loop'
1473370df7 Fortran: Tolerate #include loops in dependency scanner

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11214
2025-09-23 09:00:49 -04:00
Brad King 4fb7570c31 Merge topic 'fbuild_small_cleanup'
a63c1b4a84 FASTBuild: fix excessive std::to_string

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11225
2025-09-23 08:51:32 -04:00
Brad King 4de4daf0c9 Merge topic 'fbuild_relative_paths'
2f51a7d83f FASTBuild: use relative paths in more places when enabled

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11222
2025-09-23 08:49:07 -04:00
Brad King 46d16d97a2 Merge topic 'fbuild_remove_redundancies'
9a111f4c83 FASTBuild: don't write unused options

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11221
2025-09-23 08:40:19 -04:00
Kitware Robot 200ba160e9 CMake Nightly Date Stamp 2025-09-23 00:05:05 -04:00
Alex Turbov cb07358256 cmake_language: add TRACE subcommand
Closes 27235.
2025-09-23 03:02:03 +04:00
Marc Chevrier 0b055a8893 GenEx: add POSTFIX option to $<TARGET_FILE_BASE_NAME>
Fixes: #27189
2025-09-23 00:19:53 +02:00