]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/beast/azure-pipelines.yml
import new upstream nautilus stable release 14.2.8
[ceph.git] / ceph / src / boost / libs / beast / azure-pipelines.yml
1 variables:
2 GIT_BRANCH: $(Build.SourceBranch)
3
4 jobs:
5 - job: 'LinuxCoverage'
6 pool:
7 vmImage: 'ubuntu-16.04'
8 container:
9 image: djarek/boost-beast-ci:latest
10 options: --privileged
11 steps:
12 - bash: |
13 sudo apt update && sudo apt install -y g++ lcov
14 displayName: Get dependencies
15 - bash: |
16 set -e
17 export BUILD_DIR=$(pwd)
18 cd ..
19 $BUILD_DIR/tools/get-boost.sh $GIT_BRANCH $BUILD_DIR
20 cd boost-root
21 export CXX=g++ CC=gcc
22 ./bootstrap.sh || cat bootstrap.log
23 displayName: Get Boost
24 - bash: |
25 set -e
26 cd ../boost-root
27 ./b2 libs/beast/test//run-fat-tests toolset=gcc coverage=on link=static cxxstd=11 -j2
28 libs/beast/tools/coverage.sh
29 env:
30 CODECOV_TOKEN: $(CODECOV_TOKEN)
31 displayName: Build & Run tests
32 - job: 'Linux'
33 pool:
34 vmImage: 'ubuntu-16.04'
35 container:
36 image: djarek/boost-beast-ci:latest
37 options: --privileged
38 strategy:
39 matrix:
40 GCC 9 C++17 Release:
41 TOOLSET: gcc
42 CXX: g++-9
43 PACKAGES: g++-9
44 VARIANT: release
45 B2_FLAGS: <define>BOOST_BEAST_USE_STD_STRING_VIEW
46 CXXSTD: 17
47 B2_TARGETS: libs/beast/test//run-fat-tests libs/beast/example
48 GCC 9 C++11 HEADER_ONLY NO_DEPRECATED:
49 TOOLSET: gcc
50 CXX: g++-9
51 PACKAGES: g++-9
52 VARIANT: release
53 B2_FLAGS: <boost.beast.separate-compilation>off <boost.beast.allow-deprecated>off
54 CXXSTD: 11
55 B2_TARGETS: libs/beast/test//run-fat-tests
56 GCC 9 C++11 NO_DEPRECATED NO_TLS:
57 TOOLSET: gcc
58 CXX: g++-9
59 PACKAGES: g++-9
60 VARIANT: release
61 B2_FLAGS: <boost.beast.allow-deprecated>off <define>BOOST_NO_CXX11_THREAD_LOCAL
62 CXXSTD: 11
63 B2_TARGETS: libs/beast/test//run-fat-tests
64 GCC 9 C++11 UBASAN:
65 TOOLSET: gcc
66 CXX: g++-9
67 PACKAGES: g++-9
68 VARIANT: debug
69 B2_FLAGS: <address-sanitizer>norecover <undefined-sanitizer>norecover
70 # use GOLD to workaround UBSAN linker issue in gcc 7/8
71 # https://stackoverflow.com/questions/50024731/ld-unrecognized-option-push-state-no-as-needed
72 CXX_FLAGS: <cxxflags>"-msse4.2 -funsigned-char -fno-omit-frame-pointer" <linkflags>-fuse-ld=gold
73 CXXSTD: 11
74 B2_TARGETS: libs/beast/test//run-fat-tests
75 GCC 9 C++11 TSAN:
76 TOOLSET: gcc
77 CXX: g++-9
78 PACKAGES: g++-9
79 VARIANT: release
80 B2_FLAGS: <thread-sanitizer>norecover
81 CXX_FLAGS: <cxxflags>"-msse4.2 -funsigned-char -fno-omit-frame-pointer"
82 CXXSTD: 11
83 B2_TARGETS: libs/beast/test//run-fat-tests
84 GCC 8 C++17 Release:
85 TOOLSET: gcc
86 CXX: g++-8
87 PACKAGES: g++-8
88 VARIANT: release
89 B2_FLAGS: <define>BOOST_BEAST_USE_STD_STRING_VIEW
90 CXXSTD: 17
91 B2_TARGETS: libs/beast/test//run-fat-tests libs/beast/example
92 GCC 8 C++11 HEADER_ONLY NO_DEPRECATED:
93 TOOLSET: gcc
94 CXX: g++-8
95 PACKAGES: g++-8
96 VARIANT: release
97 B2_FLAGS: <boost.beast.separate-compilation>off <boost.beast.allow-deprecated>off
98 CXXSTD: 11
99 B2_TARGETS: libs/beast/test//run-fat-tests
100 GCC 8 C++11 UBASAN:
101 TOOLSET: gcc
102 CXX: g++-8
103 PACKAGES: g++-8
104 VARIANT: debug
105 B2_FLAGS: <address-sanitizer>norecover <undefined-sanitizer>norecover
106 # use GOLD to workaround UBSAN linker issue in gcc 7/8
107 # https://stackoverflow.com/questions/50024731/ld-unrecognized-option-push-state-no-as-needed
108 CXX_FLAGS: <cxxflags>"-msse4.2 -funsigned-char -fno-omit-frame-pointer" <linkflags>-fuse-ld=gold
109 CXXSTD: 11
110 B2_TARGETS: libs/beast/test//run-fat-tests
111 GCC 8 C++11 TSAN:
112 TOOLSET: gcc
113 CXX: g++-8
114 PACKAGES: g++-8
115 VARIANT: release
116 B2_FLAGS: <thread-sanitizer>norecover
117 CXX_FLAGS: <cxxflags>"-msse4.2 -funsigned-char -fno-omit-frame-pointer"
118 CXXSTD: 11
119 B2_TARGETS: libs/beast/test//run-fat-tests
120 GCC 7 C++14 Valgrind:
121 TOOLSET: gcc
122 CXX: g++-7
123 PACKAGES: g++-7 valgrind
124 VARIANT: release
125 B2_FLAGS: <define>BOOST_BEAST_TEST_STATIC_PRNG_SEED <valgrind>on <testing.launcher>"valgrind --track-origins=yes --error-exitcode=1 --max-stackframe=16000000 --suppressions=libs/beast/tools/valgrind.supp"
126 CXXSTD: 14
127 B2_TARGETS: libs/beast/test//run-fat-tests
128 GCC Default C++11 Release:
129 TOOLSET: gcc
130 CXX: g++
131 PACKAGES: g++
132 VARIANT: release
133 CXXSTD: 11
134 B2_TARGETS: libs/beast/test//run-fat-tests libs/beast/example
135 Clang 6.0 C++11 Debug:
136 TOOLSET: clang
137 CXX: clang++-6.0
138 PACKAGES: clang-6.0
139 VARIANT: debug
140 CXXSTD: 11
141 B2_TARGETS: libs/beast/test//run-fat-tests libs/beast/example
142 Clang 7 libc++ C++14 Valgrind:
143 TOOLSET: clang
144 CXX: clang++-7
145 PACKAGES: clang-7 libc++-7-dev libc++abi-7-dev valgrind
146 VARIANT: release
147 B2_FLAGS: <valgrind>on <testing.launcher>"valgrind --track-origins=yes --error-exitcode=1 --max-stackframe=16000000 --suppressions=libs/beast/tools/valgrind.supp"
148 CXXSTD: 14
149 CXX_FLAGS: <cxxflags>"-stdlib=libc++" <linkflags>"-stdlib=libc++"
150 B2_TARGETS: libs/beast/test//run-fat-tests
151 Clang 7 C++11 Debug:
152 TOOLSET: clang
153 CXX: clang++-7
154 PACKAGES: clang-7
155 VARIANT: debug
156 CXXSTD: 11
157 B2_TARGETS: libs/beast/test//run-fat-tests libs/beast/example
158 Clang 7 C++14 Release:
159 TOOLSET: clang
160 CXX: clang++-7
161 PACKAGES: clang-7
162 VARIANT: release
163 CXXSTD: 14
164 B2_TARGETS: libs/beast/test//run-fat-tests libs/beast/example
165 Clang Default C++11 Debug:
166 TOOLSET: clang
167 CXX: clang++
168 PACKAGES: clang
169 VARIANT: debug
170 CXXSTD: 11
171 B2_TARGETS: libs/beast/test//run-fat-tests libs/beast/example
172 Clang 8 libc++ C++14 UBASAN:
173 TOOLSET: clang
174 CXX: clang++-8
175 PACKAGES: clang-8 libc++-8-dev libc++abi-8-dev
176 VARIANT: release
177 B2_FLAGS: <address-sanitizer>norecover <undefined-sanitizer>norecover
178 UBSAN_OPTIONS: print_stacktrace=1
179 CXXSTD: 14
180 CXX_FLAGS: <cxxflags>"-stdlib=libc++ -msse4.2 -funsigned-char -fno-omit-frame-pointer" <linkflags>-stdlib=libc++
181 B2_TARGETS: libs/beast/test//run-fat-tests
182 Clang 8 libc++ C++14 TSAN:
183 TOOLSET: clang
184 CXX: clang++-8
185 PACKAGES: clang-8 libc++-8-dev libc++abi-8-dev
186 VARIANT: release
187 B2_FLAGS: <thread-sanitizer>norecover
188 CXXSTD: 14
189 CXX_FLAGS: <cxxflags>"-stdlib=libc++ -msse4.2 -funsigned-char -fno-omit-frame-pointer" <linkflags>-stdlib=libc++
190 B2_TARGETS: libs/beast/test//run-fat-tests
191 Clang 9 libc++ C++14 Release HEADER_ONLY NO_DEPRECATED:
192 TOOLSET: clang
193 CXX: clang++-9
194 PACKAGES: clang-9 libc++-9-dev libc++abi-9-dev
195 VARIANT: release
196 B2_FLAGS: <boost.beast.separate-compilation>off <boost.beast.allow-deprecated>off
197 CXXSTD: 14
198 CXX_FLAGS: <cxxflags>"-stdlib=libc++ -msse4.2 -funsigned-char -fno-omit-frame-pointer" <linkflags>-stdlib=libc++
199 B2_TARGETS: libs/beast/test//run-fat-tests
200 Clang 9 libc++ C++17 UBASAN:
201 TOOLSET: clang
202 CXX: clang++-9
203 PACKAGES: clang-9 libc++-9-dev libc++abi-9-dev
204 VARIANT: release
205 B2_FLAGS: <address-sanitizer>norecover <undefined-sanitizer>norecover
206 UBSAN_OPTIONS: print_stacktrace=1
207 CXXSTD: 17
208 CXX_FLAGS: <cxxflags>"-stdlib=libc++ -msse4.2 -funsigned-char -fno-omit-frame-pointer" <linkflags>-stdlib=libc++
209 B2_TARGETS: libs/beast/test//run-fat-tests
210 Clang 9 libc++ C++17 TSAN:
211 TOOLSET: clang
212 CXX: clang++-9
213 PACKAGES: clang-9 libc++-9-dev libc++abi-9-dev
214 VARIANT: release
215 B2_FLAGS: <thread-sanitizer>norecover
216 CXXSTD: 17
217 CXX_FLAGS: <cxxflags>"-stdlib=libc++ -msse4.2 -funsigned-char -fno-omit-frame-pointer" <linkflags>-stdlib=libc++
218 B2_TARGETS: libs/beast/test//run-fat-tests
219 Clang 9 libc++ C++11 Release HEADER_ONLY NO_DEPRECATED:
220 TOOLSET: clang
221 CXX: clang++-9
222 PACKAGES: clang-9 libc++-9-dev libc++abi-9-dev
223 VARIANT: release
224 B2_FLAGS: <boost.beast.separate-compilation>off <boost.beast.allow-deprecated>off
225 CXXSTD: 11
226 CXX_FLAGS: <cxxflags>"-stdlib=libc++ -msse4.2 -funsigned-char -fno-omit-frame-pointer" <linkflags>-stdlib=libc++
227 B2_TARGETS: libs/beast/test//run-fat-tests
228 steps:
229 - bash: |
230 sudo apt update && sudo apt install -y $PACKAGES
231 displayName: Get dependencies
232 - bash: |
233 set -e
234 export BUILD_DIR=$(pwd)
235 cd ..
236 $BUILD_DIR/tools/get-boost.sh $GIT_BRANCH $BUILD_DIR
237 cd boost-root
238 ./bootstrap.sh || cat bootstrap.log
239 cp libs/beast/tools/user-config.jam ~/user-config.jam
240 echo "using $TOOLSET : : $(which $CXX) : $CXX_FLAGS ;" >> ~/user-config.jam
241 echo "project : requirements $B2_FLAGS ;" >> ~/user-config.jam
242 displayName: Get Boost
243 - bash: |
244 set -e
245 cd ../boost-root
246 echo "B2_FLAGS: $B2_FLAGS"
247 ./b2 -j2 \
248 --debug-configuration \
249 cxxstd=$CXXSTD \
250 toolset=$TOOLSET \
251 variant=$VARIANT \
252 $B2_TARGETS
253 displayName: Build & Run tests
254
255 - job: 'macOS'
256 pool:
257 vmImage: 'macOS-10.13'
258 strategy:
259 matrix:
260 Xcode 10.1 C++17 Release:
261 TOOLSET: clang
262 VARIANT: release
263 CXXSTD: 17
264 XCODE_APP: /Applications/Xcode_10.1.app
265 Xcode 9.4.1 C++11 Release:
266 TOOLSET: clang
267 VARIANT: release
268 CXXSTD: 11
269 XCODE_APP: /Applications/Xcode_9.4.1.app
270 steps:
271 - bash: |
272 brew install openssl
273 displayName: Get OpenSSL
274 - bash: |
275 set -e
276 sudo xcode-select -switch ${XCODE_APP}
277 which clang++
278 export BUILD_DIR=$(pwd)
279 cd ..
280 $BUILD_DIR/tools/get-boost.sh $GIT_BRANCH $BUILD_DIR
281 cd boost-root
282 ./bootstrap.sh || cat bootstrap.log
283 cp libs/beast/tools/user-config.jam ~/user-config.jam
284 displayName: Get Boost
285 - bash: |
286 set -e
287 export OPENSSL_ROOT=$(brew --prefix openssl)
288 cd ../boost-root
289 ./b2 -j2 \
290 --debug-configuration \
291 define=BOOST_COROUTINES_NO_DEPRECATION_WARNING=1 \
292 cxxstd=$CXXSTD \
293 libs/beast/test//run-fat-tests \
294 libs/beast/example \
295 toolset=$TOOLSET \
296 variant=$VARIANT
297 displayName: Build & Run tests
298
299 - job: 'Windows'
300 strategy:
301 matrix:
302 # MSVC14.2: # FIXME(djarek): windows-2019 doesn't have vcpkg
303 MSVC14.2 C++17 x64:
304 VM_IMAGE: 'windows-2019'
305 TOOLSET: msvc-14.2
306 B2_FLAGS: define=BOOST_BEAST_USE_STD_STRING_VIEW
307 CXXSTD: 17
308 ADDRMODEL: 64
309 MSVC14.1 C++17 x64:
310 VM_IMAGE: 'vs2017-win2016'
311 TOOLSET: msvc-14.1
312 B2_FLAGS: define=BOOST_BEAST_USE_STD_STRING_VIEW
313 CXXSTD: 17
314 ADDRMODEL: 64
315 MSVC14.0 C++11 x64:
316 VM_IMAGE: 'vs2017-win2016'
317 TOOLSET: msvc-14.0
318 CXXSTD: 11
319 ADDRMODEL: 64
320 pool:
321 vmImage: $(VM_IMAGE)
322 steps:
323 - bash: |
324 vcpkg install openssl --triplet "x$ADDRMODEL""-windows"
325 displayName: Get OpenSSL
326
327 - bash: |
328 set -e
329 export BUILD_DIR=$(pwd)
330 cd ..
331 $BUILD_DIR/tools/get-boost.sh $GIT_BRANCH $BUILD_DIR
332 cd boost-root
333 ./bootstrap.sh
334 cp libs/beast/tools/user-config.jam ~/user-config.jam
335 displayName: Get Boost
336
337 - bash: |
338 set -e
339 echo "VCPKG_ROOT: $VCPKG_INSTALLATION_ROOT"
340 export OPENSSL_ROOT="$VCPKG_INSTALLATION_ROOT""/installed/x$ADDRMODEL""-windows"
341 cd ../boost-root
342 ./b2 -j2 \
343 --debug-configuration \
344 variant=debug \
345 cxxstd=$CXXSTD \
346 address-model=$ADDRMODEL \
347 toolset=$TOOLSET \
348 $B2_FLAGS \
349 libs/beast/example
350 ./b2 -j2 \
351 --debug-configuration \
352 variant=debug,release \
353 cxxstd=$CXXSTD \
354 address-model=$ADDRMODEL \
355 toolset=$TOOLSET \
356 $B2_FLAGS \
357 --verbose-test \
358 libs/beast/test//run-fat-tests
359 displayName: Build & Run tests