diff options
author | Brad King <brad.king@kitware.com> | 2016-06-03 14:45:57 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2016-06-03 14:45:57 (GMT) |
commit | 9d16f64048ccaf228c135fe1236cb9eee56c50f3 (patch) | |
tree | 7e7fa564f09f775598adc93d20077ff8f6e75922 /Source | |
parent | 2f1d82bd7b6f489af1b32857f95355e146c421e5 (diff) | |
parent | f500a784d008566d6eb6301b7c6a0f07847b856d (diff) | |
download | CMake-9d16f64048ccaf228c135fe1236cb9eee56c50f3.zip CMake-9d16f64048ccaf228c135fe1236cb9eee56c50f3.tar.gz CMake-9d16f64048ccaf228c135fe1236cb9eee56c50f3.tar.bz2 |
Merge topic 'fix-TARGET_PROPERTY-LOCATION-crash'
f500a784 Fix crash on $<TARGET_PROPERTY:...,LOCATION> genex (#16134)
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmTarget.cxx | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index 5e0d2b7..f435a1d 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -1131,7 +1131,9 @@ const char* cmTarget::GetProperty(const std::string& prop, // target because the configuration type may not be known at // CMake time. cmGlobalGenerator* gg = this->Makefile->GetGlobalGenerator(); - gg->CreateGenerationObjects(); + if (!gg->GetConfigureDoneCMP0026()) { + gg->CreateGenerationObjects(); + } cmGeneratorTarget* gt = gg->FindGeneratorTarget(this->GetName()); this->Properties.SetProperty(propLOCATION, gt->GetLocationForBuild()); } @@ -1150,7 +1152,9 @@ const char* cmTarget::GetProperty(const std::string& prop, prop, this->ImportedGetFullPath(configName, false).c_str()); } else { cmGlobalGenerator* gg = this->Makefile->GetGlobalGenerator(); - gg->CreateGenerationObjects(); + if (!gg->GetConfigureDoneCMP0026()) { + gg->CreateGenerationObjects(); + } cmGeneratorTarget* gt = gg->FindGeneratorTarget(this->GetName()); this->Properties.SetProperty( prop, gt->GetFullPath(configName, false).c_str()); @@ -1168,7 +1172,9 @@ const char* cmTarget::GetProperty(const std::string& prop, prop, this->ImportedGetFullPath(configName, false).c_str()); } else { cmGlobalGenerator* gg = this->Makefile->GetGlobalGenerator(); - gg->CreateGenerationObjects(); + if (!gg->GetConfigureDoneCMP0026()) { + gg->CreateGenerationObjects(); + } cmGeneratorTarget* gt = gg->FindGeneratorTarget(this->GetName()); this->Properties.SetProperty( prop, gt->GetFullPath(configName, false).c_str()); |