-
Notifications
You must be signed in to change notification settings - Fork 19
/
tasks.json
147 lines (145 loc) · 3.57 KB
/
tasks.json
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
{
"version": "2.0.0",
// All tasks in this file inherit the following top-level fields. These can be
// shared because all tasks are implemented in the tasks.sh shell script.
"type": "shell",
"command": ".vscode/tasks.sh",
"presentation": {
// Do not have VSCode print ".vscode/tasks.sh task" everytime a task is run.
// We can let tasks.sh print something more useful instead.
"echo": false,
},
"problemMatcher": [],
// Because of the above, most task definitions only need to map user-readable
// UI labels (what shows under the Ctrl+Shift+P -> "Tasks: Run task" submenu)
// to an argument for the tasks.sh script that identifies the task to run.
"tasks": [
{
"label": "Create rootfs for virtual machine if absent",
"args": ["create-rootfs"],
},
{
"label": "Compile and install autostart",
"args": ["install-autostart"],
},
{
"label": "Start virtual machine",
"args": ["start"],
"presentation": {
"focus": true,
},
"isBackground": true,
// For this task to be a background task of a launch.json debugger setup,
// a non-empty problem matcher must be defined. This is just a dummy one.
"problemMatcher": [
{
"pattern": [
{
"regexp": ".",
"file": 1,
"location": 2,
"message": 3,
}
],
"background": {
"activeOnStart": true,
"beginsPattern": ".",
"endsPattern": ".",
}
}
],
},
{
"label": "Start virtual machine waiting for debugger",
"args": ["start-wait-dbg"],
"presentation": {
"focus": true,
},
"isBackground": true,
"problemMatcher": [
{
"pattern": [
{
"regexp": ".",
"file": 1,
"location": 2,
"message": 3,
}
],
"background": {
"activeOnStart": true,
"beginsPattern": ".",
"endsPattern": ".",
}
}
],
},
{
"label": "Stop virtual machine",
"args": ["stop"],
},
{
"label": "SSH into the virtual machine",
"args": ["ssh"],
"presentation": {
"focus": true,
},
},
{
"label": "Create .config for virtual machine if absent",
"args": ["defconfig"],
},
{
"label": "Build kernel",
"args": ["build"],
// Map this task to the Ctrl+Shift+P -> "Run build task" command.
"group": {
"kind": "build",
"isDefault": true,
},
},
{
"label": "Menuconfig",
"args": ["menuconfig"],
"presentation": {
"focus": true,
},
},
{
"label": "Make clean",
"args": ["clean"],
},
{
"label": "Chroot into the virtual machine's rootfs",
"args": ["chroot"],
},
{
"label": "Compile and install BPF selftests",
"args": ["install-bpf-selftests"],
},
{
"label": "Run BPF selftests",
"args": ["run-bpf-selftests"],
},
{
"label": "Run BPF selftests in this file",
"args": ["run-bpf-selftests", "${file}"],
},
{
"label": "Update linux-kernel-vscode setup",
"args": ["update"],
},
{
"label": "Ensure that KCOV is enabled",
"args": ["enable-kcov"],
},
{
"label": "Fuzz the kernel in the virtual machine",
"args": ["fuzz"],
},
{
"label": "Build systemtap tracer",
"args": ["systemtap-build"],
}
]
}