From 287bf5f20886f9581c26c519bb17813d4d4f1f71 Mon Sep 17 00:00:00 2001 From: Tomeu Vizoso Date: Wed, 13 May 2020 09:46:06 +0200 Subject: [PATCH] gitlab-ci: Test virgl with Khronos' OpenGL CTS Signed-off-by: Tomeu Vizoso Reviewed-by: Eric Anholt Part-of: --- .gitlab-ci.yml | 17 ++++++++++++++++- .gitlab-ci/build-deqp-gl.sh | 11 +++++++++-- .gitlab-ci/deqp-runner.sh | 9 +++++++-- 3 files changed, 32 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 048b32e43bd..a1d7f6944ec 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -244,7 +244,7 @@ x86_test-base: x86_test-gl: extends: .use-x86_test-base variables: - FDO_DISTRIBUTION_TAG: &x86_test-gl "2020-06-04" + FDO_DISTRIBUTION_TAG: &x86_test-gl "2020-06-15" # Debian 10 based x86 test image for VK x86_test-vk: @@ -874,6 +874,21 @@ virgl-gles31-on-gl: MESA_EXTENSION_OVERRIDE: "-GL_OES_tessellation_shader" extends: virgl-gles3-on-gl +virgl-gl30-on-gl: + variables: + DEQP_VER: gl30 + extends: virgl-gles2-on-gl + +virgl-gl31-on-gl: + variables: + DEQP_VER: gl31 + extends: virgl-gles2-on-gl + +virgl-gl32-on-gl: + variables: + DEQP_VER: gl32 + extends: virgl-gles2-on-gl + # Rules for tests that should not be present in MRs or the main # project's pipeline (don't block marge or report red on # mesa/mesamaster) but should be present on pipelines in personal diff --git a/.gitlab-ci/build-deqp-gl.sh b/.gitlab-ci/build-deqp-gl.sh index 57ce554f660..34456e7071c 100644 --- a/.gitlab-ci/build-deqp-gl.sh +++ b/.gitlab-ci/build-deqp-gl.sh @@ -40,6 +40,11 @@ for gles in gles2 gles3 gles31; do /deqp/external/openglcts/modules/gl_cts/data/mustpass/gles/aosp_mustpass/3.2.6.x/$gles-master.txt \ /deqp/mustpass/$gles-master.txt done +cp \ + /deqp/external/openglcts/modules/gl_cts/data/mustpass/gl/khronos_mustpass/4.6.1.x/*-master.txt \ + /deqp/mustpass/. + + # Save *some* executor utils, but otherwise strip things down # to reduct deqp build size: @@ -48,13 +53,15 @@ cp /deqp/executor/testlog-to-* /deqp/executor.save rm -rf /deqp/executor mv /deqp/executor.save /deqp/executor -rm -rf /deqp/external +ls /deqp/external | grep -v openglcts | xargs rm -rf rm -rf /deqp/modules/internal rm -rf /deqp/execserver rm -rf /deqp/modules/egl rm -rf /deqp/framework +rm -rf /deqp/external/openglcts/modules/gl_cts/data/mustpass +rm -rf /deqp/external/openglcts/modules/cts-runner find -iname '*cmake*' -o -name '*ninja*' -o -name '*.o' -o -name '*.a' | xargs rm -rf -${STRIP_CMD:-strip} modules/*/deqp-* +${STRIP_CMD:-strip} modules/*/deqp-* external/openglcts/modules/glcts du -sh * rm -rf /VK-GL-CTS popd diff --git a/.gitlab-ci/deqp-runner.sh b/.gitlab-ci/deqp-runner.sh index 6843b723c2d..fb3e87bd55c 100755 --- a/.gitlab-ci/deqp-runner.sh +++ b/.gitlab-ci/deqp-runner.sh @@ -47,9 +47,14 @@ mkdir -p $RESULTS if [ "$DEQP_VER" = "vk" ]; then cp /deqp/mustpass/vk-master.txt /tmp/case-list.txt DEQP=/deqp/external/vulkancts/modules/vulkan/deqp-vk -else +elif [ "$DEQP_VER" = "gles2" -o "$DEQP_VER" = "gles3" -o "$DEQP_VER" = "gles31" ]; then cp /deqp/mustpass/$DEQP_VER-master.txt /tmp/case-list.txt DEQP=/deqp/modules/$DEQP_VER/deqp-$DEQP_VER + SUITE=dEQP +else + cp /deqp/mustpass/$DEQP_VER-master.txt /tmp/case-list.txt + DEQP=/deqp/external/openglcts/modules/glcts + SUITE=KHR fi # If the job is parallel, take the corresponding fraction of the caselist. @@ -220,7 +225,7 @@ check_renderer() { # debug. # export EGL_LOG_LEVEL=debug VERSION=`echo $DEQP_VER | tr '[a-z]' '[A-Z]'` - $DEQP $DEQP_OPTIONS --deqp-case=dEQP-$VERSION.info.\* --deqp-log-filename=$RESULTS/deqp-info.qpa + $DEQP $DEQP_OPTIONS --deqp-case=$SUITE-$VERSION.info.\* --deqp-log-filename=$RESULTS/deqp-info.qpa parse_renderer }