Commit Graph

71719 Commits

Author SHA1 Message Date
Brad King 6065c2d845 Merge topic 'patch-FindGnuTLS-version'
2f8b837a30 FindGnuTLS: Add GnuTLS_VERSION

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11061
2025-08-14 08:25:25 -04:00
Brad King d870ed6b76 Merge topic 'patch-FindQt4-found-var'
9fb240da85 FindQt4: Clarify the Qt4_FOUND variable

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11062
2025-08-14 08:23:20 -04:00
Peter Kokot 138fd2c665 FindLua*: Add Lua_VERSION
New result variables in FindLua:

* Lua_VERSION
* Lua_VERSION_MAJOR
* Lua_VERSION_MINOR
* Lua_VERSION_PATCH

Deprecated variables in FindLua:

* LUA_VERSION_STRING
* LUA_VERSION_MAJOR
* LUA_VERSION_MINOR
* LUA_VERSION_PATCH

Deprecated variables in FindLua51:

* LUA_VERSION_STRING

Issue: #27088
2025-08-14 07:37:26 +02:00
Peter Kokot 051b670e51 FindSubversion: Add Subversion_VERSION
This deprecates the Subversion_VERSION_SVN result variable.

Issue: #27088
2025-08-14 07:25:00 +02:00
Kitware Robot cc2b82e2f3 CMake Nightly Date Stamp 2025-08-14 00:04:57 -04:00
Tyler Yankee ac8fe36aba Help: Improve clarity of foreach behavior 2025-08-13 16:29:18 -04:00
Tyler Yankee 37e27f71bc foreach: Explicitly skip replay without iterations
As written, foreach loops with a trailing `IN` (i.e., no loop
variable(s) given) lead to an assertion error. Handle this case by
exiting early when we know the loop won't execute anything.

Fixes: #27135
2025-08-13 16:29:16 -04:00
Brad King 86d587db41 Merge topic 'doc-cxx_standard'
050ddb800f Help: CXX_STANDARD 26 is supported on some compilers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11063
2025-08-13 16:06:01 -04:00
Brad King 2193c1e08e Merge topic 'patch-CMAKE_LANG_USING_LINKER_MODE'
8aacf67b54 CMAKE_LANG_USING_LINKER_MODE: Fix typo and update docs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11065
2025-08-13 15:56:32 -04:00
Brad King 4a26dbd4ba Merge topic 'patch-FindOpenGL'
e03c1c215b FindOpenGL: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11049
2025-08-13 15:54:02 -04:00
Martin Duffy 8227028e49 string(GENEX_STRIP): Fix regression on nested generator expressions
Since commit 13c7bb5b0c (cmGeneratorExpression: Update strip function to
collect parsed expressions, 2025-04-08), the logic to strip generator
expressions from a string made incorrect assumptions about the contents of
generator expressions, leading certain cases to be stripped incorrectly.

Clean up the logic and fix broken behavior, and add test coverage with
`string(GENEX_STRIP)`.

Fixes: #27133
2025-08-13 15:52:16 -04:00
Brad King 05d8757533 Merge topic 'patch-FeatureSummary'
361af2b480 FeatureSummary: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11067
2025-08-13 15:47:54 -04:00
Brad King 9896691033 Merge topic 'patch-AddFileDependencies'
d0a8c0bf1b AddFileDependencies, MacroAddFileDependencies: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11064
2025-08-13 15:44:12 -04:00
Brad King 7a47c13d07 Merge topic 'patch-FindPkgConfig'
ac56813d35 FindPkgConfig: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11060
2025-08-13 15:40:42 -04:00
Brad King fdbbf433d3 Merge topic 'patch-CMakeForceCompiler'
195b009796 CMakeForceCompiler: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11059
2025-08-13 15:36:47 -04:00
Brad King 914803bf31 Makefile: Fix regression that prints unnecessary VT100 escape sequences
Since commit 509c424472 (StdIo: Replace uses of KWSys Terminal with
StdIo::Print, 2025-05-08, v4.1.0-rc1~151^2~2) we print unnecessary VT100
escape sequences to establish normal text even when not intending to
print color.  In combination with `CLICOLOR_FORCE=1`, this breaks
detection of implicit link information from compiler driver output.

Fixes: #27137
2025-08-13 15:30:25 -04:00
Brad King a0a9e48f85 StdIo: Fix Terminal abstraction to avoid unnecessary VT100 escape sequences
Fix commit 329d755dbd (StdIo: Add a Terminal abstraction to print color
text, 2025-05-06, v4.1.0-rc1~151^2~3) to avoid printing a VT100 escape
sequence for normal text if we did not print any sequence initially.
We already use this approach for Windows Console text attributes.

