gitlab-ci: Build clover against all supported versions of LLVM
authorMichel Dänzer <michel.daenzer@amd.com>
Fri, 3 May 2019 08:58:48 +0000 (10:58 +0200)
committerMichel Dänzer <michel@daenzer.net>
Wed, 8 May 2019 16:59:02 +0000 (16:59 +0000)
And consolidate it all into a single job.

It doesn't take much longer than a single version, thanks to ccache.
Overall, this single job might be faster or at least use fewer CPU
cycles than the two jobs before, while covering thrice as many versions
of LLVM.

v2:
* Move "rm -rf _build" to meson-build.sh.
* Set GALLIUM_DRIVERS the same way both times in the meson-clover job,
  for symmetry.

Reviewed-by: Eric Engestrom <eric.engestrom@intel.com> # v1
.gitlab-ci.yml
.gitlab-ci/debian-install.sh
.gitlab-ci/meson-build.sh [changed mode: 0644->0755]

index 1b448b3..de6e7d1 100644 (file)
@@ -14,7 +14,7 @@
 # repository's registry will be used there as well.
 variables:
   UPSTREAM_REPO: mesa/mesa
-  DEBIAN_TAG: "2019-05-01"
+  DEBIAN_TAG: "2019-05-08"
   DEBIAN_VERSION: stretch-slim
   DEBIAN_IMAGE: "$CI_REGISTRY_IMAGE/debian/$DEBIAN_VERSION:$DEBIAN_TAG"
 
@@ -183,7 +183,7 @@ meson-main:
     GALLIUM_DRIVERS: "iris,nouveau,kmsro,r300,r600,freedreno,svga,v3d,vc4,virgl,etnaviv,panfrost,lima"
     LLVM_VERSION: "7"
 
-meson-clover-llvm:
+meson-clover:
   extends: .meson-build
   variables:
     UNWIND: "true"
@@ -200,13 +200,15 @@ meson-clover-llvm:
       -D gallium-xa=false
       -D gallium-nine=false
       -D gallium-opencl=icd
-    GALLIUM_DRIVERS: "r600,radeonsi"
-
-meson-clover-llvm39:
-  extends: meson-clover-llvm
-  variables:
-    GALLIUM_DRIVERS: "i915,r600"
-    LLVM_VERSION: "3.9"
+  script:
+    - export GALLIUM_DRIVERS="r600,radeonsi"
+    - .gitlab-ci/meson-build.sh
+    - LLVM_VERSION=7 .gitlab-ci/meson-build.sh
+    - export GALLIUM_DRIVERS="i915,r600"
+    - LLVM_VERSION=3.9 .gitlab-ci/meson-build.sh
+    - LLVM_VERSION=4.0 .gitlab-ci/meson-build.sh
+    - LLVM_VERSION=5.0 .gitlab-ci/meson-build.sh
+    - LLVM_VERSION=6.0 .gitlab-ci/meson-build.sh
 
 scons-nollvm:
   extends: .scons-build
index 3b8a1c0..98399c1 100644 (file)
@@ -26,12 +26,18 @@ apt-get install -y -t stretch-backports \
       llvm-3.4-dev \
       llvm-3.9-dev \
       libclang-3.9-dev \
+      llvm-4.0-dev \
+      libclang-4.0-dev \
       llvm-5.0-dev \
+      libclang-5.0-dev \
       llvm-6.0-dev \
+      libclang-6.0-dev \
       llvm-7-dev \
+      libclang-7-dev \
+      llvm-8-dev \
+      libclang-8-dev \
       g++ \
-      clang-8 \
-      libclang-7-dev
+      clang-8
 
 # Install remaining packages from Debian buster to get newer versions
 add-apt-repository "deb https://deb.debian.org/debian/ buster main"
old mode 100644 (file)
new mode 100755 (executable)
index ac41eb8..e6f0b80
@@ -10,9 +10,11 @@ if test -n "$LLVM_VERSION"; then
     echo -e "[binaries]\nllvm-config = '`which $LLVM_CONFIG`'" > native.file
     $LLVM_CONFIG --version
 else
+    rm -f native.file
     touch native.file
 fi
 
+rm -rf _build
 meson _build --native-file=native.file \
       -D buildtype=debug \
       -D build-tests=true \