summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
authorDaniel Stone <daniels@collabora.com>2021-08-03 13:11:51 +0100
committerDaniel Stone <daniels@collabora.com>2021-08-03 18:42:25 +0100
commitec1ce9fc260e796b41b1435097492b28868e7ffe (patch)
tree135e1df8849492db5266e0c5b211ac9a33fe9940 /.gitlab-ci.yml
parentc91a34fb033eba6f202093d5d8485a2495343a34 (diff)
downloadweston-ec1ce9fc260e796b41b1435097492b28868e7ffe.tar.gz
ci: Add clang build jobs
Signed-off-by: Daniel Stone <daniels@collabora.com>
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml29
1 files changed, 27 insertions, 2 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 913c814a..a3017fa4 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -43,7 +43,7 @@
variables:
FDO_UPSTREAM_REPO: wayland/weston
FDO_REPO_SUFFIX: "$BUILD_OS/$BUILD_ARCH"
- FDO_DISTRIBUTION_TAG: '2021-08-02.3-aarch64-virt'
+ FDO_DISTRIBUTION_TAG: '2021-08-03.2-clang'
include:
@@ -167,6 +167,12 @@ aarch64-debian-container_prep:
- export TESTS_RES_PATH="$BUILDDIR/tests-res.txt"
- mkdir "$BUILDDIR" "$PREFIX"
+.build-with-clang:
+ variables:
+ CC: clang-8
+ CC_LD: lld-8
+ MESON_TOOLCHAIN_OPTIONS: "$MESON_OPTIONS -Db_lundef=false" # clang+ASan+undef=boom
+
# Extends the core build templates to also provide for running our testing. We
# run this inside a virtme (qemu wrapper) VM environment so we can test the DRM
# backend using the 'vkms' virtual driver under Linux.
@@ -175,7 +181,7 @@ aarch64-debian-container_prep:
- .ci-rules
script:
- cd "$BUILDDIR"
- - meson --prefix="$PREFIX" -Db_sanitize=address ${MESON_OPTIONS} ..
+ - meson --prefix="$PREFIX" -Db_sanitize=address ${MESON_OPTIONS} ${MESON_TOOLCHAIN_OPTIONS} ..
- ninja -k0 -j${FDO_CI_CONCURRENT:-4}
- ninja install
- test -n "${QEMU_SMP}" || QEMU_SMP=${FDO_CI_CONCURRENT:-4}
@@ -293,6 +299,18 @@ aarch64-debian-full-build:
- .test-env-debian-aarch64
- .build-options-full
+x86_64-clang-debian-full-build:
+ extends:
+ - .test-env-debian-x86_64
+ - .build-with-clang
+ - .build-options-full
+
+aarch64-clang-debian-full-build:
+ extends:
+ - .test-env-debian-aarch64
+ - .build-with-clang
+ - .build-options-full
+
# Docs should be invariant on all architectures, so we only do it on Debian
# x86-64.
docs-build:
@@ -328,6 +346,13 @@ armv7-debian-no-gl-build:
- .build-no-test
- .build-options-no-gl
+armv7-clang-debian-no-gl-build:
+ extends:
+ - .build-env-debian-armv7
+ - .build-with-clang
+ - .build-no-test
+ - .build-options-no-gl
+
aarch64-debian-no-gl-build:
extends:
- .test-env-debian-aarch64