Record set of targets used in cmGeneratorExpression
This commit is contained in:
parent
ef9e9de0b8
commit
4749e4cb76
|
@ -141,6 +141,7 @@ bool cmGeneratorExpression::EvaluateTargetInfo(std::string& result)
|
|||
result = "Target \"" + name + "\" is not an executable or library.";
|
||||
return false;
|
||||
}
|
||||
this->Targets.insert(target);
|
||||
|
||||
// Lookup the target file with the given purpose.
|
||||
std::string purpose = this->TargetInfo.match(1);
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
|
||||
#include <cmsys/RegularExpression.hxx>
|
||||
|
||||
class cmTarget;
|
||||
class cmMakefile;
|
||||
class cmListFileBacktrace;
|
||||
|
||||
|
@ -38,6 +39,10 @@ public:
|
|||
/** Evaluate generator expressions in a string. */
|
||||
const char* Process(std::string const& input);
|
||||
const char* Process(const char* input);
|
||||
|
||||
/** Get set of targets found during evaluations. */
|
||||
std::set<cmTarget*> const& GetTargets() const
|
||||
{ return this->Targets; }
|
||||
private:
|
||||
cmMakefile* Makefile;
|
||||
const char* Config;
|
||||
|
@ -46,6 +51,7 @@ private:
|
|||
std::vector<char> Data;
|
||||
std::stack<size_t> Barriers;
|
||||
cmsys::RegularExpression TargetInfo;
|
||||
std::set<cmTarget*> Targets;
|
||||
bool Evaluate();
|
||||
bool Evaluate(const char* expr, std::string& result);
|
||||
bool EvaluateTargetInfo(std::string& result);
|
||||
|
|
Loading…
Reference in New Issue