gitlab-ci: Test against LLVM / clang 9 on x86
authorMichel Dänzer <mdaenzer@redhat.com>
Fri, 13 Dec 2019 10:02:16 +0000 (11:02 +0100)
committerMichel Dänzer <michel@daenzer.net>
Tue, 7 Jan 2020 10:00:16 +0000 (11:00 +0100)
They're not available for Debian buster yet, so we have to use upstream
snapshot packages again.

In contrast to earlier, we now store the LLVM APT repository key in Git
instead of re-downloading it every time.

.gitlab-ci.yml
.gitlab-ci/container/llvm-snapshot.gpg.key [new file with mode: 0644]
.gitlab-ci/container/x86_build.sh
.gitlab-ci/container/x86_test-gl.sh
.gitlab-ci/container/x86_test-vk.sh

index b7298bcea4520d481c7f4da408903aa5c2b38a8d..b3589987cb839b483b23a38c3e0c33d35e65574c 100644 (file)
@@ -96,7 +96,7 @@ x86_build:
     - .debian@container-ifnot-exists
     - .container
   variables:
-    DEBIAN_TAG: &x86_build "2019-11-13"
+    DEBIAN_TAG: &x86_build "2020-01-07"
 
 .use-x86_build:
   variables:
@@ -109,13 +109,13 @@ x86_build:
 x86_test-gl:
   extends: x86_build
   variables:
-    DEBIAN_TAG: &x86_test-gl "2019-12-18"
+    DEBIAN_TAG: &x86_test-gl "2020-01-07"
 
 # Debian 10 based x86 test image for VK
 x86_test-vk:
   extends: x86_build
   variables:
-    DEBIAN_TAG: &x86_test-vk "2019-12-18"
+    DEBIAN_TAG: &x86_test-vk "2020-01-07"
   # Can only be triggered manually on personal branches because RADV is the only
   # driver that does Vulkan testing at the moment.
   rules:
@@ -215,6 +215,8 @@ arm_test:
   extends:
     - .build-linux
     - .use-x86_build
+  variables:
+    LLVM_VERSION: 9
   script:
     - .gitlab-ci/meson-build.sh
 
@@ -268,7 +270,6 @@ meson-main:
       -D gallium-nine=true
       -D gallium-opencl=disabled
     GALLIUM_DRIVERS: "iris,nouveau,kmsro,r300,r600,freedreno,swr,swrast,svga,v3d,vc4,virgl,etnaviv,panfrost,lima,zink"
-    LLVM_VERSION: "7"
     EXTRA_OPTION: >
       -D osmesa=gallium
       -D tools=all
@@ -320,6 +321,7 @@ meson-arm64:
     - .ci-deqp-artifacts
   variables:
     BUILDTYPE: "debugoptimized"
+    LLVM_VERSION: "8"
     VULKAN_DRIVERS: "freedreno,amd"
   script:
     - .gitlab-ci/meson-build.sh
@@ -334,8 +336,8 @@ meson-clang:
     DRI_DRIVERS: "auto"
     GALLIUM_DRIVERS: "auto"
     VULKAN_DRIVERS: intel,amd,freedreno
-    CC: "ccache clang-8"
-    CXX: "ccache clang++-8"
+    CC: "ccache clang-9"
+    CXX: "ccache clang++-9"
 
 .meson-windows:
   extends:
@@ -425,7 +427,6 @@ meson-vulkan:
       -D cpp_args=-fno-sanitize-recover=all
     UBSAN_OPTIONS: "print_stacktrace=1"
     VULKAN_DRIVERS: intel,amd,freedreno
-    LLVM_VERSION: "8"
     EXTRA_OPTION: >
       -D vulkan-overlay-layer=true
 
@@ -462,7 +463,7 @@ scons:
     SCONS_CHECK_COMMAND: "scons llvm=1 force_scons=1 check"
   script:
     - SCONS_TARGET="" SCONS_CHECK_COMMAND="scons check force_scons=1" .gitlab-ci/scons-build.sh
-    - LLVM_VERSION=8 .gitlab-ci/scons-build.sh
+    - LLVM_VERSION=9 .gitlab-ci/scons-build.sh
 
 scons-old-llvm:
   extends:
diff --git a/.gitlab-ci/container/llvm-snapshot.gpg.key b/.gitlab-ci/container/llvm-snapshot.gpg.key
new file mode 100644 (file)
index 0000000..aa6b105
--- /dev/null
@@ -0,0 +1,52 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.12 (GNU/Linux)
+
+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
+bXb5c6gCHESH5PXwPU4jQEE7Ib9J6sbk7ZT2Mw==
+=j+4q
+-----END PGP PUBLIC KEY BLOCK-----
index 374d1e8bb8671bf962ce797b113b396cd95559f5..55aa247492dd0506ba5a65cf458a5c3bc1a0b593 100644 (file)
@@ -12,9 +12,14 @@ done
 
 apt-get install -y \
       ca-certificates \
+      gnupg \
       unzip \
       wget
 
+# Upstream LLVM package repository
+apt-key add .gitlab-ci/container/llvm-snapshot.gpg.key
+echo "deb https://apt.llvm.org/buster/ llvm-toolchain-buster-9 main" >/etc/apt/sources.list.d/llvm9.list
+
 sed -i -e 's/http:\/\/deb/https:\/\/deb/g' /etc/apt/sources.list
 echo 'deb https://deb.debian.org/debian buster-backports main' >/etc/apt/sources.list.d/backports.list
 
@@ -34,7 +39,7 @@ apt-get install -y --no-remove \
       automake \
       autotools-dev \
       bison \
-      clang-8 \
+      clang-9 \
       cmake \
       flex \
       g++ \
@@ -44,6 +49,7 @@ apt-get install -y --no-remove \
       libclang-6.0-dev \
       libclang-7-dev \
       libclang-8-dev \
+      libclang-9-dev \
       libclc-dev \
       libelf-dev \
       libepoxy-dev \
@@ -69,6 +75,7 @@ apt-get install -y --no-remove \
       llvm-6.0-dev \
       llvm-7-dev \
       llvm-8-dev \
+      llvm-9-dev \
       meson \
       pkg-config \
       python-mako \
@@ -204,6 +211,7 @@ apt-get purge -y \
       autotools-dev \
       cmake \
       git \
+      gnupg \
       libgbm-dev \
       libtool \
       unzip \
index 1a717afd03aa66f91a8469c195877e65e9bb97f4..a8fb9889c8d6d1c7a1828db25341811d24f3bd44 100644 (file)
@@ -5,7 +5,13 @@ set -o xtrace
 
 export DEBIAN_FRONTEND=noninteractive
 
-apt-get install -y ca-certificates
+apt-get install -y \
+        ca-certificates \
+        gnupg \
+
+# Upstream LLVM package repository
+apt-key add .gitlab-ci/container/llvm-snapshot.gpg.key
+echo "deb https://apt.llvm.org/buster/ llvm-toolchain-buster-9 main" >/etc/apt/sources.list.d/llvm9.list
 
 sed -i -e 's/http:\/\/deb/https:\/\/deb/g' /etc/apt/sources.list
 echo 'deb https://deb.debian.org/debian buster-backports main' >/etc/apt/sources.list.d/backports.list
@@ -40,7 +46,7 @@ apt-get install -y --no-remove \
       libxkbcommon-dev \
       libxrender1 \
       libxrender-dev \
-      libllvm8 \
+      libllvm9 \
       meson \
       patch \
       pkg-config \
@@ -74,6 +80,7 @@ apt-get purge -y \
       g++ \
       gcc \
       git \
+      gnupg \
       libc6-dev \
       libgbm-dev \
       libgles2-mesa-dev \
index da877590de1749154477bcd17e478aedf79ad275..e1f95f300d1d82973b9d74fa4060e4e36cdb3ab3 100644 (file)
@@ -5,7 +5,13 @@ set -o xtrace
 
 export DEBIAN_FRONTEND=noninteractive
 
-apt-get install -y ca-certificates
+apt-get install -y \
+        ca-certificates \
+        gnupg \
+
+# Upstream LLVM package repository
+apt-key add .gitlab-ci/container/llvm-snapshot.gpg.key
+echo "deb https://apt.llvm.org/buster/ llvm-toolchain-buster-9 main" >/etc/apt/sources.list.d/llvm9.list
 
 sed -i -e 's/http:\/\/deb/https:\/\/deb/g' /etc/apt/sources.list
 echo 'deb https://deb.debian.org/debian buster-backports main' >/etc/apt/sources.list.d/backports.list
@@ -40,7 +46,7 @@ apt-get install -y --no-remove \
       libxkbcommon-dev \
       libxrender1 \
       libxrender-dev \
-      libllvm8 \
+      libllvm9 \
       meson \
       patch \
       pkg-config \
@@ -66,6 +72,7 @@ apt-get purge -y \
       g++ \
       gcc \
       git \
+      gnupg \
       libgbm-dev \
       libgles2-mesa-dev \
       libpng-dev \