cmVS14CLFlagTable.h 11 KB

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