
Currently our gitlab CI is failing due to valgrind breakage. With Arch stripping glibc, valgrind now requires debuginfod to be active. However the gitlab CI system combined without our testsuite does not retrieve these symbols, even when the appropriate environmental variable is set. Work around this by installing the glibc-debug package directly using a slight kludge... All blame for this approach is assigned to foutrelis! Signed-off-by: Allan McRae <allan@archlinux.org>
115 lines
2.7 KiB
YAML
115 lines
2.7 KiB
YAML
variables:
|
|
MAKEFLAGS: "-j10"
|
|
VERBOSE: 1
|
|
|
|
default:
|
|
after_script:
|
|
- build-aux/print-failed-test-output build/meson-logs/testlog.json
|
|
|
|
.arch-test:
|
|
image: archlinux:base-devel
|
|
before_script:
|
|
- >
|
|
pacman -Syu --needed --noconfirm
|
|
git
|
|
gpgme libarchive curl
|
|
python
|
|
fakeroot fakechroot
|
|
meson
|
|
|
|
arch:
|
|
extends: .arch-test
|
|
script:
|
|
- meson build
|
|
- ninja -C build
|
|
- fakechroot meson test -C build
|
|
|
|
arch-debug:
|
|
extends: .arch-test
|
|
script:
|
|
- meson --buildtype=debug --werror build
|
|
- ninja -C build
|
|
- fakechroot meson test -C build
|
|
|
|
arch-docs:
|
|
extends: .arch-test
|
|
script:
|
|
- pacman -Syu --needed --noconfirm asciidoc
|
|
- meson -Ddoc=enabled build
|
|
- ninja -C build
|
|
|
|
arch-clang:
|
|
extends: .arch-test
|
|
script:
|
|
- pacman -Syu --needed --noconfirm clang
|
|
- CC=clang meson build
|
|
- ninja -C build
|
|
- fakechroot meson test -C build
|
|
|
|
arch-valgrind:
|
|
extends: .arch-test
|
|
script:
|
|
- pacman -Syu --needed --noconfirm valgrind
|
|
- pacman -U --noconfirm https://geo.mirror.pkgbuild.com/core-debug/os/x86_64/glibc-debug-$(pacman -S --print-format %v glibc)-x86_64.pkg.tar.zst
|
|
- meson build
|
|
- ninja -C build
|
|
- PACTEST_VALGRIND=1 fakechroot meson test -C build
|
|
|
|
arch-nettle:
|
|
extends: .arch-test
|
|
script:
|
|
- meson -Dcrypto=nettle --buildtype=debug build
|
|
- ninja -C build
|
|
- fakechroot meson test -C build
|
|
|
|
arch-no-gpg:
|
|
extends: .arch-test
|
|
script:
|
|
- meson -Dgpgme=disabled --buildtype=debug build
|
|
- ninja -C build
|
|
- fakechroot meson test -C build
|
|
|
|
arch-no-curl:
|
|
extends: .arch-test
|
|
script:
|
|
- meson -Dcurl=disabled --buildtype=debug build
|
|
- ninja -C build
|
|
- fakechroot meson test -C build
|
|
|
|
arch-no-nls:
|
|
extends: .arch-test
|
|
script:
|
|
- meson -Di18n=false --buildtype=debug build
|
|
- ninja -C build
|
|
- fakechroot meson test -C build
|
|
|
|
debian:
|
|
image: debian:bullseye
|
|
before_script:
|
|
- apt update
|
|
- >
|
|
apt -y install --no-install-recommends
|
|
git pkg-config meson gcc libtool
|
|
libgpgme-dev libarchive-dev libcurl4-openssl-dev libssl-dev curl
|
|
gettext python3 python3-setuptools dash gawk ca-certificates
|
|
fakeroot fakechroot
|
|
script:
|
|
- meson --buildtype=debug build
|
|
- ninja -C build
|
|
- fakechroot meson test -C build
|
|
|
|
fedora:
|
|
image: fedora
|
|
before_script:
|
|
- >
|
|
dnf -y install
|
|
git findutils patch sed
|
|
meson gcc libtool bsdtar
|
|
gpgme-devel libarchive-devel libcurl-devel openssl-devel gettext-devel
|
|
asciidoc python3 dash gawk
|
|
fakeroot fakechroot
|
|
perl-Module-Load-Conditional
|
|
script:
|
|
- meson --buildtype=debug build
|
|
- ninja -C build
|
|
- fakechroot meson test -C build
|