summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2015-07-25 19:10:31 (GMT)
committerStephen Kelly <steveire@gmail.com>2015-07-27 19:58:49 (GMT)
commitba2668588213688243174a9cc8d7f034661b2a73 (patch)
tree3d5aefdeb89f80494fb846fe40ca70a1dccb4317
parent5ab3a946518870d0dbd1fe606d1bc89d336769c4 (diff)
downloadCMake-ba2668588213688243174a9cc8d7f034661b2a73.zip
CMake-ba2668588213688243174a9cc8d7f034661b2a73.tar.gz
CMake-ba2668588213688243174a9cc8d7f034661b2a73.tar.bz2
cmTarget: Create cmGeneratorTargets before reading deprecated LOCATION.
The intention is to move generation-semantic cmTarget API to cmGeneratorTarget and then use the latter for generator expressions. This means that each time we read a deprecated LOCATION property, we have to clear and re-populate the container. That must be done each time because the result can change through the configure process, which is why this is deprecated in the first place.
-rw-r--r--Source/cmTarget.cxx10
1 files changed, 8 insertions, 2 deletions
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 352b2de..295c862 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -2950,8 +2950,11 @@ const char *cmTarget::GetProperty(const std::string& prop,
}
else
{
+ cmGlobalGenerator* gg = this->Makefile->GetGlobalGenerator();
+ gg->CreateGenerationObjects();
+ cmGeneratorTarget* gt = gg->GetGeneratorTarget(this);
this->Properties.SetProperty(
- prop, this->GetFullPath(configName, false).c_str());
+ prop, gt->Target->GetFullPath(configName, false).c_str());
}
}
// Support "<CONFIG>_LOCATION".
@@ -2971,8 +2974,11 @@ const char *cmTarget::GetProperty(const std::string& prop,
}
else
{
+ cmGlobalGenerator* gg = this->Makefile->GetGlobalGenerator();
+ gg->CreateGenerationObjects();
+ cmGeneratorTarget* gt = gg->GetGeneratorTarget(this);
this->Properties.SetProperty(
- prop, this->GetFullPath(configName, false).c_str());
+ prop, gt->Target->GetFullPath(configName, false).c_str());
}
}
}