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
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
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.
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
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
- 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.
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.
- Extended the deprecation notice.
- Synced modules descriptions with other similar modules.
- Added info about the MacroAddFileDependencies deprecation in the
3.14 release notes.
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
- 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.
- 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.
- Used "commands" instead of "functions".
- Added separate examples section.
- Moved FOUND_VAR argument to the bottom as it is deprecated.
- Reworded descriptions.
- 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().