summaryrefslogtreecommitdiffstats
path: root/.gitlab-ci.yml
blob: 507e13320d7db3ac5d2e641ad8614286d93d20b5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
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 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
    - 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
      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