ci: Bump the GLES CTS version to 3.2.6.1.
[mesa.git] / .gitlab-ci / build-deqp-gl.sh
1 git config --global user.email "mesa@example.com"
2 git config --global user.name "Mesa CI"
3 git clone \
4 --depth 1 \
5 https://github.com/KhronosGroup/VK-GL-CTS.git \
6 -b opengl-es-cts-3.2.6.1 \
7 /VK-GL-CTS
8 pushd /VK-GL-CTS
9
10 # surfaceless links against libkms and such despite not using it.
11 sed -i '/gbm/d' targets/surfaceless/surfaceless.cmake
12 sed -i '/libkms/d' targets/surfaceless/surfaceless.cmake
13 sed -i '/libgbm/d' targets/surfaceless/surfaceless.cmake
14
15 # --insecure is due to SSL cert failures hitting sourceforge for zlib and
16 # libpng (sigh). The archives get their checksums checked anyway, and git
17 # always goes through ssh or https.
18 python3 external/fetch_sources.py --insecure
19
20 mkdir -p /deqp
21
22 # Save the testlog stylesheets:
23 cp doc/testlog-stylesheet/testlog.{css,xsl} /deqp
24 popd
25
26 pushd /deqp
27 cmake -G Ninja \
28 -DDEQP_TARGET=surfaceless \
29 -DCMAKE_BUILD_TYPE=Release \
30 $EXTRA_CMAKE_ARGS \
31 /VK-GL-CTS
32 ninja
33
34 # Copy out the mustpass lists we want from a bunch of other junk.
35 mkdir /deqp/mustpass
36 for gles in gles2 gles3 gles31; do
37 cp \
38 /deqp/external/openglcts/modules/gl_cts/data/mustpass/gles/aosp_mustpass/3.2.6.x/$gles-master.txt \
39 /deqp/mustpass/$gles-master.txt
40 done
41
42 # Save *some* executor utils, but otherwise strip things down
43 # to reduct deqp build size:
44 mkdir /deqp/executor.save
45 cp /deqp/executor/testlog-to-* /deqp/executor.save
46 rm -rf /deqp/executor
47 mv /deqp/executor.save /deqp/executor
48
49 rm -rf /deqp/external
50 rm -rf /deqp/modules/internal
51 rm -rf /deqp/execserver
52 rm -rf /deqp/modules/egl
53 rm -rf /deqp/framework
54 find -iname '*cmake*' -o -name '*ninja*' -o -name '*.o' -o -name '*.a' | xargs rm -rf
55 ${STRIP_CMD:-strip} modules/*/deqp-*
56 du -sh *
57 rm -rf /VK-GL-CTS
58 popd