Issue: #26924
2025-08-13 15:30:24 -04:00
Vito Gamberini d5f6cf5ba8 PkgC: Only remove system paths which are exact matches 2025-08-13 12:59:00 -04:00
Vito Gamberini 93f77d8183 PkgC: Allow system paths during IMPORT, POPULATE
Fixes: #27138
2025-08-13 11:57:09 -04:00
Brad King cd3ed09923 Merge topic 'patch-TestCXXAcceptsFlag'
b1ec2b36a8 TestCXXAcceptsFlag: Sync documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11058
2025-08-13 10:58:26 -04:00
Brad King fabf18fd95 Merge topic 'patch-UsePkgConfig'
c134021257 UsePkgConfig: Sync documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11057
2025-08-13 10:54:56 -04:00
Brad King 8e1ba76483 Merge topic 'patch-FindPackageHandleStandardArgs'
ea298035ba FindPackageHandleStandardArgs: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11056
2025-08-13 10:49:40 -04:00
Brad King f8ce2dc388 Merge topic 'FindHDF5-target-docs'
474a265855 FindHDF5: clarify `HDF5::HDF5` library documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11047
2025-08-13 10:45:51 -04:00
Kitware Robot 5d2e715182 CMake Nightly Date Stamp 2025-08-13 00:04:56 -04:00
Peter Kokot a79e520169 CMakeVerifyManifest: Update documentation
This module could be directly called from the CMake root directory but
it is more convenient for projects to wrap it inside a local script and
call that script instead.

This updates the documentation and syncs with other modules.
2025-08-13 04:41:46 +02:00
Peter Kokot de37ba1907 FindKDE4: Update documentation
- Synced module documentation with other similar find modules.
- Added note that KDE version 4 is obsolete and newer KDE version should
  be used.
- Added documentation from the Wiki page:
  https://gitlab.kitware.com/cmake/community/-/wikis/doc/tutorials/How-To-Build-KDE4-Software
- Added some info according to the
  https://api.kde.org/legacy/cmake/modules.Custom_CMake_Modules.html
2025-08-13 04:19:03 +02:00
Peter Kokot e211e88501 FindwxWidgets: Update documentation
- Module documentation synced with other similar find modules.
- Added intro code block showing how to use this module.
- Added common sections to describe variables, imported targets moved to
  the top.
- Added examples section and highlighting the imported target usage.
2025-08-13 03:52:09 +02:00
Taylor Sasser ae373e93fb install(PACKAGE_INFO): Add version and location to package dependencies
Refactor `cmFindPackageStack` to track additional metadata
about <package> found. This includes two new fields,
`Version` and `Location` which correspond to package version and path.
The remaining package information will be implemented in a later commit
2025-08-12 11:07:09 -04:00
Brad King 9e08117969 Merge topic 'patch-Use_wxWindows'
14334d7604 Use_wxWindows: Update documentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11051
2025-08-12 10:18:08 -04:00
Peter Kokot 0e00166462 FindDevIL: Add DevIL_VERSION
This module now provides a DevIL_VERSION result variable and supports
the `<version>` argument in the find_package() call. Version range can
be also specified.

Fixes: #26858
2025-08-12 07:17:58 +02:00
Kitware Robot f5c5587584 CMake Nightly Date Stamp 2025-08-12 00:04:57 -04:00
Peter Kokot 361af2b480 FeatureSummary: Update documentation
- Refactored and synced module documentation.
- Moved all documentation to the top header comment to make it easier to
  manage and adjust.
- Added table of contents.
- Added intro code block showing how to use this module.
- Described arguments of commands as a list.
- Used word "commands" instead of "functions".
- Added separate examples section with more examples.
2025-08-11 10:32:40 +02:00
Kitware Robot 1443123892 CMake Nightly Date Stamp 2025-08-11 00:06:22 -04:00
Ben Boeckel 390c473652 pchreuse: remove MSVC 2008-or-older condition
Testing locally, `.idb` files are *not* made unconditionally with v71 at
least. Perhaps v90 is an outlier?

In any case, the typo introduced in 1f791eb160 (Multi-Ninja: Fix
reusable PCHs for MSVC, 2020-05-24) via !4787 (see
`cmLocalGenerator.cxx:2751` for extra space inside the quotes) was
preserved when fixing `IS_NEWER_THAN` logic in 28501fca94 (PCH PDB: Fix
misuse of IS_NEWER_THAN in timestamp check, 2021-02-21) from !5825. The
typo itself was fixed in cb46c4a918 (cmLocalGenerator: fix quoting in
generated script, 2025-06-16) via !10887 but the condition was fumbled
later in that MR's commit f78f592b78 (pchreuse: defer target existence
enforcement to generation time, 2025-06-16) in constructing `to_file`
for the script.

