summaryrefslogtreecommitdiffstats
path: root/Source/cmExportInstallFileGenerator.h
diff options
context:
space:
mode:
authorAlex Neundorf <neundorf@kde.org>2012-09-28 19:47:37 (GMT)
committerBrad King <brad.king@kitware.com>2012-09-30 14:26:10 (GMT)
commit0cfd055acda3543d66690b5e92d8ee7c20e0654f (patch)
treef034d09d81d1c9a0c7f4203cb87d1d3db667046e /Source/cmExportInstallFileGenerator.h
parent190f2c8253910a9e6870948df58a87950e7b4185 (diff)
downloadCMake-0cfd055acda3543d66690b5e92d8ee7c20e0654f.zip
CMake-0cfd055acda3543d66690b5e92d8ee7c20e0654f.tar.gz
CMake-0cfd055acda3543d66690b5e92d8ee7c20e0654f.tar.bz2
exports: move the handling of missing targets into subclasses
Before, cmExportFileGenerator::ComplainAboutMissingTarget() was a virtual function which had to be implemented in the subclasses. It is not anymore. Instead, there is now a virtual function HandleMissingTargets(), which is implemented in the two subclasses. This makes e.g. dealing correctly with APPEND mode easier. Alex
Diffstat (limited to 'Source/cmExportInstallFileGenerator.h')
-rw-r--r--Source/cmExportInstallFileGenerator.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/Source/cmExportInstallFileGenerator.h b/Source/cmExportInstallFileGenerator.h
index f6f397e..e719ecc 100644
--- a/Source/cmExportInstallFileGenerator.h
+++ b/Source/cmExportInstallFileGenerator.h
@@ -57,9 +57,19 @@ protected:
virtual void GenerateImportTargetsConfig(std::ostream& os,
const char* config,
std::string const& suffix);
- virtual void ComplainAboutMissingTarget(cmTarget* depender,
- cmTarget* dependee,
- int occurrences);
+ virtual void HandleMissingTarget(std::string& link_libs,
+ std::vector<std::string>& missingTargets,
+ cmMakefile* mf,
+ cmTarget* depender,
+ cmTarget* dependee);
+
+ void ComplainAboutMissingTarget(cmTarget* depender,
+ cmTarget* dependee,
+ int occurrences);
+
+ std::vector<std::string> FindNamespaces(cmMakefile* mf,
+ const std::string& name);
+
/** Generate a per-configuration file for the targets. */
bool GenerateImportFileConfig(const char* config);