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
e2aa44ba04 Tests: set CMAKE_PREFIX_PATH to the installation prefix
26cf661b64 Help/guide: use GNUInstallDirs in importing-exporting example
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !5923
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.
This allows the example to also show how to work on systems with
different libdir settings (e.g., Debian multiarch or Red Hat multilib)
rather than a regular `lib` directory.
This code is going to be needed by both cmCMakePresetsFile and
cmCMakePresetsFileReadJSON when the upcoming condition types are
created. Move it into a header file.
Some compilers complain about translation units that are too large.
In order to prepare for upcoming additions to cmCMakePresetsFile,
split ReadJSON into a separate file.
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
1610c0f034 gitlab-ci: add jobs testing Intel oneAPI compilers on Linux
c076833310 gitlab-ci: add jobs testing Intel Classic compilers on Linux
5ea928d9d2 gitlab-ci: factor out job dependencies on release-style binaries
402518904f gitlab-ci: add rules to enable jobs only in a nightly pipeline schedule
747940157f gitlab-ci: init environment with per-CMAKE_CONFIGURATION shell scripts
256c320fb6 gitlab-ci: add variable for job to control its ctest build name
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !5920
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.