diff options
author | Brad King <brad.king@kitware.com> | 2014-06-24 19:29:08 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2014-06-25 18:51:21 (GMT) |
commit | d96b3f68f422bc57541a912e6983fcab095f6426 (patch) | |
tree | 05d608060bb144323bd9ed1045eb8d7be4f8c485 /Source/cmVisualStudio10TargetGenerator.cxx | |
parent | 65624c39e3f435a601760bfcb01d9cafbbfb56c1 (diff) | |
download | CMake-d96b3f68f422bc57541a912e6983fcab095f6426.zip CMake-d96b3f68f422bc57541a912e6983fcab095f6426.tar.gz CMake-d96b3f68f422bc57541a912e6983fcab095f6426.tar.bz2 |
VS14: Generate flag tables from MSBuild v140 tool files
Run cmparseMSBuildXML.py on cl.xml, lib.xml, and link.xml to generate
our flag tables:
python cmparseMSBuildXML.py -x ".../MSBuild/Microsoft.Cpp/v4.0/V140/1033/cl.xml" > cmVS14CLFlagTable.h
python cmparseMSBuildXML.py -x ".../MSBuild/Microsoft.Cpp/v4.0/V140/1033/lib.xml" > cmVS14LibFlagTable.h
python cmparseMSBuildXML.py -x ".../MSBuild/Microsoft.Cpp/v4.0/V140/1033/link.xml" > cmVS14LinkFlagTable.h
Fix up the declaration names at the top of each file. Finally, teach
cmVisualStudio10TargetGenerator to select the version of the table
matching the version of VS.
Co-Author: Pawel Stopinski <diokhan@go2.pl>
Diffstat (limited to 'Source/cmVisualStudio10TargetGenerator.cxx')
-rw-r--r-- | Source/cmVisualStudio10TargetGenerator.cxx | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx index acf3930..1e09ed9 100644 --- a/Source/cmVisualStudio10TargetGenerator.cxx +++ b/Source/cmVisualStudio10TargetGenerator.cxx @@ -29,6 +29,9 @@ #include "cmVS12CLFlagTable.h" #include "cmVS12LinkFlagTable.h" #include "cmVS12LibFlagTable.h" +#include "cmVS14CLFlagTable.h" +#include "cmVS14LinkFlagTable.h" +#include "cmVS14LibFlagTable.h" #include <cmsys/auto_ptr.hxx> @@ -36,7 +39,9 @@ cmIDEFlagTable const* cmVisualStudio10TargetGenerator::GetClFlagTable() const { cmLocalVisualStudioGenerator::VSVersion v = this->LocalGenerator->GetVersion(); - if(v >= cmLocalVisualStudioGenerator::VS12) + if(v >= cmLocalVisualStudioGenerator::VS14) + { return cmVS14CLFlagTable; } + else if(v >= cmLocalVisualStudioGenerator::VS12) { return cmVS12CLFlagTable; } else if(v == cmLocalVisualStudioGenerator::VS11) { return cmVS11CLFlagTable; } @@ -48,7 +53,9 @@ cmIDEFlagTable const* cmVisualStudio10TargetGenerator::GetLibFlagTable() const { cmLocalVisualStudioGenerator::VSVersion v = this->LocalGenerator->GetVersion(); - if(v >= cmLocalVisualStudioGenerator::VS12) + if(v >= cmLocalVisualStudioGenerator::VS14) + { return cmVS14LibFlagTable; } + else if(v >= cmLocalVisualStudioGenerator::VS12) { return cmVS12LibFlagTable; } else if(v == cmLocalVisualStudioGenerator::VS11) { return cmVS11LibFlagTable; } @@ -60,7 +67,9 @@ cmIDEFlagTable const* cmVisualStudio10TargetGenerator::GetLinkFlagTable() const { cmLocalVisualStudioGenerator::VSVersion v = this->LocalGenerator->GetVersion(); - if(v >= cmLocalVisualStudioGenerator::VS12) + if(v >= cmLocalVisualStudioGenerator::VS14) + { return cmVS14LinkFlagTable; } + else if(v >= cmLocalVisualStudioGenerator::VS12) { return cmVS12LinkFlagTable; } else if(v == cmLocalVisualStudioGenerator::VS11) { return cmVS11LinkFlagTable; } |