cmVisualStudio10TargetGenerator: set /clr compiler flag from property

This commit is contained in:
Michael Stürmer
2018-03-19 21:20:03 +01:00
parent 20e31fb4c9
commit 4b7a82b4ed

View File

@@ -2395,6 +2395,22 @@ bool cmVisualStudio10TargetGenerator::ComputeClOptions(
clOptions.AddFlag("AssemblerListingLocation", asmLocation);
}
}
// check for managed C++ assembly compiler flag. This overrides any
// /clr* compiler flags which may be defined in the flags variable(s).
if (this->ProjectType != csproj) {
// TODO: add check here, if /clr was defined manually and issue
// warning that this is discouraged.
if (auto* clr =
this->GeneratorTarget->GetProperty("COMMON_LANGUAGE_RUNTIME")) {
std::string clrString = clr;
if (!clrString.empty()) {
clrString = ":" + clrString;
}
flags += " /clr" + clrString;
}
}
clOptions.Parse(flags.c_str());
clOptions.Parse(defineFlags.c_str());
std::vector<std::string> targetDefines;