summaryrefslogtreecommitdiffstats
path: root/Source/cmCxxModuleMapper.h
Commit message (Collapse)AuthorAgeFilesLines
* cmCxxModuleMapper: track whether modules are private or notBen Boeckel2023-05-181-3/+2
| | | | | | | | | | This allows collation to give a useful error message when it finds usage of a private module rather than collation just not informing the compilation and the compiler erroring out about not being able to import unknown modules (which exists, but it was not told about due to visibility). Fixes: #24652
* cmCxxModuleMapper: add a structure to represent BMI locationsBen Boeckel2023-05-181-0/+17
| | | | | | This structure allows representing whether a module is private in order to give a more useful error message when its usage is attempted from another target.
* cmCxxModuleMapper: Use value semantics in path conversion callbackBrad King2023-03-181-1/+1
| | | | | | The call site already owns a path it doesn't need when the callback returns. Hand ownership to the callback so it can optionally mutate the path without necessarily allocating.
* cmCxxModuleMapper: support the `clang` module map formatBen Boeckel2022-12-021-0/+1
|
* cmCxxModuleMapper: support MSVC module map formatBen Boeckel2022-08-021-1/+3
| | | | | | THis is a set of flags stored in a response file which informs the compiler about where to place output BMI files as well as find the required BMIs.
* cmCxxModuleMapper: track transitive modules for MSVCBen Boeckel2022-08-021-1/+36
| | | | MSVC needs the transitive closure of module usage to compile.
* cmCxxModuleMapper: implement support for GCC's module map formatBen Boeckel2022-06-161-0/+1
|
* cmCxxModuleMapper: add source to handle module mapper contentsBen Boeckel2022-06-161-0/+47
This will allow all generators to share an implementation for actually writing out the module map formats.