{ "folders": [ { "path": "." } ], "settings": { "cargo_task": [ "cpp_out all!Unix: cpp_out", "jaby_engine_fconv all!Unix: jaby_engine_fconv", "mkoverlay all!Unix: mkoverlay", "psxcdgen_ex all!Unix: psxcdgen_ex", "psxcdread all!Unix: psxcdread", "psxreadmap all!Unix: psxreadmap", "wslpath all!Unix: wslpath", "cpp_out all-windows!Windows: cpp_out", "jaby_engine_fconv all-windows!Windows: jaby_engine_fconv", "mkoverlay all-windows!Windows: mkoverlay", "psxcdgen_ex all-windows!Windows: psxcdgen_ex", "psxcdread all-windows!Windows: psxcdread", "psxreadmap all-windows!Windows: psxreadmap", "wslpath all-windows!Windows: wslpath" ] }, "tasks": { "version": "2.0.0", "tasks": [ { "label": "cargo2", "type": "shell", "group": { "kind": "build" }, "windows": { "command": "wsl --shell-type login make -C ./${input:windows_cargo_task} CARGO_CMD=${input:cargo cmd} BUILD_PROFILE=${input:build cfg}" }, "linux": { "command": "make -C ./${input:linux_cargo_task} BUILD_PROFILE=${input:build cfg}" }, "problemMatcher": [] }, { "label": "all", "type": "shell", "windows": { "command": "./build_all.bat ${input:cargo cmd}" }, "linux": { "command": "./build_all.sh ${input:cargo cmd}" }, "group": { "kind": "build" }, "options": { "env": { "win_tools": "psxcdgen_ex psxcdread psxreadmap wslpath", "linux_tools": "cpp_out psxcdgen_ex jaby_engine_fconv mkoverlay", "clean_tools": "cdtypes tool_helper" } } }, { "label": "cargo", "type": "shell", "windows": { "command": "./run_cargo.bat ${input:project} ${input:cargo cmd} ${input:build cfg} ${input:cargo target}", }, "linux": { "command": "./run_cargo.sh ${input:project} ${input:cargo cmd} ${input:build cfg} ${input:cargo target}", }, "group": { "kind": "build", }, }, { "label": "cargo test", "type": "shell", "command": "./run_cargo ${input:project} test release ${input:cargo target}" }, { "label": "run test make", "type": "shell", "command": "wsl make -f Test.mk test_${input:project}", "group": { "kind": "build", }, "options": { "cwd": "${workspaceFolder}/Tests" }, "dependsOn": ["cargo test"], "dependsOrder": "sequence" } ], "inputs": [ { "id": "windows_cargo_task", "type": "command", "command": "shellCommand.execute", "args": { "command": "powershell", "commandArgs": ["-command", "'${config:cargo_task}'.Replace(',',\"`n\")"], "fieldSeparator": "!" } }, { "id": "planschi", "type": "command", "command": "shellCommand.execute", "args": { "command": "printf A!B\\nB!C", "fieldSeparator": "!" } }, { "id": "build cfg", "type": "pickString", "options": ["debug", "release"], "default": "release", "description": "build configuration" }, { "id": "project", "type": "pickString", "options": ["cdtypes", "cpp_out", "jaby_engine_fconv", "mkoverlay", "psxreadmap", "psxcdgen_ex", "psxcdread", "tool_helper", "wslpath"], "description": "project to build" }, { "id": "cargo cmd", "type":"pickString", "options": ["build", "check", "update", "clean", "run", "tree"], "default": "build", "description": "cargo command to run" }, { "id": "cargo target", "type": "pickString", "options": ["linux", "windows"], "default": "linux", "description": "The target for the tool to build" } ] } }