cmMakefile: Store container of cmExportBuildFileGenerators.

Set a cmLocalGenerator on each instance at compute time.  That will
soon be needed to access cmGeneratorTarget instances.

If a cmExportBuildFileGenerator is processed early during configure time as a
result of CMP0024 it must be removed from the list to process later at generate
time.
This commit is contained in:
Stephen Kelly
2015-09-16 22:08:22 +02:00
committed by Brad King
parent 1583440509
commit 488723f5cd
9 changed files with 83 additions and 19 deletions

View File

@@ -43,10 +43,7 @@ public:
/** Set whether to append generated code to the output file. */
void SetAppendMode(bool append) { this->AppendMode = append; }
void SetMakefile(cmMakefile *mf) {
this->Makefile = mf;
this->Backtrace = this->Makefile->GetBacktrace();
}
void Compute(cmLocalGenerator* lg);
protected:
// Implement virtual methods from the superclass.
@@ -80,8 +77,7 @@ protected:
std::vector<std::string> Targets;
cmExportSet *ExportSet;
std::vector<cmGeneratorTarget*> Exports;
cmMakefile* Makefile;
cmListFileBacktrace Backtrace;
cmLocalGenerator* LG;
};
#endif