summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-05-05 13:44:54 (GMT)
committerKitware Robot <kwrobot@kitware.com>2017-05-05 13:45:04 (GMT)
commitd90bf11e2fbae39d8fc939ad77c8a8ec2c3a3dce (patch)
treedf95e3d84beda7db5f0e60db35c581c728f63051 /Source
parent0e967e3b1dd8a705e304b4d94f1556249622d747 (diff)
parentea6bb8293f50ecc93f42b6ea6525baa0252712a5 (diff)
downloadCMake-d90bf11e2fbae39d8fc939ad77c8a8ec2c3a3dce.zip
CMake-d90bf11e2fbae39d8fc939ad77c8a8ec2c3a3dce.tar.gz
CMake-d90bf11e2fbae39d8fc939ad77c8a8ec2c3a3dce.tar.bz2
Merge topic 'vs-masm-flags'
ea6bb829 VS: Use tool-specific flag table for COMPILE_FLAGS parsing da9076e4 VS: Fix MASM flag tables Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !791
Diffstat (limited to 'Source')
-rw-r--r--Source/cmVS10MASMFlagTable.h76
-rw-r--r--Source/cmVS11MASMFlagTable.h76
-rw-r--r--Source/cmVS12MASMFlagTable.h76
-rw-r--r--Source/cmVS14MASMFlagTable.h76
-rw-r--r--Source/cmVisualStudio10TargetGenerator.cxx17
5 files changed, 164 insertions, 157 deletions
diff --git a/Source/cmVS10MASMFlagTable.h b/Source/cmVS10MASMFlagTable.h
index 82e5270..0a45245 100644
--- a/Source/cmVS10MASMFlagTable.h
+++ b/Source/cmVS10MASMFlagTable.h
@@ -2,74 +2,72 @@ static cmVS7FlagTable cmVS10MASMFlagTable[] = {
// Enum Properties
{ "PreserveIdentifierCase", "", "Default", "0", 0 },
- { "PreserveIdentifierCase", "/Cp", "Preserves Identifier Case (/Cp)", "1",
+ { "PreserveIdentifierCase", "Cp", "Preserves Identifier Case (/Cp)", "1",
0 },
- { "PreserveIdentifierCase", "/Cu",
+ { "PreserveIdentifierCase", "Cu",
"Maps all identifiers to upper case. (/Cu)", "2", 0 },
- { "PreserveIdentifierCase", "/Cx",
+ { "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 },
+ { "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 },
+ { "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",
+ { "CallingConvention", "Gd", "Use C-style Calling Convention (/Gd)", "1",
0 },
- { "CallingConvention", "/Gc", "Use Pascal Calling Convention (/Gc)", "3",
+ { "CallingConvention", "Gz", "Use stdcall Calling Convention (/Gz)", "2",
0 },
+ { "CallingConvention", "Gc", "Use Pascal Calling Convention (/Gc)", "3", 0 },
- { "ErrorReporting", "/errorReport:prompt",
+ { "ErrorReporting", "errorReport:prompt",
"Prompt to send report immediately (/errorReport:prompt)", "0", 0 },
- { "ErrorReporting", "/errorReport:queue",
+ { "ErrorReporting", "errorReport:queue",
"Prompt to send report at the next logon (/errorReport:queue)", "1", 0 },
- { "ErrorReporting", "/errorReport:send",
+ { "ErrorReporting", "errorReport:send",
"Automatically send report (/errorReport:send)", "2", 0 },
- { "ErrorReporting", "/errorReport:none",
+ { "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 },
+ { "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", "Preprocessor Definitions", "",
+ { "PreprocessorDefinitions", "D", "Preprocessor Definitions", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
- { "IncludePaths", "/I", "Include Paths", "",
+ { "IncludePaths", "I", "Include Paths", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
- { "BrowseFile", "/FR", "Generate Browse Information File", "",
+ { "BrowseFile", "FR", "Generate Browse Information File", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
// Skip [AdditionalDependencies] - no command line Switch.
// String Properties
// Skip [Inputs] - no command line Switch.
- { "ObjectFileName", "/Fo", "Object File Name", "",
+ { "ObjectFileName", "Fo", "Object File Name", "",
cmVS7FlagTable::UserValue },
- { "AssembledCodeListingFile", "/Fl", "Assembled Code Listing File", "",
+ { "AssembledCodeListingFile", "Fl", "Assembled Code Listing File", "",
cmVS7FlagTable::UserValue },
// Skip [CommandLineTemplate] - no command line Switch.
// Skip [ExecutionDescription] - no command line Switch.
diff --git a/Source/cmVS11MASMFlagTable.h b/Source/cmVS11MASMFlagTable.h
index 1aca169..fdf8239 100644
--- a/Source/cmVS11MASMFlagTable.h
+++ b/Source/cmVS11MASMFlagTable.h
@@ -2,74 +2,72 @@ static cmVS7FlagTable cmVS11MASMFlagTable[] = {
// Enum Properties
{ "PreserveIdentifierCase", "", "Default", "0", 0 },
- { "PreserveIdentifierCase", "/Cp", "Preserves Identifier Case (/Cp)", "1",
+ { "PreserveIdentifierCase", "Cp", "Preserves Identifier Case (/Cp)", "1",
0 },
- { "PreserveIdentifierCase", "/Cu",
+ { "PreserveIdentifierCase", "Cu",
"Maps all identifiers to upper case. (/Cu)", "2", 0 },
- { "PreserveIdentifierCase", "/Cx",
+ { "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 },
+ { "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 },
+ { "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",
+ { "CallingConvention", "Gd", "Use C-style Calling Convention (/Gd)", "1",
0 },
- { "CallingConvention", "/Gc", "Use Pascal Calling Convention (/Gc)", "3",
+ { "CallingConvention", "Gz", "Use stdcall Calling Convention (/Gz)", "2",
0 },
+ { "CallingConvention", "Gc", "Use Pascal Calling Convention (/Gc)", "3", 0 },
- { "ErrorReporting", "/errorReport:prompt",
+ { "ErrorReporting", "errorReport:prompt",
"Prompt to send report immediately (/errorReport:prompt)", "0", 0 },
- { "ErrorReporting", "/errorReport:queue",
+ { "ErrorReporting", "errorReport:queue",
"Prompt to send report at the next logon (/errorReport:queue)", "1", 0 },
- { "ErrorReporting", "/errorReport:send",
+ { "ErrorReporting", "errorReport:send",
"Automatically send report (/errorReport:send)", "2", 0 },
- { "ErrorReporting", "/errorReport:none",
+ { "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 },
+ { "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", "Preprocessor Definitions", "",
+ { "PreprocessorDefinitions", "D", "Preprocessor Definitions", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
- { "IncludePaths", "/I", "Include Paths", "",
+ { "IncludePaths", "I", "Include Paths", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
- { "BrowseFile", "/FR", "Generate Browse Information File", "",
+ { "BrowseFile", "FR", "Generate Browse Information File", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
// Skip [AdditionalDependencies] - no command line Switch.
// String Properties
// Skip [Inputs] - no command line Switch.
- { "ObjectFileName", "/Fo", "Object File Name", "",
+ { "ObjectFileName", "Fo", "Object File Name", "",
cmVS7FlagTable::UserValue },
- { "AssembledCodeListingFile", "/Fl", "Assembled Code Listing File", "",
+ { "AssembledCodeListingFile", "Fl", "Assembled Code Listing File", "",
cmVS7FlagTable::UserValue },
// Skip [CommandLineTemplate] - no command line Switch.
// Skip [ExecutionDescription] - no command line Switch.
diff --git a/Source/cmVS12MASMFlagTable.h b/Source/cmVS12MASMFlagTable.h
index a7e4a80..acc0d48 100644
--- a/Source/cmVS12MASMFlagTable.h
+++ b/Source/cmVS12MASMFlagTable.h
@@ -2,74 +2,72 @@ static cmVS7FlagTable cmVS12MASMFlagTable[] = {
// Enum Properties
{ "PreserveIdentifierCase", "", "Default", "0", 0 },
- { "PreserveIdentifierCase", "/Cp", "Preserves Identifier Case (/Cp)", "1",
+ { "PreserveIdentifierCase", "Cp", "Preserves Identifier Case (/Cp)", "1",
0 },
- { "PreserveIdentifierCase", "/Cu",
+ { "PreserveIdentifierCase", "Cu",
"Maps all identifiers to upper case. (/Cu)", "2", 0 },
- { "PreserveIdentifierCase", "/Cx",
+ { "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 },
+ { "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 },
+ { "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",
+ { "CallingConvention", "Gd", "Use C-style Calling Convention (/Gd)", "1",
0 },
- { "CallingConvention", "/Gc", "Use Pascal Calling Convention (/Gc)", "3",
+ { "CallingConvention", "Gz", "Use stdcall Calling Convention (/Gz)", "2",
0 },
+ { "CallingConvention", "Gc", "Use Pascal Calling Convention (/Gc)", "3", 0 },
- { "ErrorReporting", "/errorReport:prompt",
+ { "ErrorReporting", "errorReport:prompt",
"Prompt to send report immediately (/errorReport:prompt)", "0", 0 },
- { "ErrorReporting", "/errorReport:queue",
+ { "ErrorReporting", "errorReport:queue",
"Prompt to send report at the next logon (/errorReport:queue)", "1", 0 },
- { "ErrorReporting", "/errorReport:send",
+ { "ErrorReporting", "errorReport:send",
"Automatically send report (/errorReport:send)", "2", 0 },
- { "ErrorReporting", "/errorReport:none",
+ { "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 },
+ { "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", "Preprocessor Definitions", "",
+ { "PreprocessorDefinitions", "D", "Preprocessor Definitions", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
- { "IncludePaths", "/I", "Include Paths", "",
+ { "IncludePaths", "I", "Include Paths", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
- { "BrowseFile", "/FR", "Generate Browse Information File", "",
+ { "BrowseFile", "FR", "Generate Browse Information File", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
// Skip [AdditionalDependencies] - no command line Switch.
// String Properties
// Skip [Inputs] - no command line Switch.
- { "ObjectFileName", "/Fo", "Object File Name", "",
+ { "ObjectFileName", "Fo", "Object File Name", "",
cmVS7FlagTable::UserValue },
- { "AssembledCodeListingFile", "/Fl", "Assembled Code Listing File", "",
+ { "AssembledCodeListingFile", "Fl", "Assembled Code Listing File", "",
cmVS7FlagTable::UserValue },
// Skip [CommandLineTemplate] - no command line Switch.
// Skip [ExecutionDescription] - no command line Switch.
diff --git a/Source/cmVS14MASMFlagTable.h b/Source/cmVS14MASMFlagTable.h
index c4e5e1e..82ec9f1 100644
--- a/Source/cmVS14MASMFlagTable.h
+++ b/Source/cmVS14MASMFlagTable.h
@@ -2,74 +2,72 @@ static cmVS7FlagTable cmVS14MASMFlagTable[] = {
// Enum Properties
{ "PreserveIdentifierCase", "", "Default", "0", 0 },
- { "PreserveIdentifierCase", "/Cp", "Preserves Identifier Case (/Cp)", "1",
+ { "PreserveIdentifierCase", "Cp", "Preserves Identifier Case (/Cp)", "1",
0 },
- { "PreserveIdentifierCase", "/Cu",
+ { "PreserveIdentifierCase", "Cu",
"Maps all identifiers to upper case. (/Cu)", "2", 0 },
- { "PreserveIdentifierCase", "/Cx",
+ { "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 },
+ { "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 },
+ { "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",
+ { "CallingConvention", "Gd", "Use C-style Calling Convention (/Gd)", "1",
0 },
- { "CallingConvention", "/Gc", "Use Pascal Calling Convention (/Gc)", "3",
+ { "CallingConvention", "Gz", "Use stdcall Calling Convention (/Gz)", "2",
0 },
+ { "CallingConvention", "Gc", "Use Pascal Calling Convention (/Gc)", "3", 0 },
- { "ErrorReporting", "/errorReport:prompt",
+ { "ErrorReporting", "errorReport:prompt",
"Prompt to send report immediately (/errorReport:prompt)", "0", 0 },
- { "ErrorReporting", "/errorReport:queue",
+ { "ErrorReporting", "errorReport:queue",
"Prompt to send report at the next logon (/errorReport:queue)", "1", 0 },
- { "ErrorReporting", "/errorReport:send",
+ { "ErrorReporting", "errorReport:send",
"Automatically send report (/errorReport:send)", "2", 0 },
- { "ErrorReporting", "/errorReport:none",
+ { "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 },
+ { "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", "Preprocessor Definitions", "",
+ { "PreprocessorDefinitions", "D", "Preprocessor Definitions", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
- { "IncludePaths", "/I", "Include Paths", "",
+ { "IncludePaths", "I", "Include Paths", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
- { "BrowseFile", "/FR", "Generate Browse Information File", "",
+ { "BrowseFile", "FR", "Generate Browse Information File", "",
cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable },
// Skip [AdditionalDependencies] - no command line Switch.
// String Properties
// Skip [Inputs] - no command line Switch.
- { "ObjectFileName", "/Fo", "Object File Name", "",
+ { "ObjectFileName", "Fo", "Object File Name", "",
cmVS7FlagTable::UserValue },
- { "AssembledCodeListingFile", "/Fl", "Assembled Code Listing File", "",
+ { "AssembledCodeListingFile", "Fl", "Assembled Code Listing File", "",
cmVS7FlagTable::UserValue },
// Skip [CommandLineTemplate] - no command line Switch.
// Skip [ExecutionDescription] - no command line Switch.
diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index 5a09718..c81ba7a 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -1943,9 +1943,24 @@ bool cmVisualStudio10TargetGenerator::OutputSourceSpecificFlags(
hasFlags = true;
cmGlobalVisualStudio10Generator* gg =
static_cast<cmGlobalVisualStudio10Generator*>(this->GlobalGenerator);
+ cmIDEFlagTable const* flagtable = CM_NULLPTR;
+ const std::string& srclang = source->GetLanguage();
+ if (srclang == "C" || srclang == "CXX") {
+ flagtable = gg->GetClFlagTable();
+ } else if (srclang == "ASM_MASM" &&
+ this->GlobalGenerator->IsMasmEnabled()) {
+ flagtable = gg->GetMasmFlagTable();
+ } else if (lang == "ASM_NASM" &&
+ this->GlobalGenerator->IsNasmEnabled()) {
+ flagtable = gg->GetNasmFlagTable();
+ } else if (srclang == "RC") {
+ flagtable = gg->GetRcFlagTable();
+ } else if (srclang == "CSharp") {
+ flagtable = gg->GetCSharpFlagTable();
+ }
cmVisualStudioGeneratorOptions clOptions(
this->LocalGenerator, cmVisualStudioGeneratorOptions::Compiler,
- gg->GetClFlagTable(), 0, this);
+ flagtable, 0, this);
if (compileAs) {
clOptions.AddFlag("CompileAs", compileAs);
}