summaryrefslogtreecommitdiffstats
path: root/Source/cmVisualStudio10TargetGenerator.cxx
diff options
context:
space:
mode:
authorDaniel Eiband <daniel.eiband@brainlab.com>2019-08-26 13:22:43 (GMT)
committerDaniel Eiband <daniel.eiband@brainlab.com>2019-08-26 13:22:43 (GMT)
commit8909a450a6fb74447ef6dc49f16d747bae3c72ea (patch)
treeeaef1c39324a7a45a670bfd453f21ba2e9fc6151 /Source/cmVisualStudio10TargetGenerator.cxx
parent0d356e4c9490a104a02be657936132c080fc023b (diff)
downloadCMake-8909a450a6fb74447ef6dc49f16d747bae3c72ea.zip
CMake-8909a450a6fb74447ef6dc49f16d747bae3c72ea.tar.gz
CMake-8909a450a6fb74447ef6dc49f16d747bae3c72ea.tar.bz2
VS: Add support for generator expressions to VS_CONFIGURATION_TYPE
Generator expressions in target property VS_CONFIGURATION_TYPE might be used to set the ConfigurationType to Utility for certain configurations to not build the target while still linking to the target in other configurations. Fixes: #19613
Diffstat (limited to 'Source/cmVisualStudio10TargetGenerator.cxx')
-rw-r--r--Source/cmVisualStudio10TargetGenerator.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index c5cf9a7..ea2d16c 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -1115,7 +1115,10 @@ void cmVisualStudio10TargetGenerator::WriteProjectConfigurationValues(Elem& e0)
std::string configType;
if (const char* vsConfigurationType =
this->GeneratorTarget->GetProperty("VS_CONFIGURATION_TYPE")) {
- configType = vsConfigurationType;
+ cmGeneratorExpression ge;
+ std::unique_ptr<cmCompiledGeneratorExpression> cge =
+ ge.Parse(vsConfigurationType);
+ configType = cge->Evaluate(this->LocalGenerator, c);
} else {
switch (this->GeneratorTarget->GetType()) {
case cmStateEnums::SHARED_LIBRARY: