build.yml 4.3 KB

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