48ee946fdc cmExperimental: recycle the C++ modules API UUID
1a1806a71b gitlab-ci: declare `bmionly` support for modules where possible
457a12f3f9 Tests/RunCMake/CXXModules: add tests which use modules from imported targets
9b9ec70b54 Ninja: generate scanning and build rules for C++20 module synthetic targets
80ef50a191 CXXModules: add a variable for BMI-only compilation
80d6544398 cxxmodules: generate synthetic targets as an initial pass
3dc6676ecc cmSyntheticTargetCache: add a struct for synthetic target caching
cb356b540c cmCxxModuleUsageEffects: add a class to capture module usage effects
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8535
Update the centos base image from centos 6 to centos 7. The latter is
the minimum version supported by libuv 1.45. The resulting binaries
require GLIBC 2.17.
Since commit 37e015d4a6 (Utilities/Sphinx: Refactor Sphinx reference
recording, 2023-03-08, v3.27.0-rc1~342^2~1) our documentation requires
Python 3.7 or higher. This is not available in the base images we use
to build Linux release binaries. These days our release packaging CI
pipeline builds the documentation in a separate job anyway.
Since Sphinx 5.2.0, the generated html search page reports all index
entries that match a query term. Unfortunately even non-main entries
get a high score, placing them before more important search results
such as document titles and domain object names.
Work around this for documentation published on `cmake.org` by removing
the logic from `searchtools.js` in the generated html documentation.
Issue: #25175
The Fedora `rocm-hip-devel` package organizes the `hip-lang` cmake package
differently from the official ROCm base images. Cover it separately.
Issue: #25050
The Debian package for `hipcc` organizes the `hip-lang` cmake package
differently from the official ROCm base images. Cover it separately.
Issue: #24562
`include-what-you-use` diagnostics, in practice, are specific to
the environment's compiler and standard library. Update includes
to satisfy IWYU for our CI job under Debian 12.
7b205b7078 ci: Build macOS 10.13+ package as C++17
7f6cebb1cd ci: Split macOS 10.10+ and 10.13+ package language standard selection
aab16d4bfc ci: Drop unnecessary -stdlib flag from macOS package
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8567
Take advantage of the standard library implementations of those C++17
features available when targeting macOS 10.13. Note that the standard
library `std::filesystem` implementation is not available until 10.15.
The job frequently fails during `ctest_build`, and the log shows
sccache: Compiler killed by signal 9
It does not compile much anyway, so disable sccache pending further
investigation.
The ISPC 1.20.0 release page on GitHub replaced existing macOS release
binaries with new ones. Update the hashes added by commit 44d13f50a2
(ci: Update to ISPC 1.20.0, 2023-05-09, v3.27.0-rc1~110^2).
Revert commit f24c6ae5b8 (ci: Add nlohmann-json to Fedora base image,
2023-05-17). The previously-upcoming dependency on nlohmann-json has
been replaced with our existing dependency on jsoncpp.
The `ccc-analyzer` compiler wrapper preprocesses differently
for clang-analyzer than for normal compilation. In particular,
the `__clang_analyzer__` preprocessor definition is added.
This does not interact well with `sccache` because it indexes based on
the compiler's normal preprocessing but stores results from the entire
`ccc-analyzer` invocation.
80181da866 Tests: Add option to control timeout of BootstrapTest
21df34b255 Tests: Modernize name of option to control existence of BootstrapTest
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8491