chore: Update vscode config

Signed-off-by: EnderIce2 <enderice2@protonmail.com>
This commit is contained in:
EnderIce2 2024-12-20 04:01:33 +02:00
parent 3798ec0f58
commit f038f6110e
Signed by: enderice2
GPG Key ID: EACC3AD603BAB4DD
4 changed files with 32 additions and 148 deletions

View File

@ -1,5 +1,7 @@
{ {
"Fennix Kernel C++ Header": { "Fennix Kernel C++ Header": {
"isFileTemplate": true,
"scope": "c,cpp",
"prefix": [ "prefix": [
"head", "head",
], ],
@ -31,6 +33,8 @@
"description": "Create kernel header." "description": "Create kernel header."
}, },
"Fennix Kernel C Header": { "Fennix Kernel C Header": {
"isFileTemplate": true,
"scope": "c,cpp",
"prefix": [ "prefix": [
"headc", "headc",
], ],
@ -74,6 +78,7 @@
"description": "Create kernel documentation brief." "description": "Create kernel documentation brief."
}, },
"License": { "License": {
"isFileTemplate": true,
"prefix": [ "prefix": [
"license", "license",
], ],

View File

@ -1,14 +0,0 @@
{
"recommendations": [
"jeff-hykin.better-cpp-syntax",
"aaron-bond.better-comments",
"ms-vscode.cpptools",
"maziac.hex-hover-converter",
"zixuanwang.linkerscript",
"webfreak.debug",
"ibm.output-colorizer",
"wayou.vscode-todo-highlight",
"gruntfuggly.todo-tree",
"maziac.asm-code-lens"
]
}

View File

@ -2,10 +2,10 @@
"version": "0.2.0", "version": "0.2.0",
"configurations": [ "configurations": [
{ {
"name": "Launch QEMU and debug the kernel", "name": "Launch QEMU & debug the kernel",
"type": "cppdbg", "type": "cppdbg",
"request": "launch", "request": "launch",
"program": "${workspaceFolder}/fennix.elf", "program": "${workspaceFolder}/../Kernel/fennix.elf",
"cwd": "${workspaceFolder}", "cwd": "${workspaceFolder}",
"args": [], "args": [],
"targetArchitecture": "x64", "targetArchitecture": "x64",
@ -14,6 +14,7 @@
"miDebuggerArgs": "", "miDebuggerArgs": "",
"externalConsole": false, "externalConsole": false,
"additionalSOLibSearchPath": "${workspaceFolder}", "additionalSOLibSearchPath": "${workspaceFolder}",
"internalConsoleOptions": "neverOpen",
"customLaunchSetupCommands": [ "customLaunchSetupCommands": [
{ {
"text": "target remote localhost:1234", "text": "target remote localhost:1234",
@ -31,145 +32,37 @@
"description": "Make breakpoint pending on future shared library load." "description": "Make breakpoint pending on future shared library load."
}, },
{ {
"text": "file ${workspaceFolder}/fennix.elf", "text": "file ${workspaceFolder}/../Kernel/fennix.elf",
"description": "Load binary." "description": "Load binary"
}, },
{ {
"text": "source ${workspaceFolder}/.gdbinit" "text": "add-symbol-file ${workspaceFolder}/../initrd_tmp_data/bin/utest",
"description": "Load /bin/utest",
"ignoreFailures": true
},
{
"text": "source ${workspaceFolder}/../tools/.gdbinit"
} }
], ],
"preLaunchTask": "launch-qemu" "preLaunchTask": "launch-qemu"
}, },
{ {
"name": "Attach to a running VM instance", "type": "gdb",
"type": "cppdbg", "request": "attach",
"request": "launch", "name": "Launch QEMU & attach to gdbserver",
"program": "${workspaceFolder}/fennix.elf", "executable": "${workspaceFolder}/../Kernel/fennix.elf",
"cwd": "${workspaceFolder}", "target": ":1234",
"args": [], "remote": true,
"targetArchitecture": "x64", "cwd": "${workspaceRoot}",
"MIMode": "gdb", "valuesFormatting": "parseText",
"miDebuggerPath": "${workspaceFolder}/../tools/cross/bin/x86_64-fennix-gdb", "gdbpath": "${workspaceFolder}/../tools/cross/bin/x86_64-fennix-gdb",
"miDebuggerArgs": "", "autorun": [
"externalConsole": false, "set auto-load safe-path ${workspaceFolder}",
"additionalSOLibSearchPath": "${workspaceFolder}", "source ${workspaceFolder}/../tools/.gdbinit",
"customLaunchSetupCommands": [
{
"text": "target remote localhost:1234",
"description": "Connect to QEMU remote debugger"
}
], ],
"setupCommands": [ "internalConsoleOptions": "neverOpen",
{ "printCalls": false,
"description": "Enable pretty-printing for gdb", "preLaunchTask": "launch-qemu"
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"text": "set breakpoint pending on",
"description": "Make breakpoint pending on future shared library load."
},
{
"text": "file ${workspaceFolder}/fennix.elf",
"description": "Load binary."
},
{
"text": "source ${workspaceFolder}/.gdbinit"
}
],
},
{
"name": "Attach to VM w/utest",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/fennix.elf",
"cwd": "${workspaceFolder}",
"args": [],
"targetArchitecture": "x64",
"MIMode": "gdb",
"miDebuggerPath": "${workspaceFolder}/../tools/cross/bin/x86_64-fennix-gdb",
"miDebuggerArgs": "",
"externalConsole": false,
"additionalSOLibSearchPath": "${workspaceFolder}",
"customLaunchSetupCommands": [
{
"text": "target remote localhost:1234",
"description": "Connect to QEMU remote debugger"
}
],
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"text": "set breakpoint pending on",
"description": "Make breakpoint pending on future shared library load."
},
{
"text": "file ${workspaceFolder}/fennix.elf",
"description": "Load binary."
},
{
"text": "add-symbol-file ${workspaceFolder}/../initrd_tmp_data/bin/utest",
"description": "Load /bin/utest.",
"ignoreFailures": true
},
{
"text": "source ${workspaceFolder}/.gdbinit"
}
],
"preLaunchTask": "launch-qemu",
},
{
"name": "Attach to VM w/utest_linux",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/fennix.elf",
"cwd": "${workspaceFolder}",
"args": [],
"targetArchitecture": "x64",
"MIMode": "gdb",
"miDebuggerPath": "${workspaceFolder}/../tools/cross/bin/x86_64-fennix-gdb",
"miDebuggerArgs": "",
"externalConsole": false,
"additionalSOLibSearchPath": "${workspaceFolder}",
"customLaunchSetupCommands": [
{
"text": "target remote localhost:1234",
"description": "Connect to QEMU remote debugger"
}
],
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"text": "set breakpoint pending on",
"description": "Make breakpoint pending on future shared library load."
},
{
"text": "file ${workspaceFolder}/fennix.elf",
"description": "Load binary."
},
{
"text": "set debug-file-directory /usr/lib/debug",
"description": "Set debug-file-directory to /usr/lib/debug.",
"ignoreFailures": true
},
{
"text": "add-symbol-file ${workspaceFolder}/../initrd_tmp_data/bin/utest_linux",
"description": "Load /bin/utest_linux.",
"ignoreFailures": true
},
{
"text": "source ${workspaceFolder}/.gdbinit"
}
],
"preLaunchTask": "launch-qemu",
}, },
] ]
} }

View File

@ -4,7 +4,7 @@
{ {
"label": "launch-qemu", "label": "launch-qemu",
"type": "shell", "type": "shell",
"command": "make -j$(shell nproc) build && make -C ../ build_image && make -C ../ vscode_debug_only", "command": "make -C ../ build && make -C ../ vscode_debug_only",
"isBackground": true, "isBackground": true,
"problemMatcher": [], "problemMatcher": [],
"group": { "group": {