[all-commits] [llvm/llvm-project] 8b47bb: [libc++] Install modules. (#75741)
Mark de Wever via All-commits
all-commits at lists.llvm.org
Sun Jan 21 03:16:34 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 8b47bb657b5905d954b9041415020358802407d5
https://github.com/llvm/llvm-project/commit/8b47bb657b5905d954b9041415020358802407d5
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2024-01-21 (Sun, 21 Jan 2024)
Changed paths:
M libcxx/CMakeLists.txt
M libcxx/cmake/caches/Generic-cxx20.cmake
M libcxx/cmake/caches/Generic-cxx23.cmake
M libcxx/cmake/caches/Generic-cxx26.cmake
M libcxx/cmake/caches/Generic-hardening-mode-extensive.cmake
M libcxx/cmake/caches/Generic-no-exceptions.cmake
M libcxx/cmake/caches/Generic-no-experimental.cmake
M libcxx/cmake/caches/Generic-no-filesystem.cmake
M libcxx/cmake/caches/Generic-no-localization.cmake
M libcxx/cmake/caches/Generic-no-random_device.cmake
M libcxx/cmake/caches/Generic-no-threads.cmake
M libcxx/cmake/caches/Generic-no-unicode.cmake
M libcxx/cmake/caches/Generic-no-wide-characters.cmake
M libcxx/docs/Modules.rst
M libcxx/docs/ReleaseNotes/18.rst
M libcxx/modules/CMakeLists.txt
A libcxx/modules/modules.json.in
M libcxx/src/CMakeLists.txt
Log Message:
-----------
[libc++] Install modules. (#75741)
Installs the source files of the experimental libc++ modules. These
source files (.cppm) are used by the Clang to build the std and
std.compat modules.
The design of this patch is based on a discussing in SG-15 on
12.12.2023. (SG-15 is the ISO C++ Tooling study group):
- The modules are installed at a location, that is not known to build
systems and compilers.
- Next to the library there will be a module manifest json file.
This json file contains the information to build the module from the
libraries sources. This information includes the location where the
sources are installed. @ruoso supplied the specification of this json
file.
- If possible, the compiler has an option to give the location of the
module manifest file
(https://github.com/llvm/llvm-project/pull/76451).
Currently there is no build system support, but it expected to be added
in the future.
Fixes: https://github.com/llvm/llvm-project/issues/73089
More information about the All-commits
mailing list