In the end, these typos ended up making the builds pass. In fixing it
properly in the parent commit, it exposed MSVC v71 as an outlier in
passing the tests again. Since I do not see `.idb` files with the
toolchain as tested in CI, further investigation into the build that
caused the condition to be added in the first place is required. In the
meantime, removing this check makes things happy as far as CMake's own
test suite is concerned.
2025-08-11 00:05:23 -04:00
Eduard Voronkin f0d8606267 cmLocalGenerator: fix destination path construction for PCH/PDB copying 2025-08-11 00:03:17 -04:00
Peter Kokot 8aacf67b54 CMAKE_LANG_USING_LINKER_MODE: Fix typo and update docs
- s/FLAGS/FLAG
- Moved deprecation notice to top.
- Added "See Also" section to the CMAKE_LANG_LINK_MODE variable.
2025-08-11 03:48:26 +02:00
Peter Kokot d0a8c0bf1b AddFileDependencies, MacroAddFileDependencies: Update documentation
- Extended the deprecation notice.
- Synced modules descriptions with other similar modules.
- Added info about the MacroAddFileDependencies deprecation in the
  3.14 release notes.
2025-08-11 02:51:20 +02:00
Michael Hirsch 050ddb800f Help: CXX_STANDARD 26 is supported on some compilers
e.g.  80d4bd5 added CXX_STANDARD 26 to IntelLLVM
2025-08-10 12:41:24 -04:00
Peter Kokot 9fb240da85 FindQt4: Clarify the Qt4_FOUND variable
QT4_FOUND variable became deprecated in CMake 2.8.11 where Qt4_FOUND was
introduced.
2025-08-10 10:03:50 +02:00
Peter Kokot 2f8b837a30 FindGnuTLS: Add GnuTLS_VERSION
This deprecates the GNUTLS_VERSION result variable.

Instead of setting the version from pkg-config, the header files can be
used. GnuTLS versions 2.7.2 and later define the GNUTLS_VERSION in
`<gnutls/gnutls.h>` header. Earlier versions defined LIBGNUTLS_VERSION.
If finding such string in header is not successful, fallback to version
from pkg-config is used.

Issue: #27088
2025-08-10 09:39:44 +02:00
Peter Kokot ac56813d35 FindPkgConfig: Update documentation
- Synced module documentation with other find modules.
- Added intro code block showing how to use this module.
- Added separate examples section with more examples.
- Moved all documentation to the top header comment to make it easier
  to manage and adjust.
- Documented commands arguments as a list.
- Removed internal comment defining "Local variables" for some editors
  (other files don't have these defined).
- Changed variable references definitions to a normal list, as these
  don't seem to be needed to be referenced in other documentation files
  and to be more synced with other find modules. In case some special
  environment variable, should be referenced, it can be added in the
  future to the variables section directly and to be foundable on the
  variables index list.
- Briefly described also PKG_CONFIG_PATH and PKG_CONFIG environment
  variables, as they are already mentioned in the descriptions.
- Added "See Also" section.
2025-08-10 07:57:11 +02:00
Peter Kokot 195b009796 CMakeForceCompiler: Update documentation
- Added intro code block showing how to use this module.
- Added separate examples section.
- Renamed "macros" to "commands".
- Synced commands descriptions to other modules.
- Used lowercase style for command names.
2025-08-10 06:26:28 +02:00
Kitware Robot 45b8ebbafd CMake Nightly Date Stamp 2025-08-10 00:05:11 -04:00
Kitware Robot 82f7407632 CMake Nightly Date Stamp 2025-08-09 00:04:36 -04:00
Peter Kokot b1ec2b36a8 TestCXXAcceptsFlag: Sync documentation
- Added intro code block showing how to use this module.
- Renamed "macros" to "commands".
2025-08-09 03:20:20 +02:00
Peter Kokot c134021257 UsePkgConfig: Sync documentation
- Added intro code block showing how to include this module.
- Renamed "macros" to "commands".
2025-08-09 03:10:22 +02:00
Peter Kokot ea298035ba FindPackageHandleStandardArgs: Update documentation
- Used "commands" instead of "functions".
- Added separate examples section.
- Moved FOUND_VAR argument to the bottom as it is deprecated.
- Reworded descriptions.
2025-08-08 23:49:59 +02:00
Peter Kokot 4f1732d96b FindPerl, FindPerlLibs: Add Perl_VERSION and PerlLibs_VERSION
This deprecates the PERL_VERSION_STRING result variable.

Issue: #27088
2025-08-08 22:22:03 +02:00
Peter Kokot e03c1c215b FindOpenGL: Update documentation
- Added intro code block showing how to use this module.
- Added examples section.
- Moved CMake versions that introduced specific target or variable
  to the item instead of above the list, as there are multiple versions
  and to have option to extend the items further in the future.
- Synced the module descriptions a bit with the other find modules.
- OpenGL_FOUND variable used (CMake 3.3). Uppercased OPENGL_FOUND is
  also set to the same value by the find_package_handle_standard_args().
2025-08-08 21:04:53 +02:00
Martin Duffy a97bb70bd9 Tests: Isolate tests from CTEST_USE_INSTRUMENTATION variable
Prevent CMake's own tests from gathering instrumentation data when
`CTEST_USE_INSTRUMENTATION` is enabled in the environment.

Fixes: #26916
2025-08-08 09:52:01 -04:00