From 9a415a660eab2762398d2e01cab17f382e131035 Mon Sep 17 00:00:00 2001 From: falkTX Date: Sat, 9 Nov 2024 21:42:57 +0100 Subject: [PATCH] Update CI setup Signed-off-by: falkTX --- .github/workflows/bootstrap-deps.sh | 22 ++++++++++----- .github/workflows/build.yml | 43 +++++++++++++---------------- 2 files changed, 34 insertions(+), 31 deletions(-) diff --git a/.github/workflows/bootstrap-deps.sh b/.github/workflows/bootstrap-deps.sh index a3523eba..df997716 100755 --- a/.github/workflows/bootstrap-deps.sh +++ b/.github/workflows/bootstrap-deps.sh @@ -9,9 +9,9 @@ fi function get_linux_deb_arch() { case "${1}" in - "linux-aarch64") echo "arm64" ;; + "linux-arm64"|"linux-aarch64") echo "arm64" ;; "linux-armhf") echo "armhf" ;; - "linux-i686") echo "i386" ;; + "linux-i386"|"linux-i686") echo "i386" ;; "linux-riscv64") echo "riscv64" ;; "linux-x86_64") echo "amd64" ;; esac @@ -72,8 +72,9 @@ function install_compiler() { } case "${1}" in - "macos"|"macos-universal"|"macos-universal-10.15") - brew install autoconf automake cmake coreutils gawk git gnu-sed jq make meson + "macos"|"macos-intel"|"macos-10.15"|"macos-universal"|"macos-universal-10.15") + brew install autoconf automake cmake coreutils gawk git gnu-sed jq libtool make meson + brew uninstall --ignore-dependencies cairo freetype [ -n "${GITHUB_ENV}" ] && echo "PAWPAW_PACK_NAME=${1}-$(sw_vers -productVersion | cut -d '.' -f 1)" >> "${GITHUB_ENV}" ;; @@ -90,8 +91,12 @@ case "${1}" in if [ -n "${linux_arch}" ]; then if [ "$(lsb_release -si 2>/dev/null)" = "Ubuntu" ]; then - sed -i "s/deb http/deb [arch=i386,amd64] http/" /etc/apt/sources.list - sed -i "s/deb mirror/deb [arch=i386,amd64] mirror/" /etc/apt/sources.list + if [ -e /etc/apt/sources.list.d/ubuntu.sources ]; then + sed -i 's|Types: deb|Types: deb\nArchitectures: amd64 i386|g' /etc/apt/sources.list.d/ubuntu.sources + else + sed -i "s/deb http/deb [arch=i386,amd64] http/" /etc/apt/sources.list + sed -i "s/deb mirror/deb [arch=i386,amd64] mirror/" /etc/apt/sources.list + fi if [ "${linux_arch}" != "amd64" ] && [ "${linux_arch}" != "i386" ]; then echo "deb [arch=${linux_arch}] http://ports.ubuntu.com/ubuntu-ports ${release} main restricted universe multiverse" | tee -a /etc/apt/sources.list echo "deb [arch=${linux_arch}] http://ports.ubuntu.com/ubuntu-ports ${release}-updates main restricted universe multiverse" | tee -a /etc/apt/sources.list @@ -107,7 +112,7 @@ case "${1}" in apt-get install -yqq --allow-downgrades \ binfmt-support \ qemu-user-static \ - x11proto-dev x11proto-render-dev \ + x11proto-dev x11proto-render-dev x11proto-xf86vidmode-dev \ libasound2-dev:${linux_arch} \ libdbus-1-dev:${linux_arch} \ libfftw3-dev:${linux_arch} \ @@ -119,11 +124,14 @@ case "${1}" in libvulkan-dev:${linux_arch} \ libx11-dev:${linux_arch} \ libxcb1-dev:${linux_arch} \ + libxcb-dri2-0-dev:${linux_arch} \ libxcursor-dev:${linux_arch} \ + libxdamage-dev:${linux_arch} \ libxext-dev:${linux_arch} \ libxfixes-dev:${linux_arch} \ libxrandr-dev:${linux_arch} \ libxrender-dev:${linux_arch} \ + libxxf86vm-dev:${linux_arch} \ uuid-dev:${linux_arch} apt-get install -yqq --allow-downgrades \ qtbase5-dev-tools \ diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 51ec06d8..398b7f0f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -13,39 +13,33 @@ jobs: strategy: matrix: include: - - target: linux-aarch64 - pkgprefix: aarch64-linux-gnu - container: ubuntu:18.04 - target: linux-aarch64 pkgprefix: aarch64-linux-gnu container: ubuntu:20.04 - target: linux-aarch64 pkgprefix: aarch64-linux-gnu container: ubuntu:22.04 - - target: linux-armhf - pkgprefix: arm-linux-gnueabihf - container: ubuntu:18.04 + - target: linux-aarch64 + pkgprefix: aarch64-linux-gnu + container: ubuntu:24.04 - target: linux-armhf pkgprefix: arm-linux-gnueabihf container: ubuntu:20.04 - target: linux-armhf pkgprefix: arm-linux-gnueabihf container: ubuntu:22.04 - - target: linux-i686 - pkgprefix: i386-linux-gnu - container: ubuntu:18.04 - - target: linux-i686 - pkgprefix: i386-linux-gnu - container: ubuntu:20.04 - - target: linux-x86_64 - pkgprefix: x86_64-linux-gnu - container: ubuntu:18.04 + - target: linux-armhf + pkgprefix: arm-linux-gnueabihf + container: ubuntu:24.04 - target: linux-x86_64 pkgprefix: x86_64-linux-gnu container: ubuntu:20.04 - target: linux-x86_64 pkgprefix: x86_64-linux-gnu container: ubuntu:22.04 + - target: linux-x86_64 + pkgprefix: x86_64-linux-gnu + container: ubuntu:24.04 runs-on: ubuntu-latest container: image: ${{ matrix.container }} @@ -69,7 +63,7 @@ jobs: rm *.deb ;; esac - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: recursive - name: Set up dependencies @@ -96,7 +90,7 @@ jobs: - name: Pack binaries run: | tar czf ${{ github.event.repository.name }}-${{ env.PAWPAW_PACK_NAME }}-${{ github.event.pull_request.number || env.SHA8 }}.tar.gz -C ${{ env.DESTDIR }}/usr/lib lv2 vst vst3 - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: ${{ github.event.repository.name }}-${{ env.PAWPAW_PACK_NAME }}-${{ github.event.pull_request.number || env.SHA8 }} path: | @@ -123,7 +117,7 @@ jobs: curl -sLO https://launchpad.net/~kxstudio-debian/+archive/ubuntu/toolchain/+files/git-man_2.34.1-1ubuntu1~bpo20.04.1~ppa1_all.deb dpkg -i *.deb rm *.deb - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: recursive - name: Set up dependencies @@ -139,11 +133,12 @@ jobs: strategy: matrix: include: - - os: macos-11 - - os: macos-12 + - os: macos-13 + - os: macos-14 + - os: macos-15 runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: recursive - name: Set up dependencies @@ -167,7 +162,7 @@ jobs: - name: Pack binaries run: | tar czf ${{ github.event.repository.name }}-${{ env.PAWPAW_PACK_NAME }}-${{ github.event.pull_request.number || env.SHA8 }}.tar.gz -C ${{ env.DESTDIR }}/usr/lib lv2 vst vst3 - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: ${{ github.event.repository.name }}-${{ env.PAWPAW_PACK_NAME }}-${{ github.event.pull_request.number || env.SHA8 }} path: | @@ -195,7 +190,7 @@ jobs: - name: Install git run: | apt-get update -qq && apt-get install -yqq --no-install-recommends ca-certificates git - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: submodules: recursive - name: Set up dependencies @@ -227,7 +222,7 @@ jobs: - name: Pack binaries run: | tar czf ${{ github.event.repository.name }}-${{ matrix.target }}-${{ github.event.pull_request.number || env.SHA8 }}.tar.gz -C ${{ env.DESTDIR }}/usr/lib lv2 vst vst3 - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: ${{ github.event.repository.name }}-${{ matrix.target }}-${{ github.event.pull_request.number || env.SHA8 }} path: |