4751ebfcd552d92ebb8f789e0e530a50b9380c33
[mesa.git] / .gitlab-ci / build-deqp-vk.sh
1 #!/bin/bash
2
3 set -ex
4
5 git config --global user.email "mesa@example.com"
6 git config --global user.name "Mesa CI"
7 git clone \
8 https://github.com/KhronosGroup/VK-GL-CTS.git \
9 -b vulkan-cts-1.2.2.1 \
10 /VK-GL-CTS
11 pushd /VK-GL-CTS
12
13 # Cherry pick a fix that's not in 1.2.2.1 yet. Re-add --depth 1 to the clone
14 # when an uprev removes this.
15 git cherry-pick -x ea6f1ffae14de94bbd9c354ad5a6c3f452f65ac4
16
17 # --insecure is due to SSL cert failures hitting sourceforge for zlib and
18 # libpng (sigh). The archives get their checksums checked anyway, and git
19 # always goes through ssh or https.
20 python3 external/fetch_sources.py --insecure
21
22 mkdir -p /deqp
23
24 popd
25
26 pushd /deqp
27 cmake -G Ninja \
28 -DDEQP_TARGET=x11_glx \
29 -DCMAKE_BUILD_TYPE=Release \
30 /VK-GL-CTS
31 ninja
32
33 # Copy out the mustpass list we want.
34 mkdir /deqp/mustpass
35 cp /VK-GL-CTS/external/vulkancts/mustpass/master/vk-default.txt \
36 /deqp/mustpass/vk-master.txt
37
38 rm -rf /deqp/modules/internal
39 rm -rf /deqp/executor
40 rm -rf /deqp/execserver
41 rm -rf /deqp/modules/egl
42 rm -rf /deqp/framework
43 find -iname '*cmake*' -o -name '*ninja*' -o -name '*.o' -o -name '*.a' | xargs rm -rf
44 strip external/vulkancts/modules/vulkan/deqp-vk
45 du -sh *
46 rm -rf /VK-GL-CTS
47 popd