ci: migrate to GitHub Actions
* travis: disable build, disable deploy, add free aarch64/ppc64le/s390x builds
* scripts: cleanup of old CI scripts
* scripts: now port to GitHub Actions
* actions: fix extras checkout
* github: remove codeql action, turned out not to be very useful
* github: remove quiet flag on wget
* github: are we allowed to use envvars?
* github: add needed dependencies for linux
* github: install wget for windows
* scripts: convert our CPU architecture naming into what AppImage uses
* github: run scripts with bash explicitly
* github: first try to upload to GitHub Releases, enable amd64 win32 builds
* Use our uploadtool fork
* ci: include android, motomagx build for gha, refactor cirrus and travis ci scripts
* gha: try to fix build
* travis: try to fix build
* gha: try to fix upload, fix win32 build
* gha: use curl instead of wget, as it's preinstalled for windows. Fix Android build
* gha: add llvm repository, install clang-12 for android
* gha: motomagx: fail fast
* gha: android: explicitly set clang-12 as compiler and llvm-strip-12 as strip
* waifulib: xcompile: respect environment variables when using host compiler for Android
* waifulib: xcompile: use correct environ dict
* gha: try to fix -fuse-ld=lld with clang-12
* waifulib: xcompile: fix typo
* scripts: xcompile: fix motomagx build
* mainui: upgrade
* gha: fix android build, last time
* engine: wscript: disable crashhandler for magx
2021-07-03 19:21:09 +02:00
|
|
|
name: Build & Deploy Engine
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
2022-03-11 12:05:53 +01:00
|
|
|
# cleanup:
|
|
|
|
# runs-on: self-hosted
|
|
|
|
# steps:
|
|
|
|
# - name: Cleanup
|
|
|
|
# run: rm -rf .* || true
|
ci: migrate to GitHub Actions
* travis: disable build, disable deploy, add free aarch64/ppc64le/s390x builds
* scripts: cleanup of old CI scripts
* scripts: now port to GitHub Actions
* actions: fix extras checkout
* github: remove codeql action, turned out not to be very useful
* github: remove quiet flag on wget
* github: are we allowed to use envvars?
* github: add needed dependencies for linux
* github: install wget for windows
* scripts: convert our CPU architecture naming into what AppImage uses
* github: run scripts with bash explicitly
* github: first try to upload to GitHub Releases, enable amd64 win32 builds
* Use our uploadtool fork
* ci: include android, motomagx build for gha, refactor cirrus and travis ci scripts
* gha: try to fix build
* travis: try to fix build
* gha: try to fix upload, fix win32 build
* gha: use curl instead of wget, as it's preinstalled for windows. Fix Android build
* gha: add llvm repository, install clang-12 for android
* gha: motomagx: fail fast
* gha: android: explicitly set clang-12 as compiler and llvm-strip-12 as strip
* waifulib: xcompile: respect environment variables when using host compiler for Android
* waifulib: xcompile: use correct environ dict
* gha: try to fix -fuse-ld=lld with clang-12
* waifulib: xcompile: fix typo
* scripts: xcompile: fix motomagx build
* mainui: upgrade
* gha: fix android build, last time
* engine: wscript: disable crashhandler for magx
2021-07-03 19:21:09 +02:00
|
|
|
build:
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
continue-on-error: true
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
include:
|
2023-03-28 19:08:42 +02:00
|
|
|
- os: ubuntu-20.04
|
ci: migrate to GitHub Actions
* travis: disable build, disable deploy, add free aarch64/ppc64le/s390x builds
* scripts: cleanup of old CI scripts
* scripts: now port to GitHub Actions
* actions: fix extras checkout
* github: remove codeql action, turned out not to be very useful
* github: remove quiet flag on wget
* github: are we allowed to use envvars?
* github: add needed dependencies for linux
* github: install wget for windows
* scripts: convert our CPU architecture naming into what AppImage uses
* github: run scripts with bash explicitly
* github: first try to upload to GitHub Releases, enable amd64 win32 builds
* Use our uploadtool fork
* ci: include android, motomagx build for gha, refactor cirrus and travis ci scripts
* gha: try to fix build
* travis: try to fix build
* gha: try to fix upload, fix win32 build
* gha: use curl instead of wget, as it's preinstalled for windows. Fix Android build
* gha: add llvm repository, install clang-12 for android
* gha: motomagx: fail fast
* gha: android: explicitly set clang-12 as compiler and llvm-strip-12 as strip
* waifulib: xcompile: respect environment variables when using host compiler for Android
* waifulib: xcompile: use correct environ dict
* gha: try to fix -fuse-ld=lld with clang-12
* waifulib: xcompile: fix typo
* scripts: xcompile: fix motomagx build
* mainui: upgrade
* gha: fix android build, last time
* engine: wscript: disable crashhandler for magx
2021-07-03 19:21:09 +02:00
|
|
|
targetos: linux
|
|
|
|
targetarch: amd64
|
2023-03-28 19:08:42 +02:00
|
|
|
- os: ubuntu-20.04
|
ci: migrate to GitHub Actions
* travis: disable build, disable deploy, add free aarch64/ppc64le/s390x builds
* scripts: cleanup of old CI scripts
* scripts: now port to GitHub Actions
* actions: fix extras checkout
* github: remove codeql action, turned out not to be very useful
* github: remove quiet flag on wget
* github: are we allowed to use envvars?
* github: add needed dependencies for linux
* github: install wget for windows
* scripts: convert our CPU architecture naming into what AppImage uses
* github: run scripts with bash explicitly
* github: first try to upload to GitHub Releases, enable amd64 win32 builds
* Use our uploadtool fork
* ci: include android, motomagx build for gha, refactor cirrus and travis ci scripts
* gha: try to fix build
* travis: try to fix build
* gha: try to fix upload, fix win32 build
* gha: use curl instead of wget, as it's preinstalled for windows. Fix Android build
* gha: add llvm repository, install clang-12 for android
* gha: motomagx: fail fast
* gha: android: explicitly set clang-12 as compiler and llvm-strip-12 as strip
* waifulib: xcompile: respect environment variables when using host compiler for Android
* waifulib: xcompile: use correct environ dict
* gha: try to fix -fuse-ld=lld with clang-12
* waifulib: xcompile: fix typo
* scripts: xcompile: fix motomagx build
* mainui: upgrade
* gha: fix android build, last time
* engine: wscript: disable crashhandler for magx
2021-07-03 19:21:09 +02:00
|
|
|
targetos: linux
|
|
|
|
targetarch: i386
|
2022-03-11 11:41:47 +01:00
|
|
|
# - os: ubuntu-aarch64-20.04
|
|
|
|
# targetos: linux
|
|
|
|
# targetarch: aarch64
|
ci: migrate to GitHub Actions
* travis: disable build, disable deploy, add free aarch64/ppc64le/s390x builds
* scripts: cleanup of old CI scripts
* scripts: now port to GitHub Actions
* actions: fix extras checkout
* github: remove codeql action, turned out not to be very useful
* github: remove quiet flag on wget
* github: are we allowed to use envvars?
* github: add needed dependencies for linux
* github: install wget for windows
* scripts: convert our CPU architecture naming into what AppImage uses
* github: run scripts with bash explicitly
* github: first try to upload to GitHub Releases, enable amd64 win32 builds
* Use our uploadtool fork
* ci: include android, motomagx build for gha, refactor cirrus and travis ci scripts
* gha: try to fix build
* travis: try to fix build
* gha: try to fix upload, fix win32 build
* gha: use curl instead of wget, as it's preinstalled for windows. Fix Android build
* gha: add llvm repository, install clang-12 for android
* gha: motomagx: fail fast
* gha: android: explicitly set clang-12 as compiler and llvm-strip-12 as strip
* waifulib: xcompile: respect environment variables when using host compiler for Android
* waifulib: xcompile: use correct environ dict
* gha: try to fix -fuse-ld=lld with clang-12
* waifulib: xcompile: fix typo
* scripts: xcompile: fix motomagx build
* mainui: upgrade
* gha: fix android build, last time
* engine: wscript: disable crashhandler for magx
2021-07-03 19:21:09 +02:00
|
|
|
|
2023-03-28 19:08:42 +02:00
|
|
|
# - os: ubuntu-20.04
|
2023-01-14 07:52:44 +01:00
|
|
|
# targetos: android
|
|
|
|
# targetarch: 32
|
2023-03-28 19:08:42 +02:00
|
|
|
# - os: ubuntu-20.04
|
2023-01-14 07:52:44 +01:00
|
|
|
# targetos: android
|
|
|
|
# targetarch: 64
|
ci: migrate to GitHub Actions
* travis: disable build, disable deploy, add free aarch64/ppc64le/s390x builds
* scripts: cleanup of old CI scripts
* scripts: now port to GitHub Actions
* actions: fix extras checkout
* github: remove codeql action, turned out not to be very useful
* github: remove quiet flag on wget
* github: are we allowed to use envvars?
* github: add needed dependencies for linux
* github: install wget for windows
* scripts: convert our CPU architecture naming into what AppImage uses
* github: run scripts with bash explicitly
* github: first try to upload to GitHub Releases, enable amd64 win32 builds
* Use our uploadtool fork
* ci: include android, motomagx build for gha, refactor cirrus and travis ci scripts
* gha: try to fix build
* travis: try to fix build
* gha: try to fix upload, fix win32 build
* gha: use curl instead of wget, as it's preinstalled for windows. Fix Android build
* gha: add llvm repository, install clang-12 for android
* gha: motomagx: fail fast
* gha: android: explicitly set clang-12 as compiler and llvm-strip-12 as strip
* waifulib: xcompile: respect environment variables when using host compiler for Android
* waifulib: xcompile: use correct environ dict
* gha: try to fix -fuse-ld=lld with clang-12
* waifulib: xcompile: fix typo
* scripts: xcompile: fix motomagx build
* mainui: upgrade
* gha: fix android build, last time
* engine: wscript: disable crashhandler for magx
2021-07-03 19:21:09 +02:00
|
|
|
|
2023-03-28 19:08:42 +02:00
|
|
|
# - os: ubuntu-20.04
|
2023-01-14 07:52:44 +01:00
|
|
|
# targetos: motomagx
|
|
|
|
# targetarch: armv6
|
ci: migrate to GitHub Actions
* travis: disable build, disable deploy, add free aarch64/ppc64le/s390x builds
* scripts: cleanup of old CI scripts
* scripts: now port to GitHub Actions
* actions: fix extras checkout
* github: remove codeql action, turned out not to be very useful
* github: remove quiet flag on wget
* github: are we allowed to use envvars?
* github: add needed dependencies for linux
* github: install wget for windows
* scripts: convert our CPU architecture naming into what AppImage uses
* github: run scripts with bash explicitly
* github: first try to upload to GitHub Releases, enable amd64 win32 builds
* Use our uploadtool fork
* ci: include android, motomagx build for gha, refactor cirrus and travis ci scripts
* gha: try to fix build
* travis: try to fix build
* gha: try to fix upload, fix win32 build
* gha: use curl instead of wget, as it's preinstalled for windows. Fix Android build
* gha: add llvm repository, install clang-12 for android
* gha: motomagx: fail fast
* gha: android: explicitly set clang-12 as compiler and llvm-strip-12 as strip
* waifulib: xcompile: respect environment variables when using host compiler for Android
* waifulib: xcompile: use correct environ dict
* gha: try to fix -fuse-ld=lld with clang-12
* waifulib: xcompile: fix typo
* scripts: xcompile: fix motomagx build
* mainui: upgrade
* gha: fix android build, last time
* engine: wscript: disable crashhandler for magx
2021-07-03 19:21:09 +02:00
|
|
|
|
2023-03-28 23:05:40 +02:00
|
|
|
- os: ubuntu-20.04
|
|
|
|
targetos: nswitch
|
|
|
|
targetarch: arm64
|
|
|
|
- os: ubuntu-20.04
|
|
|
|
targetos: psvita
|
|
|
|
targetarch: armv7hf
|
ci: migrate to GitHub Actions
* travis: disable build, disable deploy, add free aarch64/ppc64le/s390x builds
* scripts: cleanup of old CI scripts
* scripts: now port to GitHub Actions
* actions: fix extras checkout
* github: remove codeql action, turned out not to be very useful
* github: remove quiet flag on wget
* github: are we allowed to use envvars?
* github: add needed dependencies for linux
* github: install wget for windows
* scripts: convert our CPU architecture naming into what AppImage uses
* github: run scripts with bash explicitly
* github: first try to upload to GitHub Releases, enable amd64 win32 builds
* Use our uploadtool fork
* ci: include android, motomagx build for gha, refactor cirrus and travis ci scripts
* gha: try to fix build
* travis: try to fix build
* gha: try to fix upload, fix win32 build
* gha: use curl instead of wget, as it's preinstalled for windows. Fix Android build
* gha: add llvm repository, install clang-12 for android
* gha: motomagx: fail fast
* gha: android: explicitly set clang-12 as compiler and llvm-strip-12 as strip
* waifulib: xcompile: respect environment variables when using host compiler for Android
* waifulib: xcompile: use correct environ dict
* gha: try to fix -fuse-ld=lld with clang-12
* waifulib: xcompile: fix typo
* scripts: xcompile: fix motomagx build
* mainui: upgrade
* gha: fix android build, last time
* engine: wscript: disable crashhandler for magx
2021-07-03 19:21:09 +02:00
|
|
|
- os: windows-latest
|
|
|
|
targetos: win32
|
|
|
|
targetarch: amd64
|
|
|
|
- os: windows-latest
|
|
|
|
targetos: win32
|
|
|
|
targetarch: i386
|
|
|
|
env:
|
2023-01-13 09:50:01 +01:00
|
|
|
SDL_VERSION: 2.26.2
|
ci: migrate to GitHub Actions
* travis: disable build, disable deploy, add free aarch64/ppc64le/s390x builds
* scripts: cleanup of old CI scripts
* scripts: now port to GitHub Actions
* actions: fix extras checkout
* github: remove codeql action, turned out not to be very useful
* github: remove quiet flag on wget
* github: are we allowed to use envvars?
* github: add needed dependencies for linux
* github: install wget for windows
* scripts: convert our CPU architecture naming into what AppImage uses
* github: run scripts with bash explicitly
* github: first try to upload to GitHub Releases, enable amd64 win32 builds
* Use our uploadtool fork
* ci: include android, motomagx build for gha, refactor cirrus and travis ci scripts
* gha: try to fix build
* travis: try to fix build
* gha: try to fix upload, fix win32 build
* gha: use curl instead of wget, as it's preinstalled for windows. Fix Android build
* gha: add llvm repository, install clang-12 for android
* gha: motomagx: fail fast
* gha: android: explicitly set clang-12 as compiler and llvm-strip-12 as strip
* waifulib: xcompile: respect environment variables when using host compiler for Android
* waifulib: xcompile: use correct environ dict
* gha: try to fix -fuse-ld=lld with clang-12
* waifulib: xcompile: fix typo
* scripts: xcompile: fix motomagx build
* mainui: upgrade
* gha: fix android build, last time
* engine: wscript: disable crashhandler for magx
2021-07-03 19:21:09 +02:00
|
|
|
GH_CPU_ARCH: ${{ matrix.targetarch }}
|
|
|
|
ANDROID_SDK_TOOLS_VER: 4333796
|
|
|
|
steps:
|
|
|
|
- name: Checkout
|
2022-11-05 03:19:07 +01:00
|
|
|
uses: actions/checkout@v3
|
ci: migrate to GitHub Actions
* travis: disable build, disable deploy, add free aarch64/ppc64le/s390x builds
* scripts: cleanup of old CI scripts
* scripts: now port to GitHub Actions
* actions: fix extras checkout
* github: remove codeql action, turned out not to be very useful
* github: remove quiet flag on wget
* github: are we allowed to use envvars?
* github: add needed dependencies for linux
* github: install wget for windows
* scripts: convert our CPU architecture naming into what AppImage uses
* github: run scripts with bash explicitly
* github: first try to upload to GitHub Releases, enable amd64 win32 builds
* Use our uploadtool fork
* ci: include android, motomagx build for gha, refactor cirrus and travis ci scripts
* gha: try to fix build
* travis: try to fix build
* gha: try to fix upload, fix win32 build
* gha: use curl instead of wget, as it's preinstalled for windows. Fix Android build
* gha: add llvm repository, install clang-12 for android
* gha: motomagx: fail fast
* gha: android: explicitly set clang-12 as compiler and llvm-strip-12 as strip
* waifulib: xcompile: respect environment variables when using host compiler for Android
* waifulib: xcompile: use correct environ dict
* gha: try to fix -fuse-ld=lld with clang-12
* waifulib: xcompile: fix typo
* scripts: xcompile: fix motomagx build
* mainui: upgrade
* gha: fix android build, last time
* engine: wscript: disable crashhandler for magx
2021-07-03 19:21:09 +02:00
|
|
|
with:
|
|
|
|
submodules: recursive
|
|
|
|
- name: Install dependencies
|
|
|
|
run: bash scripts/gha/deps_${{ matrix.targetos }}.sh
|
|
|
|
- name: Build engine
|
|
|
|
run: bash scripts/gha/build_${{ matrix.targetos }}.sh
|
2021-12-14 21:17:04 +01:00
|
|
|
- name: Upload engine (artifacts)
|
2022-11-05 03:19:07 +01:00
|
|
|
uses: actions/upload-artifact@v3
|
2021-12-14 21:17:04 +01:00
|
|
|
with:
|
|
|
|
name: artifact-${{ matrix.targetos }}-${{ matrix.targetarch }}
|
2021-12-17 02:09:54 +01:00
|
|
|
path: artifacts/*
|
2023-02-04 22:06:37 +01:00
|
|
|
flatpak:
|
|
|
|
name: "Flatpak"
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
matrix:
|
|
|
|
include:
|
|
|
|
- app: su.xash.Engine.Compat.i386
|
|
|
|
container:
|
|
|
|
image: bilelmoussaoui/flatpak-github-actions:freedesktop-22.08
|
|
|
|
options: --privileged
|
|
|
|
steps:
|
|
|
|
- name: Checkout
|
|
|
|
uses: actions/checkout@v3
|
|
|
|
with:
|
|
|
|
submodules: recursive
|
|
|
|
- name: Build flatpak (Compat.i386)
|
|
|
|
uses: FWGS/flatpak-github-actions/flatpak-builder@v5
|
|
|
|
with:
|
|
|
|
bundle: ${{ matrix.app }}.flatpak
|
|
|
|
manifest-path: scripts/flatpak/${{ matrix.app }}.yml
|
2023-03-27 03:50:16 +02:00
|
|
|
- name: Upload engine (artifacts)
|
|
|
|
uses: actions/upload-artifact@v3
|
|
|
|
with:
|
|
|
|
name: artifact-${{ matrix.targetos }}-${{ matrix.targetarch }}
|
|
|
|
path: artifacts/*
|
|
|
|
release:
|
|
|
|
name: "Upload releases"
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
needs: [build, flatpak]
|
|
|
|
if: ${{ github.event_name == 'push' }}
|
|
|
|
steps:
|
2023-04-19 15:32:21 +02:00
|
|
|
- name: Remove old release
|
|
|
|
uses: FWGS/delete-tag-and-release@v0.2.1-dev
|
|
|
|
with:
|
|
|
|
tag_name: ${{ github.ref_name == 'master' && 'continuous' || format('continuous-{0}', github.ref_name) }}
|
|
|
|
delete_release: true
|
|
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
2023-03-27 03:50:16 +02:00
|
|
|
- name: Fetch artifacts
|
|
|
|
uses: actions/download-artifact@v3.0.1
|
|
|
|
with:
|
|
|
|
path: artifacts/
|
2023-04-19 15:32:21 +02:00
|
|
|
- name: Repackage binaries and allow GitHub to process removed release for few seconds
|
2023-03-27 03:50:16 +02:00
|
|
|
run: |
|
2023-03-28 22:32:43 +02:00
|
|
|
cd artifacts/
|
2023-03-27 03:50:16 +02:00
|
|
|
for i in artifact-* su.xash.Engine.*; do
|
|
|
|
mv "$i"/* .
|
|
|
|
rm -rf "$i"
|
|
|
|
done
|
2023-03-28 18:49:35 +02:00
|
|
|
ls -R .
|
2023-03-28 22:32:43 +02:00
|
|
|
cd ../
|
2023-04-19 15:32:21 +02:00
|
|
|
sleep 20s
|
2023-03-27 03:50:16 +02:00
|
|
|
- name: Upload new release
|
2023-04-19 14:05:33 +02:00
|
|
|
uses: FWGS/action-gh-release@v0.1.15
|
2023-03-27 03:50:16 +02:00
|
|
|
with:
|
2023-04-19 14:05:33 +02:00
|
|
|
name: Xash3D FWGS Continuous ${{ github.ref_name }} Build
|
|
|
|
tag_name: ${{ github.ref_name == 'master' && 'continuous' || format('continuous-{0}', github.ref_name) }}
|
2023-03-27 03:50:16 +02:00
|
|
|
prerelease: true
|
2023-04-19 14:05:33 +02:00
|
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
files: artifacts/*
|
|
|
|
draft: false
|