- Added intro code block showing how to include this module.
- Reworded module introduction.
- Used "command" instead of "function".
- Reworded command arguments and descriptions.
- Added the "See Also" section.
In cmProjectCommand, after validating the VERSION, we move it into a
local variable. Later, however, we were comparing COMPAT_VERSION against
the VERSION stored in the arguments. Compare to the local variable
instead.
With IntelLLVM on Windows, we link using the compiler driver.
With MSVC on Windows, we invoke the linker directly. If we
use both in a single build tree, for separate languages,
the value of `CMAKE_LINK_DEF_FILE_FLAG` conflicts. Add a
per-language `CMAKE_<LANG>_LINK_DEF_FILE_FLAG` variable to
avoid the conflict. Preserve the language-agnostic variable
for compatibility with projects that reference it.
Fixes: #26005
Add documentation for several options related to CPS export/install that
were not previously documented. Add note to update documentation when
(if) COMPAT_VERSION support is not specific to CPS.
If `CFLocaleCreateCanonicalLanguageIdentifierFromString` fails, stop
gracefully. Otherwise we crash because `CFStringGetCString` cannot work
with null `CFStrings`.
- Added intro code block showing how to include this module.
- Used word "commands" instead of "functions".
- Updated and synced commands descriptions.
- Added a very basic examples section for consistency.
c95a8348ce cmLocalGenerator: add an override for CMakeFiles-using paths
35d32b8741 cmLocalGenerator: move the `CMakeFiles` subdir from the target to output root
bc19e42461 generators: use `GetObjectOutputRoot` to compute target directories
b1d9a5313c cmLocalGenerator: add a `GetObjectOutputRoot` method
b82a74d918 generators: use GetSupportDirectory() in more places
36f85ee0cc cmGeneratorTarget: query the local generator for the target directory
ff5d7bc301 cmLocalXCodeGenerator: use a per-target directory
aafd771529 cmNinjaTargetGenerator: use `GetObjectFileDir` where possible
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !10812
- Added intro code blocks showing how to include these modules.
- Used "command" instead of "macro".
- Mentioned policy CMP0075.
- Added additional example to CheckIncludeFile showing how to use
CMAKE_REQUIRED_* variable.
- Added note that this module is for Qt version 4 and newer version
should be used.
- Added intro code block showing how to include this module.
- Used word "commands" instead of "functions".
- Added descriptions to commands.
- Used lowercase names of commands.
Changes:
- Added intro code blocks showing how to include these modules.
- Added examples sections.
- Used "command" instead of "macro".
- Commands sections added to have a clearer overview of the modules at
first encounter.
- Reworded commands arguments a bit.
- Added a rubric title for variables that affect the checks.
- CheckFortranSourceCompiles: Added CMake version when SRC_EXT option
was introduced.
- Listed CMAKE_TRY_COMPILE_TARGET_TYPE variable in the rubric together
with CMAKE_REQUIRED_* variables and added an include RST file for it.
- Used lowercase style for check_fortran_source_compiles().
This updates the following modules:
- CheckCSourceRuns
- CheckCXXSourceRuns
- CheckFortranSourceRuns
- CheckOBJCSourceRuns
- CheckOBJCXXSourceRuns
- CheckSourceRuns
Changes:
- Added intro code blocks showing how to include these modules.
- Used word "command" instead of "macro".
- Added "Commands" sections to have a clearer overview of the modules at
first encounter.
- Reworded commands descriptions and arguments a bit.
- Added a rubric title for variables that affect the checks.
- Added "Examples" sections.
- Added "See Also" sections.
- Added few more examples in the CheckSourceRuns module to show how to
use this module with different languages, `CMAKE_REQUIRED_*` variables,
and mentioned bracket argument syntax a bit.
Visual Studio doesn't use a `CMakeFiles` subdirectory for its support
directories. However, some codepaths expect to use paths which are
always under `CMakeFiles`. Add a mechanism to keep the path for such
files.
When target directories are shortened, the `CMakeFiles` path component
will be part of the root, not the target directory. Since other files
end up constructing paths manually, move the differing component into
the correct logical path construction part.
Refactoring in commit c4e890946a (try_compile: consistently add language
properties, 2020-06-15, v3.19.0-rc1~633^2) accidentally dropped the
`_LINK` part of the name. It also miscounted array indexes in a way
that happened to propagate `CMAKE_<LANG>_LINK_NO_PIE_SUPPORTED` whether
or not it is needed for the CMP0083 NEW behavior. Simplify the code and
fix the variable name.
Fixes: #26948
- Refactored module introduction.
- Used "commands" instead of "functions".
- Updated module documentation and synced it with other similar utility
modules.
- Synced command arguments with implementation (DEVICE_OBJECT_STORE and
DEVICE_TEST_DIR are required arguments).
- Added separate examples section.
The Windows documentation [1] states:
> command-line applications should capture the initial console
> mode at startup and attempt to restore it when exiting
We set `ENABLE_VIRTUAL_TERMINAL_{INPUT,PROCESSING}` modes since
commit d6a1ff59f1 (StdIo: Provide metadata about stdin, stdout,
stderr streams, 2025-05-06). Avoid leaking them.
[1] https://learn.microsoft.com/en-us/windows/console/console-modes
Issue: #26924