-
Notifications
You must be signed in to change notification settings - Fork 11
/
.gitlab-ci-clang.yml
142 lines (124 loc) · 3.17 KB
/
.gitlab-ci-clang.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
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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
# Copyright (c) 2022 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC)
#
# SPDX-License-Identifier: GPL-2.0-only
# NS3 CI script for CLANG
# Any scheduled pipeline for CLANG should define a variable, named
# "RELEASE", that has a value "weekly". Also, a variable "CLANG" should be set
# to True.
# We support CLANG 8 - 14
# We test only CLANG 6 and 10 on Ubuntu 18.04, and 11 and 14 on Ubuntu 22.04
# The test is done under Linux.
.weekly-build-clang-ubuntu18.04:
image: ubuntu:18.04
extends: .base-build
only:
variables:
- $RELEASE == "weekly"
- $CLANG_BUILD_ENABLE == "True"
before_script:
- apt-get --quiet update
- apt-get --quiet upgrade --yes
- apt-get --quiet install --yes --no-install-recommends
ca-certificates
clang-$CLANG cmake ninja-build ccache build-essential
git
libboost-all-dev
libeigen3-dev
libgsl-dev $LIBGSL gsl-bin
libgtk-3-0 libgtk-3-dev
libsqlite3-dev sqlite3
libxml2 libxml2-dev
python3 python3-dev
ssh
variables:
COMPILER: clang++-$CLANG
LIBGSL: libgsl23
.weekly-build-clang-ubuntu22.04:
image: ubuntu:22.04
extends: .base-build
only:
variables:
- $RELEASE == "weekly"
- $CLANG_BUILD_ENABLE == "True"
before_script:
- apt --quiet update
- apt --quiet upgrade --yes
- apt --quiet install --yes --no-install-recommends
ca-certificates
clang-$CLANG cmake ninja-build ccache build-essential
git
libboost-all-dev
libeigen3-dev
libgsl-dev $LIBGSL gsl-bin
libgtk-3-0 libgtk-3-dev
libsqlite3-dev sqlite3
libxml2 libxml2-dev
python3 python3-dev
ssh
variables:
COMPILER: clang++-$CLANG
LIBGSL: libgsl27
# CLANG 6
weekly-build-clang-6-debug:
extends: .weekly-build-clang-ubuntu18.04
variables:
CLANG: "6.0"
MODE: debug
weekly-build-clang-6-default:
extends: .weekly-build-clang-ubuntu18.04
variables:
CLANG: "6.0"
MODE: default
weekly-build-clang-6-optimized:
extends: .weekly-build-clang-ubuntu18.04
variables:
CLANG: "6.0"
MODE: optimized
# CLANG 10
weekly-build-clang-10-debug:
extends: .weekly-build-clang-ubuntu18.04
variables:
CLANG: 10
MODE: debug
weekly-build-clang-10-default:
extends: .weekly-build-clang-ubuntu18.04
variables:
CLANG: 10
MODE: default
weekly-build-clang-10-optimized:
extends: .weekly-build-clang-ubuntu18.04
variables:
CLANG: 10
MODE: optimized
# CLANG 11
weekly-build-clang-11-debug:
extends: .weekly-build-clang-ubuntu22.04
variables:
CLANG: 11
MODE: debug
weekly-build-clang-11-default:
extends: .weekly-build-clang-ubuntu22.04
variables:
CLANG: 11
MODE: default
weekly-build-clang-11-optimized:
extends: .weekly-build-clang-ubuntu22.04
variables:
CLANG: 11
MODE: optimized
# CLANG 14
weekly-build-clang-14-debug:
extends: .weekly-build-clang-ubuntu22.04
variables:
CLANG: 14
MODE: debug
weekly-build-clang-14-default:
extends: .weekly-build-clang-ubuntu22.04
variables:
CLANG: 14
MODE: default
weekly-build-clang-14-optimized:
extends: .weekly-build-clang-ubuntu22.04
variables:
CLANG: 14
MODE: optimized