no sudo for container CIs #10
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: build | |
on: [push, pull_request] | |
env: | |
CACHE_VERSION: 1 | |
DEBIAN_FRONTEND: noninteractive | |
PAWPAW_SKIP_LTO: 1 | |
PAWPAW_SKIP_SAMPLERATE: 1 | |
PAWPAW_VERSION: 7105dc52abffd5aa5f1ab65f27396f59ba945ea3 | |
jobs: | |
linux: | |
strategy: | |
matrix: | |
target: [linux-x86_64] | |
runs-on: ubuntu-latest | |
container: | |
image: debian:10 | |
steps: | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/PawPawBuilds | |
key: ${{ matrix.target }}-v${{ env.CACHE_VERSION }} | |
- name: install dependencies | |
shell: bash | |
run: | | |
apt-get update -qq | |
apt-get install -yqq autoconf automake build-essential curl cmake git libasound2-dev libdbus-1-dev libgl1-mesa-dev libglib2.0-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: bootstrap | |
shell: bash | |
run: | | |
git clone https://github.com/DISTRHO/PawPaw.git | |
git -C PawPaw checkout ${{ env.PAWPAW_VERSION }} | |
./PawPaw/bootstrap-common.sh ${{ matrix.target }} && ./PawPaw/.cleanup.sh ${{ matrix.target }} | |
- name: build | |
shell: bash | |
run: | | |
source PawPaw/local.env ${{ matrix.target }} | |
cmake -S . -B build | |
$(which cmake) --build build -j | |
macos: | |
strategy: | |
matrix: | |
target: [macos-universal] | |
runs-on: macos-11 | |
steps: | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/PawPawBuilds | |
key: ${{ matrix.target }}-v${{ env.CACHE_VERSION }} | |
- name: install dependencies | |
shell: bash | |
run: | | |
brew install cmake git jq meson | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: bootstrap | |
shell: bash | |
run: | | |
git clone https://github.com/DISTRHO/PawPaw.git | |
git -C PawPaw checkout ${{ env.PAWPAW_VERSION }} | |
./PawPaw/bootstrap-common.sh ${{ matrix.target }} && ./PawPaw/.cleanup.sh ${{ matrix.target }} | |
- name: build | |
shell: bash | |
run: | | |
source PawPaw/local.env ${{ matrix.target }} | |
cmake -S . -B build | |
$(which cmake) --build build -j | |
windows: | |
strategy: | |
matrix: | |
target: [win32, win64] | |
runs-on: ubuntu-latest | |
container: | |
image: debian:12 | |
steps: | |
- uses: actions/cache@v3 | |
with: | |
path: | | |
~/PawPawBuilds | |
key: ${{ matrix.target }}-v${{ env.CACHE_VERSION }} | |
- name: install dependencies | |
shell: bash | |
run: | | |
dpkg --add-architecture i386 | |
apt-get update -qq | |
if [ '${{ matrix.target }}' == 'win32' ]; then | |
apt-get install -yqq binutils-mingw-w64-i686 g++-mingw-w64-i686 | |
else | |
apt-get install -yqq binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 | |
fi | |
apt-get install -yqq autoconf automake curl cmake git mingw-w64 wine-stable | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: bootstrap | |
shell: bash | |
run: | | |
git clone https://github.com/DISTRHO/PawPaw.git | |
git -C PawPaw checkout ${{ env.PAWPAW_VERSION }} | |
./PawPaw/bootstrap-common.sh ${{ matrix.target }} && ./PawPaw/.cleanup.sh ${{ matrix.target }} | |
- name: build | |
shell: bash | |
run: | | |
source PawPaw/local.env ${{ matrix.target }} | |
cmake -S . -B build | |
$(which cmake) --build build -j |