1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
{
"version": "2.0.0",
// Not _really_ necessary to run , but it's easier. Maybe.
"windows": {
"options": {
"env": {
"VsDevCmd": "\"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Auxiliary\\Build\\vcvars64.bat\""
},
// All tasks that use "shell" will pass through this shell
"shell": {
// ... I can't really explain this.
// Just go with it. Maybe someone else knows more.
"executable": "cmd.exe",
"args": [
"/k", "%VsDevCmd%", "&&"
]
}
},
},
"tasks": [
{
"label": "make all",
"type": "process",
"command": "make",
"args": [
// Close the shell to make sure it can be reused
// by repeated tasks
"all", "&", "exit"
],
"group": "build",
"problemMatcher": ["$gcc", "$msCompile"]
},
{
"label": "make bin/bounce",
"type": "shell",
"command": "make",
"group": "build",
"args": [
"bin/bounce",
"&", "exit"
],
"problemMatcher": ["$gcc", "$msCompile"],
"promptOnClose": true,
},
{
"label": "test",
"type": "shell",
"command": "make",
"group": {
"kind": "test",
"isDefault": true
},
"args": [
"test", "&", "exit"
],
"problemMatcher": ["$gcc", "$msCompile"]
},
// Works on any file that has a corresponding binary
{
"label": "make active file",
"type": "shell",
"command": "make",
"group": {
"kind": "build",
"isDefault": true
},
"args": [
"bin/${fileBasenameNoExtension}",
"&", "exit"
],
"problemMatcher": ["$gcc", "$msCompile"],
"promptOnClose": true,
},
]
}