1+ {
2+ "title" : " MIPS GCC Options" ,
3+ "$schema" : " http://json-schema.org/draft-04/schema#" ,
4+ "type" : " object" ,
5+ "definitions" : {
6+ "FLAGS" : {
7+ "markdownDescription" : " Other Options" ,
8+ "description.zh-cn" : " 其他选项" ,
9+ "size" : " huge" ,
10+ "type" : [
11+ " string" ,
12+ " array"
13+ ],
14+ "items" : {
15+ "type" : " string"
16+ },
17+ "default" : []
18+ }
19+ },
20+ "properties" : {
21+ "beforeBuildTasks" : {
22+ "markdownDescription" : " List of commands to execute before build" ,
23+ "description.zh-cn" : " 构建前要执行的命令列表" ,
24+ "type" : " array" ,
25+ "default" : [
26+ {
27+ "name" : " clean" ,
28+ "command" : " del /Q \" ${OutDir}\\ *.*\" "
29+ }
30+ ],
31+ "items" : {
32+ "type" : " object" ,
33+ "required" : [
34+ " name" ,
35+ " command"
36+ ],
37+ "properties" : {
38+ "name" : {
39+ "markdownDescription" : " A readable name for display" ,
40+ "description.zh-cn" : " 用于显示的可读名称" ,
41+ "type" : " string"
42+ },
43+ "command" : {
44+ "markdownDescription" : " Shell command line" ,
45+ "description.zh-cn" : " Shell 命令行" ,
46+ "type" : " string"
47+ },
48+ "disable" : {
49+ "markdownDescription" : " Disable this command" ,
50+ "description.zh-cn" : " 禁用此命令" ,
51+ "type" : " boolean" ,
52+ "enum" : [
53+ true ,
54+ false
55+ ]
56+ },
57+ "abortAfterFailed" : {
58+ "markdownDescription" : " Whether to skip subsequent commands if this command failed" ,
59+ "description.zh-cn" : " 是否在此命令失败时,跳过后续的命令" ,
60+ "type" : " boolean" ,
61+ "enum" : [
62+ true ,
63+ false
64+ ]
65+ },
66+ "stopBuildAfterFailed" : {
67+ "markdownDescription" : " Whether to stop compiling directly when this command failed" ,
68+ "description.zh-cn" : " 是否在此命令失败时,直接停止编译" ,
69+ "type" : " boolean" ,
70+ "enum" : [
71+ true ,
72+ false
73+ ]
74+ }
75+ }
76+ }
77+ },
78+ "afterBuildTasks" : {
79+ "markdownDescription" : " List of commands to execute after build" ,
80+ "description.zh-cn" : " 构建结束后要执行的命令列表" ,
81+ "type" : " array" ,
82+ "default" : [
83+ {
84+ "name" : " clean" ,
85+ "command" : " del \" ${OutDir}\\ *._*\" "
86+ }
87+ ],
88+ "items" : {
89+ "type" : " object" ,
90+ "required" : [
91+ " name" ,
92+ " command"
93+ ],
94+ "properties" : {
95+ "name" : {
96+ "markdownDescription" : " A readable name for display" ,
97+ "description.zh-cn" : " 用于显示的可读名称" ,
98+ "type" : " string"
99+ },
100+ "command" : {
101+ "markdownDescription" : " Shell command line" ,
102+ "description.zh-cn" : " Shell 命令行" ,
103+ "type" : " string"
104+ },
105+ "disable" : {
106+ "markdownDescription" : " Disable this command" ,
107+ "description.zh-cn" : " 禁用此命令" ,
108+ "type" : " boolean" ,
109+ "enum" : [
110+ true ,
111+ false
112+ ]
113+ },
114+ "abortAfterFailed" : {
115+ "markdownDescription" : " Whether to skip subsequent commands if this command failed" ,
116+ "description.zh-cn" : " 是否在此命令失败时,跳过后续的命令" ,
117+ "type" : " boolean" ,
118+ "enum" : [
119+ true ,
120+ false
121+ ]
122+ }
123+ }
124+ }
125+ },
126+ "global" : {
127+ "markdownDescription" : " Global Options" ,
128+ "description.zh-cn" : " 全局选项" ,
129+ "type" : " object" ,
130+ "properties" : {
131+ "output-debug-info" : {
132+ "markdownDescription" : " Output debug information" ,
133+ "description.zh-cn" : " 输出调试信息" ,
134+ "type" : " string" ,
135+ "default" : " disable" ,
136+ "enum" : [
137+ " disable" ,
138+ " enable" ,
139+ " dwarf-2" ,
140+ " dwarf-3"
141+ ]
142+ },
143+ "$float-abi-type" : {
144+ "markdownDescription" : " Hardware floating-point ABI" ,
145+ "description.zh-cn" : " 硬件浮点 ABI" ,
146+ "type" : " string" ,
147+ "default" : " softfp" ,
148+ "enum" : [
149+ " soft-float" ,
150+ " hard-float"
151+ ]
152+ },
153+ "arch" : {
154+ "markdownDescription" : " Arch" ,
155+ "description.zh-cn" : " 指令集(arch)" ,
156+ "size" : " small" ,
157+ "type" : " string" ,
158+ "auto_complete_ctx" : " gcc.compiler.archs"
159+ },
160+ "abi" : {
161+ "readable_name" : " ABI" ,
162+ "readable_name.zh-cn" : " 调用约定(abi)" ,
163+ "markdownDescription" : " Integer and floating-point calling convention" ,
164+ "description.zh-cn" : " 整数和浮点调用约定" ,
165+ "size" : " small" ,
166+ "auto_complete_ctx" : " gcc.compiler.abis"
167+ },
168+ "misc-control" : {
169+ "markdownDescription" : " Other Global Options" ,
170+ "description.zh-cn" : " 编译器附加选项(全局)" ,
171+ "$ref" : " #/definitions/FLAGS" ,
172+ "default" : " "
173+ }
174+ }
175+ },
176+ "c/cpp-compiler" : {
177+ "markdownDescription" : " C/C++ Compiler Options" ,
178+ "description.zh-cn" : " C/C++ 编译器选项" ,
179+ "type" : " object" ,
180+ "properties" : {
181+ "language-c" : {
182+ "markdownDescription" : " C Standard" ,
183+ "description.zh-cn" : " C 标准" ,
184+ "type" : " string" ,
185+ "default" : " c11" ,
186+ "enum" : [
187+ " c89" ,
188+ " c90" ,
189+ " c99" ,
190+ " c11" ,
191+ " c17" ,
192+ " gnu89" ,
193+ " gnu90" ,
194+ " gnu99" ,
195+ " gnu11" ,
196+ " gnu17"
197+ ]
198+ },
199+ "language-cpp" : {
200+ "markdownDescription" : " C++ Standard" ,
201+ "description.zh-cn" : " C++ 标准" ,
202+ "type" : " string" ,
203+ "default" : " c++11" ,
204+ "enum" : [
205+ " c++98" ,
206+ " gnu++98" ,
207+ " c++11" ,
208+ " gnu++11" ,
209+ " c++14" ,
210+ " gnu++14" ,
211+ " c++17" ,
212+ " gnu++17"
213+ ]
214+ },
215+ "optimization" : {
216+ "markdownDescription" : " Optimization Level" ,
217+ "description.zh-cn" : " 代码优化级别" ,
218+ "type" : " string" ,
219+ "default" : " level-0" ,
220+ "enum" : [
221+ " level-0" ,
222+ " level-1" ,
223+ " level-2" ,
224+ " level-3" ,
225+ " level-size" ,
226+ " level-fast" ,
227+ " level-debug"
228+ ],
229+ "enumDescriptions" : [
230+ " -O0 (default)" ,
231+ " -O1" ,
232+ " -O2" ,
233+ " -O3" ,
234+ " -Os" ,
235+ " -Ofast" ,
236+ " -Og"
237+ ]
238+ },
239+ "warnings" : {
240+ "markdownDescription" : " Warning Level" ,
241+ "description.zh-cn" : " 警告等级" ,
242+ "type" : " string" ,
243+ "default" : " all-warnings" ,
244+ "enum" : [
245+ " no-warnings" ,
246+ " all-warnings"
247+ ]
248+ },
249+ "turn-warning-into-errors" : {
250+ "markdownDescription" : " Turn warnings into errors" ,
251+ "description.zh-cn" : " 将警告转化为错误" ,
252+ "type" : " boolean"
253+ },
254+ "one-elf-section-per-function" : {
255+ "markdownDescription" : " One ELF Section per Function" ,
256+ "type" : " boolean"
257+ },
258+ "one-elf-section-per-data" : {
259+ "markdownDescription" : " One ELF Section per Data" ,
260+ "type" : " boolean"
261+ },
262+ "C_FLAGS" : {
263+ "markdownDescription" : " Other C Compiler Options" ,
264+ "description.zh-cn" : " C 编译器附加选项" ,
265+ "$ref" : " #/definitions/FLAGS" ,
266+ "default" : " "
267+ },
268+ "CXX_FLAGS" : {
269+ "markdownDescription" : " Other C++ Compiler Options" ,
270+ "description.zh-cn" : " C++ 编译器附加选项" ,
271+ "$ref" : " #/definitions/FLAGS" ,
272+ "default" : " "
273+ }
274+ }
275+ },
276+ "asm-compiler" : {
277+ "markdownDescription" : " Assembler Options" ,
278+ "description.zh-cn" : " 汇编器选项" ,
279+ "type" : " object" ,
280+ "properties" : {
281+ "defines" : {
282+ "readable_name" : " Preprocessor Definitions" ,
283+ "readable_name.zh-cn" : " 预处理器定义" ,
284+ "markdownDescription" : " Preprocessor Definitions" ,
285+ "description.zh-cn" : " 预处理器定义" ,
286+ "type" : " array" ,
287+ "items" : {
288+ "type" : " string"
289+ }
290+ },
291+ "ASM_FLAGS" : {
292+ "markdownDescription" : " Other Assembler Options" ,
293+ "description.zh-cn" : " 汇编器附加选项" ,
294+ "$ref" : " #/definitions/FLAGS" ,
295+ "default" : " "
296+ }
297+ }
298+ },
299+ "linker" : {
300+ "markdownDescription" : " Linker Options" ,
301+ "description.zh-cn" : " 链接器选项" ,
302+ "type" : " object" ,
303+ "properties" : {
304+ "output-format" : {
305+ "type" : " string" ,
306+ "default" : " elf" ,
307+ "description" : " Output Format" ,
308+ "description.zh-cn" : " 输出格式" ,
309+ "enum" : [
310+ " elf" ,
311+ " lib"
312+ ],
313+ "enumDescriptions" : [
314+ " ELF" ,
315+ " LIB"
316+ ]
317+ },
318+ "$disableOutputTask" : {
319+ "type" : " boolean" ,
320+ "markdownDescription" : " Not Output Hex/Bin File" ,
321+ "description.zh-cn" : " 不生成 Hex/Bin 文件" ,
322+ "enum" : [
323+ true ,
324+ false
325+ ]
326+ },
327+ "remove-unused-input-sections" : {
328+ "markdownDescription" : " Remove Unused Input Sections" ,
329+ "type" : " boolean"
330+ },
331+ "not-print-mem-usage" : {
332+ "markdownDescription" : " Not Print Memory Usage (disable: -Wl,--print-memory-usage)" ,
333+ "type" : " boolean"
334+ },
335+ "LD_FLAGS" : {
336+ "readable_name" : " Other Linker Options" ,
337+ "readable_name.zh-cn" : " 链接器附加选项" ,
338+ "markdownDescription" : " Use '-Wl[,option]...' pass options to the linker" ,
339+ "description.zh-cn" : " 使用 '-Wl[,option]...' 传递链接器选项" ,
340+ "$ref" : " #/definitions/FLAGS" ,
341+ "default" : " "
342+ },
343+ "LIB_FLAGS" : {
344+ "readable_name" : " Lib Flags" ,
345+ "readable_name.zh-cn" : " 链接库选项" ,
346+ "markdownDescription" : " Lib Flags, like: -lxxx" ,
347+ "description.zh-cn" : " 链接库选项,例如:-lxxx" ,
348+ "$ref" : " #/definitions/FLAGS" ,
349+ "default" : " "
350+ },
351+ "object-order" : {
352+ "type" : " array" ,
353+ "readable_name" : " Object Order" ,
354+ "readable_name.zh-cn" : " Object Order" ,
355+ "markdownDescription" : " Object Order (used to determine the order in which object files are linked)" ,
356+ "description.zh-cn" : " Object Order(用于决定某些 obj 文件的链接顺序)" ,
357+ "default" : [],
358+ "properties" : {
359+ "pattern" : {
360+ "type" : " string" ,
361+ "readable_name" : " Pattern" ,
362+ "description" : " A glob pattern (https://github.com/dazinator/DotNet.Glob) to match a object (*.o) file" ,
363+ "default" : " **/your/pattern/for/object/file/path/*.o"
364+ },
365+ "order" : {
366+ "type" : " number" ,
367+ "readable_name" : " Order" ,
368+ "description" : " An integer number (The smaller the value, the higher the priority)" ,
369+ "default" : 0
370+ }
371+ }
372+ }
373+ }
374+ }
375+ }
376+ }
0 commit comments