With generator expressions in a custom command's `OUTPUT` and
`BYPRODUCTS`, it is possible to have no outputs at all for a particular
configuration. Generate no rule in this case.
Fixes: #21989
769ff05483 Help: Clarify permission-related command options
900184616a Cleanup: Fix misspelt name of local C++ variable
635431a0c9 Tests: Check host platform instead of target for running stat
4ceb0ca59e Tests: Remove redundant files for configure_file() tests
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5945
769ff05483 Help: Clarify permission-related command options
900184616a Cleanup: Fix misspelt name of local C++ variable
635431a0c9 Tests: Check host platform instead of target for running stat
4ceb0ca59e Tests: Remove redundant files for configure_file() tests
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5945
96a7040107 project: Define variables indicating whether project is top level
3706e9c97c Help: Convert project() directory variables to a definition list
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Michael Hirsch <michael@scivision.dev>
Merge-request: !5938
Define `PROJECT_IS_TOP_LEVEL` and `<PROJECT-NAME>_IS_TOP_LEVEL`. The
latter is a STATIC cache entry just like other `<PROJECT-NAME>_*`
variables so that it is globally scoped.
Issue: #20310Fixes: #21961
8bc5c8961e CMakePresets.json: Add the ability to conditionally disable presets
ce6ea7c927 Refactor: Move some common code into separate file
ebbd475e54 Refactor: Move cmCMakePresetsFile::ReadJSON into a separate file
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5919
The names and formats of our VS flag tables are internal implementation
details. However, some institutions need to maintain support for
non-public VS platforms and toolsets. Provide a hook that their
projects can use to load custom flag table files. This helps avoid
distributing a custom CMake package within such institutions.
Document the hook itself, but explicitly specify that the files the
hook loads are not considered a stable interface.
Under the CMP0118 NEW behavior, sources generated in one directory
should be visible when added to targets in other directories. This was
accidentally left out of commit 6624b65b3f (GENERATED prop: Add
implementation for policy CMP0118 being set to NEW, 2020-11-09,
v3.20.0-rc1~393^2~1).
Fixes: #18399
049bf98f63 fileapi: Add installers to codemodel-v2 "directory" object
eae2256a52 fileapi: Add backtraceGraph to codemodel-v2 "directory" object
a12d7f70b1 fileapi: Add a "directory" object to codemodel-v2
fd30bd93e6 fileapi: Re-organize backtrace infrastructure
415ead8153 cmFileAPICodemodel: Build map from each target to its index
f73b6879e9 cmInstallTargetGenerator: Report namelink mode with list of files
ea430582f9 cmInstallTargetGenerator: Drop unused GetNamelinkMode method
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5917
Allows using different compilers with different flags for different languages.
For example Clang with GNU-like commandline for CXX and MSVC as host compiler
for CUDA.
Should help with #21914.
bc663dc333 Merge branch 'master' into invalid-configure-preset
b9eb3541cf Tests: update tests to catch invalid configurePreset at read-time
83eeeff7dc Fail at read-time if configurePreset field invalid
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5912
400536c317 cmCommandLineArgument: trim leading empty spaces
b227a9565e cmake: configure preset add support for --install-prefix mapping
38140713ad cmake: add support for --install-prefix command argument
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5843
00ecddd9eb Tests: Enable Framework test case with spaces everywhere possible
b6cc9be009 Merge branch 'backport-xcode-framework-quoting' into xcode-framework-quoting
4f9a71974e Xcode: Restore support for spaces in framework names
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5899