Files
RMG/.github/workflows/build.yml
T
Rosalie Wanders c061981de0 ci: build AppImage
2023-02-19 01:01:24 +01:00

91 lines
3.0 KiB
YAML

name: RMG
on: [push, pull_request]
jobs:
Linux:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: hendrikmuhs/ccache-action@v1.2.5
with:
key: Linux
- name: Install Packages
run: |
sudo apt-get -qq update
sudo apt-get upgrade
sudo apt-get -y install cmake ninja-build libhidapi-dev libsamplerate0-dev libspeex-dev libminizip-dev libsdl2-dev libfreetype6-dev libgl1-mesa-dev libglu1-mesa-dev pkg-config zlib1g-dev binutils-dev libspeexdsp-dev qt6-base-dev libqt6svg6-dev build-essential nasm git zip
- name: Prepare Environment
run: |
echo "GIT_REVISION=$(git describe --tags --always)" >> $GITHUB_ENV
- name: Build RMG (AppImage)
run: |
mkdir Build Build/AppImage Bin/ -p
export src_dir="$(pwd)"
export build_dir="$(pwd)/build"
export bin_dir="$(pwd)/Bin/AppImage"
cmake -S "$src_dir" -B "$build_dir" -DCMAKE_BUILD_TYPE="Release" -DPORTABLE_INSTALL="OFF" -DCMAKE_INSTALL_PREFIX="/usr" -G "Ninja"
cmake --build "$build_dir"
cmake --install "$build_dir" --prefix="$bin_dir/usr"
pushd "$bin_dir/../"
"$src_dir"/Package/AppImage/Create.sh
shell: bash
- name: Upload RMG (Portable)
uses: actions/upload-artifact@v3
with:
name: RMG-Portable-Linux64-${{ env.GIT_REVISION }}
path: Bin/*.AppImage
Windows:
runs-on: windows-2019
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: hendrikmuhs/ccache-action@v1.2.5
with:
key: Windows
- uses: msys2/setup-msys2@v2
with:
path-type: inherit
update: true
install: >-
make
mingw-w64-x86_64-cmake
mingw-w64-x86_64-ninja
mingw-w64-x86_64-gcc
mingw-w64-x86_64-hidapi
mingw-w64-x86_64-freetype
mingw-w64-x86_64-libpng
mingw-w64-x86_64-SDL2
mingw-w64-x86_64-qt6
mingw-w64-x86_64-SDL2
mingw-w64-x86_64-hidapi
mingw-w64-x86_64-speexdsp
mingw-w64-x86_64-libsamplerate
mingw-w64-x86_64-nasm
mingw-w64-x86_64-minizip
git
- name: Prepare Environment
run: |
$env:revision = git describe --tags --always
echo "GIT_REVISION=$env:revision" >> $env:GITHUB_ENV
shell: pwsh
- name: Build RMG (Portable)
run: ./Source/Script/Build.sh Release
shell: msys2 {0}
- name: Create Installer
run: .\Build\Release\Source\Installer\CreateInstaller.bat
- name: Upload RMG (Portable)
uses: actions/upload-artifact@v3
with:
name: RMG-Portable-Windows64-${{ env.GIT_REVISION }}
path: Bin/Release/*
- name: Upload RMG (Installer)
uses: actions/upload-artifact@v3
with:
name: RMG-Setup-Windows64-${{ env.GIT_REVISION }}
path: Bin/*.exe