ci: Build the full VK CTS for baremetal testing.
I'm going to enable the VK CTS on cheza, so swap the deqp we have in the container. build-deqp-vk already included GLES deqp binaries and data, and is a newer branch than the last opengl-es-cts tag. This brings a few things back over from build-deqp-gl for testlog extraction, and copyes out the GLES mustpass lists. Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5266>
This commit is contained in:
parent
eca02ec44a
commit
dd167788ec
|
@ -237,7 +237,7 @@ x86_test-gl:
|
||||||
x86_test-vk:
|
x86_test-vk:
|
||||||
extends: .use-x86_test-base
|
extends: .use-x86_test-base
|
||||||
variables:
|
variables:
|
||||||
FDO_DISTRIBUTION_TAG: &x86_test-vk "2020-06-02-new-vk-cts"
|
FDO_DISTRIBUTION_TAG: &x86_test-vk "2020-06-02-gles"
|
||||||
|
|
||||||
# Debian 9 based x86 build image (old LLVM)
|
# Debian 9 based x86 build image (old LLVM)
|
||||||
x86_build_old:
|
x86_build_old:
|
||||||
|
@ -292,7 +292,7 @@ arm64_test:
|
||||||
extends:
|
extends:
|
||||||
- .use-arm_test-base
|
- .use-arm_test-base
|
||||||
variables:
|
variables:
|
||||||
FDO_DISTRIBUTION_TAG: &arm64_test "2020-06-08"
|
FDO_DISTRIBUTION_TAG: &arm64_test "2020-06-09-cheza-vk"
|
||||||
|
|
||||||
.use-arm64_test:
|
.use-arm64_test:
|
||||||
variables:
|
variables:
|
||||||
|
|
|
@ -51,9 +51,13 @@ set -ex
|
||||||
mkdir rootfs
|
mkdir rootfs
|
||||||
. .gitlab-ci/bare-metal/rootfs-setup.sh rootfs
|
. .gitlab-ci/bare-metal/rootfs-setup.sh rootfs
|
||||||
|
|
||||||
# Finally, pack it up into a cpio rootfs.
|
# Finally, pack it up into a cpio rootfs. Skip the vulkan CTS since none of
|
||||||
|
# these devices use it and it would take up space in the initrd.
|
||||||
pushd rootfs
|
pushd rootfs
|
||||||
find -H | cpio -H newc -o | xz --check=crc32 -T4 - > $CI_PROJECT_DIR/rootfs.cpio.gz
|
find -H | \
|
||||||
|
egrep -v "external/(openglcts|vulkancts|amber|glslang|spirv-tools)" | \
|
||||||
|
cpio -H newc -o | \
|
||||||
|
xz --check=crc32 -T4 - > $CI_PROJECT_DIR/rootfs.cpio.gz
|
||||||
popd
|
popd
|
||||||
|
|
||||||
cat $BM_KERNEL $BM_DTB > Image.gz-dtb
|
cat $BM_KERNEL $BM_DTB > Image.gz-dtb
|
||||||
|
|
|
@ -21,27 +21,43 @@ python3 external/fetch_sources.py --insecure
|
||||||
|
|
||||||
mkdir -p /deqp
|
mkdir -p /deqp
|
||||||
|
|
||||||
|
# Save the testlog stylesheets:
|
||||||
|
cp doc/testlog-stylesheet/testlog.{css,xsl} /deqp
|
||||||
popd
|
popd
|
||||||
|
|
||||||
pushd /deqp
|
pushd /deqp
|
||||||
cmake -G Ninja \
|
cmake -G Ninja \
|
||||||
-DDEQP_TARGET=x11_glx \
|
-DDEQP_TARGET=${DEQP_TARGET:-x11_glx} \
|
||||||
-DCMAKE_BUILD_TYPE=Release \
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
|
$EXTRA_CMAKE_ARGS \
|
||||||
/VK-GL-CTS
|
/VK-GL-CTS
|
||||||
ninja
|
ninja
|
||||||
|
|
||||||
# Copy out the mustpass list we want.
|
# Copy out the mustpass lists we want.
|
||||||
mkdir /deqp/mustpass
|
mkdir /deqp/mustpass
|
||||||
cp /VK-GL-CTS/external/vulkancts/mustpass/master/vk-default.txt \
|
cp /VK-GL-CTS/external/vulkancts/mustpass/master/vk-default.txt \
|
||||||
/deqp/mustpass/vk-master.txt
|
/deqp/mustpass/vk-master.txt
|
||||||
|
|
||||||
rm -rf /deqp/modules/internal
|
for gles in gles2 gles3 gles31; do
|
||||||
|
cp \
|
||||||
|
/deqp/external/openglcts/modules/gl_cts/data/mustpass/gles/aosp_mustpass/3.2.6.x/$gles-master.txt \
|
||||||
|
/deqp/mustpass/$gles-master.txt
|
||||||
|
done
|
||||||
|
|
||||||
|
# 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
|
||||||
rm -rf /deqp/executor
|
rm -rf /deqp/executor
|
||||||
|
mv /deqp/executor.save /deqp/executor
|
||||||
|
|
||||||
|
rm -rf /deqp/modules/internal
|
||||||
rm -rf /deqp/execserver
|
rm -rf /deqp/execserver
|
||||||
rm -rf /deqp/modules/egl
|
rm -rf /deqp/modules/egl
|
||||||
rm -rf /deqp/framework
|
rm -rf /deqp/framework
|
||||||
find -iname '*cmake*' -o -name '*ninja*' -o -name '*.o' -o -name '*.a' | xargs rm -rf
|
find -iname '*cmake*' -o -name '*ninja*' -o -name '*.o' -o -name '*.a' | xargs rm -rf
|
||||||
strip external/vulkancts/modules/vulkan/deqp-vk
|
${STRIP_CMD:-strip} external/vulkancts/modules/vulkan/deqp-vk
|
||||||
|
${STRIP_CMD:-strip} modules/*/deqp-*
|
||||||
du -sh *
|
du -sh *
|
||||||
rm -rf /VK-GL-CTS
|
rm -rf /VK-GL-CTS
|
||||||
popd
|
popd
|
||||||
|
|
|
@ -32,7 +32,7 @@ mkdir /var/cache/apt/archives/$arch
|
||||||
|
|
||||||
############### Create rootfs
|
############### Create rootfs
|
||||||
|
|
||||||
DEBIAN_ARCH=$arch . .gitlab-ci/container/lava_arm.sh
|
DEBIAN_ARCH=$arch INCLUDE_VK_CTS=1 . .gitlab-ci/container/lava_arm.sh
|
||||||
|
|
||||||
ccache --show-stats
|
ccache --show-stats
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,12 @@ mv /usr/local/bin/deqp-runner /lava-files/rootfs-${DEBIAN_ARCH}/usr/bin/.
|
||||||
|
|
||||||
############### Build dEQP
|
############### Build dEQP
|
||||||
STRIP_CMD="${GCC_ARCH}-strip"
|
STRIP_CMD="${GCC_ARCH}-strip"
|
||||||
. .gitlab-ci/build-deqp-gl.sh
|
if [ -n "$INCLUDE_VK_CTS" ]; then
|
||||||
|
DEQP_TARGET=surfaceless . .gitlab-ci/build-deqp-vk.sh
|
||||||
|
else
|
||||||
|
. .gitlab-ci/build-deqp-gl.sh
|
||||||
|
fi
|
||||||
|
|
||||||
mv /deqp /lava-files/rootfs-${DEBIAN_ARCH}/.
|
mv /deqp /lava-files/rootfs-${DEBIAN_ARCH}/.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,11 @@ apt-get -y install --no-install-recommends \
|
||||||
netcat-openbsd \
|
netcat-openbsd \
|
||||||
wget \
|
wget \
|
||||||
xz-utils
|
xz-utils
|
||||||
|
|
||||||
|
if [ -n "$INCLUDE_VK_CTS" ]; then
|
||||||
|
apt-get install -y libvulkan1
|
||||||
|
fi
|
||||||
|
|
||||||
passwd root -d
|
passwd root -d
|
||||||
chsh -s /bin/sh
|
chsh -s /bin/sh
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue