From a2529d56c8ec2eff5f4592a0f31777a4e0094c61 Mon Sep 17 00:00:00 2001 From: cosmonaut Date: Tue, 2 Feb 2021 20:37:02 -0800 Subject: [PATCH] build and run x64 + dotnet 5 --- .vscode/launch.json | 24 ++++++------- .vscode/tasks.json | 44 +++++++++++++----------- ProjectName/ProjectName.Core.csproj | 2 +- ProjectName/ProjectName.Framework.csproj | 2 +- README.md | 12 ++++--- 5 files changed, 45 insertions(+), 39 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index 77132dc..e1e1c4a 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -6,9 +6,9 @@ "type": "clr", "request": "launch", "preLaunchTask": "Build: Framework Debug", - "program": "${workspaceFolder}/ProjectName/bin/Debug/net48/ProjectName.exe", + "program": "${workspaceFolder}/ProjectName/bin/Debug/x64/net461/ProjectName.exe", "args": [], - "cwd": "${workspaceFolder}", + "cwd": "${workspaceFolder}/ProjectName/bin/Debug/x64/net461", "console": "integratedTerminal", "internalConsoleOptions": "neverOpen" }, @@ -17,28 +17,28 @@ "type": "mono", "request": "launch", "preLaunchTask": "Build: Mono Debug", - "program": "${workspaceFolder}/ProjectName/bin/Debug/net48/ProjectName.exe", + "program": "${workspaceFolder}/ProjectName/bin/Debug/x64/net461/ProjectName.exe", "args": [], "env": { - "LD_LIBRARY_PATH": "${workspaceFolder}/ProjectName/bin/Debug/net48/lib64", - "DYLD_LIBRARY_PATH": "${workspaceFolder}/ProjectName/bin/Debug/net48/osx" + "LD_LIBRARY_PATH": "${workspaceFolder}/ProjectName/bin/x64/Debug/net461/lib64", + "DYLD_LIBRARY_PATH": "${workspaceFolder}/ProjectName/bin/x64/Debug/net461/osx" }, - "cwd": "${workspaceFolder}", + "cwd": "${workspaceFolder}/ProjectName/bin/Debug/x64/net461", "console": "integratedTerminal", "internalConsoleOptions": "neverOpen" }, { - "name": "Attach to Core Debugger", + "name": "Attach to .NET 5 Debugger", "type": "coreclr", "request": "launch", - "preLaunchTask": "Build: Core Debug", - "program": "${workspaceFolder}/ProjectName/bin/Debug/netcoreapp3.1/ProjectName.dll", + "preLaunchTask": "Build: .NET 5 Debug", + "program": "${workspaceFolder}/ProjectName/bin/Debug/net5.0/ProjectName.dll", "args": [], "env": { - "LD_LIBRARY_PATH": "${workspaceFolder}/ProjectName/bin/Debug/netcoreapp3.1/lib64", - "DYLD_LIBRARY_PATH": "${workspaceFolder}/ProjectName/bin/Debug/netcoreapp3.1/osx" + "LD_LIBRARY_PATH": "${workspaceFolder}/ProjectName/bin/Debug/net5.0/lib64", + "DYLD_LIBRARY_PATH": "${workspaceFolder}/ProjectName/bin/Debug/net5.0/osx" }, - "cwd": "${workspaceFolder}/ProjectName/bin/Debug/netcoreapp3.1", + "cwd": "${workspaceFolder}/ProjectName/bin/Debug/net5.0", "console": "integratedTerminal", "internalConsoleOptions": "neverOpen" } diff --git a/.vscode/tasks.json b/.vscode/tasks.json index fd135e4..fe5220a 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -26,7 +26,8 @@ "args": [ "-restore:True", "${workspaceFolder}/ProjectName.Framework.sln", - "-p:Configuration=Release" + "-p:Configuration=Release", + "-p:Platform=x64" ], "type": "shell", "group": { @@ -46,7 +47,7 @@ "LD_LIBRARY_PATH": "./lib64", "DYLD_LIBRARY_PATH": "./osx" }, - "cwd": "${workspaceFolder}/ProjectName/bin/Release/net48" + "cwd": "${workspaceFolder}/ProjectName/bin/x64/Release/net461" }, "type": "process", "group": { @@ -75,7 +76,8 @@ "args": [ "-restore:True", "${workspaceFolder}/ProjectName.Framework.sln", - "-p:Configuration=Debug" + "-p:Configuration=Debug", + "-p:Platform=x64" ], "type": "shell", "group": { @@ -95,7 +97,7 @@ "LD_LIBRARY_PATH": "./lib64", "DYLD_LIBRARY_PATH": "./osx" }, - "cwd": "${workspaceFolder}/ProjectName/bin/Debug/net48" + "cwd": "${workspaceFolder}/ProjectName/bin/x64/Debug/net461" }, "type": "process", "group": { @@ -119,12 +121,12 @@ "problemMatcher": [] }, { - "label": "Build & Run: Core Debug", + "label": "Build & Run: .NET 5 Debug", "type": "shell", "dependsOrder": "sequence", "dependsOn": [ - "Build: Core Debug", - "Run: Core Debug" + "Build: .NET 5 Debug", + "Run: .NET 5 Debug" ], "group": { "kind": "build", @@ -133,12 +135,13 @@ "problemMatcher": [] }, { - "label": "Build: Core Debug", + "label": "Build: .NET 5 Debug", "command": "dotnet", "args": [ "build", "./ProjectName/ProjectName.Core.csproj", - "-p:SolutionDir=${workspaceFolder}/" + "-p:SolutionDir=${workspaceFolder}/", + "-p:Platform=x64" ], "type": "shell", "group": { @@ -148,7 +151,7 @@ "problemMatcher": [] }, { - "label": "Run: Core Debug", + "label": "Run: .NET 5 Debug", "command": "dotnet", "args": [ "./ProjectName.dll" @@ -158,7 +161,7 @@ "LD_LIBRARY_PATH": "./lib64", "DYLD_LIBRARY_PATH": "./osx" }, - "cwd": "${workspaceFolder}/ProjectName/bin/Debug/netcoreapp3.1" + "cwd": "${workspaceFolder}/ProjectName/bin/x64/Debug/net5.0" }, "type": "process", "group": { @@ -168,14 +171,15 @@ "problemMatcher": [] }, { - "label": "Build: Core Release", + "label": "Build: .NET 5 Release", "command": "dotnet", "args": [ "build", "./ProjectName/ProjectName.Core.csproj", "--configuration", "Release", - "-p:SolutionDir=${workspaceFolder}/" + "-p:SolutionDir=${workspaceFolder}/", + "-p:Platform=x64" ], "type": "shell", "group": { @@ -185,7 +189,7 @@ "problemMatcher": [] }, { - "label": "Run: Core Release", + "label": "Run: .NET 5 Release", "command": "dotnet", "args": [ "./ProjectName.dll" @@ -195,7 +199,7 @@ "LD_LIBRARY_PATH": "./lib64", "DYLD_LIBRARY_PATH": "./osx" }, - "cwd": "${workspaceFolder}/ProjectName/bin/Release/netcoreapp3.1" + "cwd": "${workspaceFolder}/ProjectName/bin/x64/Release/net5.0" }, "type": "process", "group": { @@ -205,11 +209,11 @@ "problemMatcher": [] }, { - "label": "Build & Run: Core Release", + "label": "Build & Run: .NET 5 Release", "dependsOrder": "sequence", "dependsOn": [ - "Build: Core Release", - "Run: Core Release" + "Build: .NET 5 Release", + "Run: .NET 5 Release" ], "type": "shell", "group": { @@ -238,7 +242,7 @@ "label": "Run: Framework Debug", "command": "ProjectName.exe", "options": { - "cwd": "${workspaceFolder}/ProjectName/bin/Debug/net48" + "cwd": "${workspaceFolder}/ProjectName/bin/x64/Debug/net461" }, "type": "process", "group": { @@ -281,7 +285,7 @@ "label": "Run: Framework Release", "command": "ProjectName.exe", "options": { - "cwd": "${workspaceFolder}/ProjectName/bin/Release/net48" + "cwd": "${workspaceFolder}/ProjectName/bin/x64/Release/net461" }, "type": "process", "group": { diff --git a/ProjectName/ProjectName.Core.csproj b/ProjectName/ProjectName.Core.csproj index 3da72b0..a78af2d 100644 --- a/ProjectName/ProjectName.Core.csproj +++ b/ProjectName/ProjectName.Core.csproj @@ -6,7 +6,7 @@ WinExe - netcoreapp3.1 + net5.0 ProjectName false false diff --git a/ProjectName/ProjectName.Framework.csproj b/ProjectName/ProjectName.Framework.csproj index 8c4d7ef..d5118ec 100644 --- a/ProjectName/ProjectName.Framework.csproj +++ b/ProjectName/ProjectName.Framework.csproj @@ -6,7 +6,7 @@ Exe - net48 + net461 ProjectName false false diff --git a/README.md b/README.md index d2d2c0b..f64ec39 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,20 @@ # FNA-VSCode-Template -Template and build tasks for developing a cross-platform multi-target .NET Framework, Mono, and .NET Core FNA project in VSCode. +Template and build tasks for developing a cross-platform multi-target .NET Framework, Mono, and .NET 5 FNA project in VSCode. + +The generated solution file will also work in regular Visual Studio. ## Features - Includes project boilerplate code -- Build tasks for both .NET Framework, Mono, and .NET Core side by side +- Build tasks for both .NET Framework, Mono, and .NET 5 side by side - VSCode debugger integration ## Requirements - [Git](https://git-scm.com/) or [Git for Windows](https://gitforwindows.org/) on Windows -- [.NET Core SDK](https://dotnet.microsoft.com/download/dotnet-core) -- [.NET Framework 4.8 SDK](https://dotnet.microsoft.com/download/visual-studio-sdks) on Windows +- [.NET 5 SDK](https://dotnet.microsoft.com/download/dotnet/5.0) +- [.NET Framework 4.6.1 Developer Pack](https://dotnet.microsoft.com/download/dotnet-framework/net461) on Windows - [Build Tools for Visual Studio 2019](https://visualstudio.microsoft.com/downloads/) on Windows - [Mono](https://www.mono-project.com/) on OSX or Linux - [Visual Studio Code](https://code.visualstudio.com/) @@ -33,7 +35,7 @@ Template and build tasks for developing a cross-platform multi-target .NET Frame - Press Ctrl-Shift-B to open the build tasks menu - `Framework` tasks use .NET Framework to build and run (Windows only) - `Mono` tasks use Mono to build and run -- `Core` tasks use .NET Core to build and run +- `5` tasks use .NET 5 to build and run - Press F5 to build and debug ## Acknowledgments