diff options
author | Ian Romanick <ian.d.romanick@intel.com> | 2021-03-17 10:38:44 -0700 |
---|---|---|
committer | Ian Romanick <ian.d.romanick@intel.com> | 2021-04-02 14:29:06 -0700 |
commit | a6e79dde975cde3edfe9d1749d754f925fe921e3 (patch) | |
tree | d41b81a56962ec4c0fd9e3369dc1deef859df15e /.gitlab-ci | |
parent | 117484840ebcf0f637db11467139d97ea648248f (diff) |
CI: Update libdrm beyond what is in Debian
This tries to be a little bit clever. Another commit will bump the
required version to 2.4.98. If the installed version is already greater
than 2.4.98, build-debian.sh will use the system version.
One bummer... the libdrm version is in both build-debian.sh and
debian-install.sh. It would be nice to have the version in a single
place so that both files wouldn't need to be kept in lock-step. Alas.
v2: Add missing '\' after unzip in debian-install.sh. Bump DEBIAN_TAG.
Use curl instead of wget, and invoke it from debian-install.sh so that
the results can be cached. All suggested by Jose. Fix a typo in the
'pkg-config --max-version' line in build-debian.sh.
Acked-by: Jose Fonseca <jfonseca@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/piglit/-/merge_requests/501>
Diffstat (limited to '.gitlab-ci')
-rwxr-xr-x | .gitlab-ci/build-debian.sh | 43 | ||||
-rwxr-xr-x | .gitlab-ci/debian-install.sh | 5 |
2 files changed, 48 insertions, 0 deletions
diff --git a/.gitlab-ci/build-debian.sh b/.gitlab-ci/build-debian.sh new file mode 100755 index 000000000..6dc3d98bc --- /dev/null +++ b/.gitlab-ci/build-debian.sh @@ -0,0 +1,43 @@ +#!/bin/bash + +set -ex + +EXTRA_MESON_ARGS= + +# Build the minimum required version of libdrm if the system version is not +# new enough. +if pkg-config --max-version=2.4.98 libdrm; then + export LIBDRM_VERSION=libdrm-2.4.98 + + tar -xvf /tmp/$LIBDRM_VERSION.tar.bz2 && rm /tmp/$LIBDRM_VERSION.tar.bz2 + cd $LIBDRM_VERSION + meson build -D vc4=false -D freedreno=false -D etnaviv=false $EXTRA_MESON_ARGS + ninja -C build install + cd .. + rm -rf $LIBDRM_VERSION + + export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig + + LIBDRM_FLAGS="-D LIBDRM_CFLAGS=$(pkg-config --cflags libdrm | sed 's/ /;/g') \ + -D LIBDRM_LDFLAGS=$(pkg-config --libs libdrm | sed 's/ /;/g') \ + -D LIBDRM_FOUND=1 \ + -D LIBDRM_INTEL_CFLAGS=$(pkg-config --cflags libdrm_intel | sed 's/ /;/g') \ + -D LIBDRM_INTEL_LDFLAGS=$(pkg-config --libs libdrm_intel | sed 's/ /;/g') \ + -D LIBDRM_INTEL_FOUND=1" +else + LIBDRM_FLAGS="" +fi + +cmake . \ + -D CMAKE_BUILD_TYPE=Debug \ + -D PIGLIT_BUILD_CL_TESTS=on \ + -D PIGLIT_BUILD_DMA_BUF_TESTS=on \ + -D PIGLIT_BUILD_GLES1_TESTS=on \ + -D PIGLIT_BUILD_GLES2_TESTS=on \ + -D PIGLIT_BUILD_GLX_TESTS=on \ + -D PIGLIT_BUILD_GL_TESTS=on \ + -D PIGLIT_BUILD_WGL_TESTS=off \ + $LIBDRM_FLAGS \ + -GNinja + +ninja -j4 diff --git a/.gitlab-ci/debian-install.sh b/.gitlab-ci/debian-install.sh index ab1e36a91..e4a717703 100755 --- a/.gitlab-ci/debian-install.sh +++ b/.gitlab-ci/debian-install.sh @@ -21,6 +21,7 @@ apt-get dist-upgrade -y apt-get install -y \ bison \ + bzip2 \ ccache \ cmake \ curl \ @@ -35,11 +36,13 @@ apt-get install -y \ libdrm2 \ libegl1-mesa-dev \ libglvnd-dev \ + libpciaccess-dev \ libvulkan-dev \ libwaffle-dev \ libwayland-dev \ libxkbcommon-dev \ libxrender-dev \ + meson \ mingw-w64 \ ninja-build \ opencl-dev \ @@ -83,6 +86,8 @@ do rm /tmp/waffle-$target.zip done +curl -s -L "https://dri.freedesktop.org/libdrm/libdrm-2.4.98.tar.bz2" -o /tmp/libdrm-2.4.98.tar.bz2 + apt-get purge -y \ curl \ unzip |