diff options
author | Stephen Kelly <steveire@gmail.com> | 2015-07-25 19:10:31 (GMT) |
---|---|---|
committer | Stephen Kelly <steveire@gmail.com> | 2015-07-27 19:58:49 (GMT) |
commit | ba2668588213688243174a9cc8d7f034661b2a73 (patch) | |
tree | 3d5aefdeb89f80494fb846fe40ca70a1dccb4317 /Source/cmTarget.cxx | |
parent | 5ab3a946518870d0dbd1fe606d1bc89d336769c4 (diff) | |
download | CMake-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.
Diffstat (limited to 'Source/cmTarget.cxx')
-rw-r--r-- | Source/cmTarget.cxx | 10 |
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()); } } } |