Export: Port internal utility to cmGeneratorTarget.
This commit is contained in:
parent
2b9cc1e248
commit
e666128243
|
@ -237,14 +237,15 @@ void
|
||||||
cmExportBuildFileGenerator::HandleMissingTarget(
|
cmExportBuildFileGenerator::HandleMissingTarget(
|
||||||
std::string& link_libs,
|
std::string& link_libs,
|
||||||
std::vector<std::string>& missingTargets,
|
std::vector<std::string>& missingTargets,
|
||||||
cmTarget* depender,
|
cmGeneratorTarget* depender,
|
||||||
cmTarget* dependee)
|
cmGeneratorTarget* dependee)
|
||||||
{
|
{
|
||||||
// The target is not in the export.
|
// The target is not in the export.
|
||||||
if(!this->AppendMode)
|
if(!this->AppendMode)
|
||||||
{
|
{
|
||||||
const std::string name = dependee->GetName();
|
const std::string name = dependee->GetName();
|
||||||
cmGlobalGenerator* gg = dependee->GetMakefile()->GetGlobalGenerator();
|
cmGlobalGenerator* gg =
|
||||||
|
dependee->GetLocalGenerator()->GetGlobalGenerator();
|
||||||
std::vector<std::string> namespaces = this->FindNamespaces(gg, name);
|
std::vector<std::string> namespaces = this->FindNamespaces(gg, name);
|
||||||
|
|
||||||
int targetOccurrences = (int)namespaces.size();
|
int targetOccurrences = (int)namespaces.size();
|
||||||
|
@ -252,7 +253,7 @@ cmExportBuildFileGenerator::HandleMissingTarget(
|
||||||
{
|
{
|
||||||
std::string missingTarget = namespaces[0];
|
std::string missingTarget = namespaces[0];
|
||||||
|
|
||||||
missingTarget += dependee->GetExportName();
|
missingTarget += dependee->Target->GetExportName();
|
||||||
link_libs += missingTarget;
|
link_libs += missingTarget;
|
||||||
missingTargets.push_back(missingTarget);
|
missingTargets.push_back(missingTarget);
|
||||||
return;
|
return;
|
||||||
|
@ -267,7 +268,7 @@ cmExportBuildFileGenerator::HandleMissingTarget(
|
||||||
// Assume the target will be exported by another command.
|
// Assume the target will be exported by another command.
|
||||||
// Append it with the export namespace.
|
// Append it with the export namespace.
|
||||||
link_libs += this->Namespace;
|
link_libs += this->Namespace;
|
||||||
link_libs += dependee->GetExportName();
|
link_libs += dependee->Target->GetExportName();
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
|
@ -315,8 +316,8 @@ cmExportBuildFileGenerator
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
void
|
void
|
||||||
cmExportBuildFileGenerator
|
cmExportBuildFileGenerator
|
||||||
::ComplainAboutMissingTarget(cmTarget* depender,
|
::ComplainAboutMissingTarget(cmGeneratorTarget* depender,
|
||||||
cmTarget* dependee,
|
cmGeneratorTarget* dependee,
|
||||||
int occurrences)
|
int occurrences)
|
||||||
{
|
{
|
||||||
if(cmSystemTools::GetErrorOccuredFlag())
|
if(cmSystemTools::GetErrorOccuredFlag())
|
||||||
|
|
|
@ -54,11 +54,11 @@ protected:
|
||||||
std::vector<std::string> &missingTargets);
|
std::vector<std::string> &missingTargets);
|
||||||
virtual void HandleMissingTarget(std::string& link_libs,
|
virtual void HandleMissingTarget(std::string& link_libs,
|
||||||
std::vector<std::string>& missingTargets,
|
std::vector<std::string>& missingTargets,
|
||||||
cmTarget* depender,
|
cmGeneratorTarget* depender,
|
||||||
cmTarget* dependee);
|
cmGeneratorTarget* dependee);
|
||||||
|
|
||||||
void ComplainAboutMissingTarget(cmTarget* depender,
|
void ComplainAboutMissingTarget(cmGeneratorTarget* depender,
|
||||||
cmTarget* dependee,
|
cmGeneratorTarget* dependee,
|
||||||
int occurrences);
|
int occurrences);
|
||||||
|
|
||||||
/** Fill in properties indicating built file locations. */
|
/** Fill in properties indicating built file locations. */
|
||||||
|
|
|
@ -661,7 +661,7 @@ cmExportFileGenerator::AddTargetNamespace(std::string &input,
|
||||||
{
|
{
|
||||||
std::string namespacedTarget;
|
std::string namespacedTarget;
|
||||||
this->HandleMissingTarget(namespacedTarget, missingTargets,
|
this->HandleMissingTarget(namespacedTarget, missingTargets,
|
||||||
target->Target, tgt->Target);
|
target, tgt);
|
||||||
if (!namespacedTarget.empty())
|
if (!namespacedTarget.empty())
|
||||||
{
|
{
|
||||||
input = namespacedTarget;
|
input = namespacedTarget;
|
||||||
|
|
|
@ -119,8 +119,8 @@ protected:
|
||||||
* export set. */
|
* export set. */
|
||||||
virtual void HandleMissingTarget(std::string& link_libs,
|
virtual void HandleMissingTarget(std::string& link_libs,
|
||||||
std::vector<std::string>& missingTargets,
|
std::vector<std::string>& missingTargets,
|
||||||
cmTarget* depender,
|
cmGeneratorTarget* depender,
|
||||||
cmTarget* dependee) = 0;
|
cmGeneratorTarget* dependee) = 0;
|
||||||
void PopulateInterfaceProperty(const std::string&,
|
void PopulateInterfaceProperty(const std::string&,
|
||||||
cmGeneratorTarget *target,
|
cmGeneratorTarget *target,
|
||||||
cmGeneratorExpression::PreprocessContext,
|
cmGeneratorExpression::PreprocessContext,
|
||||||
|
|
|
@ -453,19 +453,19 @@ cmExportInstallFileGenerator
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
void
|
void
|
||||||
cmExportInstallFileGenerator::HandleMissingTarget(
|
cmExportInstallFileGenerator::HandleMissingTarget(std::string& link_libs,
|
||||||
std::string& link_libs, std::vector<std::string>& missingTargets,
|
std::vector<std::string>& missingTargets,
|
||||||
cmTarget* depender, cmTarget* dependee)
|
cmGeneratorTarget* depender, cmGeneratorTarget* dependee)
|
||||||
{
|
{
|
||||||
const std::string name = dependee->GetName();
|
const std::string name = dependee->GetName();
|
||||||
cmGlobalGenerator* gg = dependee->GetMakefile()->GetGlobalGenerator();
|
cmGlobalGenerator* gg = dependee->GetLocalGenerator()->GetGlobalGenerator();
|
||||||
std::vector<std::string> namespaces = this->FindNamespaces(gg, name);
|
std::vector<std::string> namespaces = this->FindNamespaces(gg, name);
|
||||||
int targetOccurrences = (int)namespaces.size();
|
int targetOccurrences = (int)namespaces.size();
|
||||||
if (targetOccurrences == 1)
|
if (targetOccurrences == 1)
|
||||||
{
|
{
|
||||||
std::string missingTarget = namespaces[0];
|
std::string missingTarget = namespaces[0];
|
||||||
|
|
||||||
missingTarget += dependee->GetExportName();
|
missingTarget += dependee->Target->GetExportName();
|
||||||
link_libs += missingTarget;
|
link_libs += missingTarget;
|
||||||
missingTargets.push_back(missingTarget);
|
missingTargets.push_back(missingTarget);
|
||||||
}
|
}
|
||||||
|
@ -520,8 +520,8 @@ cmExportInstallFileGenerator
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
void
|
void
|
||||||
cmExportInstallFileGenerator
|
cmExportInstallFileGenerator
|
||||||
::ComplainAboutMissingTarget(cmTarget* depender,
|
::ComplainAboutMissingTarget(cmGeneratorTarget* depender,
|
||||||
cmTarget* dependee,
|
cmGeneratorTarget* dependee,
|
||||||
int occurrences)
|
int occurrences)
|
||||||
{
|
{
|
||||||
std::ostringstream e;
|
std::ostringstream e;
|
||||||
|
|
|
@ -57,13 +57,13 @@ protected:
|
||||||
std::vector<std::string> &missingTargets);
|
std::vector<std::string> &missingTargets);
|
||||||
virtual void HandleMissingTarget(std::string& link_libs,
|
virtual void HandleMissingTarget(std::string& link_libs,
|
||||||
std::vector<std::string>& missingTargets,
|
std::vector<std::string>& missingTargets,
|
||||||
cmTarget* depender,
|
cmGeneratorTarget* depender,
|
||||||
cmTarget* dependee);
|
cmGeneratorTarget* dependee);
|
||||||
|
|
||||||
virtual void ReplaceInstallPrefix(std::string &input);
|
virtual void ReplaceInstallPrefix(std::string &input);
|
||||||
|
|
||||||
void ComplainAboutMissingTarget(cmTarget* depender,
|
void ComplainAboutMissingTarget(cmGeneratorTarget* depender,
|
||||||
cmTarget* dependee,
|
cmGeneratorTarget* dependee,
|
||||||
int occurrences);
|
int occurrences);
|
||||||
|
|
||||||
std::vector<std::string> FindNamespaces(cmGlobalGenerator* gg,
|
std::vector<std::string> FindNamespaces(cmGlobalGenerator* gg,
|
||||||
|
|
|
@ -37,8 +37,8 @@ protected:
|
||||||
std::vector<std::string>&) {}
|
std::vector<std::string>&) {}
|
||||||
virtual void HandleMissingTarget(std::string&,
|
virtual void HandleMissingTarget(std::string&,
|
||||||
std::vector<std::string>&,
|
std::vector<std::string>&,
|
||||||
cmTarget*,
|
cmGeneratorTarget*,
|
||||||
cmTarget*) {}
|
cmGeneratorTarget*) {}
|
||||||
|
|
||||||
void PopulateProperties(cmGeneratorTarget const* target,
|
void PopulateProperties(cmGeneratorTarget const* target,
|
||||||
ImportPropertyMap& properties,
|
ImportPropertyMap& properties,
|
||||||
|
|
Loading…
Reference in New Issue