summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/CXXModules/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* cmExperimental: remove the flag for C++ modulesBen Boeckel2023-10-021-2/+0
| | | | | | | All the major compilers now have scheduled releases with support for scanning, so remove the experimental gate. Fixes: #18355
* cmExperimental: recycle the C++ modules API UUIDBen Boeckel2023-08-171-1/+1
| | | | Supporting modules on IMPORTED targets is worth an update.
* cmExperimental: recycle the C++ modules API UUIDBen Boeckel2023-07-311-1/+1
| | | | `try_compile` and `try_run` now support C++ modules.
* cmExperimental: refresh the C++ modules UUIDBen Boeckel2023-07-131-1/+1
| | | | | The transitive support for Clang is a change in support for the ecosystem.
* cxxmodules: update the experimental UUIDBen Boeckel2023-05-311-1/+1
| | | | | Syntactic support for C++ header units has been removed, so a new UUID is warranted.
* cxxmodules: support new round of Clang patchesBen Boeckel2022-12-151-1/+1
| | | | | | | | | | These patches now support the `-MF` output, so remove the `none` support added just for the old patchset which did not use it. Also update the flag name to `-fmodule-output=`. Due to the new Clang module mapper flag, use a new experimental support UUID as well.
* cmExperimental: recycle C++20 module support UUIDBen Boeckel2022-12-011-1/+1
| | | | Visual Studio support warrants a new ID.
* cmExperimental: update `CXX_MODULE_CMAKE_API` UUIDBen Boeckel2022-07-061-1/+1
| | | | The set of features available has been expanded, so update the UUID.
* cmTarget: add support for C++ module fileset typesBen Boeckel2022-06-161-0/+6
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).