build and run x64 + dotnet 5

cosmonaut 2021-02-02 20:37:02 -08:00
parent e66ded02e2
commit a2529d56c8
5 changed files with 45 additions and 39 deletions

24
.vscode/launch.json vendored
View File

@ -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"
}

44
.vscode/tasks.json vendored
View File

@ -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": {

View File

@ -6,7 +6,7 @@
<Import Sdk="Microsoft.NET.Sdk" Project="Sdk.props" />
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<TargetFramework>net5.0</TargetFramework>
<TargetName>ProjectName</TargetName>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>

View File

@ -6,7 +6,7 @@
<Import Sdk="Microsoft.NET.Sdk" Project="Sdk.props" />
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net48</TargetFramework>
<TargetFramework>net461</TargetFramework>
<TargetName>ProjectName</TargetName>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>

View File

@ -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