define.json 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894
  1. [
  2. {
  3. "name": "AbsolutePath",
  4. "define": "absolute-path",
  5. "doc": "Print absolute file path in trace output."
  6. },
  7. {
  8. "name": "AdvancedTelemetry",
  9. "define": "advanced-telemetry",
  10. "doc": "Allow the SWF to be measured with Monocle tool.",
  11. "platforms": ["flash"]
  12. },
  13. {
  14. "name": "AnalyzerOptimize",
  15. "define": "analyzer-optimize",
  16. "doc": "Perform advanced optimizations."
  17. },
  18. {
  19. "name": "AnalyzerTimes",
  20. "define": "times.analyzer",
  21. "deprecatedDefine": "analyzer-times",
  22. "signatureNeutral": true,
  23. "doc": "Record detailed timers for the analyzer",
  24. "params": ["level: 0 | 1 | 2"]
  25. },
  26. {
  27. "name": "AnnotateSource",
  28. "define": "annotate-source",
  29. "doc": "Add additional comments to generated source code.",
  30. "platforms": ["cpp"]
  31. },
  32. {
  33. "name": "CheckXmlProxy",
  34. "define": "check-xml-proxy",
  35. "doc": "Check the used fields of the XML proxy."
  36. },
  37. {
  38. "name": "CoreApi",
  39. "define": "core-api",
  40. "doc": "Defined in the core API context."
  41. },
  42. {
  43. "name": "Cppia",
  44. "define": "cppia",
  45. "doc": "Generate cpp instruction assembly."
  46. },
  47. {
  48. "name": "NoCppiaAst",
  49. "define": "nocppiaast",
  50. "doc": "Use legacy cppia generation."
  51. },
  52. {
  53. "name": "Dce",
  54. "define": "dce",
  55. "doc": "Set the dead code elimination mode. (default: std)",
  56. "params": ["mode: std | full | no"],
  57. "default": "std",
  58. "links": ["https://haxe.org/manual/cr-dce.html"]
  59. },
  60. {
  61. "name": "DceDebug",
  62. "define": "dce-debug",
  63. "signatureNeutral": true,
  64. "doc": "Show DCE log.",
  65. "links": ["https://haxe.org/manual/cr-dce.html"]
  66. },
  67. {
  68. "name": "Debug",
  69. "define": "debug",
  70. "doc": "Activated when compiling with -debug."
  71. },
  72. {
  73. "name": "DisableHxbCache",
  74. "define": "disable-hxb-cache",
  75. "signatureNeutral": true,
  76. "doc": "Use in-memory cache instead of hxb powered cache."
  77. },
  78. {
  79. "name": "DisableHxbOptimizations",
  80. "define": "disable-hxb-optimizations",
  81. "signatureNeutral": true,
  82. "doc": "Disable shortcuts used by hxb cache to speed up display requests."
  83. },
  84. {
  85. "name": "EnableParallelism",
  86. "define": "enable-parallelism",
  87. "signatureNeutral": true,
  88. "doc": "Enable experimental uses of parallelism in the compiler."
  89. },
  90. {
  91. "name": "DisableUnicodeStrings",
  92. "define": "disable-unicode-strings",
  93. "doc": "Disable Unicode support in `String` type.",
  94. "platforms": ["cpp"]
  95. },
  96. {
  97. "name": "Display",
  98. "define": "display",
  99. "signatureNeutral": true,
  100. "doc": "Activated during completion.",
  101. "links": ["https://haxe.org/manual/cr-completion.html"]
  102. },
  103. {
  104. "name": "DisplayStdin",
  105. "define": "display-stdin",
  106. "signatureNeutral": true,
  107. "doc": "Read the contents of a file specified in `--display` from standard input."
  108. },
  109. {
  110. "name": "DisplayDetails",
  111. "define": "display-details",
  112. "signatureNeutral": true,
  113. "doc": "Not used anymore, but still sent by vshaxe.",
  114. "deprecated": "This flag is no longer supported in Haxe 5"
  115. },
  116. {
  117. "name": "DllExport",
  118. "define": "dll-export",
  119. "doc": "GenCPP experimental linking.",
  120. "platforms": ["cpp"]
  121. },
  122. {
  123. "name": "DocGen",
  124. "define": "doc-gen",
  125. "doc": "Do not perform any removal/change in order to correctly generate documentation."
  126. },
  127. {
  128. "name": "Dump",
  129. "define": "dump",
  130. "signatureNeutral": true,
  131. "doc": "Dump typed AST in dump subdirectory using specified mode or non-prettified default.",
  132. "params": ["mode: pretty | record | position | legacy"]
  133. },
  134. {
  135. "name": "DumpStage",
  136. "define": "dump.stage",
  137. "signatureNeutral": true,
  138. "doc": "The compiler stage after which to generate the dump",
  139. "params": ["stage: typing | casting | inlining | analyzing | dce"],
  140. "default": "dce"
  141. },
  142. {
  143. "name": "DumpPath",
  144. "define": "dump-path",
  145. "signatureNeutral": true,
  146. "doc": "Path to generate dumps to (default: \"dump\").",
  147. "default": "dump",
  148. "params": ["path"]
  149. },
  150. {
  151. "name": "DumpDependencies",
  152. "define": "dump-dependencies",
  153. "signatureNeutral": true,
  154. "doc": "Dump the classes dependencies in a dump subdirectory."
  155. },
  156. {
  157. "name": "DumpIgnoreVarIds",
  158. "define": "dump-ignore-var-ids",
  159. "signatureNeutral": true,
  160. "doc": "Remove variable IDs from non-pretty dumps (helps with diff).",
  161. "default": "1"
  162. },
  163. {
  164. "name": "DynamicInterfaceClosures",
  165. "define": "dynamic-interface-closures",
  166. "doc": "Use slow path for interface closures to save space.",
  167. "platforms": ["cpp"]
  168. },
  169. {
  170. "name": "EvalCallStackDepth",
  171. "define": "eval-call-stack-depth",
  172. "doc": "Set maximum call stack depth for eval. (default: 1000)",
  173. "platforms": ["eval"],
  174. "default": "1000",
  175. "params": ["depth"]
  176. },
  177. {
  178. "name": "EvalDebugger",
  179. "define": "eval-debugger",
  180. "doc": "Support debugger in macro/interp mode. Allows `host:port` value to open a socket. Implies eval-stack.",
  181. "platforms": ["eval"]
  182. },
  183. {
  184. "name": "EvalPrintDepth",
  185. "define": "eval-print-depth",
  186. "doc": "Set maximum print depth (before replacing with '<...>') for eval. (default: 5)",
  187. "platforms": ["eval"],
  188. "default": "5",
  189. "params": ["depth"]
  190. },
  191. {
  192. "name": "EvalPrettyPrint",
  193. "define": "eval-pretty-print",
  194. "doc": "Enable indented output for eval printing.",
  195. "platforms": ["eval"]
  196. },
  197. {
  198. "name": "EvalStack",
  199. "define": "eval-stack",
  200. "doc": "Record stack information in macro/interp mode.",
  201. "platforms": ["eval"]
  202. },
  203. {
  204. "name": "EvalTimes",
  205. "define": "times.eval",
  206. "deprecatedDefine": "eval-times",
  207. "signatureNeutral": true,
  208. "doc": "Record per-method execution times in macro/interp mode. Implies eval-stack.",
  209. "platforms": ["eval"]
  210. },
  211. {
  212. "name": "FailFast",
  213. "define": "fail-fast",
  214. "signatureNeutral": true,
  215. "doc": "Abort compilation when first error occurs."
  216. },
  217. {
  218. "name": "FilterTimes",
  219. "define": "times.filter",
  220. "deprecatedDefine": "filter-times",
  221. "signatureNeutral": true,
  222. "doc": "Record per-filter execution times upon --times."
  223. },
  224. {
  225. "name": "Fdb",
  226. "define": "fdb",
  227. "doc": "Enable full flash debug infos for FDB interactive debugging.",
  228. "platforms": ["flash"]
  229. },
  230. {
  231. "name": "FileExtension",
  232. "define": "file-extension",
  233. "doc": "Output filename extension for cpp source code.",
  234. "platforms": ["cpp"]
  235. },
  236. {
  237. "name": "FlashStrict",
  238. "define": "flash-strict",
  239. "doc": "More strict typing for flash target.",
  240. "platforms": ["flash"]
  241. },
  242. {
  243. "name": "FlashUseStage",
  244. "define": "flash-use-stage",
  245. "doc": "Keep the SWF library initial stage.",
  246. "platforms": ["flash"]
  247. },
  248. {
  249. "name": "ForceNativeProperty",
  250. "define": "force-native-property",
  251. "doc": "Tag all properties with `:nativeProperty` metadata for 3.1 compatibility.",
  252. "platforms": ["cpp"]
  253. },
  254. {
  255. "name": "Haxe3Compat",
  256. "define": "haxe3compat",
  257. "doc": "Gives warnings about transition from Haxe 3.x to Haxe 4.0.",
  258. "deprecated": "This flag is no longer supported in Haxe 5"
  259. },
  260. {
  261. "name": "HaxeBoot",
  262. "define": "haxe-boot",
  263. "doc": "Give the name 'haxe' to the flash boot class instead of a generated name.",
  264. "platforms": ["flash"]
  265. },
  266. {
  267. "name": "HaxeVer",
  268. "define": "haxe-ver",
  269. "doc": "The current Haxe version value as decimal number. E.g. 3.407 for 3.4.7.",
  270. "reserved": true
  271. },
  272. {
  273. "name": "Haxe",
  274. "define": "haxe",
  275. "doc": "The current Haxe version value in SemVer format.",
  276. "reserved": true
  277. },
  278. {
  279. "name": "Haxe3",
  280. "define": "haxe3",
  281. "doc": "The current Haxe major version is >= 3.",
  282. "default": "1",
  283. "reserved": true
  284. },
  285. {
  286. "name": "Haxe4",
  287. "define": "haxe4",
  288. "doc": "The current Haxe major version is >= 4.",
  289. "default": "1",
  290. "reserved": true
  291. },
  292. {
  293. "name": "Haxe5",
  294. "define": "haxe5",
  295. "doc": "The current Haxe major version is >= 5.",
  296. "default": "1",
  297. "reserved": true
  298. },
  299. {
  300. "name": "HaxeNext",
  301. "define": "haxe-next",
  302. "doc": "Enable experimental features that are meant to be released on next Haxe version."
  303. },
  304. {
  305. "name": "HaxeOutputFile",
  306. "define": "HAXE_OUTPUT_FILE",
  307. "doc": "Force the full output name of the executable/library without library prefix and debug suffix.",
  308. "platforms": ["cpp"],
  309. "params": ["name"]
  310. },
  311. {
  312. "name": "HaxeOutputPart",
  313. "define": "HAXE_OUTPUT_PART",
  314. "doc": "Output name of the executable/library. (default: main class name)",
  315. "platforms": ["cpp"],
  316. "params": ["name"]
  317. },
  318. {
  319. "name": "Hlc",
  320. "define": "hlc",
  321. "doc": "Defined by compiler when using hl/c target.",
  322. "platforms": ["hl"],
  323. "reserved": true
  324. },
  325. {
  326. "name": "HlVer",
  327. "define": "hl-ver",
  328. "doc": "The HashLink version to target. (default: 1.15.0)",
  329. "platforms": ["hl"],
  330. "params": ["version"]
  331. },
  332. {
  333. "name": "HxbTimes",
  334. "define": "times.hxb",
  335. "deprecatedDefine": "hxb-times",
  336. "signatureNeutral": true,
  337. "doc": "Display hxb timing when used with `--times`."
  338. },
  339. {
  340. "name": "HxbStats",
  341. "define": "hxb.stats",
  342. "signatureNeutral": true,
  343. "doc": "Display some hxb related stats (only with compilation server)."
  344. },
  345. {
  346. "name": "HxcppApiLevel",
  347. "define": "hxcpp-api-level",
  348. "doc": "Provided to allow compatibility between hxcpp versions.",
  349. "platforms": ["cpp"],
  350. "reserved": true
  351. },
  352. {
  353. "name": "HxcppGcGenerational",
  354. "define": "HXCPP-GC-GENERATIONAL",
  355. "doc": "Experimental Garbage Collector.",
  356. "platforms": ["cpp"]
  357. },
  358. {
  359. "name": "HxcppDebugger",
  360. "define": "HXCPP-DEBUGGER",
  361. "doc": "Include additional information for hxcpp-debugger.",
  362. "platforms": ["cpp"]
  363. },
  364. {
  365. "name": "HxcppGcMoving",
  366. "define": "HXCPP-GC-MOVING",
  367. "doc": "Allow garbage collector to move memory to reduce fragmentation",
  368. "platforms": ["cpp"]
  369. },
  370. {
  371. "name": "HxcppGcSummary",
  372. "define": "HXCPP-GC-SUMMARY",
  373. "doc": "Print small profiling summary at end of program",
  374. "platforms": ["cpp"]
  375. },
  376. {
  377. "name": "HxcppGcDynamicSize",
  378. "define": "HXCPP-GC-DYNAMIC-SIZE",
  379. "doc": "Monitor GC times and expand memory working space if required",
  380. "platforms": ["cpp"]
  381. },
  382. {
  383. "name": "HxcppGcBigBlocks",
  384. "define": "HXCPP-GC-BIG-BLOCKS",
  385. "doc": "Allow working memory greater than 1 Gig",
  386. "platforms": ["cpp"]
  387. },
  388. {
  389. "name": "HxcppGcDebugLevel",
  390. "define": "HXCPP-GC-DEBUG-LEVEL",
  391. "doc": "Number 1-4 indicating additional debugging in GC",
  392. "platforms": ["cpp"]
  393. },
  394. {
  395. "name": "HxcppDebugLink",
  396. "define": "HXCPP-DEBUG-LINK",
  397. "doc": "Add symbols to final binary, even in release mode.",
  398. "platforms": ["cpp"]
  399. },
  400. {
  401. "name": "HxcppStackTrace",
  402. "define": "HXCPP-STACK-TRACE",
  403. "doc": "Have valid function-level stack traces, even in release mode.",
  404. "platforms": ["cpp"]
  405. },
  406. {
  407. "name": "HxcppStackLine",
  408. "define": "HXCPP-STACK-LINE",
  409. "doc": "Include line information in stack traces, even in release mode.",
  410. "platforms": ["cpp"]
  411. },
  412. {
  413. "name": "HxcppCheckPointer",
  414. "define": "HXCPP-CHECK-POINTER",
  415. "doc": "Add null-pointer checks, even in release mode.",
  416. "platforms": ["cpp"]
  417. },
  418. {
  419. "name": "HxcppProfiler",
  420. "define": "HXCPP-PROFILER",
  421. "doc": "Add profiler support",
  422. "platforms": ["cpp"]
  423. },
  424. {
  425. "name": "HxcppTelemetry",
  426. "define": "HXCPP-TELEMETRY",
  427. "doc": "Add telemetry support",
  428. "platforms": ["cpp"]
  429. },
  430. {
  431. "name": "HxcppCpp11",
  432. "define": "HXCPP-CPP11",
  433. "doc": "Use C++11 features and link libraries",
  434. "platforms": ["cpp"]
  435. },
  436. {
  437. "name": "HxcppVerbose",
  438. "define": "HXCPP-VERBOSE",
  439. "doc": "Print extra output from build tool.",
  440. "platforms": ["cpp"]
  441. },
  442. {
  443. "name": "HxcppTimes",
  444. "define": "HXCPP-TIMES",
  445. "doc": "Show some basic profiling information",
  446. "platforms": ["cpp"]
  447. },
  448. {
  449. "name": "HxcppM32",
  450. "define": "HXCPP-M32",
  451. "doc": "Force 32-bit compile for current desktop",
  452. "platforms": ["cpp"]
  453. },
  454. {
  455. "name": "HxcppM64",
  456. "define": "HXCPP-M64",
  457. "doc": "Force 64-bit compile for current desktop",
  458. "platforms": ["cpp"]
  459. },
  460. {
  461. "name": "HxcppArm64",
  462. "define": "HXCPP-ARM64",
  463. "doc": "Compile arm-based devices for 64 bits",
  464. "platforms": ["cpp"]
  465. },
  466. {
  467. "name": "HxcppLinuxArm64",
  468. "define": "HXCPP-LINUX-ARM64",
  469. "doc": "Run on a linux ARM64 device",
  470. "platforms": ["cpp"]
  471. },
  472. {
  473. "name": "HxcppSmartStings",
  474. "define": "hxcpp-smart-strings",
  475. "doc": "Use wide strings in hxcpp. (Turned on by default unless `-D disable-unicode-strings` is specified.)",
  476. "platforms": ["cpp"]
  477. },
  478. {
  479. "name": "IncludePrefix",
  480. "define": "include-prefix",
  481. "doc": "Prepend path to generated include files.",
  482. "platforms": ["cpp"]
  483. },
  484. {
  485. "name": "Interp",
  486. "define": "interp",
  487. "doc": "The code is compiled to be run with `--interp`."
  488. },
  489. {
  490. "name": "JsClassic",
  491. "define": "js-classic",
  492. "doc": "Don't use a function wrapper and strict mode in JS output.",
  493. "platforms": ["js"]
  494. },
  495. {
  496. "name": "JsEs",
  497. "define": "js-es",
  498. "doc": "Generate JS compliant with given ES standard version. (default: 5)",
  499. "platforms": ["js"],
  500. "params": ["version: 3 | 5 | 6"],
  501. "links": ["https://haxe.org/manual/target-javascript-es6.html"]
  502. },
  503. {
  504. "name": "JsEnumsAsArrays",
  505. "define": "js-enums-as-arrays",
  506. "doc": "Generate enum representation as array instead of as object.",
  507. "platforms": ["js"]
  508. },
  509. {
  510. "name": "JsGlobal",
  511. "define": "js_global",
  512. "doc": "Customizes the global object name.",
  513. "platforms": ["js"]
  514. },
  515. {
  516. "name": "JsUnflatten",
  517. "define": "js-unflatten",
  518. "doc": "Generate nested objects for packages and types.",
  519. "platforms": ["js"]
  520. },
  521. {
  522. "name": "JsSourceMap",
  523. "define": "js-source-map",
  524. "doc": "Generate JavaScript source map even in non-debug mode. Deprecated in favor of `-D source-map`.",
  525. "platforms": ["js"]
  526. },
  527. {
  528. "name": "SourceMap",
  529. "define": "source-map",
  530. "doc": "Generate source map for compiled files.",
  531. "platforms": ["php", "js"]
  532. },
  533. {
  534. "name": "JvmCompressionLevel",
  535. "define": "jvm.compression-level",
  536. "doc": "Set the compression level of the generated file between 0 (no compression) and 9 (highest compression). Default: 6",
  537. "platforms": ["jvm"]
  538. },
  539. {
  540. "name": "JvmDynamicLevel",
  541. "define": "jvm.dynamic-level",
  542. "doc": "Controls the amount of dynamic support code being generated. 0 = none, 1 = field read/write optimization (default), 2 = compile-time method closures",
  543. "platforms": ["jvm"]
  544. },
  545. {
  546. "name": "LoopUnrollMaxCost",
  547. "define": "loop-unroll-max-cost",
  548. "doc": "Maximum cost (number of expressions * iterations) before loop unrolling is canceled. (default: 250)",
  549. "default": "250",
  550. "params": ["cost"]
  551. },
  552. {
  553. "name": "LuaJit",
  554. "define": "lua-jit",
  555. "doc": "Enable the jit compiler for lua (version 5.2 only).",
  556. "platforms": ["lua"]
  557. },
  558. {
  559. "name": "LuaVanilla",
  560. "define": "lua-vanilla",
  561. "doc": "Generate code lacking compiled extern lib support (e.g. utf8).",
  562. "platforms": ["lua"]
  563. },
  564. {
  565. "name": "LuaVer",
  566. "define": "lua-ver",
  567. "doc": "The lua version to target.",
  568. "platforms": ["lua"],
  569. "params": ["version"]
  570. },
  571. {
  572. "name": "Macro",
  573. "define": "macro",
  574. "doc": "Defined when code is compiled in the macro context.",
  575. "links": ["https://haxe.org/manual/macro.html"],
  576. "reserved": true
  577. },
  578. {
  579. "name": "MacroTimes",
  580. "define": "times.macro",
  581. "deprecatedDefine": "macro-times",
  582. "signatureNeutral": true,
  583. "doc": "Display per-macro timing when used with `--times`."
  584. },
  585. {
  586. "name": "NekoSource",
  587. "define": "neko-source",
  588. "doc": "Output neko source instead of bytecode.",
  589. "platforms": ["neko"]
  590. },
  591. {
  592. "name": "NekoNoHaxelibPaths",
  593. "define": "neko-no-haxelib-paths",
  594. "doc": "Disable hard-coded Haxelib ndll paths.",
  595. "platforms": [
  596. "neko"
  597. ]
  598. },
  599. {
  600. "name": "NekoV1",
  601. "define": "neko-v1",
  602. "doc": "Keep Neko 1.x compatibility.",
  603. "platforms": ["neko"]
  604. },
  605. {
  606. "name": "NetworkSandbox",
  607. "define": "network-sandbox",
  608. "doc": "Use local network sandbox instead of local file access one.",
  609. "platforms": ["flash"]
  610. },
  611. {
  612. "name": "NoCompilation",
  613. "define": "no-compilation",
  614. "signatureNeutral": true,
  615. "doc": "Disable final compilation.",
  616. "platforms": ["cpp", "hl"]
  617. },
  618. {
  619. "name": "NoDebug",
  620. "define": "no-debug",
  621. "doc": "Remove all debug macros from cpp output."
  622. },
  623. {
  624. "name": "NoDeprecationWarnings",
  625. "define": "no-deprecation-warnings",
  626. "doc": "Do not warn if fields annotated with `@:deprecated` are used.",
  627. "deprecated": "Use -w to configure warnings. See https://haxe.org/manual/cr-warnings.html for more information."
  628. },
  629. {
  630. "name": "NoFlashOverride",
  631. "define": "no-flash-override",
  632. "doc": "Change overrides on some basic classes into HX suffixed methods",
  633. "platforms": ["flash"]
  634. },
  635. {
  636. "name": "NoOpt",
  637. "define": "no-opt",
  638. "doc": "Disable optimizations."
  639. },
  640. {
  641. "name": "NoInline",
  642. "define": "no-inline",
  643. "doc": "Disable inlining.",
  644. "links": ["https://haxe.org/manual/class-field-inline.html"]
  645. },
  646. {
  647. "name": "KeepInlinePositions",
  648. "define": "keep-inline-positions",
  649. "doc": "Don't substitute positions of inlined expressions with the position of the place of inlining.",
  650. "links": ["https://haxe.org/manual/class-field-inline.html"]
  651. },
  652. {
  653. "name": "NoMacroCache",
  654. "define": "no-macro-cache",
  655. "doc": "Disable macro context caching."
  656. },
  657. {
  658. "name": "NoSwfCompress",
  659. "define": "no-swf-compress",
  660. "doc": "Disable SWF output compression.",
  661. "platforms": ["flash"]
  662. },
  663. {
  664. "name": "NoTraces",
  665. "define": "no-traces",
  666. "doc": "Disable all trace calls."
  667. },
  668. {
  669. "name": "Objc",
  670. "define": "objc",
  671. "doc": "Sets the hxcpp output to Objective-C++ classes. Must be defined for interop.",
  672. "platforms": ["cpp"]
  673. },
  674. {
  675. "name": "OldErrorFormat",
  676. "define": "old-error-format",
  677. "doc": "Use Haxe 3.x zero-based column error messages instead of new one-based format.",
  678. "deprecated": "OldErrorFormat has been removed in Haxe 5"
  679. },
  680. {
  681. "name": "PhpPrefix",
  682. "define": "php-prefix",
  683. "doc": "Root namespace for generated php classes. E.g. if compiled with`-D php-prefix=some.sub`, then all classes will be generated in `\\some\\sub` namespace.",
  684. "platforms": ["php"],
  685. "params": ["dot-separated namespace"]
  686. },
  687. {
  688. "name": "PhpLib",
  689. "define": "php-lib",
  690. "doc": "Select the name for the php lib folder.",
  691. "platforms": ["php"],
  692. "params": ["folder name"]
  693. },
  694. {
  695. "name": "PhpFront",
  696. "define": "php-front",
  697. "doc": "Select the name for the php front file. (default: `index.php`)",
  698. "platforms": ["php"],
  699. "params": ["filename"]
  700. },
  701. {
  702. "name": "PythonVersion",
  703. "define": "python-version",
  704. "doc": "The python version to target. (default: 3.3)",
  705. "platforms": ["python"],
  706. "params": ["version"]
  707. },
  708. {
  709. "name": "RealPosition",
  710. "define": "real-position",
  711. "doc": "Removes position comments in Php output.",
  712. "platforms": ["php"]
  713. },
  714. {
  715. "name": "RetainUntypedMeta",
  716. "define": "retain-untyped-meta",
  717. "doc": "Prevents arbitrary expression metadata from being discarded upon typing."
  718. },
  719. {
  720. "name": "Scriptable",
  721. "define": "scriptable",
  722. "doc": "GenCPP internal.",
  723. "platforms": ["cpp"]
  724. },
  725. {
  726. "name": "ShallowExpose",
  727. "define": "shallow-expose",
  728. "doc": "Expose types to surrounding scope of Haxe generated closure without writing to window object.",
  729. "platforms": ["js"]
  730. },
  731. {
  732. "name": "SourceHeader",
  733. "define": "source-header",
  734. "doc": "Print value as comment on top of generated files, use '' value to disable."
  735. },
  736. {
  737. "name": "SourceMapContent",
  738. "define": "source-map-content",
  739. "doc": "Include the Haxe sources as part of the JS source map.",
  740. "platforms": ["js"]
  741. },
  742. {
  743. "name": "Static",
  744. "define": "static",
  745. "doc": "Defined if the current target is static.",
  746. "reserved": true
  747. },
  748. {
  749. "name": "StdEncodingUtf8",
  750. "define": "std-encoding-utf8",
  751. "doc": "Force utf8 encoding for stdin, stdout and stderr",
  752. "platforms": ["python"]
  753. },
  754. {
  755. "name": "Swc",
  756. "define": "swc",
  757. "doc": "Output a SWC instead of a SWF.",
  758. "platforms": ["flash"],
  759. "reserved": true
  760. },
  761. {
  762. "name": "SwfCompressLevel",
  763. "define": "swf-compress-level",
  764. "doc": "Set the amount of compression for the SWF output.",
  765. "platforms": ["flash"],
  766. "params": ["level: 1-9"]
  767. },
  768. {
  769. "name": "SwfDebugPassword",
  770. "define": "swf-debug-password",
  771. "doc": "Set a password for debugging.",
  772. "platforms": ["flash"],
  773. "params": ["password"]
  774. },
  775. {
  776. "name": "SwfDirectBlit",
  777. "define": "swf-direct-blit",
  778. "doc": "Use hardware acceleration to blit graphics.",
  779. "platforms": ["flash"]
  780. },
  781. {
  782. "name": "SwfGpu",
  783. "define": "swf-gpu",
  784. "doc": "Use GPU compositing features when drawing graphics.",
  785. "platforms": ["flash"]
  786. },
  787. {
  788. "name": "SwfHeader",
  789. "define": "swf-header",
  790. "doc": "define SWF header (width:height:fps:color)",
  791. "platforms": ["flash"]
  792. },
  793. {
  794. "name": "SwfMetadata",
  795. "define": "swf-metadata",
  796. "doc": "Include contents of the given file as metadata in the SWF.",
  797. "platforms": ["flash"],
  798. "params": ["file"]
  799. },
  800. {
  801. "name": "SwfPreloaderFrame",
  802. "define": "swf-preloader-frame",
  803. "doc": "Insert empty first frame in SWF.",
  804. "platforms": ["flash"]
  805. },
  806. {
  807. "name": "SwfProtected",
  808. "define": "swf-protected",
  809. "doc": "Compile Haxe `private` as `protected` in the SWF instead of `public`.",
  810. "platforms": ["flash"]
  811. },
  812. {
  813. "name": "SwfScriptTimeout",
  814. "define": "swf-script-timeout",
  815. "doc": "Maximum ActionScript processing time before script stuck dialog box displays.",
  816. "platforms": ["flash"],
  817. "params": ["time in seconds"]
  818. },
  819. {
  820. "name": "SwfUseDoAbc",
  821. "define": "swf-use-doabc",
  822. "doc": "Use `DoAbc` SWF-tag instead of `DoAbcDefine`.",
  823. "platforms": ["flash"]
  824. },
  825. {
  826. "name": "Sys",
  827. "define": "sys",
  828. "doc": "Defined for all system platforms.",
  829. "reserved": true
  830. },
  831. {
  832. "name": "UseNekoc",
  833. "define": "use-nekoc",
  834. "doc": "Use `nekoc` compiler instead of the internal one.",
  835. "platforms": ["neko"]
  836. },
  837. {
  838. "name": "Utf16",
  839. "define": "utf16",
  840. "doc": "Defined for all platforms that use UTF-16 string encoding with UCS-2 API.",
  841. "reserved": true
  842. },
  843. {
  844. "name": "Vcproj",
  845. "define": "vcproj",
  846. "doc": "GenCPP internal.",
  847. "platforms": ["cpp"]
  848. },
  849. {
  850. "name": "WarnVarShadowing",
  851. "define": "warn-var-shadowing",
  852. "doc": "Warn about shadowing variable declarations.",
  853. "deprecated": "Use -w to configure warnings. See https://haxe.org/manual/cr-warnings.html for more information."
  854. },
  855. {
  856. "name": "NoTre",
  857. "define": "no-tre",
  858. "doc": "Disable tail recursion elimination."
  859. },
  860. {
  861. "name": "MessageReporting",
  862. "define": "message.reporting",
  863. "signatureNeutral": true,
  864. "doc": "Select message reporting mode for compiler output. (default: pretty)",
  865. "default": "pretty",
  866. "params": ["mode: classic | pretty | indent"]
  867. },
  868. {
  869. "name": "MessageColor",
  870. "define": "message.color",
  871. "signatureNeutral": true,
  872. "doc": "Enable ANSI color codes in message reporting."
  873. },
  874. {
  875. "name": "MessageAbsolutePositions",
  876. "define": "message.absolute-positions",
  877. "signatureNeutral": true,
  878. "doc": "Use absolute character positions instead of line/columns for message reporting."
  879. },
  880. {
  881. "name": "MessageLogFile",
  882. "define": "message.log-file",
  883. "signatureNeutral": true,
  884. "doc": "Path to a text file to write message reporting to, in addition to regular output."
  885. },
  886. {
  887. "name": "MessageLogFormat",
  888. "define": "message.log-format",
  889. "signatureNeutral": true,
  890. "doc": "Select message reporting mode for message log file. (default: indent)",
  891. "default": "indent",
  892. "params": ["format: classic | pretty | indent"]
  893. }
  894. ]