summaryrefslogtreecommitdiff
path: root/Source/cmVS10MASMFlagTable.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-08-13 10:02:12 -0400
committerBrad King <brad.king@kitware.com>2014-08-13 14:47:58 -0400
commit1d662e4806364172ebf76099c2d016efd414c74a (patch)
tree1383618fe11eea3c9632d66370e5c766b7a3c2e9 /Source/cmVS10MASMFlagTable.h
parent4f6940df8c69053b4451056ebf3ebdc8f97bf356 (diff)
downloadcmake-1d662e4806364172ebf76099c2d016efd414c74a.tar.gz
VS: Generate MASM flag tables from MSBuild tool files
Run cmparseMSBuildXML.py on masm.xml to generate our flag tables: python cmparseMSBuildXML.py -x ".../MSBuild/Microsoft.Cpp/v4.0/BuildCustomizations/masm.xml" > cmVS10MASMFlagTable.h python cmparseMSBuildXML.py -x ".../MSBuild/Microsoft.Cpp/v4.0/V110/BuildCustomizations/masm.xml" > cmVS11MASMFlagTable.h python cmparseMSBuildXML.py -x ".../MSBuild/Microsoft.Cpp/v4.0/V120/BuildCustomizations/masm.xml" > cmVS12MASMFlagTable.h python cmparseMSBuildXML.py -x ".../MSBuild/Microsoft.Cpp/v4.0/V140/BuildCustomizations/masm.xml" > cmVS14MASMFlagTable.h Fix up the declaration names at the top of each file.
Diffstat (limited to 'Source/cmVS10MASMFlagTable.h')
-rw-r--r--Source/cmVS10MASMFlagTable.h96
1 files changed, 96 insertions, 0 deletions
diff --git a/Source/cmVS10MASMFlagTable.h b/Source/cmVS10MASMFlagTable.h
new file mode 100644
index 0000000000..19d402d8e8
--- /dev/null
+++ b/Source/cmVS10MASMFlagTable.h
@@ -0,0 +1,96 @@
+static cmVS7FlagTable cmVS10MASMFlagTable[] =
+{
+
+ //Enum Properties
+ {"PreserveIdentifierCase", "",
+ "Default", "0", 0},
+ {"PreserveIdentifierCase", "/Cp",
+ "Preserves Identifier Case (/Cp)", "1", 0},
+ {"PreserveIdentifierCase", "/Cu",
+ "Maps all identifiers to upper case. (/Cu)", "2", 0},
+ {"PreserveIdentifierCase", "/Cx",
+ "Preserves case in public and extern symbols. (/Cx)", "3", 0},
+
+ {"WarningLevel", "/W0",
+ "Warning Level 0 (/W0)", "0", 0},
+ {"WarningLevel", "/W1",
+ "Warning Level 1 (/W1)", "1", 0},
+ {"WarningLevel", "/W2",
+ "Warning Level 2 (/W2)", "2", 0},
+ {"WarningLevel", "/W3",
+ "Warning Level 3 (/W3)", "3", 0},
+
+ {"PackAlignmentBoundary", "",
+ "Default", "0", 0},
+ {"PackAlignmentBoundary", "/Zp1",
+ "One Byte Boundary (/Zp1)", "1", 0},
+ {"PackAlignmentBoundary", "/Zp2",
+ "Two Byte Boundary (/Zp2)", "2", 0},
+ {"PackAlignmentBoundary", "/Zp4",
+ "Four Byte Boundary (/Zp4)", "3", 0},
+ {"PackAlignmentBoundary", "/Zp8",
+ "Eight Byte Boundary (/Zp8)", "4", 0},
+ {"PackAlignmentBoundary", "/Zp16",
+ "Sixteen Byte Boundary (/Zp16)", "5", 0},
+
+ {"CallingConvention", "",
+ "Default", "0", 0},
+ {"CallingConvention", "/Gd",
+ "Use C-style Calling Convention (/Gd)", "1", 0},
+ {"CallingConvention", "/Gz",
+ "Use stdcall Calling Convention (/Gz)", "2", 0},
+ {"CallingConvention", "/Gc",
+ "Use Pascal Calling Convention (/Gc)", "3", 0},
+
+ {"ErrorReporting", "/errorReport:prompt",
+ "Prompt to send report immediately (/errorReport:prompt)", "0", 0},
+ {"ErrorReporting", "/errorReport:queue",
+ "Prompt to send report at the next logon (/errorReport:queue)", "1", 0},
+ {"ErrorReporting", "/errorReport:send",
+ "Automatically send report (/errorReport:send)", "2", 0},
+ {"ErrorReporting", "/errorReport:none",
+ "Do not send report (/errorReport:none)", "3", 0},
+
+
+ //Bool Properties
+ {"NoLogo", "/nologo", "", "true", 0},
+ {"GeneratePreprocessedSourceListing", "/EP", "", "true", 0},
+ {"ListAllAvailableInformation", "/Sa", "", "true", 0},
+ {"UseSafeExceptionHandlers", "/safeseh", "", "true", 0},
+ {"AddFirstPassListing", "/Sf", "", "true", 0},
+ {"EnableAssemblyGeneratedCodeListing", "/Sg", "", "true", 0},
+ {"DisableSymbolTable", "/Sn", "", "true", 0},
+ {"EnableFalseConditionalsInListing", "/Sx", "", "true", 0},
+ {"TreatWarningsAsErrors", "/WX", "", "true", 0},
+ {"MakeAllSymbolsPublic", "/Zf", "", "true", 0},
+ {"GenerateDebugInformation", "/Zi", "", "true", 0},
+ {"EnableMASM51Compatibility", "/Zm", "", "true", 0},
+ {"PerformSyntaxCheckOnly", "/Zs", "", "true", 0},
+
+ //Bool Properties With Argument
+
+ //String List Properties
+ {"PreprocessorDefinitions", "/D"[value]"",
+ "Preprocessor Definitions",
+ "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+ {"IncludePaths", "/I "[value]"",
+ "Include Paths",
+ "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+ {"BrowseFile", "/FR"[value]"",
+ "Generate Browse Information File",
+ "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
+ // Skip [AdditionalDependencies] - no command line Switch.
+
+ //String Properties
+ // Skip [Inputs] - no command line Switch.
+ {"ObjectFileName", "/Fo"[value]"",
+ "Object File Name",
+ "", cmVS7FlagTable::UserValue},
+ {"AssembledCodeListingFile", "/Fl"[value]"",
+ "Assembled Code Listing File",
+ "", cmVS7FlagTable::UserValue},
+ // Skip [CommandLineTemplate] - no command line Switch.
+ // Skip [ExecutionDescription] - no command line Switch.
+ // Skip [AdditionalOptions] - no command line Switch.
+ {0,0,0,0,0}
+};