2020-02-20 21:30:36 +08:00
|
|
|
#!/bin/bash
|
2022-07-16 22:40:04 +08:00
|
|
|
# shellcheck disable=SC2086 # we want word splitting
|
2020-02-20 21:30:36 +08:00
|
|
|
|
|
|
|
set -ex
|
|
|
|
|
2020-05-29 03:33:37 +08:00
|
|
|
git config --global user.email "mesa@example.com"
|
|
|
|
git config --global user.name "Mesa CI"
|
2020-02-20 21:30:36 +08:00
|
|
|
git clone \
|
2020-12-14 20:57:59 +08:00
|
|
|
https://github.com/KhronosGroup/VK-GL-CTS.git \
|
2022-06-29 13:24:44 +08:00
|
|
|
-b vulkan-cts-1.3.3.0 \
|
2020-10-01 01:20:22 +08:00
|
|
|
--depth 1 \
|
2019-11-18 16:26:00 +08:00
|
|
|
/VK-GL-CTS
|
2020-02-20 21:30:36 +08:00
|
|
|
pushd /VK-GL-CTS
|
2019-11-18 16:26:00 +08:00
|
|
|
|
2022-10-20 04:00:45 +08:00
|
|
|
# Apply a patch to update zlib link to an available version.
|
|
|
|
# vulkan-cts-1.3.3.0 uses zlib 1.2.12 which was removed from zlib server due to
|
|
|
|
# a CVE. See https://zlib.net/
|
|
|
|
# FIXME: Remove this patch when uprev to 1.3.4.0+
|
|
|
|
wget -O- https://github.com/KhronosGroup/VK-GL-CTS/commit/6bb2e7d64261bedb503947b1b251b1eeeb49be73.patch |
|
|
|
|
git am -
|
|
|
|
|
2019-11-18 16:26:00 +08:00
|
|
|
# --insecure is due to SSL cert failures hitting sourceforge for zlib and
|
|
|
|
# libpng (sigh). The archives get their checksums checked anyway, and git
|
|
|
|
# always goes through ssh or https.
|
|
|
|
python3 external/fetch_sources.py --insecure
|
|
|
|
|
|
|
|
mkdir -p /deqp
|
2020-02-20 21:30:36 +08:00
|
|
|
|
2020-05-29 03:50:51 +08:00
|
|
|
# Save the testlog stylesheets:
|
|
|
|
cp doc/testlog-stylesheet/testlog.{css,xsl} /deqp
|
2020-02-20 21:30:36 +08:00
|
|
|
popd
|
|
|
|
|
|
|
|
pushd /deqp
|
2021-04-03 01:31:28 +08:00
|
|
|
# When including EGL/X11 testing, do that build first and save off its
|
|
|
|
# deqp-egl binary.
|
|
|
|
cmake -S /VK-GL-CTS -B . -G Ninja \
|
|
|
|
-DDEQP_TARGET=x11_egl_glx \
|
|
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
|
|
$EXTRA_CMAKE_ARGS
|
|
|
|
ninja modules/egl/deqp-egl
|
|
|
|
cp /deqp/modules/egl/deqp-egl /deqp/modules/egl/deqp-egl-x11
|
|
|
|
|
|
|
|
|
2020-11-09 23:35:46 +08:00
|
|
|
cmake -S /VK-GL-CTS -B . -G Ninja \
|
2020-05-29 03:50:51 +08:00
|
|
|
-DDEQP_TARGET=${DEQP_TARGET:-x11_glx} \
|
2019-11-18 16:26:00 +08:00
|
|
|
-DCMAKE_BUILD_TYPE=Release \
|
2020-11-09 23:35:46 +08:00
|
|
|
$EXTRA_CMAKE_ARGS
|
2020-02-12 07:44:56 +08:00
|
|
|
ninja
|
2019-11-18 16:26:00 +08:00
|
|
|
|
2021-04-03 01:31:28 +08:00
|
|
|
mv /deqp/modules/egl/deqp-egl-x11 /deqp/modules/egl/deqp-egl
|
|
|
|
|
2020-05-29 03:50:51 +08:00
|
|
|
# Copy out the mustpass lists we want.
|
2019-11-18 16:26:00 +08:00
|
|
|
mkdir /deqp/mustpass
|
2022-05-31 17:23:35 +08:00
|
|
|
for mustpass in $(< /VK-GL-CTS/external/vulkancts/mustpass/main/vk-default.txt) ; do
|
|
|
|
cat /VK-GL-CTS/external/vulkancts/mustpass/main/$mustpass \
|
2021-07-31 01:18:58 +08:00
|
|
|
>> /deqp/mustpass/vk-master.txt
|
|
|
|
done
|
2019-11-18 16:26:00 +08:00
|
|
|
|
2020-08-27 07:57:44 +08:00
|
|
|
cp \
|
|
|
|
/deqp/external/openglcts/modules/gl_cts/data/mustpass/gles/aosp_mustpass/3.2.6.x/*.txt \
|
|
|
|
/deqp/mustpass/.
|
2021-04-03 01:31:28 +08:00
|
|
|
cp \
|
|
|
|
/deqp/external/openglcts/modules/gl_cts/data/mustpass/egl/aosp_mustpass/3.2.6.x/egl-master.txt \
|
|
|
|
/deqp/mustpass/.
|
2021-04-16 19:01:11 +08:00
|
|
|
cp \
|
|
|
|
/deqp/external/openglcts/modules/gl_cts/data/mustpass/gles/khronos_mustpass/3.2.6.x/*-master.txt \
|
|
|
|
/deqp/mustpass/.
|
2020-08-27 07:57:44 +08:00
|
|
|
cp \
|
|
|
|
/deqp/external/openglcts/modules/gl_cts/data/mustpass/gl/khronos_mustpass/4.6.1.x/*-master.txt \
|
|
|
|
/deqp/mustpass/.
|
2022-08-04 04:40:37 +08:00
|
|
|
cp \
|
|
|
|
/deqp/external/openglcts/modules/gl_cts/data/mustpass/gl/khronos_mustpass_single/4.6.1.x/*-single.txt \
|
|
|
|
/deqp/mustpass/.
|
2020-05-29 03:50:51 +08:00
|
|
|
|
|
|
|
# Save *some* executor utils, but otherwise strip things down
|
|
|
|
# to reduct deqp build size:
|
|
|
|
mkdir /deqp/executor.save
|
|
|
|
cp /deqp/executor/testlog-to-* /deqp/executor.save
|
2019-11-18 16:26:00 +08:00
|
|
|
rm -rf /deqp/executor
|
2020-05-29 03:50:51 +08:00
|
|
|
mv /deqp/executor.save /deqp/executor
|
|
|
|
|
2022-01-08 01:44:43 +08:00
|
|
|
# Remove other mustpass files, since we saved off the ones we wanted to conventient locations above.
|
2020-08-27 07:57:44 +08:00
|
|
|
rm -rf /deqp/external/openglcts/modules/gl_cts/data/mustpass
|
2022-01-08 01:44:43 +08:00
|
|
|
rm -rf /deqp/external/vulkancts/modules/vulkan/vk-master*
|
|
|
|
rm -rf /deqp/external/vulkancts/modules/vulkan/vk-default
|
|
|
|
|
2020-08-27 07:57:44 +08:00
|
|
|
rm -rf /deqp/external/openglcts/modules/cts-runner
|
2020-05-29 03:50:51 +08:00
|
|
|
rm -rf /deqp/modules/internal
|
2019-11-18 16:26:00 +08:00
|
|
|
rm -rf /deqp/execserver
|
|
|
|
rm -rf /deqp/framework
|
2022-07-16 22:40:04 +08:00
|
|
|
# shellcheck disable=SC2038,SC2185 # TODO: rewrite find
|
2019-11-18 16:26:00 +08:00
|
|
|
find -iname '*cmake*' -o -name '*ninja*' -o -name '*.o' -o -name '*.a' | xargs rm -rf
|
2020-05-29 03:50:51 +08:00
|
|
|
${STRIP_CMD:-strip} external/vulkancts/modules/vulkan/deqp-vk
|
2020-08-27 07:57:44 +08:00
|
|
|
${STRIP_CMD:-strip} external/openglcts/modules/glcts
|
2020-05-29 03:50:51 +08:00
|
|
|
${STRIP_CMD:-strip} modules/*/deqp-*
|
2022-07-16 22:40:04 +08:00
|
|
|
du -sh ./*
|
2019-11-18 16:26:00 +08:00
|
|
|
rm -rf /VK-GL-CTS
|
2020-02-20 21:30:36 +08:00
|
|
|
popd
|