FNA-VSCode-Template/.vscode/tasks.json
2019-02-20 00:18:17 -08:00

154 lines
5.0 KiB
JSON

{
"version": "2.0.0",
"tasks": [
{
"label": "Restore Project",
"type": "shell",
"command": "msbuild /t:restore",
"group": "build",
"problemMatcher": "$msCompile"
},
{
// this does a bunch of stuff:
// - update submodules to lastest (fetch latest Nez version)
// - clean, restore and rebuild Nez.sln (nuget restore to get latest packages)
// - clean, restore and rebuild Nez.FNA.sln (nuget restore Nez.FNA)
"label": "Update, Restore and Rebuild Nez",
"type": "shell",
"command": "git submodule foreach --recursive git pull && msbuild Nez/Nez.sln '/t:clean;restore;build' && msbuild Nez/Nez.FNA.sln '/t:clean;restore;build'",
"group": "build",
"problemMatcher": "$msCompile",
"presentation": {
"echo": true,
"reveal": "always",
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
},
},
{
"label": "Clean Project",
"type": "shell",
"command": "msbuild project_name /t:clean /p:configuration=Debug ; msbuild project_name /t:clean /p:configuration=Release",
"group": "build",
"problemMatcher": "$msCompile",
},
{
"label": "Build (Debug)",
"type": "shell",
"command": "msbuild",
"args": [
"project_name",
"/p:configuration=Debug",
"/t:build"
],
"group": "build",
"problemMatcher": "$msCompile",
"dependsOn": "Build Content",
},
{
"label": "Build (Release)",
"type": "shell",
"command": "msbuild",
"args": [
"project_name",
"/p:configuration=Release",
"/t:build"
],
"group": "build",
"problemMatcher": "$msCompile",
},
{
"label": "Build and Run (Debug)",
"type": "shell",
"group": "build",
"osx":{
"command": "DYLD_LIBRARY_PATH=${workspaceFolder}/project_name/bin/Debug/osx/ mono ${workspaceFolder}/project_name/bin/Debug/project_name.exe"
},
"windows":{
"command": "cmd",
"args": [
"/k",
"${workspaceFolder}/project_name/bin/Debug/project_name.exe"
]
},
"dependsOn": "Build (Debug)",
"problemMatcher": "$msCompile"
},
{
"label": "Build and Run (Release)",
"type": "shell",
"group": "build",
"osx":{
"command": "DYLD_LIBRARY_PATH=${workspaceFolder}/project_name/bin/Release/osx/ mono ${workspaceFolder}/project_name/bin/Release/project_name.exe"
},
"windows":{
"command": "cmd",
"args": [
"/k",
"${workspaceFolder}/project_name/bin/Release/project_name.exe"
]
},
"dependsOn": "Build (Release)",
"problemMatcher": "$msCompile"
},
{
"label": "Build Effects",
"type": "shell",
"group": "build",
"osx":{
"command": "${workspaceFolder}/.vscode/buildEffects.sh"
},
"windows":{
"command": "& ${workspaceFolder}/.vscode/buildEffects.ps1"
},
"problemMatcher": "$msCompile"
},
{
"label": "Build Content",
"type": "shell",
"group": "build",
"command": "msbuild /t:BuildContent",
"options": {
"cwd": "${workspaceFolder}/project_name"
},
"problemMatcher": "$msCompile"
},
{
"label": "Force Build Content",
"type": "shell",
"group": "build",
"command": "mono /Applications/Pipeline.app/Contents/MonoBundle/MGCB.exe /@:Content.mgcb -r",
"options": {
"cwd": "${workspaceFolder}/project_name/CompiledContent"
},
"problemMatcher": "$msCompile"
},
{
"label": "Open Pipeline Tool",
"type": "shell",
"group": "build",
"command": "export MONOGAME_PIPELINE_PROJECT=${workspaceFolder}/project_name/CompiledContent/Content.mgcb && /Applications/Pipeline.app/Contents/MacOS/Pipeline",
"problemMatcher": "$msCompile"
},
{
"label": "Process T4 Templates",
"type": "shell",
"command": "${workspaceFolder}/.vscode/processT4Templates.sh",
"group": "build",
"problemMatcher": "$msCompile",
},
]
}