Commit Graph

69454 Commits

Author SHA1 Message Date
Matthew Woehlke
c8ccd5a9e3 export: Add build-tree CPS support
Add Common Package Specification support to export(EXPORT).
2025-02-25 15:42:23 -05:00
Matthew Woehlke
4577e06d91 cmExportCommand: Tag arguments that shouldn't be empty
Tweak some of the argument parsing in cmExportCommand.cxx to use
ArgumentParser::NonEmpty tags on named options that require a non-empty
value.
2025-02-25 12:18:13 -05:00
Matthew Woehlke
9d83a1ed1f Tests: Rename certain CPS tests
Rename the RunCMake/PackageInfo and RunCMake/CpsExportImport tests to
indicate that they cover CPS generated by the install command. This
opens space for similar tests that will cover CPS generation via the
export command.
2025-02-25 12:18:13 -05:00
Brad King
ce1f842055 Merge branch 'release-4.0' 2025-02-25 11:29:04 -05:00
Brad King
4972938b7d CMake 4.0.0-rc2 v4.0.0-rc2 2025-02-25 10:56:02 -05:00
Brad King
40ed8752ef Merge topic 'genex-transitive-link-libraries'
b3da9c6d60 GenEx: Evaluate LINK_LIBRARIES target properties transitively

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10391
2025-02-25 10:08:14 -05:00
Brad King
18e041b28e Merge topic 'fix-export-export-info'
26691689a3 export: Allow compatible build-tree exports

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !10392
2025-02-25 10:06:46 -05:00
Brad King
b1c592acc8 Merge topic 'add-dependency-one-arg'
609c949061 add_dependencies: Allow calling with no dependencies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10372
2025-02-25 10:05:19 -05:00
Brad King
cdc1621013 Merge topic 'windows-export-bigobj'
08ca4fbc7a WINDOWS_EXPORT_ALL_SYMBOLS: Distinguish bigobj from cl -GL objects

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10382
2025-02-25 10:02:35 -05:00
Brad King
40bc9bfdac Merge topic 'find_package-sort-direction'
0e2b87244c find_package: Fix CMAKE_FIND_PACKAGE_SORT_DIRECTION documented default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10390
2025-02-25 09:53:37 -05:00
Brad King
3cb80e365b Merge branch 'release-4.0' 2025-02-25 09:44:41 -05:00
Brad King
646fd33351 Merge topic 'libuv-kvm-bsd-dependency-removal'
4f0fb73816 libuv: Remove kvm dependency for all BSDs except NetBSD

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10385
2025-02-25 09:44:41 -05:00
Brad King
24ccafab4f Merge topic 'libuv-kvm-bsd-dependency-removal' into release-4.0
4f0fb73816 libuv: Remove kvm dependency for all BSDs except NetBSD

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10385
2025-02-25 09:44:39 -05:00
Brad King
080bce44a2 Merge branch 'release-4.0' 2025-02-25 09:38:52 -05:00
Brad King
4af0f637c4 Merge topic 'instrumentation-quote-command'
4e7b37cad3 instrumentation: Quote command arguments to preserve separation
99cd4d979b CTest: Fix startTime in test snippets when using instrumentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10386
2025-02-25 09:38:52 -05:00
Brad King
d0144bfbf7 Merge topic 'instrumentation-quote-command' into release-4.0
4e7b37cad3 instrumentation: Quote command arguments to preserve separation
99cd4d979b CTest: Fix startTime in test snippets when using instrumentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10386
2025-02-25 09:38:50 -05:00
Brad King
2111f6f872 Merge topic 'test-driver-strict-overflow'
f9551f8bd7 TestDriver: Fix -Wstrict-overflow for GCC 7 and earlier

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10383
2025-02-25 09:36:48 -05:00
Kitware Robot
8cf08653f2 CMake Nightly Date Stamp 2025-02-25 00:08:29 -05:00
Hongxu Xu
0e2b87244c find_package: Fix CMAKE_FIND_PACKAGE_SORT_DIRECTION documented default
Previously the documentation said the default was `DEC`,
but the implementation has always defaulted to `ASC`.

