Merge topic 'vs11-flag-table'
9b2dda5 VS11: Generate flag tables from MSBuild V110 tool files 4cb99b1 cmparseMSBuildXML: Include DisplayName in the output
This commit is contained in:
commit
4ac85d0776
291
Source/cmVS11CLFlagTable.h
Normal file
291
Source/cmVS11CLFlagTable.h
Normal file
@ -0,0 +1,291 @@
|
|||||||
|
static cmVS7FlagTable cmVS11CLFlagTable[] =
|
||||||
|
{
|
||||||
|
|
||||||
|
//Enum Properties
|
||||||
|
{"DebugInformationFormat", "",
|
||||||
|
"None", "None", 0},
|
||||||
|
{"DebugInformationFormat", "Z7",
|
||||||
|
"C7 compatible", "OldStyle", 0},
|
||||||
|
{"DebugInformationFormat", "Zi",
|
||||||
|
"Program Database", "ProgramDatabase", 0},
|
||||||
|
{"DebugInformationFormat", "ZI",
|
||||||
|
"Program Database for Edit And Continue", "EditAndContinue", 0},
|
||||||
|
|
||||||
|
{"WarningLevel", "W0",
|
||||||
|
"Turn Off All Warnings", "TurnOffAllWarnings", 0},
|
||||||
|
{"WarningLevel", "W1",
|
||||||
|
"Level1", "Level1", 0},
|
||||||
|
{"WarningLevel", "W2",
|
||||||
|
"Level2", "Level2", 0},
|
||||||
|
{"WarningLevel", "W3",
|
||||||
|
"Level3", "Level3", 0},
|
||||||
|
{"WarningLevel", "W4",
|
||||||
|
"Level4", "Level4", 0},
|
||||||
|
{"WarningLevel", "Wall",
|
||||||
|
"EnableAllWarnings", "EnableAllWarnings", 0},
|
||||||
|
|
||||||
|
{"Optimization", "Od",
|
||||||
|
"Disabled", "Disabled", 0},
|
||||||
|
{"Optimization", "O1",
|
||||||
|
"Minimize Size", "MinSpace", 0},
|
||||||
|
{"Optimization", "O2",
|
||||||
|
"Maximize Speed", "MaxSpeed", 0},
|
||||||
|
{"Optimization", "Ox",
|
||||||
|
"Full Optimization", "Full", 0},
|
||||||
|
|
||||||
|
{"InlineFunctionExpansion", "",
|
||||||
|
"Default", "Default", 0},
|
||||||
|
{"InlineFunctionExpansion", "Ob0",
|
||||||
|
"Disabled", "Disabled", 0},
|
||||||
|
{"InlineFunctionExpansion", "Ob1",
|
||||||
|
"Only __inline", "OnlyExplicitInline", 0},
|
||||||
|
{"InlineFunctionExpansion", "Ob2",
|
||||||
|
"Any Suitable", "AnySuitable", 0},
|
||||||
|
|
||||||
|
{"FavorSizeOrSpeed", "Os",
|
||||||
|
"Favor small code", "Size", 0},
|
||||||
|
{"FavorSizeOrSpeed", "Ot",
|
||||||
|
"Favor fast code", "Speed", 0},
|
||||||
|
{"FavorSizeOrSpeed", "",
|
||||||
|
"Neither", "Neither", 0},
|
||||||
|
|
||||||
|
{"ExceptionHandling", "EHa",
|
||||||
|
"Yes with SEH Exceptions", "Async", 0},
|
||||||
|
{"ExceptionHandling", "EHsc",
|
||||||
|
"Yes", "Sync", 0},
|
||||||
|
{"ExceptionHandling", "EHs",
|
||||||
|
"Yes with Extern C functions", "SyncCThrow", 0},
|
||||||
|
{"ExceptionHandling", "",
|
||||||
|
"No", "false", 0},
|
||||||
|
|
||||||
|
{"BasicRuntimeChecks", "RTCs",
|
||||||
|
"Stack Frames", "StackFrameRuntimeCheck", 0},
|
||||||
|
{"BasicRuntimeChecks", "RTCu",
|
||||||
|
"Uninitialized variables", "UninitializedLocalUsageCheck", 0},
|
||||||
|
{"BasicRuntimeChecks", "RTC1",
|
||||||
|
"Both (/RTC1, equiv. to /RTCsu)", "EnableFastChecks", 0},
|
||||||
|
{"BasicRuntimeChecks", "",
|
||||||
|
"Default", "Default", 0},
|
||||||
|
|
||||||
|
{"RuntimeLibrary", "MT",
|
||||||
|
"Multi-threaded", "MultiThreaded", 0},
|
||||||
|
{"RuntimeLibrary", "MTd",
|
||||||
|
"Multi-threaded Debug", "MultiThreadedDebug", 0},
|
||||||
|
{"RuntimeLibrary", "MD",
|
||||||
|
"Multi-threaded DLL", "MultiThreadedDLL", 0},
|
||||||
|
{"RuntimeLibrary", "MDd",
|
||||||
|
"Multi-threaded Debug DLL", "MultiThreadedDebugDLL", 0},
|
||||||
|
|
||||||
|
{"StructMemberAlignment", "Zp1",
|
||||||
|
"1 Byte", "1Byte", 0},
|
||||||
|
{"StructMemberAlignment", "Zp2",
|
||||||
|
"2 Bytes", "2Bytes", 0},
|
||||||
|
{"StructMemberAlignment", "Zp4",
|
||||||
|
"4 Byte", "4Bytes", 0},
|
||||||
|
{"StructMemberAlignment", "Zp8",
|
||||||
|
"8 Bytes", "8Bytes", 0},
|
||||||
|
{"StructMemberAlignment", "Zp16",
|
||||||
|
"16 Bytes", "16Bytes", 0},
|
||||||
|
{"StructMemberAlignment", "",
|
||||||
|
"Default", "Default", 0},
|
||||||
|
|
||||||
|
{"EnableEnhancedInstructionSet", "arch:SSE",
|
||||||
|
"Streaming SIMD Extensions", "StreamingSIMDExtensions", 0},
|
||||||
|
{"EnableEnhancedInstructionSet", "arch:SSE2",
|
||||||
|
"Streaming SIMD Extensions 2", "StreamingSIMDExtensions2", 0},
|
||||||
|
{"EnableEnhancedInstructionSet", "arch:AVX",
|
||||||
|
"Advanced Vector Extensions", "AdvancedVectorExtensions", 0},
|
||||||
|
{"EnableEnhancedInstructionSet", "arch:IA32",
|
||||||
|
"No Enhanced Instructions", "NoExtensions", 0},
|
||||||
|
{"EnableEnhancedInstructionSet", "",
|
||||||
|
"Not Set", "NotSet", 0},
|
||||||
|
|
||||||
|
{"FloatingPointModel", "fp:precise",
|
||||||
|
"Precise", "Precise", 0},
|
||||||
|
{"FloatingPointModel", "fp:strict",
|
||||||
|
"Strict", "Strict", 0},
|
||||||
|
{"FloatingPointModel", "fp:fast",
|
||||||
|
"Fast", "Fast", 0},
|
||||||
|
|
||||||
|
{"PrecompiledHeader", "Yc",
|
||||||
|
"Create", "Create",
|
||||||
|
cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
|
||||||
|
{"PrecompiledHeader", "Yu",
|
||||||
|
"Use", "Use",
|
||||||
|
cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
|
||||||
|
{"PrecompiledHeader", "",
|
||||||
|
"Not Using Precompiled Headers", "NotUsing", 0},
|
||||||
|
|
||||||
|
{"AssemblerOutput", "",
|
||||||
|
"No Listing", "NoListing", 0},
|
||||||
|
{"AssemblerOutput", "FA",
|
||||||
|
"Assembly-Only Listing", "AssemblyCode", 0},
|
||||||
|
{"AssemblerOutput", "FAc",
|
||||||
|
"Assembly With Machine Code", "AssemblyAndMachineCode", 0},
|
||||||
|
{"AssemblerOutput", "FAs",
|
||||||
|
"Assembly With Source Code", "AssemblyAndSourceCode", 0},
|
||||||
|
{"AssemblerOutput", "FAcs",
|
||||||
|
"Assembly, Machine Code and Source", "All", 0},
|
||||||
|
|
||||||
|
{"CallingConvention", "Gd",
|
||||||
|
"__cdecl", "Cdecl", 0},
|
||||||
|
{"CallingConvention", "Gr",
|
||||||
|
"__fastcall", "FastCall", 0},
|
||||||
|
{"CallingConvention", "Gz",
|
||||||
|
"__stdcall", "StdCall", 0},
|
||||||
|
|
||||||
|
{"CompileAs", "",
|
||||||
|
"Default", "Default", 0},
|
||||||
|
{"CompileAs", "TC",
|
||||||
|
"Compile as C Code", "CompileAsC", 0},
|
||||||
|
{"CompileAs", "TP",
|
||||||
|
"Compile as C++ Code", "CompileAsCpp", 0},
|
||||||
|
|
||||||
|
{"ErrorReporting", "errorReport:none",
|
||||||
|
"Do Not Send Report", "None", 0},
|
||||||
|
{"ErrorReporting", "errorReport:prompt",
|
||||||
|
"Prompt Immediately", "Prompt", 0},
|
||||||
|
{"ErrorReporting", "errorReport:queue",
|
||||||
|
"Queue For Next Login", "Queue", 0},
|
||||||
|
{"ErrorReporting", "errorReport:send",
|
||||||
|
"Send Automatically", "Send", 0},
|
||||||
|
|
||||||
|
{"CompileAsManaged", "",
|
||||||
|
"No Common Language RunTime Support", "false", 0},
|
||||||
|
{"CompileAsManaged", "clr",
|
||||||
|
"Common Language RunTime Support", "true", 0},
|
||||||
|
{"CompileAsManaged", "clr:pure",
|
||||||
|
"Pure MSIL Common Language RunTime Support", "Pure", 0},
|
||||||
|
{"CompileAsManaged", "clr:safe",
|
||||||
|
"Safe MSIL Common Language RunTime Support", "Safe", 0},
|
||||||
|
{"CompileAsManaged", "clr:oldSyntax",
|
||||||
|
"Common Language RunTime Support, Old Syntax", "OldSyntax", 0},
|
||||||
|
|
||||||
|
|
||||||
|
//Bool Properties
|
||||||
|
{"CompileAsWinRT", "ZW", "", "true", 0},
|
||||||
|
{"WinRTNoStdLib", "ZW:nostdlib", "", "true", 0},
|
||||||
|
{"SuppressStartupBanner", "nologo-", "", "false", 0},
|
||||||
|
{"SuppressStartupBanner", "nologo", "", "true", 0},
|
||||||
|
{"TreatWarningAsError", "WX-", "", "false", 0},
|
||||||
|
{"TreatWarningAsError", "WX", "", "true", 0},
|
||||||
|
{"SDLCheck", "sdl-", "", "false", 0},
|
||||||
|
{"SDLCheck", "sdl", "", "true", 0},
|
||||||
|
{"IntrinsicFunctions", "Oi", "", "true", 0},
|
||||||
|
{"OmitFramePointers", "Oy-", "", "false", 0},
|
||||||
|
{"OmitFramePointers", "Oy", "", "true", 0},
|
||||||
|
{"EnableFiberSafeOptimizations", "GT", "", "true", 0},
|
||||||
|
{"WholeProgramOptimization", "GL", "", "true", 0},
|
||||||
|
{"UndefineAllPreprocessorDefinitions", "u", "", "true", 0},
|
||||||
|
{"IgnoreStandardIncludePath", "X", "", "true", 0},
|
||||||
|
{"PreprocessToFile", "P", "", "true", 0},
|
||||||
|
{"PreprocessSuppressLineNumbers", "EP", "", "true", 0},
|
||||||
|
{"PreprocessKeepComments", "C", "", "true", 0},
|
||||||
|
{"StringPooling", "GF-", "", "false", 0},
|
||||||
|
{"StringPooling", "GF", "", "true", 0},
|
||||||
|
{"MinimalRebuild", "Gm-", "", "false", 0},
|
||||||
|
{"MinimalRebuild", "Gm", "", "true", 0},
|
||||||
|
{"SmallerTypeCheck", "RTCc", "", "true", 0},
|
||||||
|
{"BufferSecurityCheck", "GS-", "", "false", 0},
|
||||||
|
{"BufferSecurityCheck", "GS", "", "true", 0},
|
||||||
|
{"FunctionLevelLinking", "Gy-", "", "false", 0},
|
||||||
|
{"FunctionLevelLinking", "Gy", "", "true", 0},
|
||||||
|
{"EnableParallelCodeGeneration", "Qpar-", "", "false", 0},
|
||||||
|
{"EnableParallelCodeGeneration", "Qpar", "", "true", 0},
|
||||||
|
{"FloatingPointExceptions", "fp:except-", "", "false", 0},
|
||||||
|
{"FloatingPointExceptions", "fp:except", "", "true", 0},
|
||||||
|
{"CreateHotpatchableImage", "hotpatch", "", "true", 0},
|
||||||
|
{"DisableLanguageExtensions", "Za", "", "true", 0},
|
||||||
|
{"TreatWChar_tAsBuiltInType", "Zc:wchar_t-", "", "false", 0},
|
||||||
|
{"TreatWChar_tAsBuiltInType", "Zc:wchar_t", "", "true", 0},
|
||||||
|
{"ForceConformanceInForLoopScope", "Zc:forScope-", "", "false", 0},
|
||||||
|
{"ForceConformanceInForLoopScope", "Zc:forScope", "", "true", 0},
|
||||||
|
{"RuntimeTypeInfo", "GR-", "", "false", 0},
|
||||||
|
{"RuntimeTypeInfo", "GR", "", "true", 0},
|
||||||
|
{"OpenMPSupport", "openmp-", "", "false", 0},
|
||||||
|
{"OpenMPSupport", "openmp", "", "true", 0},
|
||||||
|
{"ExpandAttributedSource", "Fx", "", "true", 0},
|
||||||
|
{"UseUnicodeForAssemblerListing", "FAu", "", "true", 0},
|
||||||
|
{"ShowIncludes", "showIncludes", "", "true", 0},
|
||||||
|
{"EnablePREfast", "analyze-", "", "false", 0},
|
||||||
|
{"EnablePREfast", "analyze", "", "true", 0},
|
||||||
|
{"UseFullPaths", "FC", "", "true", 0},
|
||||||
|
{"OmitDefaultLibName", "Zl", "", "true", 0},
|
||||||
|
|
||||||
|
//Bool Properties With Argument
|
||||||
|
{"MultiProcessorCompilation", "MP", "", "true",
|
||||||
|
cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
|
||||||
|
{"ProcessorNumber", "MP", "Multi-processor Compilation", "",
|
||||||
|
cmVS7FlagTable::UserValueRequired},
|
||||||
|
{"GenerateXMLDocumentationFiles", "doc", "", "true",
|
||||||
|
cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
|
||||||
|
{"XMLDocumentationFileName", "doc", "Generate XML Documentation Files", "",
|
||||||
|
cmVS7FlagTable::UserValueRequired},
|
||||||
|
{"BrowseInformation", "FR", "", "true",
|
||||||
|
cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
|
||||||
|
{"BrowseInformationFile", "FR", "Enable Browse Information", "",
|
||||||
|
cmVS7FlagTable::UserValueRequired},
|
||||||
|
|
||||||
|
//String List Properties
|
||||||
|
{"AdditionalIncludeDirectories", "I",
|
||||||
|
"Additional Include Directories",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"AdditionalUsingDirectories", "AI",
|
||||||
|
"Additional #using Directories",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"PreprocessorDefinitions", "D ",
|
||||||
|
"Preprocessor Definitions",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"UndefinePreprocessorDefinitions", "U",
|
||||||
|
"Undefine Preprocessor Definitions",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"DisableSpecificWarnings", "wd",
|
||||||
|
"Disable Specific Warnings",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"ForcedIncludeFiles", "FI",
|
||||||
|
"Forced Include File",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"ForcedUsingFiles", "FU",
|
||||||
|
"Forced #using File",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"PREfastAdditionalOptions", "analyze:",
|
||||||
|
"Additional Code Analysis Native options",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"PREfastAdditionalPlugins", "analyze:plugin",
|
||||||
|
"Additional Code Analysis Native plugins",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"TreatSpecificWarningsAsErrors", "we",
|
||||||
|
"Treat Specific Warnings As Errors",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
|
||||||
|
//String Properties
|
||||||
|
// Skip [TrackerLogDirectory] - no command line Switch.
|
||||||
|
{"PreprocessOutputPath", "Fi",
|
||||||
|
"Preprocess Output Path",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"PrecompiledHeaderFile", "Yc",
|
||||||
|
"Precompiled Header Name",
|
||||||
|
"", cmVS7FlagTable::UserValueRequired},
|
||||||
|
{"PrecompiledHeaderFile", "Yu",
|
||||||
|
"Precompiled Header Name",
|
||||||
|
"", cmVS7FlagTable::UserValueRequired},
|
||||||
|
{"PrecompiledHeaderOutputFile", "Fp",
|
||||||
|
"Precompiled Header Output File",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"AssemblerListingLocation", "Fa",
|
||||||
|
"ASM List Location",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"ObjectFileName", "Fo",
|
||||||
|
"Object File Name",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"ProgramDataBaseFileName", "Fd",
|
||||||
|
"Program Database File Name",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
// Skip [XMLDocumentationFileName] - no command line Switch.
|
||||||
|
// Skip [BrowseInformationFile] - no command line Switch.
|
||||||
|
{"PREfastLog", "analyze:log ",
|
||||||
|
"Code Analysis Log",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
// Skip [AdditionalOptions] - no command line Switch.
|
||||||
|
{0,0,0,0,0}
|
||||||
|
};
|
102
Source/cmVS11LibFlagTable.h
Normal file
102
Source/cmVS11LibFlagTable.h
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
static cmVS7FlagTable cmVS11LibFlagTable[] =
|
||||||
|
{
|
||||||
|
|
||||||
|
//Enum Properties
|
||||||
|
{"ErrorReporting", "ERRORREPORT:PROMPT",
|
||||||
|
"PromptImmediately", "PromptImmediately", 0},
|
||||||
|
{"ErrorReporting", "ERRORREPORT:QUEUE",
|
||||||
|
"Queue For Next Login", "QueueForNextLogin", 0},
|
||||||
|
{"ErrorReporting", "ERRORREPORT:SEND",
|
||||||
|
"Send Error Report", "SendErrorReport", 0},
|
||||||
|
{"ErrorReporting", "ERRORREPORT:NONE",
|
||||||
|
"No Error Report", "NoErrorReport", 0},
|
||||||
|
|
||||||
|
{"TargetMachine", "MACHINE:ARM",
|
||||||
|
"MachineARM", "MachineARM", 0},
|
||||||
|
{"TargetMachine", "MACHINE:EBC",
|
||||||
|
"MachineEBC", "MachineEBC", 0},
|
||||||
|
{"TargetMachine", "MACHINE:IA64",
|
||||||
|
"MachineIA64", "MachineIA64", 0},
|
||||||
|
{"TargetMachine", "MACHINE:MIPS",
|
||||||
|
"MachineMIPS", "MachineMIPS", 0},
|
||||||
|
{"TargetMachine", "MACHINE:MIPS16",
|
||||||
|
"MachineMIPS16", "MachineMIPS16", 0},
|
||||||
|
{"TargetMachine", "MACHINE:MIPSFPU",
|
||||||
|
"MachineMIPSFPU", "MachineMIPSFPU", 0},
|
||||||
|
{"TargetMachine", "MACHINE:MIPSFPU16",
|
||||||
|
"MachineMIPSFPU16", "MachineMIPSFPU16", 0},
|
||||||
|
{"TargetMachine", "MACHINE:SH4",
|
||||||
|
"MachineSH4", "MachineSH4", 0},
|
||||||
|
{"TargetMachine", "MACHINE:THUMB",
|
||||||
|
"MachineTHUMB", "MachineTHUMB", 0},
|
||||||
|
{"TargetMachine", "MACHINE:X64",
|
||||||
|
"MachineX64", "MachineX64", 0},
|
||||||
|
{"TargetMachine", "MACHINE:X86",
|
||||||
|
"MachineX86", "MachineX86", 0},
|
||||||
|
|
||||||
|
{"SubSystem", "SUBSYSTEM:CONSOLE",
|
||||||
|
"Console", "Console", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:WINDOWS",
|
||||||
|
"Windows", "Windows", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:NATIVE",
|
||||||
|
"Native", "Native", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:EFI_APPLICATION",
|
||||||
|
"EFI Application", "EFI Application", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER",
|
||||||
|
"EFI Boot Service Driver", "EFI Boot Service Driver", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:EFI_ROM",
|
||||||
|
"EFI ROM", "EFI ROM", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER",
|
||||||
|
"EFI Runtime", "EFI Runtime", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:WINDOWSCE",
|
||||||
|
"WindowsCE", "WindowsCE", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:POSIX",
|
||||||
|
"POSIX", "POSIX", 0},
|
||||||
|
|
||||||
|
|
||||||
|
//Bool Properties
|
||||||
|
{"SuppressStartupBanner", "NOLOGO", "", "true", 0},
|
||||||
|
{"IgnoreAllDefaultLibraries", "NODEFAULTLIB", "", "true", 0},
|
||||||
|
{"TreatLibWarningAsErrors", "WX:NO", "", "false", 0},
|
||||||
|
{"TreatLibWarningAsErrors", "WX", "", "true", 0},
|
||||||
|
{"Verbose", "VERBOSE", "", "true", 0},
|
||||||
|
{"LinkTimeCodeGeneration", "LTCG", "", "true", 0},
|
||||||
|
|
||||||
|
//Bool Properties With Argument
|
||||||
|
|
||||||
|
//String List Properties
|
||||||
|
// Skip [AdditionalDependencies] - no command line Switch.
|
||||||
|
{"AdditionalLibraryDirectories", "LIBPATH:",
|
||||||
|
"Additional Library Directories",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"IgnoreSpecificDefaultLibraries", "NODEFAULTLIB:",
|
||||||
|
"Ignore Specific Default Libraries",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"ExportNamedFunctions", "EXPORT:",
|
||||||
|
"Export Named Functions",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"RemoveObjects", "REMOVE:",
|
||||||
|
"Remove Objects",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
|
||||||
|
//String Properties
|
||||||
|
{"OutputFile", "OUT:",
|
||||||
|
"Output File",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"ModuleDefinitionFile", "DEF:",
|
||||||
|
"Module Definition File Name",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"ForceSymbolReferences", "INCLUDE:",
|
||||||
|
"Force Symbol References",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"DisplayLibrary", "LIST:",
|
||||||
|
"Display Library to standard output",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
// Skip [MinimumRequiredVersion] - no command line Switch.
|
||||||
|
{"Name", "NAME:",
|
||||||
|
"Name",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
// Skip [AdditionalOptions] - no command line Switch.
|
||||||
|
// Skip [TrackerLogDirectory] - no command line Switch.
|
||||||
|
{0,0,0,0,0}
|
||||||
|
};
|
343
Source/cmVS11LinkFlagTable.h
Normal file
343
Source/cmVS11LinkFlagTable.h
Normal file
@ -0,0 +1,343 @@
|
|||||||
|
static cmVS7FlagTable cmVS11LinkFlagTable[] =
|
||||||
|
{
|
||||||
|
|
||||||
|
//Enum Properties
|
||||||
|
{"ShowProgress", "",
|
||||||
|
"Not Set", "NotSet", 0},
|
||||||
|
{"ShowProgress", "VERBOSE",
|
||||||
|
"Display all progress messages", "LinkVerbose", 0},
|
||||||
|
{"ShowProgress", "VERBOSE:Lib",
|
||||||
|
"For Libraries Searched", "LinkVerboseLib", 0},
|
||||||
|
{"ShowProgress", "VERBOSE:ICF",
|
||||||
|
"About COMDAT folding during optimized linking", "LinkVerboseICF", 0},
|
||||||
|
{"ShowProgress", "VERBOSE:REF",
|
||||||
|
"About data removed during optimized linking", "LinkVerboseREF", 0},
|
||||||
|
{"ShowProgress", "VERBOSE:SAFESEH",
|
||||||
|
"About Modules incompatible with SEH", "LinkVerboseSAFESEH", 0},
|
||||||
|
{"ShowProgress", "VERBOSE:CLR",
|
||||||
|
"About linker activity related to managed code", "LinkVerboseCLR", 0},
|
||||||
|
|
||||||
|
{"ForceFileOutput", "FORCE",
|
||||||
|
"Enabled", "Enabled", 0},
|
||||||
|
{"ForceFileOutput", "FORCE:MULTIPLE",
|
||||||
|
"Multiply Defined Symbol Only", "MultiplyDefinedSymbolOnly", 0},
|
||||||
|
{"ForceFileOutput", "FORCE:UNRESOLVED",
|
||||||
|
"Undefined Symbol Only", "UndefinedSymbolOnly", 0},
|
||||||
|
|
||||||
|
{"CreateHotPatchableImage", "FUNCTIONPADMIN",
|
||||||
|
"Enabled", "Enabled", 0},
|
||||||
|
{"CreateHotPatchableImage", "FUNCTIONPADMIN:5",
|
||||||
|
"X86 Image Only", "X86Image", 0},
|
||||||
|
{"CreateHotPatchableImage", "FUNCTIONPADMIN:6",
|
||||||
|
"X64 Image Only", "X64Image", 0},
|
||||||
|
{"CreateHotPatchableImage", "FUNCTIONPADMIN:16",
|
||||||
|
"Itanium Image Only", "ItaniumImage", 0},
|
||||||
|
|
||||||
|
{"UACExecutionLevel", "level='asInvoker'",
|
||||||
|
"asInvoker", "AsInvoker", 0},
|
||||||
|
{"UACExecutionLevel", "level='highestAvailable'",
|
||||||
|
"highestAvailable", "HighestAvailable", 0},
|
||||||
|
{"UACExecutionLevel", "level='requireAdministrator'",
|
||||||
|
"requireAdministrator", "RequireAdministrator", 0},
|
||||||
|
|
||||||
|
{"SubSystem", "",
|
||||||
|
"Not Set", "NotSet", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:CONSOLE",
|
||||||
|
"Console", "Console", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:WINDOWS",
|
||||||
|
"Windows", "Windows", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:NATIVE",
|
||||||
|
"Native", "Native", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:EFI_APPLICATION",
|
||||||
|
"EFI Application", "EFI Application", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER",
|
||||||
|
"EFI Boot Service Driver", "EFI Boot Service Driver", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:EFI_ROM",
|
||||||
|
"EFI ROM", "EFI ROM", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:EFI_RUNTIME_DRIVER",
|
||||||
|
"EFI Runtime", "EFI Runtime", 0},
|
||||||
|
{"SubSystem", "SUBSYSTEM:POSIX",
|
||||||
|
"POSIX", "POSIX", 0},
|
||||||
|
|
||||||
|
{"Driver", "",
|
||||||
|
"Not Set", "NotSet", 0},
|
||||||
|
{"Driver", "Driver",
|
||||||
|
"Driver", "Driver", 0},
|
||||||
|
{"Driver", "DRIVER:UPONLY",
|
||||||
|
"UP Only", "UpOnly", 0},
|
||||||
|
{"Driver", "DRIVER:WDM",
|
||||||
|
"WDM", "WDM", 0},
|
||||||
|
|
||||||
|
{"LinkTimeCodeGeneration", "",
|
||||||
|
"Default", "Default", 0},
|
||||||
|
{"LinkTimeCodeGeneration", "LTCG",
|
||||||
|
"Use Link Time Code Generation", "UseLinkTimeCodeGeneration", 0},
|
||||||
|
{"LinkTimeCodeGeneration", "LTCG:PGInstrument",
|
||||||
|
"Profile Guided Optimization - Instrument", "PGInstrument", 0},
|
||||||
|
{"LinkTimeCodeGeneration", "LTCG:PGOptimize",
|
||||||
|
"Profile Guided Optimization - Optimization", "PGOptimization", 0},
|
||||||
|
{"LinkTimeCodeGeneration", "LTCG:PGUpdate",
|
||||||
|
"Profile Guided Optimization - Update", "PGUpdate", 0},
|
||||||
|
|
||||||
|
{"GenerateWindowsMetadata", "WINMD",
|
||||||
|
"Yes", "true", 0},
|
||||||
|
{"GenerateWindowsMetadata", "WINMD:NO",
|
||||||
|
"No", "false", 0},
|
||||||
|
|
||||||
|
{"WindowsMetadataSignHash", "WINMDSIGNHASH:SHA1",
|
||||||
|
"SHA1", "SHA1", 0},
|
||||||
|
{"WindowsMetadataSignHash", "WINMDSIGNHASH:SHA256",
|
||||||
|
"SHA256", "SHA256", 0},
|
||||||
|
{"WindowsMetadataSignHash", "WINMDSIGNHASH:SHA384",
|
||||||
|
"SHA384", "SHA384", 0},
|
||||||
|
{"WindowsMetadataSignHash", "WINMDSIGNHASH:SHA512",
|
||||||
|
"SHA512", "SHA512", 0},
|
||||||
|
|
||||||
|
{"TargetMachine", "",
|
||||||
|
"Not Set", "NotSet", 0},
|
||||||
|
{"TargetMachine", "MACHINE:ARM",
|
||||||
|
"MachineARM", "MachineARM", 0},
|
||||||
|
{"TargetMachine", "MACHINE:EBC",
|
||||||
|
"MachineEBC", "MachineEBC", 0},
|
||||||
|
{"TargetMachine", "MACHINE:IA64",
|
||||||
|
"MachineIA64", "MachineIA64", 0},
|
||||||
|
{"TargetMachine", "MACHINE:MIPS",
|
||||||
|
"MachineMIPS", "MachineMIPS", 0},
|
||||||
|
{"TargetMachine", "MACHINE:MIPS16",
|
||||||
|
"MachineMIPS16", "MachineMIPS16", 0},
|
||||||
|
{"TargetMachine", "MACHINE:MIPSFPU",
|
||||||
|
"MachineMIPSFPU", "MachineMIPSFPU", 0},
|
||||||
|
{"TargetMachine", "MACHINE:MIPSFPU16",
|
||||||
|
"MachineMIPSFPU16", "MachineMIPSFPU16", 0},
|
||||||
|
{"TargetMachine", "MACHINE:SH4",
|
||||||
|
"MachineSH4", "MachineSH4", 0},
|
||||||
|
{"TargetMachine", "MACHINE:THUMB",
|
||||||
|
"MachineTHUMB", "MachineTHUMB", 0},
|
||||||
|
{"TargetMachine", "MACHINE:X64",
|
||||||
|
"MachineX64", "MachineX64", 0},
|
||||||
|
{"TargetMachine", "MACHINE:X86",
|
||||||
|
"MachineX86", "MachineX86", 0},
|
||||||
|
|
||||||
|
{"CLRThreadAttribute", "CLRTHREADATTRIBUTE:MTA",
|
||||||
|
"MTA threading attribute", "MTAThreadingAttribute", 0},
|
||||||
|
{"CLRThreadAttribute", "CLRTHREADATTRIBUTE:STA",
|
||||||
|
"STA threading attribute", "STAThreadingAttribute", 0},
|
||||||
|
{"CLRThreadAttribute", "CLRTHREADATTRIBUTE:NONE",
|
||||||
|
"Default threading attribute", "DefaultThreadingAttribute", 0},
|
||||||
|
|
||||||
|
{"CLRImageType", "CLRIMAGETYPE:IJW",
|
||||||
|
"Force IJW image", "ForceIJWImage", 0},
|
||||||
|
{"CLRImageType", "CLRIMAGETYPE:PURE",
|
||||||
|
"Force Pure IL Image", "ForcePureILImage", 0},
|
||||||
|
{"CLRImageType", "CLRIMAGETYPE:SAFE",
|
||||||
|
"Force Safe IL Image", "ForceSafeILImage", 0},
|
||||||
|
{"CLRImageType", "",
|
||||||
|
"Default image type", "Default", 0},
|
||||||
|
|
||||||
|
{"SignHash", "CLRSIGNHASH:SHA1",
|
||||||
|
"SHA1", "SHA1", 0},
|
||||||
|
{"SignHash", "CLRSIGNHASH:SHA256",
|
||||||
|
"SHA256", "SHA256", 0},
|
||||||
|
{"SignHash", "CLRSIGNHASH:SHA384",
|
||||||
|
"SHA384", "SHA384", 0},
|
||||||
|
{"SignHash", "CLRSIGNHASH:SHA512",
|
||||||
|
"SHA512", "SHA512", 0},
|
||||||
|
|
||||||
|
{"LinkErrorReporting", "ERRORREPORT:PROMPT",
|
||||||
|
"PromptImmediately", "PromptImmediately", 0},
|
||||||
|
{"LinkErrorReporting", "ERRORREPORT:QUEUE",
|
||||||
|
"Queue For Next Login", "QueueForNextLogin", 0},
|
||||||
|
{"LinkErrorReporting", "ERRORREPORT:SEND",
|
||||||
|
"Send Error Report", "SendErrorReport", 0},
|
||||||
|
{"LinkErrorReporting", "ERRORREPORT:NONE",
|
||||||
|
"No Error Report", "NoErrorReport", 0},
|
||||||
|
|
||||||
|
{"CLRSupportLastError", "CLRSupportLastError",
|
||||||
|
"Enabled", "Enabled", 0},
|
||||||
|
{"CLRSupportLastError", "CLRSupportLastError:NO",
|
||||||
|
"Disabled", "Disabled", 0},
|
||||||
|
{"CLRSupportLastError", "CLRSupportLastError:SYSTEMDLL",
|
||||||
|
"System Dlls Only", "SystemDlls", 0},
|
||||||
|
|
||||||
|
|
||||||
|
//Bool Properties
|
||||||
|
{"LinkIncremental", "INCREMENTAL:NO", "", "false", 0},
|
||||||
|
{"LinkIncremental", "INCREMENTAL", "", "true", 0},
|
||||||
|
{"SuppressStartupBanner", "NOLOGO", "", "true", 0},
|
||||||
|
{"LinkStatus", "LTCG:NOSTATUS", "", "false", 0},
|
||||||
|
{"LinkStatus", "LTCG:STATUS", "", "true", 0},
|
||||||
|
{"PreventDllBinding", "ALLOWBIND:NO", "", "false", 0},
|
||||||
|
{"PreventDllBinding", "ALLOWBIND", "", "true", 0},
|
||||||
|
{"TreatLinkerWarningAsErrors", "WX:NO", "", "false", 0},
|
||||||
|
{"TreatLinkerWarningAsErrors", "WX", "", "true", 0},
|
||||||
|
{"IgnoreAllDefaultLibraries", "NODEFAULTLIB", "", "true", 0},
|
||||||
|
{"GenerateManifest", "MANIFEST:NO", "", "false", 0},
|
||||||
|
{"GenerateManifest", "MANIFEST", "", "true", 0},
|
||||||
|
{"AllowIsolation", "ALLOWISOLATION:NO", "", "false", 0},
|
||||||
|
{"UACUIAccess", "uiAccess='false'", "", "false", 0},
|
||||||
|
{"UACUIAccess", "uiAccess='true'", "", "true", 0},
|
||||||
|
{"ManifestEmbed", "manifest:embed", "", "true", 0},
|
||||||
|
{"GenerateDebugInformation", "DEBUG", "", "true", 0},
|
||||||
|
{"MapExports", "MAPINFO:EXPORTS", "", "true", 0},
|
||||||
|
{"AssemblyDebug", "ASSEMBLYDEBUG:DISABLE", "", "false", 0},
|
||||||
|
{"AssemblyDebug", "ASSEMBLYDEBUG", "", "true", 0},
|
||||||
|
{"LargeAddressAware", "LARGEADDRESSAWARE:NO", "", "false", 0},
|
||||||
|
{"LargeAddressAware", "LARGEADDRESSAWARE", "", "true", 0},
|
||||||
|
{"TerminalServerAware", "TSAWARE:NO", "", "false", 0},
|
||||||
|
{"TerminalServerAware", "TSAWARE", "", "true", 0},
|
||||||
|
{"SwapRunFromCD", "SWAPRUN:CD", "", "true", 0},
|
||||||
|
{"SwapRunFromNET", "SWAPRUN:NET", "", "true", 0},
|
||||||
|
{"OptimizeReferences", "OPT:NOREF", "", "false", 0},
|
||||||
|
{"OptimizeReferences", "OPT:REF", "", "true", 0},
|
||||||
|
{"EnableCOMDATFolding", "OPT:NOICF", "", "false", 0},
|
||||||
|
{"EnableCOMDATFolding", "OPT:ICF", "", "true", 0},
|
||||||
|
{"IgnoreEmbeddedIDL", "IGNOREIDL", "", "true", 0},
|
||||||
|
{"AppContainer", "APPCONTAINER", "", "true", 0},
|
||||||
|
{"WindowsMetadataLinkDelaySign", "WINMDDELAYSIGN:NO", "", "false", 0},
|
||||||
|
{"WindowsMetadataLinkDelaySign", "WINMDDELAYSIGN", "", "true", 0},
|
||||||
|
{"NoEntryPoint", "NOENTRY", "", "true", 0},
|
||||||
|
{"SetChecksum", "RELEASE", "", "true", 0},
|
||||||
|
{"RandomizedBaseAddress", "DYNAMICBASE:NO", "", "false", 0},
|
||||||
|
{"RandomizedBaseAddress", "DYNAMICBASE", "", "true", 0},
|
||||||
|
{"FixedBaseAddress", "FIXED:NO", "", "false", 0},
|
||||||
|
{"FixedBaseAddress", "FIXED", "", "true", 0},
|
||||||
|
{"DataExecutionPrevention", "NXCOMPAT:NO", "", "false", 0},
|
||||||
|
{"DataExecutionPrevention", "NXCOMPAT", "", "true", 0},
|
||||||
|
{"TurnOffAssemblyGeneration", "NOASSEMBLY", "", "true", 0},
|
||||||
|
{"SupportUnloadOfDelayLoadedDLL", "DELAY:UNLOAD", "", "true", 0},
|
||||||
|
{"SupportNobindOfDelayLoadedDLL", "DELAY:NOBIND", "", "true", 0},
|
||||||
|
{"Profile", "PROFILE", "", "true", 0},
|
||||||
|
{"LinkDelaySign", "DELAYSIGN:NO", "", "false", 0},
|
||||||
|
{"LinkDelaySign", "DELAYSIGN", "", "true", 0},
|
||||||
|
{"CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK:NO", "", "false", 0},
|
||||||
|
{"CLRUnmanagedCodeCheck", "CLRUNMANAGEDCODECHECK", "", "true", 0},
|
||||||
|
{"DetectOneDefinitionRule", "ODR", "", "true", 0},
|
||||||
|
{"ImageHasSafeExceptionHandlers", "SAFESEH:NO", "", "false", 0},
|
||||||
|
{"ImageHasSafeExceptionHandlers", "SAFESEH", "", "true", 0},
|
||||||
|
{"LinkDLL", "DLL", "", "true", 0},
|
||||||
|
|
||||||
|
//Bool Properties With Argument
|
||||||
|
{"EnableUAC", "MANIFESTUAC:NO", "", "false",
|
||||||
|
cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
|
||||||
|
{"EnableUAC", "MANIFESTUAC:NO", "Enable User Account Control (UAC)", "",
|
||||||
|
cmVS7FlagTable::UserValueRequired},
|
||||||
|
{"EnableUAC", "MANIFESTUAC:", "", "true",
|
||||||
|
cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
|
||||||
|
{"UACUIAccess", "MANIFESTUAC:", "Enable User Account Control (UAC)", "",
|
||||||
|
cmVS7FlagTable::UserValueRequired},
|
||||||
|
{"GenerateMapFile", "MAP", "", "true",
|
||||||
|
cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
|
||||||
|
{"MapFileName", "MAP", "Generate Map File", "",
|
||||||
|
cmVS7FlagTable::UserValueRequired},
|
||||||
|
|
||||||
|
//String List Properties
|
||||||
|
{"AdditionalLibraryDirectories", "LIBPATH:",
|
||||||
|
"Additional Library Directories",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
// Skip [AdditionalDependencies] - no command line Switch.
|
||||||
|
{"IgnoreSpecificDefaultLibraries", "NODEFAULTLIB:",
|
||||||
|
"Ignore Specific Default Libraries",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"AddModuleNamesToAssembly", "ASSEMBLYMODULE:",
|
||||||
|
"Add Module to Assembly",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"EmbedManagedResourceFile", "ASSEMBLYRESOURCE:",
|
||||||
|
"Embed Managed Resource File",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"ForceSymbolReferences", "INCLUDE:",
|
||||||
|
"Force Symbol References",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"DelayLoadDLLs", "DELAYLOAD:",
|
||||||
|
"Delay Loaded Dlls",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"AssemblyLinkResource", "ASSEMBLYLINKRESOURCE:",
|
||||||
|
"Assembly Link Resource",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"AdditionalManifestDependencies", "MANIFESTDEPENDENCY:",
|
||||||
|
"Additional Manifest Dependencies",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
{"ManifestInput", "manifestinput:",
|
||||||
|
"Manifest Input",
|
||||||
|
"", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
|
||||||
|
|
||||||
|
//String Properties
|
||||||
|
{"OutputFile", "OUT:",
|
||||||
|
"Output File",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"Version", "VERSION:",
|
||||||
|
"Version",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"SpecifySectionAttributes", "SECTION:",
|
||||||
|
"Specify Section Attributes",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"MSDOSStubFileName", "STUB:",
|
||||||
|
"MS-DOS Stub File Name",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
// Skip [TrackerLogDirectory] - no command line Switch.
|
||||||
|
{"ModuleDefinitionFile", "DEF:",
|
||||||
|
"Module Definition File",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"ManifestFile", "ManifestFile:",
|
||||||
|
"Manifest File",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"ProgramDatabaseFile", "PDB:",
|
||||||
|
"Generate Program Database File",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"StripPrivateSymbols", "PDBSTRIPPED:",
|
||||||
|
"Strip Private Symbols",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
// Skip [MapFileName] - no command line Switch.
|
||||||
|
// Skip [MinimumRequiredVersion] - no command line Switch.
|
||||||
|
{"HeapReserveSize", "HEAP:",
|
||||||
|
"Heap Reserve Size",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
// Skip [HeapCommitSize] - no command line Switch.
|
||||||
|
{"StackReserveSize", "STACK:",
|
||||||
|
"Stack Reserve Size",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
// Skip [StackCommitSize] - no command line Switch.
|
||||||
|
{"FunctionOrder", "ORDER:@",
|
||||||
|
"Function Order",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"ProfileGuidedDatabase", "PGD:",
|
||||||
|
"Profile Guided Database",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"MidlCommandFile", "MIDL:@",
|
||||||
|
"MIDL Commands",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"MergedIDLBaseFileName", "IDLOUT:",
|
||||||
|
"Merged IDL Base File Name",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"TypeLibraryFile", "TLBOUT:",
|
||||||
|
"Type Library",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"WindowsMetadataFile", "WINMDFILE:",
|
||||||
|
"Windows Metadata File",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"WindowsMetadataLinkKeyFile", "WINMDKEYFILE:",
|
||||||
|
"Windows Metadata Key File",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"WindowsMetadataKeyContainer", "WINMDKEYCONTAINER:",
|
||||||
|
"Windows Metadata Key Container",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"EntryPointSymbol", "ENTRY:",
|
||||||
|
"Entry Point",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"BaseAddress", "BASE:",
|
||||||
|
"Base Address",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"ImportLibrary", "IMPLIB:",
|
||||||
|
"Import Library",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"MergeSections", "MERGE:",
|
||||||
|
"Merge Sections",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"LinkKeyFile", "KEYFILE:",
|
||||||
|
"Key File",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
{"KeyContainer", "KEYCONTAINER:",
|
||||||
|
"Key Container",
|
||||||
|
"", cmVS7FlagTable::UserValue},
|
||||||
|
// Skip [AdditionalOptions] - no command line Switch.
|
||||||
|
{0,0,0,0,0}
|
||||||
|
};
|
@ -22,9 +22,36 @@
|
|||||||
#include "cmVS10CLFlagTable.h"
|
#include "cmVS10CLFlagTable.h"
|
||||||
#include "cmVS10LinkFlagTable.h"
|
#include "cmVS10LinkFlagTable.h"
|
||||||
#include "cmVS10LibFlagTable.h"
|
#include "cmVS10LibFlagTable.h"
|
||||||
|
#include "cmVS11CLFlagTable.h"
|
||||||
|
#include "cmVS11LinkFlagTable.h"
|
||||||
|
#include "cmVS11LibFlagTable.h"
|
||||||
|
|
||||||
#include <cmsys/auto_ptr.hxx>
|
#include <cmsys/auto_ptr.hxx>
|
||||||
|
|
||||||
|
static cmVS7FlagTable const*
|
||||||
|
cmVSGetCLFlagTable(cmLocalVisualStudioGenerator* lg)
|
||||||
|
{
|
||||||
|
if(lg->GetVersion() >= cmLocalVisualStudioGenerator::VS11)
|
||||||
|
{ return cmVS11CLFlagTable; }
|
||||||
|
return cmVS10CLFlagTable;
|
||||||
|
}
|
||||||
|
|
||||||
|
static cmVS7FlagTable const*
|
||||||
|
cmVSGetLibFlagTable(cmLocalVisualStudioGenerator* lg)
|
||||||
|
{
|
||||||
|
if(lg->GetVersion() >= cmLocalVisualStudioGenerator::VS11)
|
||||||
|
{ return cmVS11LibFlagTable; }
|
||||||
|
return cmVS10LibFlagTable;
|
||||||
|
}
|
||||||
|
|
||||||
|
static cmVS7FlagTable const*
|
||||||
|
cmVSGetLinkFlagTable(cmLocalVisualStudioGenerator* lg)
|
||||||
|
{
|
||||||
|
if(lg->GetVersion() >= cmLocalVisualStudioGenerator::VS11)
|
||||||
|
{ return cmVS11LinkFlagTable; }
|
||||||
|
return cmVS10LinkFlagTable;
|
||||||
|
}
|
||||||
|
|
||||||
static std::string cmVS10EscapeXML(std::string arg)
|
static std::string cmVS10EscapeXML(std::string arg)
|
||||||
{
|
{
|
||||||
cmSystemTools::ReplaceString(arg, "&", "&");
|
cmSystemTools::ReplaceString(arg, "&", "&");
|
||||||
@ -958,7 +985,7 @@ bool cmVisualStudio10TargetGenerator::OutputSourceSpecificFlags(
|
|||||||
cmVisualStudioGeneratorOptions
|
cmVisualStudioGeneratorOptions
|
||||||
clOptions(this->LocalGenerator,
|
clOptions(this->LocalGenerator,
|
||||||
cmVisualStudioGeneratorOptions::Compiler,
|
cmVisualStudioGeneratorOptions::Compiler,
|
||||||
cmVS10CLFlagTable, 0, this);
|
cmVSGetCLFlagTable(this->LocalGenerator), 0, this);
|
||||||
clOptions.Parse(flags.c_str());
|
clOptions.Parse(flags.c_str());
|
||||||
clOptions.AddDefines(configDefines.c_str());
|
clOptions.AddDefines(configDefines.c_str());
|
||||||
clOptions.SetConfiguration((*config).c_str());
|
clOptions.SetConfiguration((*config).c_str());
|
||||||
@ -1152,7 +1179,7 @@ bool cmVisualStudio10TargetGenerator::ComputeClOptions(
|
|||||||
|
|
||||||
cmsys::auto_ptr<Options> pOptions(
|
cmsys::auto_ptr<Options> pOptions(
|
||||||
new Options(this->LocalGenerator, Options::Compiler,
|
new Options(this->LocalGenerator, Options::Compiler,
|
||||||
cmVS10CLFlagTable));
|
cmVSGetCLFlagTable(this->LocalGenerator)));
|
||||||
Options& clOptions = *pOptions;
|
Options& clOptions = *pOptions;
|
||||||
|
|
||||||
std::string flags;
|
std::string flags;
|
||||||
@ -1313,7 +1340,7 @@ cmVisualStudio10TargetGenerator::WriteLibOptions(std::string const& config)
|
|||||||
cmVisualStudioGeneratorOptions
|
cmVisualStudioGeneratorOptions
|
||||||
libOptions(this->LocalGenerator,
|
libOptions(this->LocalGenerator,
|
||||||
cmVisualStudioGeneratorOptions::Linker,
|
cmVisualStudioGeneratorOptions::Linker,
|
||||||
cmVS10LibFlagTable, 0, this);
|
cmVSGetLibFlagTable(this->LocalGenerator), 0, this);
|
||||||
libOptions.Parse(libflags?libflags:"");
|
libOptions.Parse(libflags?libflags:"");
|
||||||
libOptions.Parse(libflagsConfig?libflagsConfig:"");
|
libOptions.Parse(libflagsConfig?libflagsConfig:"");
|
||||||
libOptions.OutputAdditionalOptions(*this->BuildFileStream, " ", "");
|
libOptions.OutputAdditionalOptions(*this->BuildFileStream, " ", "");
|
||||||
@ -1393,7 +1420,7 @@ void cmVisualStudio10TargetGenerator::WriteLinkOptions(std::string const&
|
|||||||
cmVisualStudioGeneratorOptions
|
cmVisualStudioGeneratorOptions
|
||||||
linkOptions(this->LocalGenerator,
|
linkOptions(this->LocalGenerator,
|
||||||
cmVisualStudioGeneratorOptions::Linker,
|
cmVisualStudioGeneratorOptions::Linker,
|
||||||
cmVS10LinkFlagTable, 0, this);
|
cmVSGetLinkFlagTable(this->LocalGenerator), 0, this);
|
||||||
if ( this->Target->GetPropertyAsBool("WIN32_EXECUTABLE") )
|
if ( this->Target->GetPropertyAsBool("WIN32_EXECUTABLE") )
|
||||||
{
|
{
|
||||||
flags += " /SUBSYSTEM:WINDOWS";
|
flags += " /SUBSYSTEM:WINDOWS";
|
||||||
|
@ -6,6 +6,9 @@
|
|||||||
# "${PROGRAMFILES}/MSBuild/Microsoft.Cpp/v4.0/1033/cl.xml"
|
# "${PROGRAMFILES}/MSBuild/Microsoft.Cpp/v4.0/1033/cl.xml"
|
||||||
# "${PROGRAMFILES}/MSBuild/Microsoft.Cpp/v4.0/1033/lib.xml"
|
# "${PROGRAMFILES}/MSBuild/Microsoft.Cpp/v4.0/1033/lib.xml"
|
||||||
# "${PROGRAMFILES}/MSBuild/Microsoft.Cpp/v4.0/1033/link.xml"
|
# "${PROGRAMFILES}/MSBuild/Microsoft.Cpp/v4.0/1033/link.xml"
|
||||||
|
# "${PROGRAMFILES}/MSBuild/Microsoft.Cpp/v4.0/V110/1033/cl.xml"
|
||||||
|
# "${PROGRAMFILES}/MSBuild/Microsoft.Cpp/v4.0/V110/1033/lib.xml"
|
||||||
|
# "${PROGRAMFILES}/MSBuild/Microsoft.Cpp/v4.0/V110/1033/link.xml"
|
||||||
#
|
#
|
||||||
# BoolProperty <Name>true|false</Name>
|
# BoolProperty <Name>true|false</Name>
|
||||||
# simple example:
|
# simple example:
|
||||||
@ -148,7 +151,7 @@ class Property:
|
|||||||
self.argumentProperty = child.getAttribute("Property")
|
self.argumentProperty = child.getAttribute("Property")
|
||||||
self.argumentIsRequired = child.getAttribute("IsRequired")
|
self.argumentIsRequired = child.getAttribute("IsRequired")
|
||||||
if child.nodeName == self.prefix_type+"Value":
|
if child.nodeName == self.prefix_type+"Value":
|
||||||
va = Property(self.prefix_type,["Name","Switch"])
|
va = Property(self.prefix_type,["Name","DisplayName","Switch"])
|
||||||
va.suffix_type = "Value"
|
va.suffix_type = "Value"
|
||||||
va.populate(child)
|
va.populate(child)
|
||||||
self.values.append(va)
|
self.values.append(va)
|
||||||
@ -203,11 +206,11 @@ class MSBuildToCMake:
|
|||||||
if child.nodeName == "EnumProperty":
|
if child.nodeName == "EnumProperty":
|
||||||
self.enumProperties.append(Property("Enum",["Name","Category"],child))
|
self.enumProperties.append(Property("Enum",["Name","Category"],child))
|
||||||
if child.nodeName == "StringProperty":
|
if child.nodeName == "StringProperty":
|
||||||
self.stringProperties.append(Property("String",["Name","Subtype","Separator","Category","Visible","IncludeInCommandLine","Switch","ReadOnly"],child))
|
self.stringProperties.append(Property("String",["Name","Subtype","Separator","Category","Visible","IncludeInCommandLine","Switch","DisplayName","ReadOnly"],child))
|
||||||
if child.nodeName == "StringListProperty":
|
if child.nodeName == "StringListProperty":
|
||||||
self.stringListProperties.append(Property("StringList",["Name","Category","Switch","Subtype"],child))
|
self.stringListProperties.append(Property("StringList",["Name","Category","Switch","DisplayName","Subtype"],child))
|
||||||
if child.nodeName == "BoolProperty":
|
if child.nodeName == "BoolProperty":
|
||||||
self.boolProperties.append(Property("Bool",["ReverseSwitch","Name","Category","Switch","SwitchPrefix","IncludeInCommandLine"],child))
|
self.boolProperties.append(Property("Bool",["ReverseSwitch","Name","Category","Switch","DisplayName","SwitchPrefix","IncludeInCommandLine"],child))
|
||||||
if child.nodeName == "IntProperty":
|
if child.nodeName == "IntProperty":
|
||||||
self.intProperties.append(Property("Int",["Name","Category","Visible"],child))
|
self.intProperties.append(Property("Int",["Name","Category","Visible"],child))
|
||||||
self.populate(child,spaces+"----")
|
self.populate(child,spaces+"----")
|
||||||
@ -226,15 +229,15 @@ class MSBuildToCMake:
|
|||||||
for j in i.values:
|
for j in i.values:
|
||||||
#hardcore Brad King's manual fixes for cmVS10CLFlagTable.h
|
#hardcore Brad King's manual fixes for cmVS10CLFlagTable.h
|
||||||
if i.attributes["Name"] == "PrecompiledHeader" and j.attributes["Switch"] != "":
|
if i.attributes["Name"] == "PrecompiledHeader" and j.attributes["Switch"] != "":
|
||||||
toReturn+=" {\""+i.attributes["Name"]+"\", \""+j.attributes["Switch"]+"\",\n \""+j.DisplayName+"\", \""+j.attributes["Name"]+"\",\n cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},\n"
|
toReturn+=" {\""+i.attributes["Name"]+"\", \""+j.attributes["Switch"]+"\",\n \""+j.attributes["DisplayName"]+"\", \""+j.attributes["Name"]+"\",\n cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},\n"
|
||||||
else:
|
else:
|
||||||
#default (normal, non-hardcoded) case
|
#default (normal, non-hardcoded) case
|
||||||
toReturn+=" {\""+i.attributes["Name"]+"\", \""+j.attributes["Switch"]+"\",\n \""+j.DisplayName+"\", \""+j.attributes["Name"]+"\", 0},\n"
|
toReturn+=" {\""+i.attributes["Name"]+"\", \""+j.attributes["Switch"]+"\",\n \""+j.attributes["DisplayName"]+"\", \""+j.attributes["Name"]+"\", 0},\n"
|
||||||
toReturn += "\n"
|
toReturn += "\n"
|
||||||
|
|
||||||
if lastProp != {}:
|
if lastProp != {}:
|
||||||
for j in lastProp.values:
|
for j in lastProp.values:
|
||||||
toReturn+=" {\""+lastProp.attributes["Name"]+"\", \""+j.attributes["Switch"]+"\",\n \""+j.DisplayName+"\", \""+j.attributes["Name"]+"\", 0},\n"
|
toReturn+=" {\""+lastProp.attributes["Name"]+"\", \""+j.attributes["Switch"]+"\",\n \""+j.attributes["DisplayName"]+"\", \""+j.attributes["Name"]+"\", 0},\n"
|
||||||
toReturn += "\n"
|
toReturn += "\n"
|
||||||
|
|
||||||
toReturn += "\n //Bool Properties\n"
|
toReturn += "\n //Bool Properties\n"
|
||||||
@ -250,17 +253,17 @@ class MSBuildToCMake:
|
|||||||
if i.argumentProperty != "":
|
if i.argumentProperty != "":
|
||||||
if i.attributes["ReverseSwitch"] != "":
|
if i.attributes["ReverseSwitch"] != "":
|
||||||
toReturn += " {\""+i.attributes["Name"]+"\", \""+i.attributes["ReverseSwitch"]+"\", \"\", \"false\",\n cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},\n"
|
toReturn += " {\""+i.attributes["Name"]+"\", \""+i.attributes["ReverseSwitch"]+"\", \"\", \"false\",\n cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},\n"
|
||||||
toReturn += " {\""+i.attributes["Name"]+"\", \""+i.attributes["ReverseSwitch"]+"\", \""+i.DisplayName+"\", \"\",\n cmVS7FlagTable::UserValueRequired},\n"
|
toReturn += " {\""+i.attributes["Name"]+"\", \""+i.attributes["ReverseSwitch"]+"\", \""+i.attributes["DisplayName"]+"\", \"\",\n cmVS7FlagTable::UserValueRequired},\n"
|
||||||
if i.attributes["Switch"] != "":
|
if i.attributes["Switch"] != "":
|
||||||
toReturn += " {\""+i.attributes["Name"]+"\", \""+i.attributes["Switch"]+"\", \"\", \"true\",\n cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},\n"
|
toReturn += " {\""+i.attributes["Name"]+"\", \""+i.attributes["Switch"]+"\", \"\", \"true\",\n cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},\n"
|
||||||
toReturn += " {\""+i.argumentProperty+"\", \""+i.attributes["Switch"]+"\", \""+i.DisplayName+"\", \"\",\n cmVS7FlagTable::UserValueRequired},\n"
|
toReturn += " {\""+i.argumentProperty+"\", \""+i.attributes["Switch"]+"\", \""+i.attributes["DisplayName"]+"\", \"\",\n cmVS7FlagTable::UserValueRequired},\n"
|
||||||
|
|
||||||
toReturn += "\n //String List Properties\n"
|
toReturn += "\n //String List Properties\n"
|
||||||
for i in self.stringListProperties:
|
for i in self.stringListProperties:
|
||||||
if i.attributes["Switch"] == "":
|
if i.attributes["Switch"] == "":
|
||||||
toReturn += " // Skip [" + i.attributes["Name"] + "] - no command line Switch.\n";
|
toReturn += " // Skip [" + i.attributes["Name"] + "] - no command line Switch.\n";
|
||||||
else:
|
else:
|
||||||
toReturn +=" {\""+i.attributes["Name"]+"\", \""+i.attributes["Switch"]+"\",\n \""+i.DisplayName+"\",\n \"\", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},\n"
|
toReturn +=" {\""+i.attributes["Name"]+"\", \""+i.attributes["Switch"]+"\",\n \""+i.attributes["DisplayName"]+"\",\n \"\", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},\n"
|
||||||
|
|
||||||
toReturn += "\n //String Properties\n"
|
toReturn += "\n //String Properties\n"
|
||||||
for i in self.stringProperties:
|
for i in self.stringProperties:
|
||||||
@ -276,7 +279,7 @@ class MSBuildToCMake:
|
|||||||
else:
|
else:
|
||||||
toReturn += " // Skip [" + i.attributes["Name"] + "] - no command line Switch.\n";
|
toReturn += " // Skip [" + i.attributes["Name"] + "] - no command line Switch.\n";
|
||||||
else:
|
else:
|
||||||
toReturn +=" {\""+i.attributes["Name"]+"\", \""+i.attributes["Switch"]+i.attributes["Separator"]+"\",\n \""+i.DisplayName+"\",\n \"\", cmVS7FlagTable::UserValue},\n"
|
toReturn +=" {\""+i.attributes["Name"]+"\", \""+i.attributes["Switch"]+i.attributes["Separator"]+"\",\n \""+i.attributes["DisplayName"]+"\",\n \"\", cmVS7FlagTable::UserValue},\n"
|
||||||
|
|
||||||
toReturn += " {0,0,0,0,0}\n};"
|
toReturn += " {0,0,0,0,0}\n};"
|
||||||
return toReturn
|
return toReturn
|
||||||
|
Loading…
x
Reference in New Issue
Block a user