--- on: push: branches: - "master" jobs: "build-roms": runs-on: "ubuntu-latest" steps: - name: "Prepare runner" run: | set -x sudo apt-get update -qqqq sudo apt-get install -qqqq xa65 - uses: "actions/checkout@v3" - name: "Build artifacts" run: | set -x cd rom make - uses: "actions/upload-artifact@v3" with: name: "epple2-roms" path: "./rom/*.a65" "build-epple2-ubuntu": needs: "build-roms" runs-on: "ubuntu-latest" steps: - name: "Prepare runner" run: | set -x sudo apt-get update -qqqq sudo apt-get install -qqqq libsdl2-dev tree - uses: "actions/checkout@v3" - name: "Build" run: | set -x mkdir build cd build cmake .. cmake --build . - uses: "actions/download-artifact@v3" id: "epple2-roms" with: name: "epple2-roms" - name: "Stage" run: | set -x pwd cd build mkdir -p stage/usr/local/bin mkdir -p stage/usr/local/etc/epple2 mkdir -p stage/usr/local/lib/epple2/system mkdir -p stage/usr/local/lib/epple2/cards cp src/epple2* stage/usr/local/bin/ cp conf/*.conf stage/usr/local/etc/epple2/ cp ${{steps.epple2-roms.outputs.download-path}}/epple2sys.a65 stage/usr/local/lib/epple2/system/ cp ${{steps.epple2-roms.outputs.download-path}}/stdout.a65 stage/usr/local/lib/epple2/cards/ cp ${{steps.epple2-roms.outputs.download-path}}/stdin.a65 stage/usr/local/lib/epple2/cards/ cp ${{steps.epple2-roms.outputs.download-path}}/clock.a65 stage/usr/local/lib/epple2/cards/ cd - tree "build-epple2-macos": needs: "build-roms" runs-on: "macos-latest" steps: - name: "Prepare runner" run: | set -x HOMEBREW_NO_AUTO_UPDATE=1 brew install sdl2 - uses: "actions/checkout@v3" - name: "Build" run: | set -x mkdir build cd build cmake .. cmake --build . "build-epple2-windows": needs: "build-roms" runs-on: "windows-latest" steps: - name: "Prepare runner" run: | Invoke-WebRequest -Uri "https://github.com/libsdl-org/SDL/releases/download/release-2.24.2/SDL2-devel-2.24.2-VC.zip" -OutFile "C:/Program Files/SDL2-devel-VC.zip" Expand-Archive -LiteralPath "C:/Program Files/SDL2-devel-VC.zip" -DestinationPath "C:/Program Files/" Get-ChildItem "C:/Program Files" - uses: "actions/checkout@v3" - name: "Build" shell: "bash" run: | set -x mkdir build cd build cmake .. cmake --build .