summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* CMake Nightly Date StampKitware Robot2023-11-171-1/+1
|
* Merge topic 'install-export-xcframework'Brad King2023-11-1614-58/+196
|\ | | | | | | | | | | | | | | | | | | 37bc3400cd CMakePackageConfigHelpers: Add generate_apple_platform_selection_file() 256bb0cc40 install(EXPORT): Add ability to point to .xcframework file a90968e044 cmExportBuildFileGenerator: Add structs for target exports Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Jason Juang <jasjuang@gmail.com> Merge-request: !8969
| * install(EXPORT): Add ability to point to .xcframework fileKyle Edwards2023-11-1513-43/+155
| | | | | | | | Issue: #25262
| * cmExportBuildFileGenerator: Add structs for target exportsKyle Edwards2023-11-144-20/+46
| |
* | CMake Nightly Date StampKitware Robot2023-11-161-1/+1
| |
* | Merge topic 'target-objects'Brad King2023-11-155-25/+47
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d7988ff6b8 Merge branch 'backport-target-objects' into target-objects 1814853081 cmCommonTargetGenerator: Drop unused local variable 377b78aef9 cmComputeLinkInformation: Simplify recording OBJECT libraries as link items 50fdaf8f1f cmComputeLinkInformation: Track targets named by TARGET_OBJECTS sources 0e26bd334d cmCommonTargetGenerator: Factor out GetLinkedTargetDirectories loop body Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !8974
| * \ Merge branch 'backport-target-objects' into target-objectsBrad King2023-11-145-23/+46
| |\ \
| | * | cmComputeLinkInformation: Track targets named by TARGET_OBJECTS sourcesBrad King2023-11-145-21/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit b6a5382217 (Ninja: depend on language module information files directly, 2023-02-10, v3.27.0-rc1~502^2), the return value of `cmCommonTargetGenerator::GetLinkedTargetDirectories` must account for linked object libraries because they may provide modules (#25112). These were added by commit b665966933 (cmComputeLinkInformation: track OBJECT library dependencies, 2023-07-22, v3.27.1~5^2). However, targets named by `$<TARGET_OBJECTS:...>` sources are also needed (#25365). The latter were added by commit 22da18b995 (Fortran: Restore support for TARGET_OBJECTS providing modules, 2023-10-27, v3.28.0-rc4~9^2) and commit 035302b7e3 (cmComputeLinkDepends: also copy the target from object link items, 2023-10-27, v3.28.0-rc4~9^2~2). However, their approach added link entries not actually specified by projects. It also incorrectly re-used `cmComputeLinkDepends::AddLinkObject` for object library targets when it is meant for their individual object files. These problems caused additional regressions (#25417). Revert the implementation parts of those commits and leave behind an assertion and comment to help avoid the mistake in the future. Instead, track targets named by `$<TARGET_OBJECTS:...>` sources with a dedicated member. Issue: #25112 Issue: #25365 Fixes: #25417 Co-authored-by: Ben Boeckel <ben.boeckel@kitware.com>
| | * | cmCommonTargetGenerator: Factor out GetLinkedTargetDirectories loop bodyBrad King2023-11-141-9/+8
| | | | | | | | | | | | | | | | Re-use the body in multiple loops instead of allocating to combine them.
| * | | cmCommonTargetGenerator: Drop unused local variableBrad King2023-11-141-1/+0
| | | |
| * | | cmComputeLinkInformation: Simplify recording OBJECT libraries as link itemsBrad King2023-11-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Simplify commit 2c7acd34e2 (cmComputeLinkInformation: add `OBJECT` libraries as link items, 2023-07-24, v3.28.0-rc1~279^2) using the existing local variables.
* | | | CMake Nightly Date StampKitware Robot2023-11-151-1/+1
| |_|/ |/| |
* | | Merge topic 'export-find_dependency-calls'Brad King2023-11-1423-50/+398
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0ad8fc5a63 FetchContent: Set CMAKE_EXPORT_FIND_PACKAGE_NAME c6e6861e63 install(EXPORT): Export find_dependency() calls 2837f592ab cmExportFileGenerator: Add function to set required CMake version e62a3b8625 Help/export: Add signature directives Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Brad King <brad.king@kitware.com> Acked-by: Jason Juang <jasjuang@gmail.com> Merge-request: !8957
| * | | install(EXPORT): Export find_dependency() callsKyle Edwards2023-11-1320-7/+351
| | | | | | | | | | | | | | | | | | | | | | | | Issue: #20511 Co-Authored-by: Brad King <brad.king@kitware.com> Co-Authored-by: Robert Maynard <rmaynard@nvidia.com>
| * | | cmExportFileGenerator: Add function to set required CMake versionKyle Edwards2023-11-136-44/+48
| | | |
* | | | Merge topic 'sources-per-config'Brad King2023-11-141-7/+6
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 16c5977504 Fix per-config sources in multi-config generators when first config adds none Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8971
| * | | | Fix per-config sources in multi-config generators when first config adds noneBrad King2023-11-131-7/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit b1c3ae33ea (cmTarget: Short-circuit language computation if context independent., 2014-04-09, v3.1.0-rc1~669^2~1) we've tried to avoid repeating computation of the list of sources for a target for every configuration in the case that a per-config source (or object library) contributes zero sources. However, it is possible that an entry contributes zero sources in the first configuration processed but at least one source in other configurations. Fixes: #25400
* | | | | Merge topic 'genex-fix-short-circuit'Brad King2023-11-141-1/+1
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | 27244a8f73 cmGeneratorExpressionNode: Fix short-circuit logic Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8966
| * | | | cmGeneratorExpressionNode: Fix short-circuit logicMartin Duffy2023-11-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix logic added by commit 634079b86d (cmGeneratorExpressionEvaluator: Short-circuit boolean operators, 2023-09-11, v3.28.0-rc1~47^2) and add missing test cases. Fixes: #25412
| * | | | Merge topic 'cxx23' into release-3.28Brad King2023-11-084-11/+14
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a0fabc4769 cmGlobalGeneratorFactory: Provide complete cmGlobalGenerator to deleter 85627a93c9 cmCTestBuildCommand: Avoid requiring complete cmGlobalGenerator type publicly 641c02a3ce cmList: Avoid using operator-> on input iterator e4483b8871 Tests: Avoid compiling call to dap::optional<dap::string>(nullptr) Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8950
| * \ \ \ \ Merge topic 'static-library-link-xcframework' into release-3.28Brad King2023-11-071-21/+72
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7d19246138 Xcode: Fix linking against .xcframework from static libraries Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8949
* | | | | | | CMake Nightly Date StampKitware Robot2023-11-141-1/+1
| |_|_|_|/ / |/| | | | |
* | | | | | Merge topic 'make-test-depend-on-all'Brad King2023-11-131-0/+8
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5e0c1777a3 Optionally make `test` target depend on `all` eaa00d4dfa Tests: Add case to verify that 'make test' does not 'make all' Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: Jason Juang <jasjuang@gmail.com> Merge-request: !8956
| * | | | | | Optionally make `test` target depend on `all`William Sciaroni2023-11-101-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #8774
* | | | | | | Merge topic 'link-deduplicate-libs'Brad King2023-11-132-45/+216
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7b99c42e57 Link step: Enable to configure deduplication of libraries 07501c1678 Link Step: Introduce EntriesProcessing class Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8946
| * | | | | | | Link step: Enable to configure deduplication of librariesMarc Chevrier2023-11-092-4/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some platforms, Apple or Windows for instance, do not require to duplicate static libraries to resolve mutual dependencies. Moreover, Xcode version 15 emits a warning if a library is duplicated. On Windows, enable a better control of libraries order. Fixes: #20722, #25297
| * | | | | | | Link Step: Introduce EntriesProcessing classMarc Chevrier2023-11-081-43/+136
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | This refactoring is done in preparation of the possibility to configure the deduplication of the libraries as well as the order on the link command.
* | | | | | | CMake Nightly Date StampKitware Robot2023-11-131-1/+1
| | | | | | |
* | | | | | | CMake Nightly Date StampKitware Robot2023-11-121-1/+1
| | | | | | |
* | | | | | | CMake Nightly Date StampKitware Robot2023-11-111-1/+1
| | | | | | |
* | | | | | | Merge topic 'ctest-remove-binary-dir-error'Brad King2023-11-103-24/+37
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 07edab8ef2 ctest_empty_binary_directory: Report more detail in failure message Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8959
| * | | | | | | ctest_empty_binary_directory: Report more detail in failure messageBrad King2023-11-093-24/+37
| |/ / / / / /
* | | | | | | Merge topic 'cmtargetexport-iwyu'Brad King2023-11-102-2/+3
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c2974463d7 cmTargetExport: Analyze with IWYU Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8961
| * | | | | | | cmTargetExport: Analyze with IWYUKyle Edwards2023-11-092-2/+3
| | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since there is no cmTargetExport.cxx, cmTargetExport.h was not being analyzed by IWYU. Associate cmTargetExport.h with cmExportSet.cxx.
* | | | | | | CMake Nightly Date StampKitware Robot2023-11-101-1/+1
|/ / / / / /
* | | | | | CMake Nightly Date StampKitware Robot2023-11-091-1/+1
|/ / / / /
* | | | | Merge topic 'cxx23'Brad King2023-11-084-11/+14
|\ \ \ \ \ | | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a0fabc4769 cmGlobalGeneratorFactory: Provide complete cmGlobalGenerator to deleter 85627a93c9 cmCTestBuildCommand: Avoid requiring complete cmGlobalGenerator type publicly 641c02a3ce cmList: Avoid using operator-> on input iterator e4483b8871 Tests: Avoid compiling call to dap::optional<dap::string>(nullptr) Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8950
| * | | | cmGlobalGeneratorFactory: Provide complete cmGlobalGenerator to deleterBrad King2023-11-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The libc++ `unique_ptr` implementation requires this since C++23. Fixes: #25388
| * | | | cmCTestBuildCommand: Avoid requiring complete cmGlobalGenerator type publiclyBrad King2023-11-072-9/+12
| | | | |
| * | | | cmList: Avoid using operator-> on input iteratorBrad King2023-11-071-1/+1
| |/ / / | | | | | | | | | | | | As of C++23, some standard library iterator types deprecate it.
| * | | CMake 3.28.0-rc4v3.28.0-rc4Brad King2023-11-061-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2023-11-081-1/+1
| | | |
* | | | Merge topic 'static-library-link-xcframework'Brad King2023-11-071-21/+72
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | 7d19246138 Xcode: Fix linking against .xcframework from static libraries Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8949
| * | | Xcode: Fix linking against .xcframework from static librariesKyle Edwards2023-11-061-21/+72
| |/ / | | | | | | | | | Issue: #21752
* | | Merge topic 'vs-CharacterSet'Brad King2023-11-071-4/+8
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | cbddc66277 VS: Consider macros with values when determining CharacterSet Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8940
| * | | VS: Consider macros with values when determining CharacterSetDeniz Bahadir2023-11-061-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to determine what character-set (Unicode, Multi-Byte, none) shall be set in the generated `*.vcxproj` files, CMake checks if one of the macros `_UNICODE` or `_SBCS` are defined. However, as these macros can be defined with or without a value, the check should always recognize these macros whether they are defined with a value or without. That is now assured by this commit. Fixes: #25379
* | | | Merge topic 'Ninja-use-depslog'Brad King2023-11-073-3/+25
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bb7a0497ef cmTransformDepfile: warn when a depfile is not written to c22c473bde Tests/Ninja*/CustomCommandDepfile: check that deps are in the database b0177003e1 cmGlobalNinjaGenerator: tell `ninja` to actually read the depfile 45eff9145e cmAddCustomCommandCommand: use `cmStrCat` c6445c615b Tests/RunCMake/Ninja: fix subdir prefix check Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8911
| * | | | cmTransformDepfile: warn when a depfile is not written toBen Boeckel2023-11-011-0/+7
| | | | |
| * | | | cmGlobalNinjaGenerator: tell `ninja` to actually read the depfileBen Boeckel2023-11-011-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | But only do so if the depfile is not specified as an output of the command. Otherwise the command will out-of-date itself as `ninja` deletes depfiles that it incorporates into the database and a missing output will cause the command to run again.
| * | | | cmAddCustomCommandCommand: use `cmStrCat`Ben Boeckel2023-11-011-2/+2
| | | | |