Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {
- "version": "2.0.0",
- "tasks": [
- // editor & game
- {
- "label": "editor&game [debug]",
- "dependsOrder": "sequence",
- "dependsOn": [
- "editor [debug]",
- "update gdextension api",
- "game [debug]"
- ],
- "problemMatcher": []
- },
- // -----------------------------------------------------------------
- // Editor
- // -----------------------------------------------------------------
- // editor
- {
- "label": "editor [debug]",
- "type": "shell",
- "options": {
- "cwd": "${workspaceFolder}/godot"
- },
- "windows": {
- "command": "scons",
- "args": [
- "platform=windows",
- "bits=64",
- "target=editor",
- "custom_modules=../ppgame/game_module",
- "dev_build=yes",
- "debug_symbols=yes",
- "compiledb=yes",
- "deprecated=no",
- ],
- "problemMatcher": "$msCompile"
- },
- "linux": {
- "command": "pyston-scons",
- "args": [
- "platform=linuxbsd",
- "bits=64",
- "target=editor",
- "custom_modules=../ppgame/game_module",
- "use_llvm=yes",
- "linker=mold",
- "dev_build=yes",
- "debug_symbols=yes",
- "compiledb=yes",
- "deprecated=no",
- ],
- "problemMatcher": "$gcc"
- }
- },
- // -----------------------------------------------------------------
- // GDExtension API
- // -----------------------------------------------------------------
- // generate gdextension api
- {
- "label": "generate gdextension api",
- "type": "shell",
- "options": {
- "cwd": "${workspaceFolder}/godot/bin"
- },
- "windows": {
- "command": "./godot.windows.editor.dev.x86_64.console.exe"
- },
- "linux": {
- "command": "./godot.linuxbsd.editor.dev.x86_64.llvm"
- },
- "args": [
- "--dump-extension-api",
- "--dump-gdextension-interface",
- "--headless",
- "--script"
- ],
- "hide": true,
- "problemMatcher": []
- },
- // copy extension extension_api.json
- {
- "label": "copy extension_api.json",
- "type": "shell",
- "windows": {
- "command": "copy"
- },
- "linux": {
- "command": "cp"
- },
- "args": [
- "${workspaceFolder}/godot/bin/extension_api.json",
- "${workspaceFolder}/godot-cpp/gdextension"
- ],
- "hide": true,
- "problemMatcher": []
- },
- // copy extension gdextension_interface.h
- {
- "label": "copy gdextension_interface.h",
- "type": "shell",
- "windows": {
- "command": "copy"
- },
- "linux": {
- "command": "cp"
- },
- "args": [
- "${workspaceFolder}/godot/bin/gdextension_interface.h",
- "${workspaceFolder}/godot-cpp/gdextension"
- ],
- "hide": true,
- "problemMatcher": []
- },
- // update extension api
- {
- "label": "update gdextension api",
- "dependsOrder": "sequence",
- "dependsOn": [
- "generate gdextension api",
- "copy extension_api.json",
- "copy gdextension_interface.h"
- ],
- "problemMatcher": []
- },
- // -----------------------------------------------------------------
- // Game
- // -----------------------------------------------------------------
- // game-1: gdextension
- {
- "label": "game-1 game [debug]",
- "type": "shell",
- "options": {
- "cwd": "${workspaceFolder}/ppgame/game_gdextension"
- },
- "windows": {
- "command": "scons",
- "args": [
- "platform=windows",
- "bits=64",
- "target=editor",
- "dev_build=yes",
- "debug_symbols=yes",
- "compiledb=yes"
- ],
- },
- "linux": {
- "command": "pyston-scons",
- "args": [
- "platform=linux",
- "bits=64",
- "target=editor",
- "use_llvm=yes",
- "dev_build=yes",
- "debug_symbols=yes",
- "compiledb=yes"
- ]
- },
- "hide": true,
- "problemMatcher": "$msCompile"
- },
- // game-2: merge compile_commands.json
- {
- "label": "game-2 merge compile_commands.json",
- "type": "shell",
- "options": {
- "cwd": "${workspaceFolder}"
- },
- "windows": {
- "command": "./jq.exe",
- "args": [
- "-s",
- "\"add\"",
- "godot/compile_commands.json",
- "ppgame/game_gdextension/compile_commands.json",
- "|",
- "Out-File",
- "-Encoding",
- "ascii",
- "compile_commands.json"
- ],
- },
- "linux": {
- "command": "jq",
- "args": [
- "--slurp",
- "'add'",
- "godot/compile_commands.json",
- "ppgame/game_gdextension/compile_commands.json",
- ">",
- "compile_commands.json"
- ]
- },
- "hide": true,
- "problemMatcher": []
- },
- // game-3: command clangd.restart
- {
- "label": "game-3 @command:clangd.restart",
- "command": "${command:clangd.restart}",
- "hide": true,
- "problemMatcher": []
- },
- // game
- {
- "label": "game [debug]",
- "dependsOrder": "sequence",
- "dependsOn": [
- "game-1 game [debug]",
- "game-2 merge compile_commands.json",
- "game-3 @command:clangd.restart"
- ],
- "group": {
- "kind": "build",
- "isDefault": true
- },
- "problemMatcher": []
- },
- // -----------------------------------------------------------------
- // Doxygen
- // -----------------------------------------------------------------
- // doxygen
- {
- "label": "doxygen",
- "type": "shell",
- "options": {
- "cwd": "${workspaceFolder}/doc/doxygen"
- },
- "command": "doxygen",
- "problemMatcher": []
- }
- ]
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement