124 lines
2.8 KiB
YAML
124 lines
2.8 KiB
YAML
variables:
|
|
MAKEFLAGS: "-j10"
|
|
VERBOSE: 1
|
|
PACMAN_OPTS: --needed --noconfirm --cachedir .pkg-cache
|
|
PACTEST_OPTS: --review --editor=../build-aux/cat-test-file
|
|
|
|
cache:
|
|
key: pkgs-v1
|
|
paths:
|
|
# For some reason Gitlab CI only supports storing cache/artifacts in a path relative to the build directory
|
|
- .pkg-cache
|
|
|
|
default:
|
|
after_script:
|
|
- build-aux/print-failed-test-output build/meson-logs/testlog.json
|
|
|
|
.arch-test:
|
|
image: archlinux/base
|
|
before_script:
|
|
- >
|
|
pacman -Syu $PACMAN_OPTS
|
|
base-devel 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 build
|
|
- ninja -C build
|
|
- fakechroot meson test -C build
|
|
|
|
arch-docs:
|
|
extends: .arch-test
|
|
script:
|
|
- pacman -Syu $PACMAN_OPTS asciidoc
|
|
- meson -Ddoc=enabled build
|
|
- ninja -C build
|
|
|
|
arch-clang:
|
|
extends: .arch-test
|
|
script:
|
|
- pacman -Syu $PACMAN_OPTS clang
|
|
- CC=clang meson build
|
|
- ninja -C build
|
|
- fakechroot meson test -C build
|
|
|
|
arch-valgrind:
|
|
extends: .arch-test
|
|
script:
|
|
- pacman -Syu --needed --noconfirm valgrind
|
|
- 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
|
|
cache: {}
|
|
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
|
|
cache: {}
|
|
before_script:
|
|
- >
|
|
dnf -y install
|
|
git findutils patch sed
|
|
meson gcc libtool
|
|
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
|