diff options
author | Ben Boeckel <ben.boeckel@kitware.com> | 2024-01-18 18:19:17 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2024-01-18 22:40:44 (GMT) |
commit | d791f3a180c7231bc2b45c9204c0a912c06b91ee (patch) | |
tree | b603806f141162f94b2137a00c6da40a714a9674 /Source/cmExportFileGenerator.h | |
parent | 2352dcc830ca4be6ccf05f801241b158ac79e7d7 (diff) | |
download | CMake-d791f3a180c7231bc2b45c9204c0a912c06b91ee.zip CMake-d791f3a180c7231bc2b45c9204c0a912c06b91ee.tar.gz CMake-d791f3a180c7231bc2b45c9204c0a912c06b91ee.tar.bz2 |
cxxmodules: make export trampoline script files unique
Include the name of the `EXPORT` in the filename when generating export
information for C++ modules. This allows the same directory to be used
for multiple sets of C++ module-using targets.
For `export(TARGETS)` uses, generate a name based on the hash of the
concatenation of the target names involved with the `export()` call.
Fixes: #25609
Diffstat (limited to 'Source/cmExportFileGenerator.h')
-rw-r--r-- | Source/cmExportFileGenerator.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Source/cmExportFileGenerator.h b/Source/cmExportFileGenerator.h index f396e0e..30333d3 100644 --- a/Source/cmExportFileGenerator.h +++ b/Source/cmExportFileGenerator.h @@ -187,7 +187,7 @@ protected: void GenerateTargetFileSets(cmGeneratorTarget* gte, std::ostream& os, cmTargetExport* te = nullptr); - void GenerateCxxModuleInformation(std::ostream& os); + void GenerateCxxModuleInformation(std::string const& name, std::ostream& os); virtual std::string GetFileSetDirectories(cmGeneratorTarget* gte, cmFileSet* fileSet, @@ -235,5 +235,6 @@ private: const std::string& config) = 0; virtual std::string GetCxxModulesDirectory() const = 0; - virtual void GenerateCxxModuleConfigInformation(std::ostream& os) const = 0; + virtual void GenerateCxxModuleConfigInformation(std::string const&, + std::ostream& os) const = 0; }; |