diff options
author | Brad King <brad.king@kitware.com> | 2022-12-06 13:04:07 +0000 |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2022-12-06 08:04:18 -0500 |
commit | f1f064b7b2c93048897014e096217e1a00f668c7 (patch) | |
tree | 6cd0ff2dbc453a45105743af22556072a1231ada /Help | |
parent | 85d89ca88586be09e940fea938d2a2add5dd4425 (diff) | |
parent | 2c558cfd1b26e879bf6acce619255ca7b1ba0425 (diff) | |
download | cmake-f1f064b7b2c93048897014e096217e1a00f668c7.tar.gz |
Merge topic 'cxx-module-map-clang'
2c558cfd1b gitlab-ci: add CI jobs for Clang with C++20 modules
abd42e9cfc ci: add a Docker container for clang support of C++20 modules
51093f3002 Clang-FindBinUtils: also find `clang-scan-deps`
0b333de923 ci: add C++ module rules file for Clang
21b9fb1e8c cmCxxModuleMapper: support the `clang` module map format
9c66224668 cmNinjaTargetGenerator: skip setting `depfile` for `none` scantypes
9123a0991f cmNinjaTargetGenerator: use `.clear()` to empty out some strings
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Cristian Adam <cristian.adam@gmail.com>
Merge-request: !7978
Diffstat (limited to 'Help')
-rw-r--r-- | Help/dev/experimental.rst | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/Help/dev/experimental.rst b/Help/dev/experimental.rst index 794a686f91..fbbad30862 100644 --- a/Help/dev/experimental.rst +++ b/Help/dev/experimental.rst @@ -102,9 +102,9 @@ For compilers that generate module maps, tell CMake as follows: set(CMAKE_EXPERIMENTAL_CXX_MODULE_MAP_FLAG "${compiler_flags_for_module_map} -fmodule-mapper=<MODULE_MAP_FILE>") -Currently, the only supported formats are ``gcc`` and ``msvc``. The ``gcc`` -format is described in the GCC documentation, but the relevant section for the -purposes of CMake is: +Currently, the only supported formats are, ``clang``, ``gcc``, and ``msvc``. +The ``gcc`` format is described in the GCC documentation, but the relevant +section for the purposes of CMake is: A mapping file consisting of space-separated module-name, filename pairs, one per line. Only the mappings for the direct imports and any @@ -119,6 +119,9 @@ The ``msvc`` format is a response file containing flags required to compile any module interfaces properly as well as find any required files to satisfy ``import`` statements as required for Microsoft's Visual Studio toolchains. +Similarly, the ``clang`` format is a response file containing flags using +Clang's module flags. + .. _`D1483r1`: https://mathstuf.fedorapeople.org/fortran-modules/fortran-modules.html .. _`P1689r5`: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p1689r5.html .. _`cxx-modules-sandbox`: https://github.com/mathstuf/cxx-modules-sandbox |