-
Notifications
You must be signed in to change notification settings - Fork 92
/
.gitlab-ci.yml
140 lines (119 loc) · 3.04 KB
/
.gitlab-ci.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
# vim: set expandtab shiftwidth=2 tabstop=2 textwidth=0:
workflow:
rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
- if: $CI_PIPELINE_SOURCE == 'push'
variables:
UBUNTU_TAG: "2019-12-05-01"
UBUNTU_VERSION: "18.04"
UBUNTU_CONTAINER_IMAGE: "$CI_REGISTRY_IMAGE/ubuntu/$UBUNTU_VERSION:$UBUNTU_TAG"
UBUNTU_EXEC: "bash .gitlab-ci/ubuntu_install.sh"
# Include the templates to create an image to run the tests.
include:
- project: 'wayland/ci-templates'
ref: b4b098a707c8f39d18f1a98d4bcbe65372ff9e17
file: '/templates/ubuntu.yml'
stages:
- containers-build
- build
# CONTAINERS creation stage
container_build:
extends: .ubuntu@container-ifnot-exists
stage: containers-build
variables:
GIT_STRATEGY: none # no need to pull the whole tree for rebuilding the image
build-distcheck:
stage: build
image: $UBUNTU_CONTAINER_IMAGE
script:
- bash .gitlab-ci/run_distcheck.sh
artifacts:
paths:
- build/libglvnd-*.tar.gz
# This is a common definition for testing the other types of dispatch stubs.
# We only need to do these for changes that might affect something specific to
# those stub types.
.build-check:
stage: build
image: $UBUNTU_CONTAINER_IMAGE
only:
changes:
- src/GLdispatch/vnd-glapi/**
- src/util/glvnd_genentry.*
- tests/**
- .gitlab-ci.yml
- .gitlab-ci/**
.build-check-at:
extends:
- .build-check
script:
- bash .gitlab-ci/run_build.sh
.build-check-meson:
extends:
- .build-check
script:
- bash .gitlab-ci/run_meson.sh
artifacts:
when: always
paths:
- build/meson-logs/*.txt
build-i386:
extends:
- .build-check-at
variables:
CONFIGURE_OPTIONS: --build=i686-pc-linux-gnu CFLAGS=-m32
build-i386-meson:
extends:
- .build-check-meson
variables:
CONFIGURE_OPTIONS: --cross-file .gitlab-ci/i686-linux-gnu
build-x86-64-tsd:
extends:
- .build-check-at
variables:
CONFIGURE_OPTIONS: --disable-tls
build-x86_64-tsd-meson:
extends:
- .build-check-meson
variables:
CONFIGURE_OPTIONS: -Dtls=false
build-x86_64-tsd-tls-meson:
extends:
- .build-check-meson
variables:
CONFIGURE_OPTIONS: -Ddispatch-tls=false
build-i386-tsd:
extends:
- .build-check-at
variables:
CONFIGURE_OPTIONS: --build=i686-pc-linux-gnu CFLAGS=-m32 --disable-tls
build-i386-tsd-meson:
extends:
- .build-check-meson
variables:
CONFIGURE_OPTIONS: -Dtls=false --cross-file .gitlab-ci/i686-linux-gnu
build-i386-tsd-tls-meson:
extends:
- .build-check-meson
variables:
CONFIGURE_OPTIONS: -Ddispatch-tls=false --cross-file .gitlab-ci/i686-linux-gnu
build-pure-c-tls:
extends:
- .build-check-at
variables:
CONFIGURE_OPTIONS: --disable-asm
build-pure-c-tls-meson:
extends:
- .build-check-meson
variables:
CONFIGURE_OPTIONS: -Dasm=disabled
build-pure-c-tsd:
extends:
- .build-check-at
variables:
CONFIGURE_OPTIONS: --disable-asm --disable-tls
build-pure-c-tld-meson:
extends:
- .build-check-meson
variables:
CONFIGURE_OPTIONS: -Dasm=disabled -Dtls=false