1 static cmVS7FlagTable cmVS12CLFlagTable[] =
5 {"DebugInformationFormat", "",
7 {"DebugInformationFormat", "Z7",
8 "C7 compatible", "OldStyle", 0},
9 {"DebugInformationFormat", "Zi",
10 "Program Database", "ProgramDatabase", 0},
11 {"DebugInformationFormat", "ZI",
12 "Program Database for Edit And Continue", "EditAndContinue", 0},
14 {"WarningLevel", "W0",
15 "Turn Off All Warnings", "TurnOffAllWarnings", 0},
16 {"WarningLevel", "W1",
17 "Level1", "Level1", 0},
18 {"WarningLevel", "W2",
19 "Level2", "Level2", 0},
20 {"WarningLevel", "W3",
21 "Level3", "Level3", 0},
22 {"WarningLevel", "W4",
23 "Level4", "Level4", 0},
24 {"WarningLevel", "Wall",
25 "EnableAllWarnings", "EnableAllWarnings", 0},
28 "Custom", "Custom", 0},
29 {"Optimization", "Od",
30 "Disabled", "Disabled", 0},
31 {"Optimization", "O1",
32 "Minimize Size", "MinSpace", 0},
33 {"Optimization", "O2",
34 "Maximize Speed", "MaxSpeed", 0},
35 {"Optimization", "Ox",
36 "Full Optimization", "Full", 0},
38 {"InlineFunctionExpansion", "",
39 "Default", "Default", 0},
40 {"InlineFunctionExpansion", "Ob0",
41 "Disabled", "Disabled", 0},
42 {"InlineFunctionExpansion", "Ob1",
43 "Only __inline", "OnlyExplicitInline", 0},
44 {"InlineFunctionExpansion", "Ob2",
45 "Any Suitable", "AnySuitable", 0},
47 {"FavorSizeOrSpeed", "Os",
48 "Favor small code", "Size", 0},
49 {"FavorSizeOrSpeed", "Ot",
50 "Favor fast code", "Speed", 0},
51 {"FavorSizeOrSpeed", "",
52 "Neither", "Neither", 0},
54 {"ExceptionHandling", "EHa",
55 "Yes with SEH Exceptions", "Async", 0},
56 {"ExceptionHandling", "EHsc",
58 {"ExceptionHandling", "EHs",
59 "Yes with Extern C functions", "SyncCThrow", 0},
60 {"ExceptionHandling", "",
63 {"BasicRuntimeChecks", "RTCs",
64 "Stack Frames", "StackFrameRuntimeCheck", 0},
65 {"BasicRuntimeChecks", "RTCu",
66 "Uninitialized variables", "UninitializedLocalUsageCheck", 0},
67 {"BasicRuntimeChecks", "RTC1",
68 "Both (/RTC1, equiv. to /RTCsu)", "EnableFastChecks", 0},
69 {"BasicRuntimeChecks", "",
70 "Default", "Default", 0},
72 {"RuntimeLibrary", "MT",
73 "Multi-threaded", "MultiThreaded", 0},
74 {"RuntimeLibrary", "MTd",
75 "Multi-threaded Debug", "MultiThreadedDebug", 0},
76 {"RuntimeLibrary", "MD",
77 "Multi-threaded DLL", "MultiThreadedDLL", 0},
78 {"RuntimeLibrary", "MDd",
79 "Multi-threaded Debug DLL", "MultiThreadedDebugDLL", 0},
81 {"StructMemberAlignment", "Zp1",
82 "1 Byte", "1Byte", 0},
83 {"StructMemberAlignment", "Zp2",
84 "2 Bytes", "2Bytes", 0},
85 {"StructMemberAlignment", "Zp4",
86 "4 Byte", "4Bytes", 0},
87 {"StructMemberAlignment", "Zp8",
88 "8 Bytes", "8Bytes", 0},
89 {"StructMemberAlignment", "Zp16",
90 "16 Bytes", "16Bytes", 0},
91 {"StructMemberAlignment", "",
92 "Default", "Default", 0},
94 {"BufferSecurityCheck", "GS-",
95 "Disable Security Check", "false", 0},
96 {"BufferSecurityCheck", "GS",
97 "Enable Security Check", "true", 0},
99 {"EnableEnhancedInstructionSet", "arch:SSE",
100 "Streaming SIMD Extensions", "StreamingSIMDExtensions", 0},
101 {"EnableEnhancedInstructionSet", "arch:SSE2",
102 "Streaming SIMD Extensions 2", "StreamingSIMDExtensions2", 0},
103 {"EnableEnhancedInstructionSet", "arch:AVX",
104 "Advanced Vector Extensions", "AdvancedVectorExtensions", 0},
105 {"EnableEnhancedInstructionSet", "arch:IA32",
106 "No Enhanced Instructions", "NoExtensions", 0},
107 {"EnableEnhancedInstructionSet", "",
108 "Not Set", "NotSet", 0},
110 {"FloatingPointModel", "fp:precise",
111 "Precise", "Precise", 0},
112 {"FloatingPointModel", "fp:strict",
113 "Strict", "Strict", 0},
114 {"FloatingPointModel", "fp:fast",
117 {"PrecompiledHeader", "Yc",
119 cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
120 {"PrecompiledHeader", "Yu",
122 cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
123 {"PrecompiledHeader", "",
124 "Not Using Precompiled Headers", "NotUsing", 0},
126 {"AssemblerOutput", "",
127 "No Listing", "NoListing", 0},
128 {"AssemblerOutput", "FA",
129 "Assembly-Only Listing", "AssemblyCode", 0},
130 {"AssemblerOutput", "FAc",
131 "Assembly With Machine Code", "AssemblyAndMachineCode", 0},
132 {"AssemblerOutput", "FAs",
133 "Assembly With Source Code", "AssemblyAndSourceCode", 0},
134 {"AssemblerOutput", "FAcs",
135 "Assembly, Machine Code and Source", "All", 0},
137 {"CallingConvention", "Gd",
138 "__cdecl", "Cdecl", 0},
139 {"CallingConvention", "Gr",
140 "__fastcall", "FastCall", 0},
141 {"CallingConvention", "Gz",
142 "__stdcall", "StdCall", 0},
143 {"CallingConvention", "Gv",
144 "__vectorcall", "VectorCall", 0},
147 "Default", "Default", 0},
149 "Compile as C Code", "CompileAsC", 0},
151 "Compile as C++ Code", "CompileAsCpp", 0},
153 {"ErrorReporting", "errorReport:none",
154 "Do Not Send Report", "None", 0},
155 {"ErrorReporting", "errorReport:prompt",
156 "Prompt Immediately", "Prompt", 0},
157 {"ErrorReporting", "errorReport:queue",
158 "Queue For Next Login", "Queue", 0},
159 {"ErrorReporting", "errorReport:send",
160 "Send Automatically", "Send", 0},
162 {"CompileAsManaged", "",
163 "No Common Language RunTime Support", "false", 0},
164 {"CompileAsManaged", "clr",
165 "Common Language RunTime Support", "true", 0},
166 {"CompileAsManaged", "clr:pure",
167 "Pure MSIL Common Language RunTime Support", "Pure", 0},
168 {"CompileAsManaged", "clr:safe",
169 "Safe MSIL Common Language RunTime Support", "Safe", 0},
170 {"CompileAsManaged", "clr:oldSyntax",
171 "Common Language RunTime Support, Old Syntax", "OldSyntax", 0},
175 {"CompileAsWinRT", "ZW", "", "true", 0},
176 {"WinRTNoStdLib", "ZW:nostdlib", "", "true", 0},
177 {"SuppressStartupBanner", "nologo", "", "true", 0},
178 {"TreatWarningAsError", "WX-", "", "false", 0},
179 {"TreatWarningAsError", "WX", "", "true", 0},
180 {"SDLCheck", "sdl-", "", "false", 0},
181 {"SDLCheck", "sdl", "", "true", 0},
182 {"IntrinsicFunctions", "Oi", "", "true", 0},
183 {"OmitFramePointers", "Oy-", "", "false", 0},
184 {"OmitFramePointers", "Oy", "", "true", 0},
185 {"EnableFiberSafeOptimizations", "GT", "", "true", 0},
186 {"WholeProgramOptimization", "GL", "", "true", 0},
187 {"UndefineAllPreprocessorDefinitions", "u", "", "true", 0},
188 {"IgnoreStandardIncludePath", "X", "", "true", 0},
189 {"PreprocessToFile", "P", "", "true", 0},
190 {"PreprocessSuppressLineNumbers", "EP", "", "true", 0},
191 {"PreprocessKeepComments", "C", "", "true", 0},
192 {"StringPooling", "GF-", "", "false", 0},
193 {"StringPooling", "GF", "", "true", 0},
194 {"MinimalRebuild", "Gm-", "", "false", 0},
195 {"MinimalRebuild", "Gm", "", "true", 0},
196 {"SmallerTypeCheck", "RTCc", "", "true", 0},
197 {"FunctionLevelLinking", "Gy-", "", "false", 0},
198 {"FunctionLevelLinking", "Gy", "", "true", 0},
199 {"EnableParallelCodeGeneration", "Qpar-", "", "false", 0},
200 {"EnableParallelCodeGeneration", "Qpar", "", "true", 0},
201 {"FloatingPointExceptions", "fp:except-", "", "false", 0},
202 {"FloatingPointExceptions", "fp:except", "", "true", 0},
203 {"CreateHotpatchableImage", "hotpatch", "", "true", 0},
204 {"DisableLanguageExtensions", "Za", "", "true", 0},
205 {"TreatWChar_tAsBuiltInType", "Zc:wchar_t-", "", "false", 0},
206 {"TreatWChar_tAsBuiltInType", "Zc:wchar_t", "", "true", 0},
207 {"ForceConformanceInForLoopScope", "Zc:forScope-", "", "false", 0},
208 {"ForceConformanceInForLoopScope", "Zc:forScope", "", "true", 0},
209 {"RuntimeTypeInfo", "GR-", "", "false", 0},
210 {"RuntimeTypeInfo", "GR", "", "true", 0},
211 {"OpenMPSupport", "openmp-", "", "false", 0},
212 {"OpenMPSupport", "openmp", "", "true", 0},
213 {"ExpandAttributedSource", "Fx", "", "true", 0},
214 {"UseUnicodeForAssemblerListing", "FAu", "", "true", 0},
215 {"ShowIncludes", "showIncludes", "", "true", 0},
216 {"EnablePREfast", "analyze-", "", "false", 0},
217 {"EnablePREfast", "analyze", "", "true", 0},
218 {"UseFullPaths", "FC", "", "true", 0},
219 {"OmitDefaultLibName", "Zl", "", "true", 0},
221 //Bool Properties With Argument
222 {"MultiProcessorCompilation", "MP", "", "true",
223 cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
224 {"ProcessorNumber", "MP", "Multi-processor Compilation", "",
225 cmVS7FlagTable::UserValueRequired},
226 {"GenerateXMLDocumentationFiles", "doc", "", "true",
227 cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
228 {"XMLDocumentationFileName", "doc", "Generate XML Documentation Files", "",
229 cmVS7FlagTable::UserValueRequired},
230 {"BrowseInformation", "FR", "", "true",
231 cmVS7FlagTable::UserValueIgnored | cmVS7FlagTable::Continue},
232 {"BrowseInformationFile", "FR", "Enable Browse Information", "",
233 cmVS7FlagTable::UserValueRequired},
235 //String List Properties
236 {"AdditionalIncludeDirectories", "I",
237 "Additional Include Directories",
238 "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
239 {"AdditionalUsingDirectories", "AI",
240 "Additional #using Directories",
241 "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
242 {"PreprocessorDefinitions", "D ",
243 "Preprocessor Definitions",
244 "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
245 {"UndefinePreprocessorDefinitions", "U",
246 "Undefine Preprocessor Definitions",
247 "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
248 {"DisableSpecificWarnings", "wd",
249 "Disable Specific Warnings",
250 "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
251 {"ForcedIncludeFiles", "FI",
252 "Forced Include File",
253 "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
254 {"ForcedUsingFiles", "FU",
255 "Forced #using File",
256 "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
257 {"PREfastAdditionalOptions", "analyze:",
258 "Additional Code Analysis Native options",
259 "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
260 {"PREfastAdditionalPlugins", "analyze:plugin",
261 "Additional Code Analysis Native plugins",
262 "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
263 {"TreatSpecificWarningsAsErrors", "we",
264 "Treat Specific Warnings As Errors",
265 "", cmVS7FlagTable::UserValue | cmVS7FlagTable::SemicolonAppendable},
268 // Skip [TrackerLogDirectory] - no command line Switch.
269 {"PreprocessOutputPath", "Fi",
270 "Preprocess Output Path",
271 "", cmVS7FlagTable::UserValue},
272 {"PrecompiledHeaderFile", "Yc",
273 "Precompiled Header Name",
274 "", cmVS7FlagTable::UserValueRequired},
275 {"PrecompiledHeaderFile", "Yu",
276 "Precompiled Header Name",
277 "", cmVS7FlagTable::UserValueRequired},
278 {"PrecompiledHeaderOutputFile", "Fp",
279 "Precompiled Header Output File",
280 "", cmVS7FlagTable::UserValue},
281 {"AssemblerListingLocation", "Fa",
283 "", cmVS7FlagTable::UserValue},
284 {"ObjectFileName", "Fo",
286 "", cmVS7FlagTable::UserValue},
287 {"ProgramDataBaseFileName", "Fd",
288 "Program Database File Name",
289 "", cmVS7FlagTable::UserValue},
290 // Skip [XMLDocumentationFileName] - no command line Switch.
291 // Skip [BrowseInformationFile] - no command line Switch.
292 {"PREfastLog", "analyze:log ",
294 "", cmVS7FlagTable::UserValue},
295 // Skip [AdditionalOptions] - no command line Switch.