summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Tests: Add tests for install(PACKAGE_INFO)Matthew Woehlke2024-08-1457-0/+394
| | | | | | | | | | | | | | | | | | | | | | | | Add several test cases to verify that install(PACKAGE_INFO) is working as expected. These cover validating the output for several scenarios, improper use of the command, effects of command arguments, and a handful of improper uses. Tests that should still be added include one covering DESTINATION (both the default and user-specified) and the CPS location and link_location attributes. These have been skipped for now because the former requires actually installing a test project, and the latter involves validating attributes whose values are platform-dependent. (In particular, I don't think link_location will appear on not-Windows.) Additionally, there is no coverage of (other) common install-command arguments such as PERMISSIONS, COMPONENT, etc.; however, because the logic implementing these is shared, the tests covering them for other sub-commands is probably sufficient. Note that, because the files are generated in a location that includes a hash of the install destination, and because the default destination is platform dependent, the tests need to specify a fixed DESTINATION so that the location of generated files (which we need to inspect and validate) is predictable.
* export: Add initial CPS supportMatthew Woehlke2024-08-1414-2/+1155
| | | | | | | | | | | | | | | | | Add initial support for exporting (install only, for now) Common Package Specification (https://cps-org.github.io/cps/) format package descriptions. This has some limitations, such as not supporting generator expressions (as these cannot be portably exported), and only partially supporting transitive dependencies, but should be usable for at least some simple cases. (Actually, $<LINK_ONLY> is theoretically supportable, but is not yet implemented.) This still needs tests; these will be added in the next commit. Other potential improvements include support for language-specific compile definitions and inferring some package properties from project properties. Additionally, there is no module support yet; this is partly pending on having a tool agnostic format for providing the necessary information.
* Merge topic 'export-refactor-more-for-cps'Brad King2024-07-3011-102/+131
|\ | | | | | | | | | | | | | | | | | | 8178fd43e9 export: Fix handling of import prefix e5b73b60e3 export: Generalize GenerateImportFileConfig cd217739f7 export: Refactor obtaining export information Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !9684
| * export: Fix handling of import prefixMatthew Woehlke2024-07-264-27/+35
| | | | | | | | | | | | | | | | | | | | Fix some additional places in export generation logic that were still hard-coding the import prefix. Change cmGeneratorExpression::Preprocess to take the desired prefix as an argument. (This replaces taking a boolean whether to resolve relative paths; if a non-empty prefix is given, that is used to resolve relative paths, otherwise relative paths are left alone.) This should ensure that import properties always spell the prefix according to the format being generated.
| * export: Generalize GenerateImportFileConfigMatthew Woehlke2024-07-256-38/+56
| | | | | | | | | | | | | | | | | | | | Move some logic that is specific to CMake-format exports from GenerateImportFileConfig to an overload of GenerateImportConfig, so that the former can be moved (back) to the generic base class. This will allow it to also be used for Common Package Specification exports. To facilitate this, also add a method to get the format-specific character used to separate the export file base name from the config suffix, so that the rest of the logic to determine the file name can be shared.
| * export: Refactor obtaining export informationMatthew Woehlke2024-07-256-37/+40
| | | | | | | | | | | | | | | | Refactor methods in the build and install export file generators to have the same, simplified API. Expose the resulting method as an abstract method on the base class, so that it can be called from mode-agnostic generators. While we're at it, refactor cmExportInstallFileGenerator's version to use std::any_of.
* | Merge topic 'clean-proto'Brad King2024-07-304-13/+0
|\ \ | | | | | | | | | | | | | | | | | | | | | 61ce6a6eeb Source: Delete unused prototypes Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !9689
| * | Source: Delete unused prototypesVitaly Stakhovsky2024-07-294-13/+0
| | |
* | | Merge topic 'enable_warnings'Brad King2024-07-304-4/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 373b29bd3f Rename {_ => }CMAKE_INCLUDE_SYSTEM_FLAG_${lang}_WARNING Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com> Acked-by: Marcel Raad <marcel.raad@teamviewer.com> Merge-request: !9688
| * | | Rename {_ => }CMAKE_INCLUDE_SYSTEM_FLAG_${lang}_WARNINGPatrick H2024-07-294-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Although not documented publicly, projects may need to override this variable. Remove the private `_` prefix from its name. Issue: #25103
* | | | CMake Nightly Date StampKitware Robot2024-07-301-1/+1
| | | |
* | | | Merge topic 'cmake-pkg-config-integration'Brad King2024-07-2956-0/+2948
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8555c33d92 PkgC: Add cmake_pkg_config(EXTRACT) command 35734c8de3 PkgC: Add llpkgc to build Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9670
| * | | | PkgC: Add cmake_pkg_config(EXTRACT) commandVito Gamberini2024-07-2954-0/+2932
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Wraps the llpkgc parser with cmPkgConfigParser * Adds various resolution and mangling code under cmPkgConfigResolver * Documents new command cmake_pkg_config(EXTRACT). Documentation is written with the assumption additional subcommands will be added soon. * Adds various tests for the above
| * | | | PkgC: Add llpkgc to buildVito Gamberini2024-07-293-0/+16
|/ / / /
* | | | Merge branch 'release-3.30'Brad King2024-07-290-0/+0
|\ \ \ \
| * \ \ \ Merge branch 'release-3.29' into release-3.30Brad King2024-07-290-0/+0
| |\ \ \ \
* | \ \ \ \ Merge branch 'release-3.29'Brad King2024-07-290-0/+0
|\ \ \ \ \ \ | | |/ / / / | |/| | | |
| * | | | | Merge branch 'release-3.28' into release-3.29Brad King2024-07-290-0/+0
| |\ \ \ \ \
| * \ \ \ \ \ Merge topic 'backport-test-curl-output' into release-3.29Brad King2024-07-291-1/+1
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 13fb20f4d3 Tests/RunCMake/file-DOWNLOAD: Update bad host name message for curl 8.9 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9690
* | \ \ \ \ \ \ Merge branch 'release-3.28'Brad King2024-07-290-0/+0
|\ \ \ \ \ \ \ \ | | |_|/ / / / / | |/| | | | | |
| * | | | | | | Merge topic 'backport-test-curl-output' into release-3.28Brad King2024-07-291-1/+1
| |\ \ \ \ \ \ \ | | | |/ / / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 13fb20f4d3 Tests/RunCMake/file-DOWNLOAD: Update bad host name message for curl 8.9 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9690
* | | | | | | | Merge branch 'release-3.30' into masterBrad King2024-07-290-0/+0
|\ \ \ \ \ \ \ \ | | |_|_|/ / / / | |/| | | | | |
| * | | | | | | Merge topic 'backport-test-curl-output' into release-3.30Brad King2024-07-291-1/+1
| |\ \ \ \ \ \ \ | | | |/ / / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 13fb20f4d3 Tests/RunCMake/file-DOWNLOAD: Update bad host name message for curl 8.9 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9690
| | * | | | | | Tests/RunCMake/file-DOWNLOAD: Update bad host name message for curl 8.9Brad King2024-07-291-1/+1
| | |/ / / / /
* | | | | | | Merge branch 'release-3.30'Brad King2024-07-290-0/+0
|\ \ \ \ \ \ \ | |/ / / / / /
| * | | | | | Merge topic 'FindPython-WIN32-EXECUTABLE_DEBUG' into release-3.30Brad King2024-07-291-2/+20
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c25df125e1 FindPython: Fix usage of cached variable _Python_EXECUTABLE_DEBUG Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: Hillel Sims <hsims1@bloomberg.net> Merge-request: !9686
* | \ \ \ \ \ \ Merge topic 'FindPython-WIN32-EXECUTABLE_DEBUG'Brad King2024-07-291-2/+20
|\ \ \ \ \ \ \ \ | | |/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c25df125e1 FindPython: Fix usage of cached variable _Python_EXECUTABLE_DEBUG Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: Hillel Sims <hsims1@bloomberg.net> Merge-request: !9686
| * | | | | | | FindPython: Fix usage of cached variable _Python_EXECUTABLE_DEBUGMarc Chevrier2024-07-261-2/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #26163
* | | | | | | | Merge branch 'release-3.30'Brad King2024-07-290-0/+0
|\ \ \ \ \ \ \ \ | | |/ / / / / / | |/| | | | | |
| * | | | | | | Merge topic 'doc-add_test-typo' into release-3.30Brad King2024-07-292-2/+1
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ca39258a66 Help: Fix typo in add_test documentation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9687
* | \ \ \ \ \ \ \ Merge topic 'doc-add_test-typo'Brad King2024-07-292-2/+1
|\ \ \ \ \ \ \ \ \ | | |/ / / / / / / | |/| | | | | / / | |_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | ca39258a66 Help: Fix typo in add_test documentation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9687
| * | | | | | | Help: Fix typo in add_test documentationBrad King2024-07-262-2/+1
| | |/ / / / / | |/| | | | |
* | | | | | | CMake Nightly Date StampKitware Robot2024-07-291-1/+1
| | | | | | |
* | | | | | | CMake Nightly Date StampKitware Robot2024-07-281-1/+1
| | | | | | |
* | | | | | | Merge branch 'release-3.30'Craig Scott2024-07-270-0/+0
|\ \ \ \ \ \ \ | | |/ / / / / | |/| | | | |
| * | | | | | Merge topic 'fetchcontent-updates-disconnected' into release-3.30Craig Scott2024-07-271-10/+11
| |\ \ \ \ \ \ | | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5df592ce31 FetchContent: Ensure can_fetch_default is set early enough c233c51cb9 ExternalProject: Fix bad indenting for uses_terminal Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: Silver Zachara <silver.zachara@gmail.com> Merge-request: !9685
* | | | | | | Merge topic 'fetchcontent-updates-disconnected'Craig Scott2024-07-271-10/+11
|\ \ \ \ \ \ \ | | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5df592ce31 FetchContent: Ensure can_fetch_default is set early enough c233c51cb9 ExternalProject: Fix bad indenting for uses_terminal Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Acked-by: Silver Zachara <silver.zachara@gmail.com> Merge-request: !9685
| * | | | | | FetchContent: Ensure can_fetch_default is set early enoughCraig Scott2024-07-261-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The can_fetch_default variable needs to be set before the call to _ep_write_gitupdate_script(). Move it to before that call and always set the variable, even if arg_SCRIPT_FILE is not set. This makes the generated git update script file easier to follow if someone tries to follow what it is doing or wants to investigate problems and run it manually. Fixes: #26164
| * | | | | | ExternalProject: Fix bad indenting for uses_terminalCraig Scott2024-07-261-5/+5
| |/ / / / /
* | | | | | CMake Nightly Date StampKitware Robot2024-07-271-1/+1
| | | | | |
* | | | | | Merge topic 'install-parallel-manifest'Brad King2024-07-2620-111/+225
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9799491c7e install: Write manifest file in parallel install Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !9673
| * | | | | | install: Write manifest file in parallel installMartin Duffy2024-07-2520-111/+225
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Updates the parallel install to generate the install_manifest.txt file.
* | | | | | | Merge topic 'update-curl'Brad King2024-07-26235-5427/+8217
|\ \ \ \ \ \ \ | |_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 080d876a79 Utilities: Update hard-coded try_compile results for curl 8.9.0 c1a62dd104 curl: Set build options the way we need for CMake 54c5367320 Merge branch 'upstream-curl' into update-curl 8defd39611 curl 2024-07-24 (5040f7e9) 60bd6acfbf curl: Update script to get curl 8.9.0 7bfe120c07 Tests/RunCMake/file-DOWNLOAD: Update bad host name message for curl 8.9 Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9683
| * | | | | | Utilities: Update hard-coded try_compile results for curl 8.9.0Brad King2024-07-251-0/+2
| | | | | | |
| * | | | | | curl: Set build options the way we need for CMakeBrad King2024-07-251-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Set options added by the update to curl 8.9.0.
| * | | | | | Merge branch 'upstream-curl' into update-curlBrad King2024-07-25232-5424/+8209
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * upstream-curl: curl 2024-07-24 (5040f7e9)
| | * | | | | | curl 2024-07-24 (5040f7e9)Curl Upstream2024-07-25232-5425/+8210
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code extracted from: https://github.com/curl/curl.git at commit 5040f7e94cd01decbe7ba8fdacbf489182d503dc (curl-8_9_0).
| * | | | | | | curl: Update script to get curl 8.9.0Brad King2024-07-251-1/+1
| | | | | | | |
| * | | | | | | Tests/RunCMake/file-DOWNLOAD: Update bad host name message for curl 8.9Brad King2024-07-251-1/+1
| | | | | | | |
* | | | | | | | CMake Nightly Date StampKitware Robot2024-07-261-1/+1
| |_|_|_|_|_|/ |/| | | | | |