Skip to content

Commit

Permalink
Add CI build tests based on official JACK2 release setup
Browse files Browse the repository at this point in the history
Signed-off-by: falkTX <[email protected]>
  • Loading branch information
falkTX committed May 1, 2022
1 parent 7dc28dc commit 2f77417
Showing 1 changed file with 163 additions and 0 deletions.
163 changes: 163 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,13 @@ on:
pull_request:
branches: [main]

env:
JACK2_VERSION: v1.9.21
PAWPAW_CACHE_VERSION: 1
PAWPAW_JACK2_NO_CUSTOM_PREFIX: 1
PAWPAW_SKIP_LTO: 1
PAWPAW_VERSION: 01d07086586818e427b2898d2d446d30b68f3139

jobs:
build_arch_linux_jack1:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -76,3 +83,159 @@ jobs:
run: meson build && ninja -C build
- name: Install jack-example-tools
run: ninja -C build install
build_pawpaw_macos_intel:
runs-on: macos-10.15
steps:
- uses: actions/checkout@v2
- name: Set up cache
uses: actions/cache@v2
with:
path: ~/PawPawBuilds
key: macos-intel-v${{ env.PAWPAW_CACHE_VERSION }}
- name: Set up dependencies
run: brew install cmake jq meson
- name: Bootstrap macOS intel
shell: bash
run: |
if [ ! -d PawPaw ]; then
git clone https://github.com/DISTRHO/PawPaw.git
git -C PawPaw checkout ${{ env.PAWPAW_VERSION}}
fi
./PawPaw/bootstrap-jack2.sh macos && ./PawPaw/.cleanup.sh macos
- name: Build jack2
shell: bash
run: |
./PawPaw/build-jack2.sh macos && ./PawPaw/.cleanup.sh macos
- name: Build jack-example-tools
shell: bash
run: |
pushd PawPaw && source local.env macos && popd
meson build --prefix ${PAWPAW_PREFIX} || cat build/meson-logs/meson-log.txt
ninja -C build
- name: Install jack-example-tools
run: |
pushd PawPaw && source local.env macos && popd
ninja -C build install
build_pawpaw_macos_universal:
runs-on: macos-10.15
steps:
- uses: actions/checkout@v2
- name: Set up cache
uses: actions/cache@v2
with:
path: ~/PawPawBuilds
key: macos-universal-v${{ env.PAWPAW_CACHE_VERSION }}
- name: Set up dependencies
run: brew install cmake jq meson
- name: Fix up Xcode
run: |
sudo rm -Rf /Library/Developer/CommandLineTools/SDKs/*
sudo xcode-select -s /Applications/Xcode_12.3.app
- name: Bootstrap macOS intel
shell: bash
run: |
if [ ! -d PawPaw ]; then
git clone https://github.com/DISTRHO/PawPaw.git
git -C PawPaw checkout ${{ env.PAWPAW_VERSION}}
fi
./PawPaw/bootstrap-jack2.sh macos-universal && ./PawPaw/.cleanup.sh macos-universal
- name: Build jack2
shell: bash
run: |
./PawPaw/build-jack2.sh macos-universal && ./PawPaw/.cleanup.sh macos-universal
- name: Build jack-example-tools
shell: bash
run: |
pushd PawPaw && source local.env macos-universal && popd
meson build --prefix ${PAWPAW_PREFIX} || cat build/meson-logs/meson-log.txt
ninja -C build
- name: Install jack-example-tools
run: |
pushd PawPaw && source local.env macos-universal && popd
ninja -C build install
build_pawpaw_win32:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Set up cache
uses: actions/cache@v2
with:
path: ~/PawPawBuilds
key: win32-v${{ env.PAWPAW_CACHE_VERSION }}
- name: Fix GitHub's mess
run: |
sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
sudo apt-get update -qq
sudo apt-get install -yqq --allow-downgrades libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
- name: Set up dependencies
run: |
sudo dpkg --add-architecture i386
sudo apt-get update -qq
sudo apt-get install -y autopoint build-essential curl cmake jq llvm meson mingw-w64 python3-pip \
binutils-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64 wine-stable:i386
pip3 install 'meson>=0.58.0'
- name: Bootstrap win32 cross-compiled
shell: bash
run: |
if [ ! -d PawPaw ]; then
git clone https://github.com/DISTRHO/PawPaw.git
git -C PawPaw checkout ${{ env.PAWPAW_VERSION}}
fi
./PawPaw/bootstrap-jack2.sh win32 && ./PawPaw/.cleanup.sh win32
- name: Build jack2
shell: bash
run: |
./PawPaw/build-jack2.sh win32 && ./PawPaw/.cleanup.sh win32
- name: Build jack-example-tools
shell: bash
run: |
pushd PawPaw && source local.env win32 && popd
meson build --prefix ${PAWPAW_PREFIX} --cross-file PawPaw/setup/meson/win32.ini || cat build/meson-logs/meson-log.txt
ninja -C build
- name: Install jack-example-tools
run: |
pushd PawPaw && source local.env win32 && popd
ninja -C build install
build_pawpaw_win64:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Set up cache
uses: actions/cache@v2
with:
path: ~/PawPawBuilds
key: win64-v${{ env.PAWPAW_CACHE_VERSION }}
- name: Fix GitHub's mess
run: |
sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
sudo apt-get update -qq
sudo apt-get install -yqq --allow-downgrades libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
- name: Set up dependencies
run: |
sudo dpkg --add-architecture i386
sudo apt-get update -qq
sudo apt-get install -y autopoint build-essential curl cmake jq llvm meson mingw-w64 python3-pip \
binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 mingw-w64 wine-stable
pip3 install 'meson>=0.58.0'
- name: Bootstrap win64 cross-compiled
shell: bash
run: |
if [ ! -d PawPaw ]; then
git clone https://github.com/DISTRHO/PawPaw.git
git -C PawPaw checkout ${{ env.PAWPAW_VERSION}}
fi
./PawPaw/bootstrap-jack2.sh win64 && ./PawPaw/.cleanup.sh win64
- name: Build jack2
shell: bash
run: |
./PawPaw/build-jack2.sh win64 && ./PawPaw/.cleanup.sh win64
- name: Build jack-example-tools
shell: bash
run: |
pushd PawPaw && source local.env win64 && popd
meson build --prefix ${PAWPAW_PREFIX} --cross-file PawPaw/setup/meson/win64.ini || cat build/meson-logs/meson-log.txt
ninja -C build
- name: Install jack-example-tools
run: |
pushd PawPaw && source local.env win64 && popd
ninja -C build install

0 comments on commit 2f77417

Please sign in to comment.