Browse Source

Merge branch 'vs-flag-map-Qspectre' into release-3.13

Merge-request: !2462
pull/324/head
Brad King 7 years ago
parent
commit
92ed3b38cc
  1. 2
      Source/cmVS141CLFlagTable.h
  2. 8
      Source/cmVisualStudio10TargetGenerator.cxx
  3. 1
      Source/cmVisualStudio10TargetGenerator.h

2
Source/cmVS141CLFlagTable.h

@ -83,6 +83,8 @@ static cmVS7FlagTable cmVS141CLFlagTable[] = {
{ "FloatingPointModel", "fp:strict", "Strict", "Strict", 0 },
{ "FloatingPointModel", "fp:fast", "Fast", "Fast", 0 },
{ "SpectreMitigation", "Qspectre", "Spectre mitigations", "Spectre", 0 },
{ "LanguageStandard", "std:c++17", "ISO C++17 Standard", "stdcpp17", 0 },
{ "LanguageStandard", "std:c++14", "ISO C++14 Standard", "stdcpp14", 0 },
{ "LanguageStandard", "std:c++latest", "ISO C++ Latest Draft Standard",

8
Source/cmVisualStudio10TargetGenerator.cxx

@ -1125,6 +1125,9 @@ void cmVisualStudio10TargetGenerator::WriteMSToolConfigurationValues(
if (this->IPOEnabledConfigurations.count(config) > 0) {
e1.Element("WholeProgramOptimization", "true");
}
if (this->SpectreMitigationConfigurations.count(config) > 0) {
e1.Element("SpectreMitigation", "Spectre");
}
}
void cmVisualStudio10TargetGenerator::WriteMSToolConfigurationValuesManaged(
@ -2625,6 +2628,11 @@ bool cmVisualStudio10TargetGenerator::ComputeClOptions(
}
}
if (clOptions.HasFlag("SpectreMitigation")) {
this->SpectreMitigationConfigurations.insert(configName);
clOptions.RemoveFlag("SpectreMitigation");
}
this->ClOptions[configName] = std::move(pOptions);
return true;
}

1
Source/cmVisualStudio10TargetGenerator.h

@ -205,6 +205,7 @@ private:
unsigned int NsightTegraVersion[4];
bool TargetCompileAsWinRT;
std::set<std::string> IPOEnabledConfigurations;
std::set<std::string> SpectreMitigationConfigurations;
cmGlobalVisualStudio10Generator* const GlobalGenerator;
cmLocalVisualStudio10Generator* const LocalGenerator;
std::set<std::string> CSharpCustomCommandNames;

Loading…
Cancel
Save