1.build:
2  extends:
3    - .container+build-rules
4  stage: build-only
5  artifacts:
6    paths:
7      - artifacts
8  script:
9    - FDO_CI_CONCURRENT=${FDO_CI_CONCURRENT} bash drivers/gpu/drm/ci/build.sh
10
11.build:arm32:
12  extends:
13    - .build
14    - .use-debian/arm64_build
15  tags:
16    - aarch64
17  variables:
18    DEFCONFIG: "arch/arm/configs/multi_v7_defconfig"
19    KERNEL_IMAGE_NAME: "zImage"
20    KERNEL_ARCH: "arm"
21
22.build:arm64:
23  extends:
24    - .build
25    - .use-debian/arm64_build
26  tags:
27    - aarch64
28  variables:
29    DEFCONFIG: "arch/arm64/configs/defconfig"
30    KERNEL_IMAGE_NAME: "Image"
31    KERNEL_ARCH: "arm64"
32
33.build:x86_64:
34  extends:
35    - .build
36    - .use-debian/x86_64_build
37  variables:
38    DEFCONFIG: "arch/x86/configs/x86_64_defconfig"
39    KERNEL_IMAGE_NAME: "bzImage"
40    KERNEL_ARCH: "x86_64"
41
42
43# Build IGT for testing on devices
44
45igt:arm32:
46  extends: .build:arm32
47  script:
48    - FDO_CI_CONCURRENT=${FDO_CI_CONCURRENT} bash drivers/gpu/drm/ci/build-igt.sh
49
50igt:arm64:
51  extends: .build:arm64
52  script:
53    - FDO_CI_CONCURRENT=${FDO_CI_CONCURRENT} bash drivers/gpu/drm/ci/build-igt.sh
54
55igt:x86_64:
56  extends: .build:x86_64
57  script:
58    - FDO_CI_CONCURRENT=${FDO_CI_CONCURRENT} bash drivers/gpu/drm/ci/build-igt.sh
59
60# Build kernels for testing on devices
61
62testing:arm32:
63  extends: .build:arm32
64  variables:
65    # Would be good to have DEBUG_KMEMLEAK, but it doesn't work well with any of
66    # PROVE_LOCKING and KASAN as of 5.17.
67    #
68    # db410c and db820c don't boot with KASAN_INLINE, probably due to the kernel
69    # becoming too big for their bootloaders.
70    ENABLE_KCONFIGS: "PROVE_LOCKING DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT"
71    UPLOAD_TO_MINIO: 1
72    MERGE_FRAGMENT: arm.config
73
74testing:arm64:
75  extends: .build:arm64
76  variables:
77    # Would be good to have DEBUG_KMEMLEAK, but it doesn't work well with any of
78    # PROVE_LOCKING and KASAN as of 5.17.
79    #
80    # db410c and db820c don't boot with KASAN_INLINE, probably due to the kernel
81    # becoming too big for their bootloaders.
82    ENABLE_KCONFIGS: "PROVE_LOCKING DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT"
83    UPLOAD_TO_MINIO: 1
84    MERGE_FRAGMENT: arm64.config
85
86testing:x86_64:
87  extends: .build:x86_64
88  variables:
89    # Would be good to have DEBUG_KMEMLEAK, but it doesn't work well with any of
90    # PROVE_LOCKING and KASAN as of 5.17.
91    #
92    # db410c and db820c don't boot with KASAN_INLINE, probably due to the kernel
93    # becoming too big for their bootloaders.
94    ENABLE_KCONFIGS: "PROVE_LOCKING DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT"
95    UPLOAD_TO_MINIO: 1
96    MERGE_FRAGMENT: x86_64.config
97
98
99# Jobs for build-testing different configurations
100
101build:arm32:
102  extends: .build:arm32
103
104build-nodebugfs:arm64:
105  extends: .build:arm64
106  variables:
107    DISABLE_KCONFIGS: "DEBUG_FS"
108    ENABLE_KCONFIGS: "EXPERT DRM_MSM_VALIDATE_XML"
109
110build:x86_64:
111  extends: .build:x86_64
112
113# Disable build jobs that we won't use
114alpine-build-testing:
115  rules:
116    - when: never
117
118debian-android:
119  rules:
120    - when: never
121
122debian-arm32:
123  rules:
124    - when: never
125
126debian-arm32-asan:
127  rules:
128    - when: never
129
130debian-arm64:
131  rules:
132    - when: never
133
134debian-arm64-asan:
135  rules:
136    - when: never
137
138debian-arm64-build-test:
139  rules:
140    - when: never
141
142debian-arm64-release:
143  rules:
144    - when: never
145
146debian-build-testing:
147  rules:
148    - when: never
149
150debian-clang:
151  rules:
152    - when: never
153
154debian-clang-release:
155  rules:
156    - when: never
157
158debian-no-libdrm:
159  rules:
160    - when: never
161
162debian-ppc64el:
163  rules:
164    - when: never
165
166debian-release:
167  rules:
168    - when: never
169
170debian-s390x:
171  rules:
172    - when: never
173
174debian-testing:
175  rules:
176    - when: never
177
178debian-testing-asan:
179  rules:
180    - when: never
181
182debian-testing-msan:
183  rules:
184    - when: never
185
186debian-vulkan:
187  rules:
188    - when: never
189
190debian-x86_32:
191  rules:
192    - when: never
193
194fedora-release:
195  rules:
196    - when: never
197
198rustfmt:
199  rules:
200    - when: never
201
202shader-db:
203  rules:
204    - when: never
205
206windows-msvc:
207  rules:
208    - when: never
209
210yaml-toml-shell-py-test:
211  rules:
212    - when: never
213