/ .vscode / tasks.json
tasks.json
 1  {
 2      // See https://go.microsoft.com/fwlink/?LinkId=733558
 3      // for the documentation about the tasks.json format
 4      "version": "2.0.0",
 5  	"type": "shell",
 6  	"group": "build",
 7  	"presentation": {
 8  		"echo": true,
 9  		"reveal": "always",
10  		"focus": false,
11  		"panel": "shared",
12  		"showReuseMessage": true,
13  		"clear": false,
14  		"revealProblems": "onProblem"
15  	},
16  	"options": {
17  		"cwd": "${workspaceFolder}"
18  	},
19  	"problemMatcher": {
20  		"owner": "cpp",
21  		"fileLocation": ["relative", "${workspaceFolder}"],
22  		"pattern": {
23  		  "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error|fatal error):\\s+(.*)$",
24  		  "file": 1,
25  		  "line": 2,
26  		  "column": 3,
27  		  "severity": 4,
28  		  "message": 5
29  		}
30  	},
31      "tasks": [
32          {
33              "label": "Build (Debug)",
34              "command": "make DEBUG=1"
35          },
36          {
37              "label": "Clean",
38              "command": "make clean"
39  		},
40  		{
41  			"label": "Build Bootloader",
42  			"command": "make bootloader"
43  		},
44          {
45              "label": "Clean Bootloader",
46              "command": "make clean_bootloader"
47          },
48          {
49              "label": "Flash Bootloader",
50              "command": "make flash_bootloader"
51          },
52          {
53              "label": "Build & Flash (Release)",
54              "command": "make flash_all"
55          },
56          {
57              "label": "Build (Release UF2)",
58              "command": "make release",
59              "group": {
60                  "kind": "build",
61                  "isDefault": true
62              }
63          },
64          {
65              "label": "Build (Release UF2 with Debugging)",
66              "command": "make release DEBUG=1",
67          },
68          {
69              "label": "Erase Target Controller",
70              "command": "make erase"
71  		},
72  		{
73  			"label": "Generate compile_commands.json",
74  			"command": "compiledb make release",
75  		}
76      ]
77  }