Commit Graph

3913 Commits

Author SHA1 Message Date
Brad King b62e751369 Merge topic 'patch-FindGit-version'
fe72a5dba2 FindGit: Add Git_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11191
2025-09-17 10:04:31 -04:00
Brad King a66c325ec1 Merge topic 'patch-FindImageMagick-version'
032e829b23 FindImageMagick: Add ImageMagick_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11187
2025-09-16 09:50:27 -04:00
Brad King c325904eb1 Merge topic 'vs2026'
47c784ba8a Help: Add release note for Visual Studio 18 2026 generator
cd46d8ec84 Merge branch 'backport-vs2026' into vs2026
3392b371e2 VS: Add Visual Studio 18 2026 generator
7f0883ac04 VS: Remove unused generator code
6f0d245083 VS: Fix `/dynamicdeopt` flag table entry order for v145 toolset
398ce8af72 VS: Remove `/guard:cf` from v145 link flag table
5c9085d876 VS: Remove `/MERGE` from v145 link flag table
fe5c78310c VS: Map the link `/debug` flag for v145 toolset
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11168
2025-09-16 09:00:10 -04:00
Brad King 47c784ba8a Help: Add release note for Visual Studio 18 2026 generator 2025-09-15 11:34:07 -04:00
Peter Kokot fe72a5dba2 FindGit: Add Git_VERSION
This deprecates the GIT_VERSION_STRING result variable.

Issue: #27088
Fixes: #26868
2025-09-14 21:08:16 +02:00
Peter Kokot 032e829b23 FindImageMagick: Add ImageMagick_VERSION
This deprecates the ImageMagick_VERSION_STRING result variable.

Additionally, ImageMagick version is now determined by either mogrify
executable (if available), or from the `<magick/version.h>` header.

Issue: #27088
2025-09-13 23:48:05 +02:00
Ben Boeckel 2b85541e39 cxximportstd: support setting the import std metadata location
Some deployments may not be able to discover the metadata file reliably
(e.g., custom `clang` builds on macOS while using the SDK's stdlib or
distribution bugs). Allow users to force the location so that
compiler-driven detection doesn't have to bend over backwards for
unforeseen bugs.
2025-09-11 18:03:00 -04:00
Brad King 568e3318bc Merge topic 'wix-multi-cab'
193f17102f CPack/WiX: Implement opt-in per component .cab

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11166
2025-09-11 12:04:27 -04:00
Brad King 042b88e3f4 Merge topic 'object-name-properties'
b53837a1bd prop_sf/INSTALL_OBJECT_NAME: support custom install object names
08f1a0fbc6 cmLocalGenerator: get the configuration when building object paths
168e55be41 cmObjectLocation: support install-specific object locations
84372ce0b5 prop_sf/OBJECT_NAME: no-op for the FASTBuild and Xcode generators
9ef99353cb prop_sf/OBJECT_NAME: support custom object names
7aff0d37b5 cmSourceFile: add accessors for PCH source files
bbdc2fd908 cmSourceFile: internally track CMake-managed source files
388923818d cmGeneratorTarget: return the source file added
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11144
2025-09-10 10:01:47 -04:00
Brad King e0a9bbfc23 Merge topic 'target-SKIP_LINTING'
f100769d72 Add `SKIP_LINTING` target property and `CMAKE_SKIP_LINTING` variable
0d6b5d54b2 Tests/RunCMake/MultiLint: Extract test preparation code into separate file
3a21092d75 Tests/RunCMake/MultiLint: Refactor test runs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11139
2025-09-10 09:53:48 -04:00
Nils Gladitz 193f17102f CPack/WiX: Implement opt-in per component .cab
By setting CPACK_WIX_CAB_PER_COMPONENT users can generate one
.cab per component instead of one .cab per installer.

WiX compresses .cab files in parallel.
This may potentially speed up installer creation.

May also allow larger installers (there is a 2GB per .cab limit).
2025-09-10 12:24:42 +02:00
Ben Boeckel b53837a1bd prop_sf/INSTALL_OBJECT_NAME: support custom install object names
These can support configuration-dependent queries much more easily, so
separate it out.
2025-09-09 09:58:07 -04:00
Ben Boeckel 9ef99353cb prop_sf/OBJECT_NAME: support custom object names
Projects which ship object files as artifacts may want to control the
object names as much as possible. Support setting explicit object names
as source file properties to support such use cases.
2025-09-09 09:58:07 -04:00
Alex Turbov f100769d72 Add SKIP_LINTING target property and CMAKE_SKIP_LINTING variable
These offer target-wide settings to disable lints.

Closes: #27191
2025-09-09 09:56:35 -04:00
Brad King f8608b020b Merge branch 'release-4.0' 2025-09-08 15:57:28 -04:00
Brad King edd51d646c CMake 4.0.4 2025-09-08 14:51:44 -04:00
Brad King a3a3416bc1 Merge topic 'install-object-only-destination'
c1de3c72a3 install: support using `DESTINATION` as-is for object installation
cf44806e7c Help/CMAKE_INSTALL_OBJECT_NAME_STRATEGY: add `versionadded` directive

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11138
2025-09-08 11:32:05 -04:00
Brad King bf1841534c Merge topic 'cpack-several-checksums'
bc1c295b95 CPack: Add support for multiple checksums per package

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11141
2025-09-08 11:29:34 -04:00
Ben Boeckel c1de3c72a3 install: support using DESTINATION as-is for object installation
CMake historically has forced an `objects[-<CONFIG>]/<TARGET_NAME>`
subdirectory under an `OBJECT` library installation's `OBJECTS
DESTINATION` which may be unwanted. Support skipping this component
with a target property.
2025-09-06 00:44:42 -04:00
Sergiu Deitsch bc1c295b95 CPack: Add support for multiple checksums per package
Closes: #27174
2025-09-05 08:42:17 -04:00
Stephen Kennedy 5723e65215 Unity: Add a target property to control generated filenames
If not set default to `unity_` as before.

Closes: #26927
2025-09-04 09:31:01 -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
Eduard Voronkin 01147454e7 FASTBuild: Add generator
Fixes: #15294
2025-08-26 14:29:01 -07: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
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 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