From 600ba96ec0319e1eb369b594e07021bbb2b79087 Mon Sep 17 00:00:00 2001 From: falkTX Date: Tue, 5 Dec 2023 16:25:34 +0100 Subject: [PATCH] More CI fixes Signed-off-by: falkTX --- .github/workflows/bootstrap-deps.sh | 1 + .github/workflows/bootstrap.yml | 33 +++++++++++++++-------------- bootstrap-cardinal.sh | 5 +++++ bootstrap-jack2.sh | 7 +++--- bootstrap-mod.sh | 2 +- setup/functions.sh | 2 +- setup/meson/linux-aarch64.ini | 19 +++++++++++++++++ setup/meson/linux-armhf.ini | 19 +++++++++++++++++ setup/meson/linux-i686.ini | 19 +++++++++++++++++ setup/meson/linux-riscv64.ini | 19 +++++++++++++++++ setup/meson/linux-x86_64.ini | 19 +++++++++++++++++ 11 files changed, 124 insertions(+), 21 deletions(-) create mode 100644 setup/meson/linux-aarch64.ini create mode 100644 setup/meson/linux-armhf.ini create mode 100644 setup/meson/linux-i686.ini create mode 100644 setup/meson/linux-riscv64.ini create mode 100644 setup/meson/linux-x86_64.ini diff --git a/.github/workflows/bootstrap-deps.sh b/.github/workflows/bootstrap-deps.sh index 1a85718..ee31711 100755 --- a/.github/workflows/bootstrap-deps.sh +++ b/.github/workflows/bootstrap-deps.sh @@ -110,6 +110,7 @@ case "${1}" in libdbus-1-dev:${arch} \ libgl1-mesa-dev:${arch} \ libglib2.0-dev:${arch} \ + libpcre2-dev:${arch} \ libpcre3-dev:${arch} \ libx11-dev:${arch} \ libxcb1-dev:${arch} \ diff --git a/.github/workflows/bootstrap.yml b/.github/workflows/bootstrap.yml index 53cb815..bb1c145 100644 --- a/.github/workflows/bootstrap.yml +++ b/.github/workflows/bootstrap.yml @@ -718,19 +718,18 @@ jobs: matrix: include: # ubuntu:20.04 - # FIXME Could not invoke sanity test executable - #- target: linux-aarch64 - #container: ubuntu:20.04 - #os: ubuntu-latest - #- target: linux-armhf - #container: ubuntu:20.04 - #os: ubuntu-latest + - target: linux-aarch64 + container: ubuntu:20.04 + os: ubuntu-latest + - target: linux-armhf + container: ubuntu:20.04 + os: ubuntu-latest - target: linux-i686 container: ubuntu:20.04 os: ubuntu-latest - #- target: linux-riscv64 - #container: ubuntu:20.04 - #os: ubuntu-latest + - target: linux-riscv64 + container: ubuntu:20.04 + os: ubuntu-latest - target: linux-x86_64 container: ubuntu:20.04 os: ubuntu-latest @@ -739,9 +738,10 @@ jobs: - target: wasm container: debian:12 os: ubuntu-latest - - target: win32 - container: debian:12 - os: ubuntu-latest + # FIXME build failure: too many sections (40327) + #- target: win32 + #container: debian:12 + #os: ubuntu-latest - target: win64 container: debian:12 os: ubuntu-latest @@ -768,9 +768,10 @@ jobs: strategy: matrix: include: - - target: linux-x86_64 - container: ubuntu:18.04 - os: ubuntu-latest + # FIXME needs CMake 3.15 + #- target: linux-x86_64 + #container: ubuntu:18.04 + #os: ubuntu-latest - target: macos-universal-10.15 os: macos-11 - target: win64 diff --git a/bootstrap-cardinal.sh b/bootstrap-cardinal.sh index eb33ee8..5efbf0e 100755 --- a/bootstrap-cardinal.sh +++ b/bootstrap-cardinal.sh @@ -15,6 +15,11 @@ if [ -z "${target}" ]; then exit 1 fi +# --------------------------------------------------------------------------------------------------------------------- +# LTO is unwanted for Cardinal builds, make sure it is off + +export PAWPAW_SKIP_LTO=1 + # --------------------------------------------------------------------------------------------------------------------- # run bootstrap dependencies diff --git a/bootstrap-jack2.sh b/bootstrap-jack2.sh index b85de4d..a4583af 100755 --- a/bootstrap-jack2.sh +++ b/bootstrap-jack2.sh @@ -63,13 +63,14 @@ function build_custom_db() { local pkgdir="${PAWPAW_BUILDDIR}/${name}-${version}" if [ "${CROSS_COMPILING}" -eq 1 ]; then - extraconfrules+=" --host=${TOOLCHAIN_PREFIX}" + extraconfrules+=" --build=$(uname -m)-linux-gnu ac_cv_build=$(uname -m)-linux-gnu" + extraconfrules+=" --host=${TOOLCHAIN_PREFIX} ac_cv_host=${TOOLCHAIN_PREFIX}" fi if [ "${MACOS}" -eq 1 ]; then extraconfrules+=" --with-mutex=x86_64/gcc-assembly db_cv_atomic=x86/gcc-assembly" fi if [ "${WIN32}" -eq 1 ]; then - extraconfrules+=" --enable-mingw ac_cv_build=$(uname -m)-linux-gnu ac_cv_host=${TOOLCHAIN_PREFIX}" + extraconfrules+=" --enable-mingw" fi _prebuild "${name}" "${pkgdir}" @@ -123,7 +124,7 @@ if [ "${LINUX}" -eq 1 ] || [ "${WIN32}" -eq 1 ]; then PORTAUDIO_EXTRAFLAGS+=" --without-asihpi" PORTAUDIO_EXTRAFLAGS+=" --without-oss" - if [ -n "${MODAUDIO}" ] && [ "${MODAUDIO}" -eq 1 ]; then + if [ -n "${PAWPAW_MODAUDIO}" ] && [ "${PAWPAW_MODAUDIO}" -eq 1 ]; then PORTAUDIO_EXTRAFLAGS+=" --without-alsa" PORTAUDIO_EXTRAFLAGS+=" --with-jack" elif [ "${LINUX}" -eq 1 ]; then diff --git a/bootstrap-mod.sh b/bootstrap-mod.sh index 096932a..d0aa52b 100755 --- a/bootstrap-mod.sh +++ b/bootstrap-mod.sh @@ -23,7 +23,7 @@ export PAWPAW_SKIP_LTO=1 # --------------------------------------------------------------------------------------------------------------------- # run bootstrap dependencies -export MODAUDIO=1 +export PAWPAW_MODAUDIO=1 ./bootstrap-common.sh "${target}" ./bootstrap-jack2.sh "${target}" diff --git a/setup/functions.sh b/setup/functions.sh index d655ccc..97db89a 100644 --- a/setup/functions.sh +++ b/setup/functions.sh @@ -412,7 +412,7 @@ function build_meson() { local pkgdir="${PAWPAW_BUILDDIR}/${name}-${version}" - if [ "${CROSS_COMPILING}" -eq 1 ] && [ "${LINUX}" -eq 0 ]; then + if [ "${CROSS_COMPILING}" -eq 1 ]; then extraconfrules="--cross-file "${PAWPAW_ROOT}/setup/meson/${PAWPAW_TARGET}.ini" ${extraconfrules}" fi diff --git a/setup/meson/linux-aarch64.ini b/setup/meson/linux-aarch64.ini new file mode 100644 index 0000000..31858cd --- /dev/null +++ b/setup/meson/linux-aarch64.ini @@ -0,0 +1,19 @@ +[binaries] +name = 'linux-aarch64' +c = 'aarch64-linux-gnu-gcc' +cpp = 'aarch64-linux-gnu-g++' +ar = 'aarch64-linux-gnu-gcc-ar' +nm = 'aarch64-linux-gnu-gcc-nm' +ld = 'aarch64-linux-gnu-ld' +strip = 'aarch64-linux-gnu-strip' +pkgconfig = 'pkg-config' +exe_wrapper = 'qemu-aarch64-static' + +[host_machine] +system = 'linux' +cpu_family = 'aarch64' +cpu = 'aarch64' +endian = 'little' + +[properties] +needs_exe_wrapper = true diff --git a/setup/meson/linux-armhf.ini b/setup/meson/linux-armhf.ini new file mode 100644 index 0000000..25bfe1e --- /dev/null +++ b/setup/meson/linux-armhf.ini @@ -0,0 +1,19 @@ +[binaries] +name = 'linux-armhf' +c = 'arm-linux-gnueabihf-gcc' +cpp = 'arm-linux-gnueabihf-g++' +ar = 'arm-linux-gnueabihf-gcc-ar' +nm = 'arm-linux-gnueabihf-gcc-nm' +ld = 'arm-linux-gnueabihf-ld' +strip = 'arm-linux-gnueabihf-strip' +pkgconfig = 'pkg-config' +exe_wrapper = 'qemu-arm-static' + +[host_machine] +system = 'linux' +cpu_family = 'arm' +cpu = 'arm' +endian = 'little' + +[properties] +needs_exe_wrapper = true diff --git a/setup/meson/linux-i686.ini b/setup/meson/linux-i686.ini new file mode 100644 index 0000000..b5a48ac --- /dev/null +++ b/setup/meson/linux-i686.ini @@ -0,0 +1,19 @@ +[binaries] +name = 'linux-i686' +c = 'i686-linux-gnu-gcc' +cpp = 'i686-linux-gnu-g++' +ar = 'i686-linux-gnu-gcc-ar' +nm = 'i686-linux-gnu-gcc-nm' +ld = 'i686-linux-gnu-ld' +strip = 'i686-linux-gnu-strip' +pkgconfig = 'pkg-config' +exe_wrapper = 'qemu-i386-static' + +[host_machine] +system = 'linux' +cpu_family = 'i686' +cpu = 'i686' +endian = 'little' + +[properties] +needs_exe_wrapper = true diff --git a/setup/meson/linux-riscv64.ini b/setup/meson/linux-riscv64.ini new file mode 100644 index 0000000..d3fbc39 --- /dev/null +++ b/setup/meson/linux-riscv64.ini @@ -0,0 +1,19 @@ +[binaries] +name = 'linux-riscv64' +c = 'riscv64-linux-gnu-gcc' +cpp = 'riscv64-linux-gnu-g++' +ar = 'riscv64-linux-gnu-gcc-ar' +nm = 'riscv64-linux-gnu-gcc-nm' +ld = 'riscv64-linux-gnu-ld' +strip = 'riscv64-linux-gnu-strip' +pkgconfig = 'pkg-config' +exe_wrapper = 'qemu-riscv64-static' + +[host_machine] +system = 'linux' +cpu_family = 'riscv64' +cpu = 'riscv64' +endian = 'big' + +[properties] +needs_exe_wrapper = true diff --git a/setup/meson/linux-x86_64.ini b/setup/meson/linux-x86_64.ini new file mode 100644 index 0000000..6eef3d3 --- /dev/null +++ b/setup/meson/linux-x86_64.ini @@ -0,0 +1,19 @@ +[binaries] +name = 'linux-aarch64' +c = 'x86_64-linux-gnu-gcc' +cpp = 'x86_64-linux-gnu-g++' +ar = 'x86_64-linux-gnu-gcc-ar' +nm = 'x86_64-linux-gnu-gcc-nm' +ld = 'x86_64-linux-gnu-ld' +strip = 'x86_64-linux-gnu-strip' +pkgconfig = 'pkg-config' +exe_wrapper = 'qemu-x86_64-static' + +[host_machine] +system = 'linux' +cpu_family = 'x86_64' +cpu = 'x86_64' +endian = 'little' + +[properties] +needs_exe_wrapper = true