|
- name: release
-
- on: [push, pull_request]
-
- env:
- CACHE_VERSION: 5
- DEBIAN_FRONTEND: noninteractive
- HOMEBREW_NO_AUTO_UPDATE: 1
- HOMEBREW_NO_INSTALL_CLEANUP: 1
- PAWPAW_SKIP_LTO: 1
- PAWPAW_SKIP_TESTS: 1
- PAWPAW_VERSION: 2606d0d436471b12902d60edd2aeb2390db44e62
-
- jobs:
- # macOS native universal build
- macos_universal:
- runs-on: macos-14
- steps:
- - uses: actions/checkout@v4
- - name: Set up cache
- uses: actions/cache@v4
- with:
- path: |
- ~/PawPawBuilds
- key: macos-universal-v${{ env.CACHE_VERSION }}
- - name: Set up dependencies
- run: |
- brew install cmake jq meson
- - name: Bootstrap macOS universal
- shell: bash
- run: |
- git clone https://github.com/DISTRHO/PawPaw.git
- git -C PawPaw checkout ${{ env.PAWPAW_VERSION }}
- ./PawPaw/.github/workflows/bootstrap-deps.sh macos-universal
- ./PawPaw/bootstrap-carla.sh macos-universal && ./PawPaw/.cleanup.sh macos-universal
- - name: Build macOS universal
- shell: bash
- run: |
- source PawPaw/local.env macos-universal
- make features
- make NOOPT=true ${MAKE_ARGS}
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} -j 1
- - uses: actions/upload-artifact@v4
- with:
- name: macOS dmg
- path: ./*.dmg
- - uses: softprops/action-gh-release@v1
- if: startsWith(github.ref, 'refs/tags/')
- with:
- tag_name: ${{ github.ref_name }}
- name: ${{ github.ref_name }}
- draft: false
- prerelease: false
- files: |
- ./*.dmg
-
- # linux with win32 cross-compilation
- win32:
- runs-on: ubuntu-latest
- container:
- image: ubuntu:22.04
- steps:
- - uses: actions/checkout@v4
- - name: Set up cache
- uses: actions/cache@v4
- with:
- path: |
- ~/PawPawBuilds
- key: win32-v${{ env.CACHE_VERSION }}
- - name: Bootstrap win32 cross-compiled
- shell: bash
- run: |
- apt-get update -qq
- apt-get install -yqq git unzip zip
- git clone https://github.com/DISTRHO/PawPaw.git
- git -C PawPaw checkout ${{ env.PAWPAW_VERSION }}
- ./PawPaw/.github/workflows/bootstrap-deps.sh win32
- ./PawPaw/bootstrap-carla.sh win32 && ./PawPaw/.cleanup.sh win32
- - name: Build win32 cross-compiled
- shell: bash
- run: |
- source PawPaw/local.env win32
- make features
- make NOOPT=true ${MAKE_ARGS}
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} -j 1
- - uses: actions/upload-artifact@v4
- with:
- name: win32 zip
- path: ./*.zip
- - uses: softprops/action-gh-release@v1
- if: startsWith(github.ref, 'refs/tags/')
- with:
- tag_name: ${{ github.ref_name }}
- name: ${{ github.ref_name }}
- draft: false
- prerelease: false
- files: |
- ./*.zip
-
- # linux with win64 cross-compilation
- win64:
- runs-on: ubuntu-latest
- container:
- image: ubuntu:22.04
- steps:
- - uses: actions/checkout@v4
- - name: Set up cache
- uses: actions/cache@v4
- with:
- path: |
- ~/PawPawBuilds
- key: win64-v${{ env.CACHE_VERSION }}
- - name: Bootstrap win64 cross-compiled
- shell: bash
- run: |
- apt-get update -qq
- apt-get install -yqq git unzip zip
- git clone https://github.com/DISTRHO/PawPaw.git
- git -C PawPaw checkout ${{ env.PAWPAW_VERSION }}
- ./PawPaw/.github/workflows/bootstrap-deps.sh win64
- ./PawPaw/bootstrap-carla.sh win64 && ./PawPaw/.cleanup.sh win64
- - name: Build win64 cross-compiled
- shell: bash
- run: |
- source PawPaw/local.env win64
- make features
- make NOOPT=true ${MAKE_ARGS}
- make NOOPT=true ${MAKE_ARGS} win32r
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} TESTING=true -j 1
- make dist ${MAKE_ARGS} -j 1
- - uses: actions/upload-artifact@v4
- with:
- name: win64 zip
- path: ./*.zip
- - uses: softprops/action-gh-release@v1
- if: startsWith(github.ref, 'refs/tags/')
- with:
- tag_name: ${{ github.ref_name }}
- name: ${{ github.ref_name }}
- draft: false
- prerelease: false
- files: |
- ./*.zip
|