Commit Graph

8703 Commits

Author SHA1 Message Date
Brad King 80e76ff643 Merge topic 'cpack-appimage'
1a6dbcc9ea CPack: Add AppImage generator
9f2949bc68 ci: Add script to install appimagetool in Linux jobs
069f858f42 ci: Add patchelf and appstream to Fedora base image

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !10990
2025-09-05 08:58:45 -04:00
Brad King 89f4471c4c Merge topic 'fbuild_additional_props'
a8e64742aa FASTBuild: allow disabling of caching / distribution

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11125
2025-09-04 09:19:30 -04:00
Brad King d75c507d0a Merge topic 'instrumentation-trace'
8d04c4d741 Experimental: Update the Instrumentation UUID
bf52fbfbc4 instrumentation: Add Google trace output
b6dcbc4387 Tests/RunCMake/Instrumentation: Improve formatting
27bc7d5782 Tests/RunCMake/Instrumentation: Factor out common JSON logic

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !11124
2025-09-04 09:15:59 -04:00
Daniel Nicoletti 1a6dbcc9ea CPack: Add AppImage generator
This AppImage generator only relies on appimagetool and patchelf.

Closes: #27104
Co-authored-by: Brad King <brad.king@kitware.com>
2025-09-03 18:50:40 -04:00
Tyler Yankee 8d04c4d741 Experimental: Update the Instrumentation UUID
Update experimental UUID for instrumentation after commit bf52fbfbc4
(instrumentation: Add Google trace output, 2025-08-28) introduced a
significant feature.
2025-09-03 15:24:40 -04:00
Tyler Yankee bf52fbfbc4 instrumentation: Add Google trace output
Add a feature to parse snippets into a trace file compatible with the
Google Trace Event Format.

Fixes: #26674
2025-09-03 15:24:10 -04:00
Eduard Voronkin a8e64742aa FASTBuild: allow disabling of caching / distribution
Compilation is complicated. Caching / distribution is even more
complicated. Sometimes there are bugs (in compilers as well as in
FASTBuild), so export the option to disable those features for CMake
targets.
2025-09-03 12:42:55 -04:00
Martin Duffy 903d35353f instrumentation: Update tests and documentation for FASTBuild support
Fixes: #27184
2025-09-03 10:49:51 -04:00
Brad King c3bdb07a94 Merge topic 'document_find_package_dir_version'
f104bdb3b9 Help: Specify `<PackageName>_DIR` interaction with a version

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11114
2025-09-01 14:37:50 -04:00
Brad King d65cd65df5 Merge topic 'patch-find-modules-versions'
f0b4c19052 FindIcotool: Add Icotool_VERSION
f503c8dad4 FindHSPELL: Add HSPELL_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11098
2025-09-01 14:36:24 -04:00
Brad King 230c5c7d46 Merge topic 'patch-FindOpenCL-version'
870fd818a3 FindOpenCL: Add OpenCL_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11108
2025-09-01 14:31:02 -04:00
Brad King bf46c263f8 Merge branch 'release-4.1' 2025-08-27 13:32:32 -04:00
Brad King ba8c4a15f1 CMake 4.1.1 2025-08-27 12:33:28 -04:00
Brad King 985bbf724a Merge topic 'fbuild'
94113ac687 ci: Add jobs for FASTBuild generator on Linux, macOS, and Windows
01147454e7 FASTBuild: Add generator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Osyotr <zhenchik35026@gmail.com>
Acked-by: Peter Kokot <peterkokot@gmail.com>
Merge-request: !10941
2025-08-27 11:43:37 -04:00
Brad King 2981a064f4 Merge topic 'patch-FindwxWidgets-wxWidgets_USE_FILE'
4f9a8c8aa1 FindwxWidgets: Deprecate wxWidgets_USE_FILE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11110
2025-08-27 11:36:21 -04:00
Brad King 4af2db6ad9 Merge topic 'patch-FindQt3-version'
34a4b39cf3 FindQt3: Add Qt3_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11107
2025-08-27 11:35:02 -04:00
Brad King 7f431ff6b4 Merge topic 'patch-FindTclsh-version'
f9fec08e69 FindTclsh: Add Tclsh_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11103
2025-08-27 11:29:31 -04:00
Brad King 7212282f02 Merge topic 'patch-FindPkgConfig-found-var'
9e3d2cd94f FindPkgConfig: Deprecate PKG_CONFIG_FOUND

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11099
2025-08-27 11:16:46 -04:00
Brad King f156d7fa1f Merge topic 'FindPython-NumPy-target'
0a4a4d2053 FindPython: NumPy target does not depend on Development.Module

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !11093
2025-08-27 11:10:59 -04:00
Brad King e804896981 Merge topic 'instrumentation-configure-content'
451e2cb2a1 instrumentation: Add cmake_instrumentation check to ctest_instrumentation test
e6b37105ba instrumentation: Collect custom content from CMake configure

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !10988
2025-08-27 11:02:21 -04:00
Eduard Voronkin 01147454e7 FASTBuild: Add generator
Fixes: #15294
2025-08-26 14:29:01 -07:00
Meszaros, Gergely f104bdb3b9 Help: Specify <PackageName>_DIR interaction with a version
Explicitly state that if `<PackageName>_DIR` is set, but the version of
the package found there does not match the requested version, then
`find_package` will ignore that directory and continue searching.
2025-08-26 08:27:15 +00:00
Peter Kokot 870fd818a3 FindOpenCL: Add OpenCL_VERSION
- This deprecates the OPENCL_VERSION_STRING result variable.
- Documentation adjusted.
- Support for OpenCL 3.0 was added in CMake 3.24.
- Added CL_TARGET_OPENCL_VERSION compile definition to test so that
  program compiles without warnings.
