gitlab-ci: Add a shader-db run using v3d on drm-shim.

This provides significant compiler coverage during CI at a fairly low
cost in CPU time (~17s per thread for 4 threads on
gst-gitlab-htz-runner3).

I'm leaving wget in the docker image, as once this is in master I'm
planning on having an automatic shader-db comparison between master
and the branch included in the artifacts.  I also haven't done
freedreno yet, because it has some races when run in multithreaded
mode that I'm still tracking down.

Reviewed-by: Eric Engestrom <eric@engestrom.ch>
This commit is contained in:
Eric Anholt
2019-04-10 15:59:12 -07:00
parent dd3d0b2897
commit f60defa72d
4 changed files with 36 additions and 2 deletions

View File

@@ -57,6 +57,10 @@ apt-get install -y \
libxdamage-dev \
libxxf86vm-dev \
gcc \
git \
libepoxy-dev \
libegl1-mesa-dev \
libgbm-dev \
libclc-dev \
libxvmc-dev \
libomxil-bellagio-dev \
@@ -196,6 +200,13 @@ tar -xvf $WAYLAND_PROTOCOLS_VERSION.tar.xz && rm $WAYLAND_PROTOCOLS_VERSION.tar.
cd $WAYLAND_PROTOCOLS_VERSION; ./configure; make install; cd ..
rm -rf $WAYLAND_PROTOCOLS_VERSION
pushd /usr/local
git clone https://gitlab.freedesktop.org/mesa/shader-db.git --depth 1
rm -rf shader-db/.git
cd shader-db
make
popd
# Use ccache to speed up builds
apt-get install -y ccache
@@ -205,10 +216,10 @@ apt-get install -y libxml2-utils
# Remove unused packages
apt-get purge -y \
automake \
git \
libtool \
curl \
unzip \
wget \
gnupg \
software-properties-common
apt-get autoremove -y --purge

View File

@@ -33,3 +33,8 @@ meson configure
ninja -j4
LC_ALL=C.UTF-8 ninja test
DESTDIR=$PWD/../install ninja install
cd ..
if test -n "$MESON_SHADERDB"; then
./.gitlab-ci/run-shader-db.sh;
fi

15
.gitlab-ci/run-shader-db.sh Executable file
View File

@@ -0,0 +1,15 @@
set -e
set -v
ARTIFACTSDIR=`pwd`/shader-db
mkdir -p $ARTIFACTSDIR
export DRM_SHIM_DEBUG=true
LIBDIR=`pwd`/install/usr/local/lib
export LIBGL_DRIVERS_PATH=$LIBDIR/dri
cd /usr/local/shader-db
env LD_PRELOAD=$LIBDIR/libv3d_noop_drm_shim.so \
./run -j 4 ./shaders \
> $ARTIFACTSDIR/v3d-shader-db.txt