Fixes: #22728
2025-02-24 15:03:34 -05:00
Matthew Woehlke
26691689a3 export: Allow compatible build-tree exports
Modify how cmExportBuildFileGenerator::FindExportInfo collects target
export information to properly record the export sets which export a
target. (The old behavior treated every invocation as a separate set,
which is reasonable for export(TARGETS) but does not allow referencing a
target exported multiple times via export(EXPORT). This reflects recent
changes to allow this for installed exports.)
2025-02-24 14:54:50 -05:00
Xuntao Chi
08ca4fbc7a WINDOWS_EXPORT_ALL_SYMBOLS: Distinguish bigobj from cl -GL objects
The MSVC `/GL` flag generates an object of type `ANON_OBJECT_V1`.
`bigobj` has version >= 2.

Fixes: #25798
2025-02-24 14:37:16 -05:00
Roger Leigh
4f0fb73816 libuv: Remove kvm dependency for all BSDs except NetBSD
This dependency is not expressed in upstream libuv.  It was added to
CMake by commit 6a497bb0a3 (libuv: Link with kvm on FreeBSD, 2016-09-08,
v3.7.0-rc1~143^2~1).  It is needed only on NetBSD.

Fixes: #26722
2025-02-24 14:31:28 -05:00
Martin Duffy
609c949061 add_dependencies: Allow calling with no dependencies
Fixes: #26713
2025-02-24 13:56:31 -05:00
Martin Duffy
4e7b37cad3 instrumentation: Quote command arguments to preserve separation
Fixes: #26702
2025-02-24 13:11:19 -05:00
Martin Duffy
99cd4d979b CTest: Fix startTime in test snippets when using instrumentation
Initialize SystemStartTime for TestProcess.
2025-02-24 11:50:11 -05:00
Brad King
b3da9c6d60 GenEx: Evaluate LINK_LIBRARIES target properties transitively
The `LINK_LIBRARIES` and `INTERFACE_LINK_LIBRARIES` target properties
establish the graph of link dependencies used to propagate usage
requirements transitively.  Therefore the `$<TARGET_PROPERTY:...>`
generator expression should evaluate them transitively as it does for
other transitive properties.  Add policy CMP0189 for compatibility.

