diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml new file mode 100644 index 0000000..b345525 --- /dev/null +++ b/.github/workflows/android.yml @@ -0,0 +1,28 @@ +name: Android Build +on: [push] + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + + - name: Install Deps + run: sudo apt install ninja-build + + - name: set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + + - name: Build + run: | + cd android + ./gradlew assembleRelease + + - name: Upload artifacts + uses: actions/upload-artifact@v1 + with: + name: xsystem35-release-unsigned-apk + path: android/app/build/outputs/apk/release/app-release-unsigned.apk diff --git a/.github/workflows/emscripten.yml b/.github/workflows/emscripten.yml new file mode 100644 index 0000000..d101ceb --- /dev/null +++ b/.github/workflows/emscripten.yml @@ -0,0 +1,51 @@ +name: Emscripten Build +on: [push] + +env: + emscripten-version: 1.39.8 + +jobs: + build: + runs-on: ubuntu-latest + steps: + + - uses: actions/checkout@v2 + + - name: Cache emsdk + uses: actions/cache@v1 + id: cache + with: + path: emsdk-cache + key: ${{ runner.os }}-emsdk-${{ env.emscripten-version }} + + - name: Cache .emscripten_cache + uses: actions/cache@v1 + with: + path: emscripten-cache + key: emscripten-cache-${{ env.emscripten-version }} + + - name: Setup Emscripten toolchain + uses: mymindstorm/setup-emsdk@v3 + with: + version: ${{ env.emscripten-version }} + actions-cache-folder: emsdk-cache + no-cache: true + + - name: Build + env: + EM_CACHE: ${{ github.workspace }}/emscripten-cache/cache + EM_PORTS: ${{ github.workspace }}/emscripten-cache/ports + run: | + mkdir -p emscripten-cache + mkdir -p out/wasm + cd out/wasm + emcmake cmake -DCMAKE_BUILD_TYPE=MinSizeRel ../../ + make + mkdir xsystem35 + mv src/xsystem35.* xsystem35/ + + - name: Upload artifacts + uses: actions/upload-artifact@v1 + with: + name: xsystem35-wasm + path: out/wasm/xsystem35 diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml new file mode 100644 index 0000000..94609bf --- /dev/null +++ b/.github/workflows/linux.yml @@ -0,0 +1,23 @@ +name: Linux Build +on: [push] + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + + - name: Install Deps + run: sudo apt install libsdl2-dev libsdl2-ttf-dev libsdl2-mixer-dev + + - name: Build + run: | + mkdir -p out/debug + cd out/debug + cmake -DCMAKE_BUILD_TYPE=Debug ../../ + make + + - name: Test + run: ctest + working-directory: out/debug