- Additionally, on Apple systems compiler can't find <Headers/cl.h>
  unless direct path would be passed as a header. Instead, <OpenCL/cl.h>
  is used for version check conditionally.

Issue: #27088
2025-08-25 22:16:51 +02:00
Marc Chevrier 0a4a4d2053 FindPython: NumPy target does not depend on Development.Module
Fixes: #27123
2025-08-25 15:28:41 +02:00
Brad King 46fc0232ae Merge topic 'fix-get-mapped-config'
05ae95c864 cmTarget: Overhaul GetMappedConfig

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !10995
2025-08-25 09:16:53 -04:00
Peter Kokot 4f9a8c8aa1 FindwxWidgets: Deprecate wxWidgets_USE_FILE
This variable in current CMake versions doesn't seem to be needed in any
case. Either if the UsewxWidgets is created in the project's own
CMAKE_MODULE_PATH location, or if FindwxWidgets is "forked" into project
own modules, include(UsewxWidgets) always includes the wanted file.
2025-08-25 01:52:40 +02:00
Peter Kokot 34a4b39cf3 FindQt3: Add Qt3_VERSION
This deprecates the QT_VERSION_STRING result variable.

The QT_VERSION_STRING was probably meant to be set also by FindQt4
module (for the deprecated FindQt) but at the time of writing isn't
implemented therefore replaced in the test.

Issue: #27088
2025-08-24 10:59:32 +02:00
Peter Kokot f9fec08e69 FindTclsh: Add Tclsh_VERSION
This deprecates the TCLSH_VERSION_STRING result variable.

Issue: #27088
2025-08-22 23:10:09 +02:00
Martin Duffy e6b37105ba instrumentation: Collect custom content from CMake configure
Add a `CUSTOM_CONTENT` argument to `cmake_instrumentation()` for collecting
custom content from configure time.

Snippet files include a reference to a JSON file containing any `CUSTOM_CONTENT`
that was added by this command.

Fixes: #26703
2025-08-21 07:20:12 -04:00
Peter Kokot 9e3d2cd94f FindPkgConfig: Deprecate PKG_CONFIG_FOUND
Since most of the find modules use the `<PackageName>_FOUND` result
variables, this now also syncs it for the FindPkgConfig module. The
`PkgConfig_FOUND` result variable is available since CMake 3.3 and
contains the same value. There is also `PKGCONFIG_FOUND` result variable
automatically set with the same value but for simplicity isn't
documented. The uppercased `<PACKAGENAME>_FOUND` result variables set by
find modules are also considered legacy variables.
2025-08-21 01:01:33 +02:00
Peter Kokot f0b4c19052 FindIcotool: Add Icotool_VERSION
This deprecates the ICOTOOL_VERSION_STRING result variable.

Issue: #27088
2025-08-20 23:32:53 +02:00
Peter Kokot f503c8dad4 FindHSPELL: Add HSPELL_VERSION
This deprecates the HSPELL_VERSION_STRING result variable.

Additionally, fixed typos:
* HSPELL_VERSION_MAJOR
* HSPELL_VERSION_MINOR

