Implement an Action Replay cheat backend #517
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Automatic Builds | |
on: | |
push: | |
branches: | |
- master | |
jobs: | |
build-windows: | |
runs-on: windows-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v1 | |
- name: Install MSYS2 | |
uses: msys2/setup-msys2@v2 | |
with: | |
msystem: MINGW64 | |
update: true | |
- name: Install build tools, wxWidgets, and PortAudio | |
run: pacman -S mingw-w64-x86_64-{gcc,pkg-config,wxWidgets,portaudio,jbigkit} make --noconfirm | |
shell: msys2 {0} | |
- name: Compile | |
run: | | |
make -j$(nproc) | |
strip noods.exe | |
shell: msys2 {0} | |
working-directory: ${{ github.workspace }} | |
- name: Upload | |
uses: actions/upload-artifact@v2 | |
with: | |
name: noods-windows | |
path: noods.exe | |
build-mac: | |
runs-on: macos-latest | |
steps: | |
- name: Install wxWidgets and PortAudio | |
run: brew install wxmac portaudio | |
- name: Checkout | |
uses: actions/checkout@v1 | |
- name: Compile | |
run: | | |
make -j$(sysctl -n hw.logicalcpu) | |
./mac-bundle.sh --dmg | |
- name: Upload | |
uses: actions/upload-artifact@v2 | |
with: | |
name: noods-mac | |
path: NooDS.dmg | |
build-linux: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install Flatpak and SDK | |
run: | | |
sudo apt update | |
sudo apt install flatpak flatpak-builder -y | |
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo | |
sudo flatpak install flathub org.freedesktop.Platform//21.08 org.freedesktop.Sdk//21.08 -y | |
- name: Checkout | |
uses: actions/checkout@v1 | |
- name: Compile | |
run: | | |
git config --global protocol.file.allow always | |
make flatpak | |
- name: Upload | |
uses: actions/upload-artifact@v2 | |
with: | |
name: noods-linux | |
path: noods.flatpak | |
build-android: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v1 | |
- name: Compile | |
run: | | |
./gradlew assembleRelease | |
mv build-android/outputs/apk/release/android-release-unsigned.apk noods.apk | |
- name: Sign | |
run: $ANDROID_SDK_ROOT/build-tools/30.0.2/apksigner sign --ks keystore.jks --ks-pass pass:$KEYSTORE_PASS noods.apk | |
env: | |
KEYSTORE_PASS: ${{ secrets.KEYSTORE_PASS }} | |
- name: Upload | |
uses: actions/upload-artifact@v2 | |
with: | |
name: noods-android | |
path: noods.apk | |
build-switch: | |
runs-on: ubuntu-latest | |
container: devkitpro/devkita64:latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v1 | |
- name: Compile | |
run: make switch -j$(nproc) | |
- name: Upload | |
uses: actions/upload-artifact@v2 | |
with: | |
name: noods-switch | |
path: noods.nro | |
build-wiiu: | |
runs-on: ubuntu-latest | |
container: devkitpro/devkitppc:latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v1 | |
- name: Compile | |
run: make wiiu -j$(nproc) | |
- name: Upload | |
uses: actions/upload-artifact@v2 | |
with: | |
name: noods-wiiu | |
path: noods.wuhb | |
build-vita: | |
runs-on: ubuntu-latest | |
container: vitasdk/vitasdk:latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v1 | |
- name: Compile | |
run: make vita -j$(nproc) | |
- name: Upload | |
uses: actions/upload-artifact@v2 | |
with: | |
name: noods-vita | |
path: noods.vpk | |
update-release: | |
runs-on: ubuntu-latest | |
needs: [build-windows, build-mac, build-linux, build-android, build-switch, build-wiiu, build-vita] | |
steps: | |
- name: Delete old release | |
uses: dev-drprasad/delete-tag-and-release@v0.2.1 | |
with: | |
delete_release: true | |
tag_name: release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Get artifacts | |
uses: actions/download-artifact@v2 | |
- name: Package artifacts | |
run: for i in ./*; do zip -r -j ${i}.zip $i; done | |
- name: Create new release | |
uses: ncipollo/release-action@v1 | |
with: | |
name: Rolling Release | |
body: These are automatically updated builds of the latest commit. | |
artifacts: "*.zip" | |
tag: release | |
token: ${{ secrets.GITHUB_TOKEN }} |