summaryrefslogtreecommitdiffstats
path: root/Source/cmServerProtocol.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2016-11-01 13:14:25 (GMT)
committerCMake Topic Stage <kwrobot@kitware.com>2016-11-01 13:14:25 (GMT)
commit01567fd74f1426ebab2499e5e08d33eff5435f99 (patch)
tree231561c97ee64de519383f255a54d0135caf70c2 /Source/cmServerProtocol.cxx
parent9c6cf7fcac1f4f23ec21aeb322026d4f422760cc (diff)
parent9a58517df4168a5d928b715fcaa96fc24df9b40c (diff)
downloadCMake-01567fd74f1426ebab2499e5e08d33eff5435f99.zip
CMake-01567fd74f1426ebab2499e5e08d33eff5435f99.tar.gz
CMake-01567fd74f1426ebab2499e5e08d33eff5435f99.tar.bz2
Merge topic 'src-COMPILE_FLAGS-genex'
9a58517d Tests: Add case for Xcode per-config per-source COMPILE_FLAGS diagnostic 1e4bb358 Add generator expression support to per-source COMPILE_FLAGS
Diffstat (limited to 'Source/cmServerProtocol.cxx')
-rw-r--r--Source/cmServerProtocol.cxx7
1 files changed, 6 insertions, 1 deletions
diff --git a/Source/cmServerProtocol.cxx b/Source/cmServerProtocol.cxx
index 853704b..609ad2b 100644
--- a/Source/cmServerProtocol.cxx
+++ b/Source/cmServerProtocol.cxx
@@ -686,7 +686,12 @@ static Json::Value DumpSourceFilesList(
cmLocalGenerator* lg = target->GetLocalGenerator();
std::string compileFlags = ld.Flags;
- lg->AppendFlags(compileFlags, file->GetProperty("COMPILE_FLAGS"));
+ if (const char* cflags = file->GetProperty("COMPILE_FLAGS")) {
+ cmGeneratorExpression ge;
+ const char* processed =
+ ge.Parse(cflags)->Evaluate(target->GetLocalGenerator(), config);
+ lg->AppendFlags(compileFlags, processed);
+ }
fileData.Flags = compileFlags;
fileData.IncludePathList = ld.IncludePathList;