name: Build on: push: branches: [ master ] jobs: windows: runs-on: windows-latest steps: - uses: actions/checkout@v2 - uses: nuget/setup-nuget@v1 with: nuget-api-key: ${{ secrets.NuGetAPIKey }} - run: nuget restore WickedEngine.sln - name: Build shell: cmd run: | "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/MSBuild/Current/Bin/MSBuild.exe" WickedEngine.sln /t:OfflineShaderCompiler /m /p:Configuration=Release /p:Platform=x64 cd "WickedEngine" "../BUILD/x64/Release/OfflineShaderCompiler/OfflineShaderCompiler.exe" hlsl6 spirv shaderdump cd .. "C:/Program Files/Microsoft Visual Studio/2022/Enterprise/MSBuild/Current/Bin/MSBuild.exe" WickedEngine.sln /t:rebuild /m /p:Configuration=Release /p:Platform=x64 - name: Move binaries shell: cmd run: | move BUILD\x64\Release\Editor_Windows\Editor_Windows.exe Editor\ move BUILD\x64\Release\Tests\Tests.exe Tests\ - name: Package Editor uses: actions/upload-artifact@v2 with: name: Editor (Windows x64) path: | Content/ README.md LICENSE.md third_party_software.txt features.txt credits.txt Editor/terrain/ Editor/sound/ Editor/*.ini Editor/*.ico Editor/*.lua Editor/*.exe - name: Package Tests uses: actions/upload-artifact@v2 with: name: Tests (Windows x64) path: | Content/ README.md LICENSE.md third_party_software.txt features.txt credits.txt Tests/images/ Tests/sound/ Tests/*.ini Tests/*.txt Tests/*.ico Tests/*.lua Tests/*.ttf Tests/*.exe linux: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v2 - name: Install dependencies run: | sudo apt update sudo apt install libsdl2-dev - name: Build run: | mkdir build cd build cmake .. -DCMAKE_BUILD_TYPE=Release make -j$(nproc) echo "---Generating Shader Dump---" cd WickedEngine ./offlineshadercompiler spirv rebuild shaderdump mv wiShaderDump.h ../../WickedEngine/ cd .. echo "---Rebuilding with ShaderDump---" make -B -j $(nproc) - name: Move binaries run: | mv build/Editor/WickedEngineEditor Editor/ mv build/Tests/Tests Tests/ - name: Package Editor uses: actions/upload-artifact@v2 with: name: Editor (Ubuntu 20.04) path: | Content/ README.md LICENSE.md third_party_software.txt features.txt credits.txt Editor/terrain/ Editor/sound/ Editor/*.ini Editor/*.ico Editor/*.lua Editor/WickedEngineEditor - name: Package Tests uses: actions/upload-artifact@v2 with: name: Tests (Ubuntu 20.04) path: | Content/ README.md LICENSE.md third_party_software.txt features.txt credits.txt Tests/images/ Tests/sound/ Tests/*.ini Tests/*.txt Tests/*.ico Tests/*.lua Tests/*.ttf Tests/Tests linux-steamdeck: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v2 - name: Build run: | mkdir build echo "---Building Command Strings---" echo -e "#!/bin/bash \ \nmkdir -p $(dirname $PWD) \ \nln -s /build $PWD \ \ncd /build/build \ \ncmake .. -DCMAKE_BUILD_TYPE=Release \ \nmake \ \necho \"---Generating Shader Dump---\" \ \ncd WickedEngine \ \n./offlineshadercompiler spirv rebuild shaderdump\nmv wiShaderDump.h ../../WickedEngine/ \ \necho \"---Rebuilding with ShaderDump---\" \ \ncd .. \ \nmake -B" > build.sh chmod +x build.sh echo "---Executing Containerized Build---" podman run --name sniper -v $PWD:/build registry.gitlab.steamos.cloud/steamrt/sniper/sdk:latest /build/build.sh podman container rm sniper - name: Move binaries run: | mv build/Editor/WickedEngineEditor Editor/ mv build/Tests/Tests Tests/ - name: Package Editor uses: actions/upload-artifact@v2 with: name: Editor (Linux - Steam SDK) path: | Content/ README.md LICENSE.md third_party_software.txt features.txt credits.txt Editor/terrain/ Editor/sound/ Editor/*.ini Editor/*.ico Editor/*.lua Editor/WickedEngineEditor - name: Package Tests uses: actions/upload-artifact@v2 with: name: Tests (Linux - Steam SDK) path: | Content/ README.md LICENSE.md third_party_software.txt features.txt credits.txt Tests/images/ Tests/sound/ Tests/*.ini Tests/*.txt Tests/*.ico Tests/*.lua Tests/*.ttf Tests/Tests