Commit 9b06c226 authored by Michael Stürmer's avatar Michael Stürmer
Browse files

VS: Add flag tables for C#

Add these (currently unused) tables in preparation for `.csproj`
generation support.  Populate the tables for every version with a set of
initial values that work well for me with VS 12 and VS 14.  Later we may
need to generate them more thoroughly from MSBuild `.xml` files.
parent 7b6f6d9e
Pipeline #36776 passed with stage
......@@ -9,6 +9,7 @@
#include "cmMakefile.h"
#include "cmSourceFile.h"
#include "cmVS10CLFlagTable.h"
#include "cmVS10CSharpFlagTable.h"
#include "cmVS10LibFlagTable.h"
#include "cmVS10LinkFlagTable.h"
#include "cmVS10MASMFlagTable.h"
......@@ -99,6 +100,7 @@ cmGlobalVisualStudio10Generator::cmGlobalVisualStudio10Generator(
this->MSBuildCommandInitialized = false;
this->DefaultPlatformToolset = "v100";
this->DefaultClFlagTable = cmVS10CLFlagTable;
this->DefaultCSharpFlagTable = cmVS10CSharpFlagTable;
this->DefaultLibFlagTable = cmVS10LibFlagTable;
this->DefaultLinkFlagTable = cmVS10LinkFlagTable;
this->DefaultMasmFlagTable = cmVS10MASMFlagTable;
......@@ -626,6 +628,15 @@ cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetClFlagTable() const
return (table != CM_NULLPTR) ? table : this->DefaultClFlagTable;
}
cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetCSharpFlagTable()
const
{
cmIDEFlagTable const* table = this->ToolsetOptions.GetCSharpFlagTable(
this->GetPlatformName(), this->GetPlatformToolsetString());
return (table != CM_NULLPTR) ? table : this->DefaultCSharpFlagTable;
}
cmIDEFlagTable const* cmGlobalVisualStudio10Generator::GetRcFlagTable() const
{
cmIDEFlagTable const* table = this->ToolsetOptions.GetRcFlagTable(
......
......@@ -91,6 +91,7 @@ public:
static std::string GetInstalledNsightTegraVersion();
cmIDEFlagTable const* GetClFlagTable() const;
cmIDEFlagTable const* GetCSharpFlagTable() const;
cmIDEFlagTable const* GetRcFlagTable() const;
cmIDEFlagTable const* GetLibFlagTable() const;
cmIDEFlagTable const* GetLinkFlagTable() const;
......@@ -120,6 +121,7 @@ protected:
std::string SystemVersion;
std::string NsightTegraVersion;
cmIDEFlagTable const* DefaultClFlagTable;
cmIDEFlagTable const* DefaultCSharpFlagTable;
cmIDEFlagTable const* DefaultLibFlagTable;
cmIDEFlagTable const* DefaultLinkFlagTable;
cmIDEFlagTable const* DefaultMasmFlagTable;
......
......@@ -7,6 +7,7 @@
#include "cmLocalVisualStudio10Generator.h"
#include "cmMakefile.h"
#include "cmVS11CLFlagTable.h"
#include "cmVS11CSharpFlagTable.h"
#include "cmVS11LibFlagTable.h"
#include "cmVS11LinkFlagTable.h"
#include "cmVS11MASMFlagTable.h"
......@@ -108,6 +109,7 @@ cmGlobalVisualStudio11Generator::cmGlobalVisualStudio11Generator(
vc11Express, cmSystemTools::KeyWOW64_32);
this->DefaultPlatformToolset = "v110";
this->DefaultClFlagTable = cmVS11CLFlagTable;
this->DefaultCSharpFlagTable = cmVS11CSharpFlagTable;
this->DefaultLibFlagTable = cmVS11LibFlagTable;
this->DefaultLinkFlagTable = cmVS11LinkFlagTable;
this->DefaultMasmFlagTable = cmVS11MASMFlagTable;
......
......@@ -7,6 +7,7 @@
#include "cmLocalVisualStudio10Generator.h"
#include "cmMakefile.h"
#include "cmVS12CLFlagTable.h"
#include "cmVS12CSharpFlagTable.h"
#include "cmVS12LibFlagTable.h"
#include "cmVS12LinkFlagTable.h"
#include "cmVS12MASMFlagTable.h"
......@@ -90,6 +91,7 @@ cmGlobalVisualStudio12Generator::cmGlobalVisualStudio12Generator(
vc12Express, cmSystemTools::KeyWOW64_32);
this->DefaultPlatformToolset = "v120";
this->DefaultClFlagTable = cmVS12CLFlagTable;
this->DefaultCSharpFlagTable = cmVS12CSharpFlagTable;
this->DefaultLibFlagTable = cmVS12LibFlagTable;
this->DefaultLinkFlagTable = cmVS12LinkFlagTable;
this->DefaultMasmFlagTable = cmVS12MASMFlagTable;
......
......@@ -7,6 +7,7 @@
#include "cmLocalVisualStudio10Generator.h"
#include "cmMakefile.h"
#include "cmVS140CLFlagTable.h"
#include "cmVS140CSharpFlagTable.h"
#include "cmVS14LibFlagTable.h"
#include "cmVS14LinkFlagTable.h"
#include "cmVS14MASMFlagTable.h"
......@@ -90,6 +91,7 @@ cmGlobalVisualStudio14Generator::cmGlobalVisualStudio14Generator(
vc14Express, cmSystemTools::KeyWOW64_32);
this->DefaultPlatformToolset = "v140";
this->DefaultClFlagTable = cmVS140CLFlagTable;
this->DefaultCSharpFlagTable = cmVS140CSharpFlagTable;
this->DefaultLibFlagTable = cmVS14LibFlagTable;
this->DefaultLinkFlagTable = cmVS14LinkFlagTable;
this->DefaultMasmFlagTable = cmVS14MASMFlagTable;
......
......@@ -7,6 +7,7 @@
#include "cmLocalVisualStudio10Generator.h"
#include "cmMakefile.h"
#include "cmVS141CLFlagTable.h"
#include "cmVS141CSharpFlagTable.h"
static const char vs15generatorName[] = "Visual Studio 15 2017";
......@@ -86,6 +87,7 @@ cmGlobalVisualStudio15Generator::cmGlobalVisualStudio15Generator(
vc15Express, cmSystemTools::KeyWOW64_32);
this->DefaultPlatformToolset = "v141";
this->DefaultClFlagTable = cmVS141CLFlagTable;
this->DefaultCSharpFlagTable = cmVS141CSharpFlagTable;
this->Version = VS15;
}
......
static cmVS7FlagTable cmVS10CSharpFlagTable[] = {
{ "ProjectName", "out:", "", "", cmIDEFlagTable::UserValueRequired },
{ "OutputType", "target:exe", "", "Exe", 0 },
{ "OutputType", "target:winexe", "", "Winexe", 0 },
{ "OutputType", "target:library", "", "Library", 0 },
{ "OutputType", "target:module", "", "Module", 0 },
{ "DocumentationFile", "doc", "", "", cmIDEFlagTable::UserValueRequired },
{ "Platform", "platform:x86", "", "x86", 0 },
{ "Platform", "platform:Itanium", "", "Itanium", 0 },
{ "Platform", "platform:x64", "", "x64", 0 },
{ "Platform", "platform:arm", "", "arm", 0 },
{ "Platform", "platform:anycpu32bitpreferred", "", "anycpu32bitpreferred",
0 },
{ "Platform", "platform:anycpu", "", "anycpu", 0 },
{ "References", "reference:", "mit alias", "", 0 },
{ "References", "reference:", "dateiliste", "", 0 },
{ "AddModules", "addmodule:", "", "", cmIDEFlagTable::SemicolonAppendable },
{ "", "link", "", "", 0 },
{ "Win32Resource", "win32res", "", "", cmIDEFlagTable::UserValueRequired },
{ "ApplicationIcon", "win32icon", "", "",
cmIDEFlagTable::UserValueRequired },
{ "Win32Manifest", "win32manifest:", "", "true", 0 },
{ "NoWin32Manifest", "nowin32manifest", "", "true", 0 },
{ "DefineDebug", "debug", "", "true", cmIDEFlagTable::Continue },
{ "DebugSymbols", "debug", "", "true", 0 },
{ "DebugSymbols", "debug-", "", "false", 0 },
{ "DebugSymbols", "debug+", "", "true", 0 },
{ "DebugType", "debug:none", "", "none", 0 },
{ "DebugType", "debug:full", "", "full", 0 },
{ "DebugType", "debug:pdbonly", "", "pdbonly", 0 },
{ "Optimize", "optimize", "", "true", 0 },
{ "Optimize", "optimize-", "", "false", 0 },
{ "Optimize", "optimize+", "", "true", 0 },
{ "TreatWarningsAsErrors", "warnaserror", "", "true", 0 },
{ "TreatWarningsAsErrors", "warnaserror-", "", "false", 0 },
{ "TreatWarningsAsErrors", "warnaserror+", "", "true", 0 },
{ "WarningsAsErrors", "warnaserror", "", "", 0 },
{ "WarningsAsErrors", "warnaserror-", "", "", 0 },
{ "WarningsAsErrors", "warnaserror+", "", "", 0 },
{ "WarningLevel", "warn:0", "", "0", 0 },
{ "WarningLevel", "warn:1", "", "1", 0 },
{ "WarningLevel", "warn:2", "", "2", 0 },
{ "WarningLevel", "warn:3", "", "3", 0 },
{ "WarningLevel", "warn:4", "", "4", 0 },
{ "DisabledWarnings", "nowarn", "", "", 0 },
{ "CheckForOverflowUnderflow", "checked", "", "true", 0 },
{ "CheckForOverflowUnderflow", "checked-", "", "false", 0 },
{ "CheckForOverflowUnderflow", "checked+", "", "true", 0 },
{ "AllowUnsafeBlocks", "unsafe", "", "true", 0 },
{ "AllowUnsafeBlocks", "unsafe-", "", "false", 0 },
{ "AllowUnsafeBlocks", "unsafe+", "", "true", 0 },
{ "DefineConstants", "define:", "", "",
cmIDEFlagTable::SemicolonAppendable | cmIDEFlagTable::UserValue },
{ "LangVersion", "langversion:ISO-1", "", "ISO-1", 0 },
{ "LangVersion", "langversion:ISO-2", "", "ISO-2", 0 },
{ "LangVersion", "langversion:3", "", "3", 0 },
{ "LangVersion", "langversion:4", "", "4", 0 },
{ "LangVersion", "langversion:5", "", "5", 0 },
{ "LangVersion", "langversion:6", "", "6", 0 },
{ "LangVersion", "langversion:default", "", "default", 0 },
{ "DelaySign", "delaysign", "", "true", 0 },
{ "DelaySign", "delaysign-", "", "false", 0 },
{ "DelaySign", "delaysign+", "", "true", 0 },
{ "AssemblyOriginatorKeyFile", "keyfile", "", "", 0 },
{ "KeyContainerName", "keycontainer", "", "", 0 },
{ "NoLogo", "nologo", "", "", 0 },
{ "NoConfig", "noconfig", "", "true", 0 },
{ "BaseAddress", "baseaddress:", "", "", 0 },
{ "CodePage", "codepage", "", "", 0 },
{ "Utf8Output", "utf8output", "", "", 0 },
{ "MainEntryPoint", "main:", "", "", 0 },
{ "GenerateFullPaths", "fullpaths", "", "true", 0 },
{ "FileAlignment", "filealign", "", "", 0 },
{ "PdbFile", "pdb:", "", "", 0 },
{ "NoStandardLib", "nostdlib", "", "true", 0 },
{ "NoStandardLib", "nostdlib-", "", "false", 0 },
{ "NoStandardLib", "nostdlib+", "", "true", 0 },
{ "SubsystemVersion", "subsystemversion", "", "", 0 },
{ "AdditionalLibPaths", "lib:", "", "", 0 },
{ "ErrorReport", "errorreport:none", "Do Not Send Report", "none", 0 },
{ "ErrorReport", "errorreport:prompt", "Prompt Immediately", "prompt", 0 },
{ "ErrorReport", "errorreport:queue", "Queue For Next Login", "queue", 0 },
{ "ErrorReport", "errorreport:send", "Send Automatically", "send", 0 },
{ 0, 0, 0, 0, 0 },
};
static cmVS7FlagTable cmVS11CSharpFlagTable[] = {
{ "ProjectName", "out:", "", "", cmIDEFlagTable::UserValueRequired },
{ "OutputType", "target:exe", "", "Exe", 0 },
{ "OutputType", "target:winexe", "", "Winexe", 0 },
{ "OutputType", "target:library", "", "Library", 0 },
{ "OutputType", "target:module", "", "Module", 0 },
{ "DocumentationFile", "doc", "", "", cmIDEFlagTable::UserValueRequired },
{ "Platform", "platform:x86", "", "x86", 0 },
{ "Platform", "platform:Itanium", "", "Itanium", 0 },
{ "Platform", "platform:x64", "", "x64", 0 },
{ "Platform", "platform:arm", "", "arm", 0 },
{ "Platform", "platform:anycpu32bitpreferred", "", "anycpu32bitpreferred",
0 },
{ "Platform", "platform:anycpu", "", "anycpu", 0 },
{ "References", "reference:", "mit alias", "", 0 },
{ "References", "reference:", "dateiliste", "", 0 },
{ "AddModules", "addmodule:", "", "", cmIDEFlagTable::SemicolonAppendable },
{ "", "link", "", "", 0 },
{ "Win32Resource", "win32res", "", "", cmIDEFlagTable::UserValueRequired },
{ "ApplicationIcon", "win32icon", "", "",
cmIDEFlagTable::UserValueRequired },
{ "Win32Manifest", "win32manifest:", "", "true", 0 },
{ "NoWin32Manifest", "nowin32manifest", "", "true", 0 },
{ "DefineDebug", "debug", "", "true", cmIDEFlagTable::Continue },
{ "DebugSymbols", "debug", "", "true", 0 },
{ "DebugSymbols", "debug-", "", "false", 0 },
{ "DebugSymbols", "debug+", "", "true", 0 },
{ "DebugType", "debug:none", "", "none", 0 },
{ "DebugType", "debug:full", "", "full", 0 },
{ "DebugType", "debug:pdbonly", "", "pdbonly", 0 },
{ "Optimize", "optimize", "", "true", 0 },
{ "Optimize", "optimize-", "", "false", 0 },
{ "Optimize", "optimize+", "", "true", 0 },
{ "TreatWarningsAsErrors", "warnaserror", "", "true", 0 },
{ "TreatWarningsAsErrors", "warnaserror-", "", "false", 0 },
{ "TreatWarningsAsErrors", "warnaserror+", "", "true", 0 },
{ "WarningsAsErrors", "warnaserror", "", "", 0 },
{ "WarningsAsErrors", "warnaserror-", "", "", 0 },
{ "WarningsAsErrors", "warnaserror+", "", "", 0 },
{ "WarningLevel", "warn:0", "", "0", 0 },
{ "WarningLevel", "warn:1", "", "1", 0 },
{ "WarningLevel", "warn:2", "", "2", 0 },
{ "WarningLevel", "warn:3", "", "3", 0 },
{ "WarningLevel", "warn:4", "", "4", 0 },
{ "DisabledWarnings", "nowarn", "", "", 0 },
{ "CheckForOverflowUnderflow", "checked", "", "true", 0 },
{ "CheckForOverflowUnderflow", "checked-", "", "false", 0 },
{ "CheckForOverflowUnderflow", "checked+", "", "true", 0 },
{ "AllowUnsafeBlocks", "unsafe", "", "true", 0 },
{ "AllowUnsafeBlocks", "unsafe-", "", "false", 0 },
{ "AllowUnsafeBlocks", "unsafe+", "", "true", 0 },
{ "DefineConstants", "define:", "", "",
cmIDEFlagTable::SemicolonAppendable | cmIDEFlagTable::UserValue },
{ "LangVersion", "langversion:ISO-1", "", "ISO-1", 0 },
{ "LangVersion", "langversion:ISO-2", "", "ISO-2", 0 },
{ "LangVersion", "langversion:3", "", "3", 0 },
{ "LangVersion", "langversion:4", "", "4", 0 },
{ "LangVersion", "langversion:5", "", "5", 0 },
{ "LangVersion", "langversion:6", "", "6", 0 },
{ "LangVersion", "langversion:default", "", "default", 0 },
{ "DelaySign", "delaysign", "", "true", 0 },
{ "DelaySign", "delaysign-", "", "false", 0 },
{ "DelaySign", "delaysign+", "", "true", 0 },
{ "AssemblyOriginatorKeyFile", "keyfile", "", "", 0 },
{ "KeyContainerName", "keycontainer", "", "", 0 },
{ "NoLogo", "nologo", "", "", 0 },
{ "NoConfig", "noconfig", "", "true", 0 },
{ "BaseAddress", "baseaddress:", "", "", 0 },
{ "CodePage", "codepage", "", "", 0 },
{ "Utf8Output", "utf8output", "", "", 0 },
{ "MainEntryPoint", "main:", "", "", 0 },
{ "GenerateFullPaths", "fullpaths", "", "true", 0 },
{ "FileAlignment", "filealign", "", "", 0 },
{ "PdbFile", "pdb:", "", "", 0 },
{ "NoStandardLib", "nostdlib", "", "true", 0 },
{ "NoStandardLib", "nostdlib-", "", "false", 0 },
{ "NoStandardLib", "nostdlib+", "", "true", 0 },
{ "SubsystemVersion", "subsystemversion", "", "", 0 },
{ "AdditionalLibPaths", "lib:", "", "", 0 },
{ "ErrorReport", "errorreport:none", "Do Not Send Report", "none", 0 },
{ "ErrorReport", "errorreport:prompt", "Prompt Immediately", "prompt", 0 },
{ "ErrorReport", "errorreport:queue", "Queue For Next Login", "queue", 0 },
{ "ErrorReport", "errorreport:send", "Send Automatically", "send", 0 },
{ 0, 0, 0, 0, 0 },
};
static cmVS7FlagTable cmVS12CSharpFlagTable[] = {
{ "ProjectName", "out:", "", "", cmIDEFlagTable::UserValueRequired },
{ "OutputType", "target:exe", "", "Exe", 0 },
{ "OutputType", "target:winexe", "", "Winexe", 0 },
{ "OutputType", "target:library", "", "Library", 0 },
{ "OutputType", "target:module", "", "Module", 0 },
{ "DocumentationFile", "doc", "", "", cmIDEFlagTable::UserValueRequired },
{ "Platform", "platform:x86", "", "x86", 0 },
{ "Platform", "platform:Itanium", "", "Itanium", 0 },
{ "Platform", "platform:x64", "", "x64", 0 },
{ "Platform", "platform:arm", "", "arm", 0 },
{ "Platform", "platform:anycpu32bitpreferred", "", "anycpu32bitpreferred",
0 },
{ "Platform", "platform:anycpu", "", "anycpu", 0 },
{ "References", "reference:", "mit alias", "", 0 },
{ "References", "reference:", "dateiliste", "", 0 },
{ "AddModules", "addmodule:", "", "", cmIDEFlagTable::SemicolonAppendable },
{ "", "link", "", "", 0 },
{ "Win32Resource", "win32res", "", "", cmIDEFlagTable::UserValueRequired },
{ "ApplicationIcon", "win32icon", "", "",
cmIDEFlagTable::UserValueRequired },
{ "Win32Manifest", "win32manifest:", "", "true", 0 },
{ "NoWin32Manifest", "nowin32manifest", "", "true", 0 },
{ "DefineDebug", "debug", "", "true", cmIDEFlagTable::Continue },
{ "DebugSymbols", "debug", "", "true", 0 },
{ "DebugSymbols", "debug-", "", "false", 0 },
{ "DebugSymbols", "debug+", "", "true", 0 },
{ "DebugType", "debug:none", "", "none", 0 },
{ "DebugType", "debug:full", "", "full", 0 },
{ "DebugType", "debug:pdbonly", "", "pdbonly", 0 },
{ "Optimize", "optimize", "", "true", 0 },
{ "Optimize", "optimize-", "", "false", 0 },
{ "Optimize", "optimize+", "", "true", 0 },
{ "TreatWarningsAsErrors", "warnaserror", "", "true", 0 },
{ "TreatWarningsAsErrors", "warnaserror-", "", "false", 0 },
{ "TreatWarningsAsErrors", "warnaserror+", "", "true", 0 },
{ "WarningsAsErrors", "warnaserror", "", "", 0 },
{ "WarningsAsErrors", "warnaserror-", "", "", 0 },
{ "WarningsAsErrors", "warnaserror+", "", "", 0 },
{ "WarningLevel", "warn:0", "", "0", 0 },
{ "WarningLevel", "warn:1", "", "1", 0 },
{ "WarningLevel", "warn:2", "", "2", 0 },
{ "WarningLevel", "warn:3", "", "3", 0 },
{ "WarningLevel", "warn:4", "", "4", 0 },
{ "DisabledWarnings", "nowarn", "", "", 0 },
{ "CheckForOverflowUnderflow", "checked", "", "true", 0 },
{ "CheckForOverflowUnderflow", "checked-", "", "false", 0 },
{ "CheckForOverflowUnderflow", "checked+", "", "true", 0 },
{ "AllowUnsafeBlocks", "unsafe", "", "true", 0 },
{ "AllowUnsafeBlocks", "unsafe-", "", "false", 0 },
{ "AllowUnsafeBlocks", "unsafe+", "", "true", 0 },
{ "DefineConstants", "define:", "", "",
cmIDEFlagTable::SemicolonAppendable | cmIDEFlagTable::UserValue },
{ "LangVersion", "langversion:ISO-1", "", "ISO-1", 0 },
{ "LangVersion", "langversion:ISO-2", "", "ISO-2", 0 },
{ "LangVersion", "langversion:3", "", "3", 0 },
{ "LangVersion", "langversion:4", "", "4", 0 },
{ "LangVersion", "langversion:5", "", "5", 0 },
{ "LangVersion", "langversion:6", "", "6", 0 },
{ "LangVersion", "langversion:default", "", "default", 0 },
{ "DelaySign", "delaysign", "", "true", 0 },
{ "DelaySign", "delaysign-", "", "false", 0 },
{ "DelaySign", "delaysign+", "", "true", 0 },
{ "AssemblyOriginatorKeyFile", "keyfile", "", "", 0 },
{ "KeyContainerName", "keycontainer", "", "", 0 },
{ "NoLogo", "nologo", "", "", 0 },
{ "NoConfig", "noconfig", "", "true", 0 },
{ "BaseAddress", "baseaddress:", "", "", 0 },
{ "CodePage", "codepage", "", "", 0 },
{ "Utf8Output", "utf8output", "", "", 0 },
{ "MainEntryPoint", "main:", "", "", 0 },
{ "GenerateFullPaths", "fullpaths", "", "true", 0 },
{ "FileAlignment", "filealign", "", "", 0 },
{ "PdbFile", "pdb:", "", "", 0 },
{ "NoStandardLib", "nostdlib", "", "true", 0 },
{ "NoStandardLib", "nostdlib-", "", "false", 0 },
{ "NoStandardLib", "nostdlib+", "", "true", 0 },
{ "SubsystemVersion", "subsystemversion", "", "", 0 },
{ "AdditionalLibPaths", "lib:", "", "", 0 },
{ "ErrorReport", "errorreport:none", "Do Not Send Report", "none", 0 },
{ "ErrorReport", "errorreport:prompt", "Prompt Immediately", "prompt", 0 },
{ "ErrorReport", "errorreport:queue", "Queue For Next Login", "queue", 0 },
{ "ErrorReport", "errorreport:send", "Send Automatically", "send", 0 },
{ 0, 0, 0, 0, 0 },
};
static cmVS7FlagTable cmVS140CSharpFlagTable[] = {
{ "ProjectName", "out:", "", "", cmIDEFlagTable::UserValueRequired },
{ "OutputType", "target:exe", "", "Exe", 0 },
{ "OutputType", "target:winexe", "", "Winexe", 0 },
{ "OutputType", "target:library", "", "Library", 0 },
{ "OutputType", "target:module", "", "Module", 0 },
{ "DocumentationFile", "doc", "", "", cmIDEFlagTable::UserValueRequired },
{ "Platform", "platform:x86", "", "x86", 0 },
{ "Platform", "platform:Itanium", "", "Itanium", 0 },
{ "Platform", "platform:x64", "", "x64", 0 },
{ "Platform", "platform:arm", "", "arm", 0 },
{ "Platform", "platform:anycpu32bitpreferred", "", "anycpu32bitpreferred",
0 },
{ "Platform", "platform:anycpu", "", "anycpu", 0 },
{ "References", "reference:", "mit alias", "", 0 },
{ "References", "reference:", "dateiliste", "", 0 },
{ "AddModules", "addmodule:", "", "", cmIDEFlagTable::SemicolonAppendable },
{ "", "link", "", "", 0 },
{ "Win32Resource", "win32res", "", "", cmIDEFlagTable::UserValueRequired },
{ "ApplicationIcon", "win32icon", "", "",
cmIDEFlagTable::UserValueRequired },
{ "Win32Manifest", "win32manifest:", "", "true", 0 },
{ "NoWin32Manifest", "nowin32manifest", "", "true", 0 },
{ "DefineDebug", "debug", "", "true", cmIDEFlagTable::Continue },
{ "DebugSymbols", "debug", "", "true", 0 },
{ "DebugSymbols", "debug-", "", "false", 0 },
{ "DebugSymbols", "debug+", "", "true", 0 },
{ "DebugType", "debug:none", "", "none", 0 },
{ "DebugType", "debug:full", "", "full", 0 },
{ "DebugType", "debug:pdbonly", "", "pdbonly", 0 },
{ "Optimize", "optimize", "", "true", 0 },
{ "Optimize", "optimize-", "", "false", 0 },
{ "Optimize", "optimize+", "", "true", 0 },
{ "TreatWarningsAsErrors", "warnaserror", "", "true", 0 },
{ "TreatWarningsAsErrors", "warnaserror-", "", "false", 0 },
{ "TreatWarningsAsErrors", "warnaserror+", "", "true", 0 },
{ "WarningsAsErrors", "warnaserror", "", "", 0 },
{ "WarningsAsErrors", "warnaserror-", "", "", 0 },
{ "WarningsAsErrors", "warnaserror+", "", "", 0 },
{ "WarningLevel", "warn:0", "", "0", 0 },
{ "WarningLevel", "warn:1", "", "1", 0 },
{ "WarningLevel", "warn:2", "", "2", 0 },
{ "WarningLevel", "warn:3", "", "3", 0 },
{ "WarningLevel", "warn:4", "", "4", 0 },
{ "DisabledWarnings", "nowarn", "", "", 0 },
{ "CheckForOverflowUnderflow", "checked", "", "true", 0 },
{ "CheckForOverflowUnderflow", "checked-", "", "false", 0 },
{ "CheckForOverflowUnderflow", "checked+", "", "true", 0 },
{ "AllowUnsafeBlocks", "unsafe", "", "true", 0 },
{ "AllowUnsafeBlocks", "unsafe-", "", "false", 0 },
{ "AllowUnsafeBlocks", "unsafe+", "", "true", 0 },
{ "DefineConstants", "define:", "", "",
cmIDEFlagTable::SemicolonAppendable | cmIDEFlagTable::UserValue },
{ "LangVersion", "langversion:ISO-1", "", "ISO-1", 0 },
{ "LangVersion", "langversion:ISO-2", "", "ISO-2", 0 },
{ "LangVersion", "langversion:3", "", "3", 0 },
{ "LangVersion", "langversion:4", "", "4", 0 },
{ "LangVersion", "langversion:5", "", "5", 0 },
{ "LangVersion", "langversion:6", "", "6", 0 },
{ "LangVersion", "langversion:default", "", "default", 0 },
{ "DelaySign", "delaysign", "", "true", 0 },
{ "DelaySign", "delaysign-", "", "false", 0 },
{ "DelaySign", "delaysign+", "", "true", 0 },
{ "AssemblyOriginatorKeyFile", "keyfile", "", "", 0 },
{ "KeyContainerName", "keycontainer", "", "", 0 },
{ "NoLogo", "nologo", "", "", 0 },
{ "NoConfig", "noconfig", "", "true", 0 },
{ "BaseAddress", "baseaddress:", "", "", 0 },
{ "CodePage", "codepage", "", "", 0 },
{ "Utf8Output", "utf8output", "", "", 0 },
{ "MainEntryPoint", "main:", "", "", 0 },
{ "GenerateFullPaths", "fullpaths", "", "true", 0 },
{ "FileAlignment", "filealign", "", "", 0 },
{ "PdbFile", "pdb:", "", "", 0 },
{ "NoStandardLib", "nostdlib", "", "true", 0 },
{ "NoStandardLib", "nostdlib-", "", "false", 0 },
{ "NoStandardLib", "nostdlib+", "", "true", 0 },
{ "SubsystemVersion", "subsystemversion", "", "", 0 },