Issue: #27088
2025-08-20 23:31:41 +02:00
Matthew Woehlke 05ae95c864 cmTarget: Overhaul GetMappedConfig
Create a brand new implementation of `cmTarget::GetMappedConfig` which
prioritized a target's `IMPORTED_CONFIGURATIONS` as the 'source of
truth' for what configurations are available. In particular, this means
that configuration selection when `IMPORTED_CONFIGURATIONS` is set does
not depend on the library type in any manner. The fallback logic also
uses a more consistent 'usability' criteria that should result in more
consistent configuration selection, particularly for `INTERFACE`
targets.

The previous implementation is retained as a separate method for users
requesting the OLD behavior.

Fixes: #27022
2025-08-20 14:44:05 -04:00
Brad King 7d7b91717c Merge topic 'patch-FindPkgConfig-version'
13366e3045 FindPkgConfig: Add PkgConfig_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11089
2025-08-20 10:10:34 -04:00
Brad King 4dfc6d200b Merge topic 'patch-FindwxWidgets-version'
559500bede FindwxWidgets: Add wxWidgets_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11088
2025-08-20 10:06:12 -04:00
Brad King 2ec20fc2f8 Merge topic 'patch-FindHg-version'
e463cf3283 FindHg: Add Hg_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11083
2025-08-18 10:20:21 -04:00
Brad King 9567647e9b Merge topic 'debugger-docs'
9d93853405 Help: Add documentation for debugging with GDB

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10980
2025-08-18 09:51:58 -04:00
Brad King 9062fc9c16 Merge topic 'install-object-name-strategy'
c651b0e002 objects: implement installation naming strategies
29c7f19280 cmTarget: add the `INSTALL_OBJECT_NAME_STRATEGY` property
757c40c478 cmObjectLocation: add a class to track object locations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11046
2025-08-18 09:45:19 -04:00
Craig Scott 333d28cd13 Merge topic 'doc-origin-autogen-xref-text'
6592d66030 Help: Prevent section headings being used for <ORIGIN>_autogen xrefs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11085
2025-08-18 08:30:37 -04:00
Peter Kokot 13366e3045 FindPkgConfig: Add PkgConfig_VERSION
This deprecates the PKG_CONFIG_VERSION_STRING result variable.

Issue: #27088
2025-08-17 07:31:44 +02:00
Peter Kokot 559500bede FindwxWidgets: Add wxWidgets_VERSION
This deprecates the wxWidgets_VERSION_STRING result variable.

Issue: #27088
2025-08-17 07:17:12 +02:00
Brad King 0aec7864f6 Merge topic 'patch-FindSubversion-version'
051b670e51 FindSubversion: Add Subversion_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11053
2025-08-15 09:30:14 -04:00
Brad King 63d88db7ac Merge topic 'patch-FindLua-version'
138fd2c665 FindLua*: Add Lua_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11052
2025-08-15 09:21:43 -04:00
Brad King ced6ca50f1 Merge topic 'foreach-assertion'
ac8fe36aba Help: Improve clarity of foreach behavior
37e27f71bc foreach: Explicitly skip replay without iterations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11081
2025-08-15 08:31:45 -04:00
Craig Scott 6592d66030 Help: Prevent section headings being used for <ORIGIN>_autogen xrefs
The references to the <ORIGIN>_autogen and
<ORIGIN>_autogen_timestamp_deps anchors were being replaced by the
section heading text that immediately followed the anchors. But in most
cases, the text where the cross-referencing was placed was expecting the
anchor text to be used instead. Add custom text for such cross-references
so that the text reads as originally intended.
2025-08-15 19:02:16 +10:00
Peter Kokot e463cf3283 FindHg: Add Hg_VERSION
This deprecates the HG_VERSION_STRING result variable.

Issue: #27088
2025-08-15 05:34:56 +02:00
Taylor Sasser 9d93853405 Help: Add documentation for debugging with GDB 2025-08-14 10:44:18 -04:00
Brad King 18eed8502c Merge topic 'cps-add-versions'
ae373e93fb install(PACKAGE_INFO): Add version and location to package dependencies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10993
2025-08-14 09:12:52 -04:00
Brad King 51fe4c2a0e Merge topic 'ctest-instrumentation-envvar'
a97bb70bd9 Tests: Isolate tests from CTEST_USE_INSTRUMENTATION variable
2e05695b30 Help: Fix documentation for CTEST_USE_*_INSTRUMENTATION variables

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11038
2025-08-14 09:10:45 -04:00
Brad King 5a09f5bd8e Merge topic 'patch-FindDevIL-version'
0e00166462 FindDevIL: Add DevIL_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11072
2025-08-14 09:06:41 -04:00