mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-02 03:39:43 -06:00
C++ modules have two variants which are of importance to CMake:
- `CXX_MODULES`: interface modules (those using `export module M;`,
`export module M:part;`, or `module M:internal_part;`)
- `CXX_MODULE_HEADER_UNITS`: importable header units
Creating C++ modules or partitions are *not* supported in any other
source listing. This is because the source files must be installed (so
their scope matters), but not part of usage requirements (what it means
for a module source to be injected into a consumer is not clear at this
moment). Due to the way `FILE_SET` works with scopes, they are a perfect
fit as long as `INTERFACE` is not allowed (which it is not).
13 lines
611 B
Plaintext
13 lines
611 B
Plaintext
CMake Warning \(dev\) at FileSetModuleHeaderUnitsInterface.cmake:2 \(target_sources\):
|
|
CMake's C\+\+ module support is experimental. It is meant only for
|
|
experimentation and feedback to CMake developers.
|
|
Call Stack \(most recent call first\):
|
|
CMakeLists.txt:6 \(include\)
|
|
This warning is for project developers. Use -Wno-dev to suppress it.
|
|
|
|
CMake Error at FileSetModuleHeaderUnitsInterface.cmake:2 \(target_sources\):
|
|
target_sources File set TYPEs "CXX_MODULES" and "CXX_MODULE_HEADER_UNITS"
|
|
may not have "INTERFACE" visibility
|
|
Call Stack \(most recent call first\):
|
|
CMakeLists.txt:6 \(include\)
|