-
Notifications
You must be signed in to change notification settings - Fork 1
51 lines (41 loc) · 1.41 KB
/
c-cpp.yml
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
name: C/C++ CI
on:
push:
branches:
- master
- releases/*
pull_request:
branches:
- master
jobs:
ubuntu:
name: Ubuntu native build (x86-64)
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: >-
sudo apt-get update && sudo apt-get install -y
--no-install-recommends g++ ninja-build python3 python3-pip pkgconf
libedit-dev libpcre2-dev libssl-dev zlib1g-dev libunwind-dev uuid-dev
- name: Install newest meson
run: >-
sudo pip3 install meson # --break-system-packages
- name: Build and install submodules
run: >-
git submodule update --init
&& (cd asteria && ./makedeb.sh && sudo dpkg -i *.deb)
&& (cd http-parser && ./makedeb.sh && sudo dpkg -i *.deb)
&& (cd taxon && ./makedeb.sh && sudo dpkg -i *.deb)
- name: Run tests (minimal)
run: >-
meson setup -Denable-debug-checks=true build_ci
-Denable-{mysql,mongo,redis}=false && meson test -Cbuild_ci
- name: Install full dependencies
run: >-
sudo apt-get install -y lib{mysqlclient,mongoc,hiredis}-dev
&& (cd libmongoc-dev-symlinks && ./makedeb.sh && sudo dpkg -i *.deb)
- name: Run tests (full)
run: >-
meson setup --reconfigure -Denable-debug-checks=true build_ci
&& meson test -Cbuild_ci