summaryrefslogtreecommitdiffstats
path: root/Source/cmExportFileGenerator.h
diff options
context:
space:
mode:
authorAlex Neundorf <neundorf@kde.org>2012-09-15 19:55:24 (GMT)
committerBrad King <brad.king@kitware.com>2012-09-28 13:21:42 (GMT)
commit87f4c01910754199bcdcbc9d564de13d36ba2502 (patch)
tree82542c001615b1b8fb32d82ce28cd6358affa9ae /Source/cmExportFileGenerator.h
parent999061a4c2000213e6f04695f1f1fe546c86703d (diff)
downloadCMake-87f4c01910754199bcdcbc9d564de13d36ba2502.zip
CMake-87f4c01910754199bcdcbc9d564de13d36ba2502.tar.gz
CMake-87f4c01910754199bcdcbc9d564de13d36ba2502.tar.bz2
exports: accept a missing target if it is exported exactly once
If a target is exported, and a library it depends on is not part of the same export set, before this patch cmake errored out. With this patch, it now checks whether the missing target is exported somewhere else exactly once, and accepts in this case (because then it can determine the namespace for the missing target and use this). Alex
Diffstat (limited to 'Source/cmExportFileGenerator.h')
-rw-r--r--Source/cmExportFileGenerator.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/Source/cmExportFileGenerator.h b/Source/cmExportFileGenerator.h
index f271e55..c9feffd 100644
--- a/Source/cmExportFileGenerator.h
+++ b/Source/cmExportFileGenerator.h
@@ -83,7 +83,12 @@ protected:
/** Each subclass knows how to complain about a target that is
missing from an export set. */
virtual void ComplainAboutMissingTarget(cmTarget* depender,
- cmTarget* dependee) = 0;
+ cmTarget* dependee,
+ int occurrences) = 0;
+
+ std::vector<std::string> FindNamespaces(cmMakefile* mf,
+ const std::string& name);
+
// The namespace in which the exports are placed in the generated file.
std::string Namespace;