File tree 1 file changed +84
-0
lines changed
1 file changed +84
-0
lines changed Original file line number Diff line number Diff line change
1
+ name : CI
2
+ on :
3
+ push :
4
+ branches :
5
+ - ' *'
6
+ # Manual builds and PRs in all branches
7
+ pull_request :
8
+ branches :
9
+ - ' *'
10
+ workflow_dispatch :
11
+ branches :
12
+ - ' *'
13
+ jobs :
14
+ build :
15
+ name : Build
16
+ timeout-minutes : 20
17
+ strategy :
18
+ fail-fast : false
19
+ matrix :
20
+ name : [
21
+ Arch,
22
+ Debian
23
+ ]
24
+ include :
25
+ - name : Arch
26
+ os : ubuntu-latest
27
+ container : archlinux:base-devel
28
+
29
+ - name : Debian
30
+ os : ubuntu-latest
31
+ container : debian:testing
32
+
33
+ runs-on : ${{ matrix.os }}
34
+ container : ${{ matrix.container }}
35
+
36
+ steps :
37
+ - name : Checkout
38
+ uses : actions/checkout@v4
39
+
40
+ - name : Install Arch Linux dependencies
41
+ if : matrix.name == 'Arch'
42
+ run : |
43
+ pacman-key --init
44
+ pacman -Syu --noconfirm
45
+ packages=(
46
+ clang
47
+ cmake
48
+ git
49
+ libxml2
50
+ qt6-base
51
+ qt6-tools
52
+ )
53
+ pacman -S --noconfirm ${packages[@]}
54
+
55
+ - name : Install Debian Testing dependencies
56
+ if : matrix.name == 'Debian'
57
+ run : |
58
+ apt-get update
59
+ apt-get upgrade -y
60
+ apt-get install -y cmake clang g++ gcc git \
61
+ libglib2.0 libgl1-mesa-dev libxml2-dev pkg-config \
62
+ qt6-base-dev qt6-l10n-tools \
63
+ qt6-tools-dev qt6-tools-dev-tools
64
+
65
+ # These builds are executed on all runners
66
+ - name : Build with gcc
67
+ run : |
68
+ export CC=gcc
69
+ export CXX=g++
70
+ cmake \
71
+ -D CMAKE_BUILD_TYPE=Release \
72
+ -B build-gcc \
73
+ -S .
74
+ cmake --build build-gcc --verbose
75
+
76
+ - name : Build with clang
77
+ run : |
78
+ export CC=clang
79
+ export CXX=clang++
80
+ cmake \
81
+ -D CMAKE_BUILD_TYPE=Release \
82
+ -B build-clang \
83
+ -S .
84
+ cmake --build build-clang --verbose
You can’t perform that action at this time.
0 commit comments