mirror of
https://github.com/Kitware/CMake.git
synced 2026-05-06 14:19:59 -05:00
Add API to populate INTERFACE properties in exported targets.
The INTERFACE properties need to be preprocessed for context (build location or install location) and to extract target names etc.
This commit is contained in:
@@ -13,6 +13,7 @@
|
||||
#define cmExportFileGenerator_h
|
||||
|
||||
#include "cmCommand.h"
|
||||
#include "cmGeneratorExpression.h"
|
||||
|
||||
/** \class cmExportFileGenerator
|
||||
* \brief Generate a file exporting targets from a build or install tree.
|
||||
@@ -93,6 +94,13 @@ protected:
|
||||
cmMakefile* mf,
|
||||
cmTarget* depender,
|
||||
cmTarget* dependee) = 0;
|
||||
void PopulateInterfaceProperty(const char *,
|
||||
cmTarget *target,
|
||||
cmGeneratorExpression::PreprocessContext,
|
||||
ImportPropertyMap &properties,
|
||||
std::vector<std::string> &missingTargets);
|
||||
void GenerateInterfaceProperties(cmTarget *target, std::ostream& os,
|
||||
const ImportPropertyMap &properties);
|
||||
|
||||
void ResolveTargetsInGeneratorExpressions(std::string &input,
|
||||
cmTarget* target,
|
||||
@@ -113,6 +121,13 @@ protected:
|
||||
|
||||
// The set of targets included in the export.
|
||||
std::set<cmTarget*> ExportedTargets;
|
||||
|
||||
private:
|
||||
void PopulateInterfaceProperty(const char *, const char *,
|
||||
cmTarget *target,
|
||||
cmGeneratorExpression::PreprocessContext,
|
||||
ImportPropertyMap &properties,
|
||||
std::vector<std::string> &missingTargets);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user