diff options
Diffstat (limited to 'Source/cmGlobalVisualStudio12Generator.cxx')
-rw-r--r-- | Source/cmGlobalVisualStudio12Generator.cxx | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Source/cmGlobalVisualStudio12Generator.cxx b/Source/cmGlobalVisualStudio12Generator.cxx index 5fdeec7..c18ff9e 100644 --- a/Source/cmGlobalVisualStudio12Generator.cxx +++ b/Source/cmGlobalVisualStudio12Generator.cxx @@ -5,6 +5,11 @@ #include "cmAlgorithms.h" #include "cmLocalVisualStudio10Generator.h" #include "cmMakefile.h" +#include "cmVS12CLFlagTable.h" +#include "cmVS12LibFlagTable.h" +#include "cmVS12LinkFlagTable.h" +#include "cmVS12MASMFlagTable.h" +#include "cmVS12RCFlagTable.h" static const char vs12generatorName[] = "Visual Studio 12 2013"; @@ -83,6 +88,11 @@ cmGlobalVisualStudio12Generator::cmGlobalVisualStudio12Generator( "ProductDir", vc12Express, cmSystemTools::KeyWOW64_32); this->DefaultPlatformToolset = "v120"; + this->DefaultClFlagTable = cmVS12CLFlagTable; + this->DefaultLibFlagTable = cmVS12LibFlagTable; + this->DefaultLinkFlagTable = cmVS12LinkFlagTable; + this->DefaultMasmFlagTable = cmVS12MASMFlagTable; + this->DefaultRcFlagTable = cmVS12RCFlagTable; this->Version = VS12; } @@ -96,6 +106,21 @@ bool cmGlobalVisualStudio12Generator::MatchesGeneratorName( return false; } +bool cmGlobalVisualStudio12Generator::ParseGeneratorToolset( + std::string const& ts, cmMakefile* mf) +{ + std::string::size_type ts_end = ts.size(); + if (cmHasLiteralSuffix(ts, ",host=x64")) { + this->GeneratorToolsetHostArchitecture = "x64"; + ts_end -= 9; + } else if (ts == "host=x64") { + this->GeneratorToolsetHostArchitecture = "x64"; + ts_end = 0; + } + return this->cmGlobalVisualStudio11Generator::ParseGeneratorToolset( + ts.substr(0, ts_end), mf); +} + bool cmGlobalVisualStudio12Generator::InitializeWindowsPhone(cmMakefile* mf) { if (!this->SelectWindowsPhoneToolset(this->DefaultPlatformToolset)) { |