diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 69d31c85d..5c16a75ce 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -39,7 +39,7 @@ jobs: DEST_NAME: 'MCGalaxy-infid' - build-dotnet: + build-dotnet6: if: github.ref_name == github.event.repository.default_branch runs-on: ubuntu-latest @@ -50,11 +50,11 @@ jobs: with: dotnet-version: 6.0.x - name: Restore dependencies - run: dotnet restore CLI/MCGalaxyCLI_dotnet.csproj + run: dotnet restore CLI/MCGalaxyCLI_dotnet6.csproj - name: Build id: compile_net run: | - dotnet build CLI/MCGalaxyCLI_dotnet.csproj --no-restore + dotnet build CLI/MCGalaxyCLI_dotnet6.csproj --no-restore - uses: ./.github/actions/notify_failure if: ${{ always() && steps.compile_net.outcome == 'failure' }} @@ -70,7 +70,7 @@ jobs: # publish standalone windows binaries - name: Publish-win64 - run: dotnet publish CLI/MCGalaxyCLI_dotnet.csproj -r win-x64 --self-contained + run: dotnet publish CLI/MCGalaxyCLI_dotnet6.csproj -r win-x64 --self-contained - uses: ./.github/actions/upload_build if: ${{ always() && steps.compile_net.outcome == 'success' }} @@ -80,7 +80,7 @@ jobs: # publish standalone linux binaries - name: Publish-linux64 - run: dotnet publish CLI/MCGalaxyCLI_dotnet.csproj -r linux-x64 --self-contained + run: dotnet publish CLI/MCGalaxyCLI_dotnet6.csproj -r linux-x64 --self-contained - uses: ./.github/actions/upload_build if: ${{ always() && steps.compile_net.outcome == 'success' }} @@ -90,10 +90,40 @@ jobs: # publish standalone macOS binaries - name: Publish-mac64 - run: dotnet publish CLI/MCGalaxyCLI_dotnet.csproj -r osx-x64 --self-contained + run: dotnet publish CLI/MCGalaxyCLI_dotnet6.csproj -r osx-x64 --self-contained - uses: ./.github/actions/upload_build if: ${{ always() && steps.compile_net.outcome == 'success' }} with: SOURCE_FILE: 'CLI/bin/Debug/net6.0/osx-x64/publish' - DEST_NAME: 'MCGalaxy-mac64-standalone' \ No newline at end of file + DEST_NAME: 'MCGalaxy-mac64-standalone' + + + build-dotnet8: + if: github.ref_name == github.event.repository.default_branch + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Setup .NET + uses: actions/setup-dotnet@v3 + with: + dotnet-version: 8.0.x + - name: Restore dependencies + run: dotnet restore CLI/MCGalaxyCLI_dotnet8.csproj + - name: Build + id: compile_net + run: | + dotnet build CLI/MCGalaxyCLI_dotnet8.csproj --no-restore + + - uses: ./.github/actions/notify_failure + if: ${{ always() && steps.compile_net.outcome == 'failure' }} + with: + NOTIFY_MESSAGE: 'Failed to compile MCGalaxy dotnet build' + WEBHOOK_URL: '${{ secrets.WEBHOOK_URL }}' + + - uses: ./.github/actions/upload_build + if: ${{ always() && steps.compile_net.outcome == 'success' }} + with: + SOURCE_FILE: 'CLI/bin/Debug/net8.0' + DEST_NAME: 'MCGalaxy-dotnet8.0' \ No newline at end of file diff --git a/CLI/MCGalaxyCLI_dotnet.csproj b/CLI/MCGalaxyCLI_dotnet6.csproj similarity index 100% rename from CLI/MCGalaxyCLI_dotnet.csproj rename to CLI/MCGalaxyCLI_dotnet6.csproj diff --git a/CLI/MCGalaxyCLI_dotnet7.csproj b/CLI/MCGalaxyCLI_dotnet7.csproj new file mode 100644 index 000000000..eac086900 --- /dev/null +++ b/CLI/MCGalaxyCLI_dotnet7.csproj @@ -0,0 +1,12 @@ + + + Exe + net7.0 + true + true + + + + + + diff --git a/CLI/MCGalaxyCLI_dotnet8.csproj b/CLI/MCGalaxyCLI_dotnet8.csproj new file mode 100644 index 000000000..9b8360af8 --- /dev/null +++ b/CLI/MCGalaxyCLI_dotnet8.csproj @@ -0,0 +1,12 @@ + + + Exe + net8.0 + true + true + + + + + + diff --git a/GUI/MCGalaxyGUI_core.csproj b/GUI/MCGalaxyGUI_core.csproj index b0f14b98d..df27e489a 100644 --- a/GUI/MCGalaxyGUI_core.csproj +++ b/GUI/MCGalaxyGUI_core.csproj @@ -7,6 +7,6 @@ - + diff --git a/README.md b/README.md index a0afbc0f6..4bdbfc4a0 100644 --- a/README.md +++ b/README.md @@ -77,14 +77,12 @@ Compiling - mono and .NET framework * Modern mono: Type `msbuild MCGalaxy.sln` into Terminal * Older mono: Type `xbuild MCGalaxy.sln` into Terminal -Compiling - .NET 6 / .NET 5 / .NET Core +Compiling - .NET 6 / .NET 7 / .NET 8 ----------------- -* Compiling for .NET 6: No changes necessary -* Compiling for .NET 5: Change `TargetFramework` in CLI/MCGalaxyCLI_dotnet.csproj to `net5.0` -* Compiling for .NET Core: Change `TargetFramework` in CLI/MCGalaxyCLI_dotnet.csproj to `netcoreapp3.1` - -Then navigate into `CLI` directory, and then run `dotnet build MCGalaxyCLI_dotnet.csproj` +* Compiling for .NET 6: Navigate into `CLI` directory, and then run `dotnet build MCGalaxyCLI_dotnet6.csproj` +* Compiling for .NET 7: Navigate into `CLI` directory, and then run `dotnet build MCGalaxyCLI_dotnet7.csproj` +* Compiling for .NET 8: Navigate into `CLI` directory, and then run `dotnet build MCGalaxyCLI_dotnet8.csproj` **You will also need to copy `libsqlite3.so.0` from system libraries to `libsqlite3.so` in the server folder**