summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-07-14 14:13:19 (GMT)
committerBrad King <brad.king@kitware.com>2017-07-14 14:20:07 (GMT)
commitcef77f06878371cf7615bf4dd3da7cc3ba257878 (patch)
tree9fef6585e4997eeebe2073edf2a9b14a8c5825a6 /Source
parent74e337117f839378e284b7edddc8484ce9c683f5 (diff)
downloadCMake-cef77f06878371cf7615bf4dd3da7cc3ba257878.zip
CMake-cef77f06878371cf7615bf4dd3da7cc3ba257878.tar.gz
CMake-cef77f06878371cf7615bf4dd3da7cc3ba257878.tar.bz2
Allow language extensions without any standard to use a list of options
Fix the logic added by commit a2112257 (Add infrastructure to use language extensions without any standard, 2017-06-29) to support a list of options as has been done since commit v3.9.0-rc1~174^2~2 (CompileFeatures: Let STD compile options be a list, 2016-10-05).
Diffstat (limited to 'Source')
-rw-r--r--Source/cmLocalGenerator.cxx6
1 files changed, 5 insertions, 1 deletions
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx
index f1bf664..2c5db10 100644
--- a/Source/cmLocalGenerator.cxx
+++ b/Source/cmLocalGenerator.cxx
@@ -1563,7 +1563,11 @@ void cmLocalGenerator::AddCompilerRequirementFlag(
"CMAKE_" + lang + "_EXTENSION_COMPILE_OPTION";
if (const char* opt =
target->Target->GetMakefile()->GetDefinition(option_flag)) {
- this->AppendFlagEscape(flags, opt);
+ std::vector<std::string> optVec;
+ cmSystemTools::ExpandListArgument(opt, optVec);
+ for (size_t i = 0; i < optVec.size(); ++i) {
+ this->AppendFlagEscape(flags, optVec[i]);
+ }
}
}
return;