Fixes: #26709
Issue: #12435
2025-02-24 11:43:47 -05:00
Brad King
63788c7568 Merge branch 'release-4.0' 2025-02-24 11:20:58 -05:00
Brad King
1113623d25 Merge branch 'release-3.31' 2025-02-24 11:20:39 -05:00
Brad King
12e76f1e26 Merge branch 'release-3.31' into release-4.0 2025-02-24 11:20:20 -05:00
Brad King
859ca5c4d7 CMake 3.31.6 v3.31.6 2025-02-24 10:53:17 -05:00
Brad King
861354ec9b Merge branch 'release-4.0' 2025-02-24 10:45:03 -05:00
Brad King
22737da627 Merge branch 'release-3.31' 2025-02-24 10:44:51 -05:00
Brad King
806fe88cb6 Merge branch 'release-3.30' 2025-02-24 10:44:32 -05:00
Brad King
db1478d145 Merge branch 'release-3.31' into release-4.0 2025-02-24 10:44:06 -05:00
Brad King
1e2e9ceccf Merge branch 'release-3.30' into release-3.31 2025-02-24 10:43:52 -05:00
Brad King
2bd6fbe1b0 CMake 3.30.8 v3.30.8 2025-02-24 10:09:52 -05:00
Brad King
4d6ad5b22c Merge branch 'release-4.0' 2025-02-24 09:20:17 -05:00
Brad King
0ae938be80 Merge branch 'release-3.31' 2025-02-24 09:20:15 -05:00
Brad King
437cca4187 Merge branch 'release-3.30' 2025-02-24 09:20:13 -05:00
Brad King
d256fd9566 Merge branch 'release-3.31' into release-4.0 2025-02-24 09:19:47 -05:00
Brad King
70c8f9b249 Merge branch 'release-3.30' into release-3.31 2025-02-24 09:19:29 -05:00
Brad King
7fb69c7452 Merge topic 'backport-3.31-custom-transitive-properties' into release-3.31
8b5af40b34 GenEx: Fix evaluation of LINK_LIBRARIES as custom transitive property
161f703e76 GenEx: Restore evaluation context for conditional transitive properties
419c19d531 Tests: Extend CustomTransitiveProperties with custom transitive LINK_LIBRARIES
ff2004d430 Tests: Extend CustomTransitiveProperties with non-transitive LINK_LIBRARIES
d7f1a100d9 Tests: Split CustomTransitiveProperties argument checks into helper
2ccbad90e6 cmGeneratorExpressionDAGChecker: Construct with initializer list syntax
99fee5720d cmGeneratorExpressionDAGChecker: De-duplicate constructor signature
82151ea289 cmGeneratorExpressionDAGChecker: Construct with initializer list syntax

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10384
2025-02-24 09:18:58 -05:00
Brad King
d061599f5c Merge topic 'backport-3.30-custom-transitive-properties' into release-3.30
8b5af40b34 GenEx: Fix evaluation of LINK_LIBRARIES as custom transitive property
161f703e76 GenEx: Restore evaluation context for conditional transitive properties
419c19d531 Tests: Extend CustomTransitiveProperties with custom transitive LINK_LIBRARIES
ff2004d430 Tests: Extend CustomTransitiveProperties with non-transitive LINK_LIBRARIES
d7f1a100d9 Tests: Split CustomTransitiveProperties argument checks into helper
99fee5720d cmGeneratorExpressionDAGChecker: De-duplicate constructor signature
82151ea289 cmGeneratorExpressionDAGChecker: Construct with initializer list syntax

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10384
2025-02-24 09:17:34 -05:00
Brad King
2bd2044a4d Merge branch 'release-4.0' 2025-02-24 09:15:47 -05:00
Brad King
f48beab388 Merge topic 'custom-transitive-properties'
77c7397ab4 Merge branch 'backport-3.31-custom-transitive-properties'
478d6cfd9a Merge branch 'backport-3.30-custom-transitive-properties'
8b5af40b34 GenEx: Fix evaluation of LINK_LIBRARIES as custom transitive property
161f703e76 GenEx: Restore evaluation context for conditional transitive properties
419c19d531 Tests: Extend CustomTransitiveProperties with custom transitive LINK_LIBRARIES
ff2004d430 Tests: Extend CustomTransitiveProperties with non-transitive LINK_LIBRARIES
d7f1a100d9 Tests: Split CustomTransitiveProperties argument checks into helper
5ac3cca63d Merge branch 'backport-3.31-custom-transitive-properties' (early part)
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10384
2025-02-24 09:15:47 -05:00
Brad King
02b3ed79a0 Merge topic 'custom-transitive-properties' into release-4.0
77c7397ab4 Merge branch 'backport-3.31-custom-transitive-properties'
478d6cfd9a Merge branch 'backport-3.30-custom-transitive-properties'
8b5af40b34 GenEx: Fix evaluation of LINK_LIBRARIES as custom transitive property
161f703e76 GenEx: Restore evaluation context for conditional transitive properties
419c19d531 Tests: Extend CustomTransitiveProperties with custom transitive LINK_LIBRARIES
ff2004d430 Tests: Extend CustomTransitiveProperties with non-transitive LINK_LIBRARIES
d7f1a100d9 Tests: Split CustomTransitiveProperties argument checks into helper
5ac3cca63d Merge branch 'backport-3.31-custom-transitive-properties' (early part)
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10384
2025-02-24 09:15:45 -05:00
Brad King
58e1155d42 Merge topic 'ci-linkcheck'
3c175b5f2c ci: Tell linkcheck to tolerate redirect to versioned variant

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10388
2025-02-24 09:04:59 -05:00
Kitware Robot
a29c2e1cf0 CMake Nightly Date Stamp 2025-02-24 00:07:23 -05:00
Brad King
3c175b5f2c ci: Tell linkcheck to tolerate redirect to versioned variant 2025-02-23 09:15:47 -05:00
Brad King
77c7397ab4 Merge branch 'backport-3.31-custom-transitive-properties' 2025-02-23 08:36:56 -05:00