exports: store pointers to all installations of each export set
This information will be used to check whether a target is exported once or multiple times and to check its namespace. Alex
This commit is contained in:
parent
64b3a6c9cf
commit
999061a4c2
|
@ -25,3 +25,8 @@ void cmExportSet::AddTargetExport(cmTargetExport const* te)
|
||||||
{
|
{
|
||||||
this->TargetExports.push_back(te);
|
this->TargetExports.push_back(te);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void cmExportSet::AddInstallation(cmInstallExportGenerator const* installation)
|
||||||
|
{
|
||||||
|
this->Installations.push_back(installation);
|
||||||
|
}
|
||||||
|
|
|
@ -14,6 +14,7 @@
|
||||||
|
|
||||||
#include "cmSystemTools.h"
|
#include "cmSystemTools.h"
|
||||||
class cmTargetExport;
|
class cmTargetExport;
|
||||||
|
class cmInstallExportGenerator;
|
||||||
|
|
||||||
/// A set of targets that were installed with the same EXPORT parameter.
|
/// A set of targets that were installed with the same EXPORT parameter.
|
||||||
class cmExportSet
|
class cmExportSet
|
||||||
|
@ -26,13 +27,20 @@ public:
|
||||||
|
|
||||||
void AddTargetExport(cmTargetExport const* tgt);
|
void AddTargetExport(cmTargetExport const* tgt);
|
||||||
|
|
||||||
|
void AddInstallation(cmInstallExportGenerator const* installation);
|
||||||
|
|
||||||
std::string const& GetName() const { return this->Name; }
|
std::string const& GetName() const { return this->Name; }
|
||||||
|
|
||||||
std::vector<cmTargetExport const*> const* GetTargetExports() const
|
std::vector<cmTargetExport const*> const* GetTargetExports() const
|
||||||
{ return &this->TargetExports; }
|
{ return &this->TargetExports; }
|
||||||
|
|
||||||
|
std::vector<cmInstallExportGenerator const*> const* GetInstallations() const
|
||||||
|
{ return &this->Installations; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
std::vector<cmTargetExport const*> TargetExports;
|
std::vector<cmTargetExport const*> TargetExports;
|
||||||
std::string Name;
|
std::string Name;
|
||||||
|
std::vector<cmInstallExportGenerator const*> Installations;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -42,6 +42,7 @@ cmInstallExportGenerator::cmInstallExportGenerator(
|
||||||
,Makefile(mf)
|
,Makefile(mf)
|
||||||
{
|
{
|
||||||
this->EFGen = new cmExportInstallFileGenerator(this);
|
this->EFGen = new cmExportInstallFileGenerator(this);
|
||||||
|
exportSet->AddInstallation(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
|
|
Loading…
Reference in New Issue