ClassicOS/.vscode/tasks.json

85 lines
1.5 KiB
JSON

{
"version": "2.0.0",
"tasks": [
{
"label": "Compile C program",
"type": "shell",
"command": "/usr/bin/gcc",
"args": [
"-std=c17",
"-Wall",
"-Wextra",
"-pedantic",
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "Compile C++ program",
"type": "shell",
"command": "/usr/bin/g++",
"args": [
"-std=c++20",
"-Wall",
"-Wextra",
"-pedantic",
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "Assemble NASM program",
"type": "shell",
"command": "/usr/bin/nasm",
"args": [
"-f",
"elf64",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}.o"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "Link object file",
"type": "shell",
"command": "/usr/bin/ld",
"args": [
"${fileDirname}/${fileBasenameNoExtension}.o",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "Run program",
"type": "shell",
"command": "qemu-x86_64",
"args": [
"${fileDirname}/${fileBasenameNoExtension}"
],
"group": {
"kind": "test",
"isDefault": true
}
}
]
}