1.build-tmpl: &build 2 stage: build 3 image: registry.gitlab.com/xen-project/xen/${CONTAINER} 4 script: 5 - ./automation/scripts/build 2>&1 | tee build.log 6 artifacts: 7 paths: 8 - binaries/ 9 - xen-config 10 - '*.log' 11 when: always 12 except: 13 - master 14 - smoke 15 - /^coverity-tested\/.*/ 16 - /^stable-.*/ 17 18.gcc-tmpl: 19 variabes: &gcc 20 CC: gcc 21 CXX: g++ 22 23.clang-tmpl: 24 variables: &clang 25 CC: clang 26 CXX: clang++ 27 clang: y 28 29.clang-8-tmpl: 30 variables: &clang-8 31 CC: clang-8 32 CXX: clang++-8 33 LD: ld.lld-8 34 clang: y 35 36.x86-64-build-tmpl: 37 <<: *build 38 variables: 39 XEN_TARGET_ARCH: x86_64 40 tags: 41 - x86_64 42 43.x86-64-build: 44 extends: .x86-64-build-tmpl 45 variables: 46 debug: n 47 48.x86-64-build-debug: 49 extends: .x86-64-build-tmpl 50 variables: 51 debug: y 52 53.x86-32-build-tmpl: 54 <<: *build 55 variables: 56 XEN_TARGET_ARCH: x86_32 57 tags: 58 - x86_32 59 60.x86-32-build: 61 extends: .x86-32-build-tmpl 62 variables: 63 debug: n 64 65.x86-32-build-debug: 66 extends: .x86-32-build-tmpl 67 variables: 68 debug: y 69 70.gcc-x86-64-build: 71 extends: .x86-64-build 72 variables: 73 <<: *gcc 74 75.gcc-x86-64-build-debug: 76 extends: .x86-64-build-debug 77 variables: 78 <<: *gcc 79 80.gcc-x86-32-build: 81 extends: .x86-32-build 82 variables: 83 <<: *gcc 84 85.gcc-x86-32-build-debug: 86 extends: .x86-32-build-debug 87 variables: 88 <<: *gcc 89 90.clang-x86-64-build: 91 extends: .x86-64-build 92 variables: 93 <<: *clang 94 95.clang-x86-64-build-debug: 96 extends: .x86-64-build-debug 97 variables: 98 <<: *clang 99 100.clang-8-x86-64-build: 101 extends: .x86-64-build 102 variables: 103 <<: *clang-8 104 105.clang-8-x86-64-build-debug: 106 extends: .x86-64-build-debug 107 variables: 108 <<: *clang-8 109 110.clang-x86-32-build: 111 extends: .x86-32-build 112 variables: 113 <<: *clang 114 115.clang-x86-32-build-debug: 116 extends: .x86-32-build-debug 117 variables: 118 <<: *clang 119 120.arm64-build-tmpl: 121 <<: *build 122 variables: 123 XEN_TARGET_ARCH: arm64 124 tags: 125 - arm64 126 127.arm64-build: 128 extends: .arm64-build-tmpl 129 variables: 130 debug: n 131 132.arm64-build-debug: 133 extends: .arm64-build-tmpl 134 variables: 135 debug: y 136 137.gcc-arm64-build: 138 extends: .arm64-build 139 variables: 140 <<: *gcc 141 142.gcc-arm64-build-debug: 143 extends: .arm64-build-debug 144 variables: 145 <<: *gcc 146 147# Jobs below this line 148 149archlinux-gcc: 150 extends: .gcc-x86-64-build 151 variables: 152 CONTAINER: archlinux:current 153 154archlinux-gcc-debug: 155 extends: .gcc-x86-64-build-debug 156 variables: 157 CONTAINER: archlinux:current 158 159centos-7-2-gcc: 160 extends: .gcc-x86-64-build 161 variables: 162 CONTAINER: centos:7.2 163 164centos-7-2-gcc-debug: 165 extends: .gcc-x86-64-build-debug 166 variables: 167 CONTAINER: centos:7.2 168 169centos-7-gcc: 170 extends: .gcc-x86-64-build 171 variables: 172 CONTAINER: centos:7 173 174centos-7-gcc-debug: 175 extends: .gcc-x86-64-build-debug 176 variables: 177 CONTAINER: centos:7 178 179centos-6-gcc: 180 extends: .gcc-x86-64-build 181 variables: 182 CONTAINER: centos:6 183 184centos-6-gcc-debug: 185 extends: .gcc-x86-64-build-debug 186 variables: 187 CONTAINER: centos:6 188 189debian-jessie-clang: 190 extends: .clang-x86-64-build 191 variables: 192 CONTAINER: debian:jessie 193 194debian-jessie-clang-debug: 195 extends: .clang-x86-64-build-debug 196 variables: 197 CONTAINER: debian:jessie 198 199debian-jessie-gcc: 200 extends: .gcc-x86-64-build 201 variables: 202 CONTAINER: debian:jessie 203 204debian-jessie-gcc-debug: 205 extends: .gcc-x86-64-build-debug 206 variables: 207 CONTAINER: debian:jessie 208 209debian-jessie-32-clang: 210 extends: .clang-x86-32-build 211 variables: 212 CONTAINER: debian:jessie-i386 213 214debian-jessie-32-clang-debug: 215 extends: .clang-x86-32-build-debug 216 variables: 217 CONTAINER: debian:jessie-i386 218 219debian-jessie-32-gcc: 220 extends: .gcc-x86-32-build 221 variables: 222 CONTAINER: debian:jessie-i386 223 224debian-jessie-32-gcc-debug: 225 extends: .gcc-x86-32-build-debug 226 variables: 227 CONTAINER: debian:jessie-i386 228 229debian-stretch-clang: 230 extends: .clang-x86-64-build 231 variables: 232 CONTAINER: debian:stretch 233 234debian-stretch-clang-debug: 235 extends: .clang-x86-64-build-debug 236 variables: 237 CONTAINER: debian:stretch 238 239debian-stretch-clang-8: 240 extends: .clang-8-x86-64-build 241 variables: 242 CONTAINER: debian:stretch 243 244debian-stretch-clang-8-debug: 245 extends: .clang-8-x86-64-build-debug 246 variables: 247 CONTAINER: debian:stretch 248 249debian-stretch-gcc: 250 extends: .gcc-x86-64-build 251 variables: 252 CONTAINER: debian:stretch 253 254debian-stretch-gcc-debug: 255 extends: .gcc-x86-64-build-debug 256 variables: 257 CONTAINER: debian:stretch 258 259debian-stretch-32-clang: 260 extends: .clang-x86-32-build 261 variables: 262 CONTAINER: debian:stretch-i386 263 264debian-stretch-32-clang-debug: 265 extends: .clang-x86-32-build-debug 266 variables: 267 CONTAINER: debian:stretch-i386 268 269debian-stretch-32-gcc: 270 extends: .gcc-x86-32-build 271 variables: 272 CONTAINER: debian:stretch-i386 273 274debian-stretch-32-gcc-debug: 275 extends: .gcc-x86-32-build-debug 276 variables: 277 CONTAINER: debian:stretch-i386 278 279debian-unstable-clang: 280 extends: .clang-x86-64-build 281 variables: 282 CONTAINER: debian:unstable 283 284debian-unstable-clang-debug: 285 extends: .clang-x86-64-build-debug 286 variables: 287 CONTAINER: debian:unstable 288 289debian-unstable-clang-8: 290 extends: .clang-8-x86-64-build 291 variables: 292 CONTAINER: debian:unstable 293 294debian-unstable-clang-8-debug: 295 extends: .clang-8-x86-64-build-debug 296 variables: 297 CONTAINER: debian:unstable 298 299debian-unstable-gcc: 300 extends: .gcc-x86-64-build 301 variables: 302 CONTAINER: debian:unstable 303 304debian-unstable-gcc-debug: 305 extends: .gcc-x86-64-build-debug 306 variables: 307 CONTAINER: debian:unstable 308 309debian-unstable-gcc-randconfig: 310 extends: .gcc-x86-64-build 311 variables: 312 CONTAINER: debian:unstable 313 RANDCONFIG: y 314 315debian-unstable-gcc-debug-randconfig: 316 extends: .gcc-x86-64-build-debug 317 variables: 318 CONTAINER: debian:unstable 319 RANDCONFIG: y 320 321debian-unstable-32-clang: 322 extends: .clang-x86-32-build 323 variables: 324 CONTAINER: debian:unstable-i386 325 326debian-unstable-32-clang-debug: 327 extends: .clang-x86-32-build-debug 328 variables: 329 CONTAINER: debian:unstable-i386 330 331debian-unstable-32-gcc: 332 extends: .gcc-x86-32-build 333 variables: 334 CONTAINER: debian:unstable-i386 335 336debian-unstable-32-gcc-debug: 337 extends: .gcc-x86-32-build-debug 338 variables: 339 CONTAINER: debian:unstable-i386 340 341fedora-gcc: 342 extends: .gcc-x86-64-build 343 variables: 344 CONTAINER: fedora:29 345 346fedora-gcc-debug: 347 extends: .gcc-x86-64-build-debug 348 variables: 349 CONTAINER: fedora:29 350 351# Ubuntu Trusty's Clang is 3.4 while Xen requires 3.5 352 353ubuntu-trusty-gcc: 354 extends: .gcc-x86-64-build 355 variables: 356 CONTAINER: ubuntu:trusty 357 358ubuntu-trusty-gcc-debug: 359 extends: .gcc-x86-64-build-debug 360 variables: 361 CONTAINER: ubuntu:trusty 362 363ubuntu-xenial-clang: 364 extends: .clang-x86-64-build 365 variables: 366 CONTAINER: ubuntu:xenial 367 368ubuntu-xenial-clang-debug: 369 extends: .clang-x86-64-build-debug 370 variables: 371 CONTAINER: ubuntu:xenial 372 373ubuntu-xenial-gcc: 374 extends: .gcc-x86-64-build 375 variables: 376 CONTAINER: ubuntu:xenial 377 378ubuntu-xenial-gcc-debug: 379 extends: .gcc-x86-64-build-debug 380 variables: 381 CONTAINER: ubuntu:xenial 382 383ubuntu-bionic-clang: 384 extends: .clang-x86-64-build 385 variables: 386 CONTAINER: ubuntu:bionic 387 388ubuntu-bionic-clang-debug: 389 extends: .clang-x86-64-build-debug 390 variables: 391 CONTAINER: ubuntu:bionic 392 393ubuntu-bionic-gcc: 394 extends: .gcc-x86-64-build 395 variables: 396 CONTAINER: ubuntu:bionic 397 398ubuntu-bionic-gcc-debug: 399 extends: .gcc-x86-64-build-debug 400 variables: 401 CONTAINER: ubuntu:bionic 402 403opensuse-leap-clang: 404 extends: .clang-x86-64-build 405 variables: 406 CONTAINER: suse:opensuse-leap 407 408opensuse-leap-clang-debug: 409 extends: .clang-x86-64-build-debug 410 variables: 411 CONTAINER: suse:opensuse-leap 412 413opensuse-leap-gcc: 414 extends: .gcc-x86-64-build 415 variables: 416 CONTAINER: suse:opensuse-leap 417 418opensuse-leap-gcc-debug: 419 extends: .gcc-x86-64-build-debug 420 variables: 421 CONTAINER: suse:opensuse-leap 422 423# Arm builds 424 425debian-unstable-gcc-arm64: 426 extends: .gcc-arm64-build 427 variables: 428 CONTAINER: debian:unstable-arm64v8 429 430debian-unstable-gcc-debug-arm64: 431 extends: .gcc-arm64-build-debug 432 variables: 433 CONTAINER: debian:unstable-arm64v8 434 435debian-unstable-gcc-arm64-randconfig: 436 extends: .gcc-arm64-build 437 variables: 438 CONTAINER: debian:unstable-arm64v8 439 RANDCONFIG: y 440 441debian-unstable-gcc-debug-arm64-randconfig: 442 extends: .gcc-arm64-build-debug 443 variables: 444 CONTAINER: debian:unstable-arm64v8 445 RANDCONFIG: y 446 447