Reviewed-By: Gert Wollny <gert.wollny@collabora.com> Signed-off-by: Robert Foss <robert.foss@collabora.com> Signed-off-by: Jakob Bornecrantz <jakob@collabora.com>macos/master
parent
5176d6dca9
commit
7f3f1a5075
@ -1,221 +0,0 @@ |
|||||||
#!/bin/bash |
|
||||||
|
|
||||||
set -x |
|
||||||
|
|
||||||
ONLY_GLES2=no |
|
||||||
|
|
||||||
for arg |
|
||||||
do |
|
||||||
case "$arg" in |
|
||||||
--with-vtest) |
|
||||||
WITH_VTEST=1 |
|
||||||
;; |
|
||||||
--host-gl) |
|
||||||
HOST_GL=1 |
|
||||||
;; |
|
||||||
--only-softpipe) |
|
||||||
ONLY_SOFTPIPE_PASS=yes |
|
||||||
;; |
|
||||||
*) |
|
||||||
echo "Unknown argument" |
|
||||||
exit 1 |
|
||||||
;; |
|
||||||
esac |
|
||||||
done |
|
||||||
|
|
||||||
export PATH=$PATH:/usr/local/go/bin |
|
||||||
export LD_LIBRARY_PATH=/usr/local/lib64:/usr/local/lib:/usr/local/lib/x86_64-linux-gnu |
|
||||||
#export MESA_GLES_VERSION_OVERRIDE=3.1 |
|
||||||
|
|
||||||
if [[ -n $WITH_VTEST ]]; then |
|
||||||
nohup Xvfb :0 -screen 0 1024x768x24 & |
|
||||||
else |
|
||||||
startx & |
|
||||||
fi |
|
||||||
sleep 3 |
|
||||||
export DISPLAY=:0 |
|
||||||
|
|
||||||
if [[ -n "$LIBGL_ALWAYS_SOFTWARE" ]]; then |
|
||||||
HOST_GALLIUM_DRIVER="_${GALLIUM_DRIVER}" |
|
||||||
fi |
|
||||||
|
|
||||||
if [[ -n "$HOST_GL" ]]; then |
|
||||||
echo "Running tests with GL on the host" |
|
||||||
RESULTS_DIR=/virglrenderer/results/gl_host${HOST_GALLIUM_DRIVER} |
|
||||||
PREVIOUS_RESULTS_DIR=/virglrenderer/ci/previous_results/gl_host${HOST_GALLIUM_DRIVER} |
|
||||||
else |
|
||||||
echo "Running tests with GLES on the host" |
|
||||||
RESULTS_DIR=/virglrenderer/results/es_host${HOST_GALLIUM_DRIVER} |
|
||||||
PREVIOUS_RESULTS_DIR=/virglrenderer/ci/previous_results/es_host${HOST_GALLIUM_DRIVER} |
|
||||||
fi |
|
||||||
mkdir -p $RESULTS_DIR |
|
||||||
|
|
||||||
if [[ -n "$WITH_VTEST" ]]; then |
|
||||||
if [[ -n "$HOST_GL" ]]; then |
|
||||||
if [[ -n "$ONLY_SOFTPIPE_PASS" ]]; then |
|
||||||
# Softpipe only supports GL 3.3, but for guest GLES 3.1 |
|
||||||
# one GL 4.4 property is needed |
|
||||||
VTEST_USE_EGL_SURFACELESS=1 nohup /virglrenderer/vtest/virgl_test_server >$RESULTS_DIR/vtest_gl.log 2>&1 & |
|
||||||
else |
|
||||||
VTEST_USE_EGL_SURFACELESS=1 nohup /virglrenderer/vtest/virgl_test_server >$RESULTS_DIR/vtest_gl.log 2>&1 & |
|
||||||
fi |
|
||||||
else |
|
||||||
VTEST_USE_EGL_SURFACELESS=1 VTEST_USE_GLES=1 nohup /virglrenderer/vtest/virgl_test_server >$RESULTS_DIR/vtest_gles.log 2>&1 & |
|
||||||
fi |
|
||||||
|
|
||||||
sleep 1 |
|
||||||
|
|
||||||
# Don't set the GALLIUM_DRIVER to virpipe before |
|
||||||
# initializing virgl_test_server |
|
||||||
export GALLIUM_DRIVER=virpipe |
|
||||||
fi |
|
||||||
|
|
||||||
if [[ "x$ONLY_SOFTPIPE_PASS"="xyes" ]] ; then |
|
||||||
time deqp --threads=$NUM_THREADS \ |
|
||||||
--cts-build-dir=/usr/local/VK-GL-CTS/ \ |
|
||||||
--test-names-file=/virglrenderer/ci/softpipe-gles-pass.txt \ |
|
||||||
--print-failing \ |
|
||||||
--results-file=$RESULTS_DIR/deqp_results.txt |
|
||||||
else |
|
||||||
time deqp --threads=$NUM_THREADS \ |
|
||||||
--cts-build-dir=/usr/local/VK-GL-CTS/ \ |
|
||||||
--test-names-file=/virglrenderer/ci/deqp-gles2-list.txt \ |
|
||||||
--test-names-file=/virglrenderer/ci/deqp-gles3-list.txt \ |
|
||||||
--test-names-file=/virglrenderer/ci/deqp-gles31-list.txt \ |
|
||||||
--print-failing \ |
|
||||||
--results-file=$RESULTS_DIR/deqp_results.txt |
|
||||||
fi |
|
||||||
cp -rf /tmp/dEQP/* $RESULTS_DIR/. |
|
||||||
|
|
||||||
# Remove header |
|
||||||
sed -i "/#/d" $RESULTS_DIR/deqp_results.txt |
|
||||||
|
|
||||||
# TODO: These tests are not reliable when run on radeonsi, someone should fix them and then remove these lines |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES3.functional.fbo.msaa.2_samples.rgb8" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES3.functional.fbo.msaa.4_samples.rgb8" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES3.functional.fbo.msaa.8_samples.rgb8" |
|
||||||
|
|
||||||
# TODO: These tests aren't reliable either |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.sample_variables.sample_pos.correctness.singlesample_texture" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.sample_variables.sample_pos.correctness.multisample_texture_1" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.sample_variables.sample_pos.correctness.multisample_texture_2" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.sample_variables.sample_pos.correctness.multisample_texture_4" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.sample_variables.sample_pos.correctness.multisample_texture_8" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.sample_variables.sample_pos.correctness.singlesample_rbo" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.sample_variables.sample_pos.correctness.multisample_rbo_1" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.sample_variables.sample_pos.correctness.multisample_rbo_2" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.sample_variables.sample_pos.correctness.multisample_rbo_4" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.sample_variables.sample_pos.correctness.multisample_rbo_8" |
|
||||||
|
|
||||||
# TODO: These tests aren't reliable either |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES3.functional.negative_api.shader.sampler_parameterfv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES3.functional.negative_api.shader.sampler_parameterf" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES3.functional.negative_api.shader.sampler_parameteriv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES3.functional.negative_api.shader.sampler_parameteri" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES3.functional.negative_api.state.get_synciv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.callbacks.shader.sampler_parameterfv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.callbacks.shader.sampler_parameterf" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.callbacks.shader.sampler_parameteriv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.callbacks.shader.sampler_parameteri" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.callbacks.shader.srgb_decode_samplerparameterfv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.callbacks.shader.srgb_decode_samplerparameterf" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.callbacks.shader.srgb_decode_samplerparameteriv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.callbacks.shader.srgb_decode_samplerparameteri" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.callbacks.state.get_synciv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.get_error.compute.exceed_atomic_counters_limit" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.get_error.shader.sampler_parameterfv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.get_error.shader.sampler_parameterf" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.get_error.shader.sampler_parameteriv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.get_error.shader.sampler_parameteri" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.get_error.shader.srgb_decode_samplerparameterfv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.get_error.shader.srgb_decode_samplerparameterf" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.get_error.shader.srgb_decode_samplerparameteriv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.get_error.shader.srgb_decode_samplerparameteri" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.log.shader.sampler_parameterfv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.log.shader.sampler_parameterf" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.log.shader.sampler_parameteriv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.log.shader.sampler_parameteri" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.log.shader.srgb_decode_samplerparameterfv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.log.shader.srgb_decode_samplerparameterf" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.log.shader.srgb_decode_samplerparameteriv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.log.shader.srgb_decode_samplerparameteri" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.get_error.state.get_synciv" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.debug.negative_coverage.log.state.get_synciv" |
|
||||||
|
|
||||||
|
|
||||||
# TODO: These tests fail on softpipe, someone should fix them and then remove these lines |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.builtin_functions.uniform.findLSBMinusOne.lowp_vertex" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS dEQP-GLES31.functional.shaders.builtin_functions.uniform.findLSBMinusOne.highp_fragment" |
|
||||||
|
|
||||||
for TEST_NAME in $FLIP_FLOPS; do |
|
||||||
sed -i "\:$TEST_NAME:d" $RESULTS_DIR/deqp_results.txt $PREVIOUS_RESULTS_DIR/deqp_results.txt |
|
||||||
done |
|
||||||
|
|
||||||
# Sort results files |
|
||||||
sort -V $RESULTS_DIR/deqp_results.txt -o $RESULTS_DIR/deqp_results.txt |
|
||||||
sort -V $PREVIOUS_RESULTS_DIR/deqp_results.txt -o $PREVIOUS_RESULTS_DIR/deqp_results.txt |
|
||||||
|
|
||||||
# These warnings add too much variability |
|
||||||
sed -i "s/QualityWarning/Pass/g" $RESULTS_DIR/deqp_results.txt $PREVIOUS_RESULTS_DIR/deqp_results.txt |
|
||||||
sed -i "s/CompatibilityWarning/Pass/g" $RESULTS_DIR/deqp_results.txt $PREVIOUS_RESULTS_DIR/deqp_results.txt |
|
||||||
|
|
||||||
diff -u $PREVIOUS_RESULTS_DIR/deqp_results.txt $RESULTS_DIR/deqp_results.txt 2>&1 > $RESULTS_DIR/deqp_diff.txt |
|
||||||
if [ $? -ne 0 ]; then |
|
||||||
cat $RESULTS_DIR/deqp_diff.txt |
|
||||||
touch /virglrenderer/results/regressions_detected |
|
||||||
else |
|
||||||
rm $RESULTS_DIR/deqp_diff.txt |
|
||||||
fi |
|
||||||
|
|
||||||
|
|
||||||
if [[ "x$ONLY_SOFTPIPE_PASS" != "xyes" ]] ; then |
|
||||||
mkdir -p $RESULTS_DIR/piglit |
|
||||||
|
|
||||||
PIGLIT_TESTS="-x glx" |
|
||||||
if [[ -z "$HOST_GL" ]]; then |
|
||||||
PIGLIT_TESTS="$PIGLIT_TESTS -t gles2 -t gles3" |
|
||||||
fi |
|
||||||
|
|
||||||
# Hits this assertion on i965: |
|
||||||
# compiler/brw_fs_visitor.cpp:444: void fs_visitor::emit_fb_writes(): Assertion `!prog_data->dual_src_blend || key->nr_color_regions == 1` failed |
|
||||||
PIGLIT_TESTS="$PIGLIT_TESTS -x arb_blend_func_extended-fbo-extended-blend-pattern_gles2" |
|
||||||
|
|
||||||
time piglit run --platform x11_egl \ |
|
||||||
--jobs $NUM_JOBS \ |
|
||||||
$PIGLIT_TESTS \ |
|
||||||
gpu \ |
|
||||||
$RESULTS_DIR/piglit |
|
||||||
|
|
||||||
piglit summary console $RESULTS_DIR/piglit | head -n -17 > $RESULTS_DIR/piglit/results.txt |
|
||||||
|
|
||||||
# TODO: These tests are not reliable when run on radeonsi, someone should fix them and then remove these lines |
|
||||||
FLIP_FLOPS="" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS spec/arb_framebuffer_srgb/blit renderbuffer srgb_to_linear downsample enabled clear" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS spec/arb_framebuffer_srgb/blit texture srgb_to_linear msaa enabled clear" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS spec/arb_shader_image_load_store/shader-mem-barrier/fragment shader/'volatile' qualifier memory barrier test/modulus=" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS spec/arb_shader_image_load_store/shader-mem-barrier/fragment shader/'coherent' qualifier memory barrier test/modulus=" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS spec/arb_shader_image_load_store/shader-mem-barrier/tessellation control shader/'volatile' qualifier memory barrier test/modulus=" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS spec/arb_shader_image_load_store/shader-mem-barrier/tessellation control shader/'coherent' qualifier memory barrier test/modulus=" |
|
||||||
FLIP_FLOPS="$FLIP_FLOPS spec/ext_transform_instanced/draw-auto instanced" |
|
||||||
for TEST_NAME in $FLIP_FLOPS; do |
|
||||||
sed -i "\:$TEST_NAME:d" $RESULTS_DIR/piglit_results $PREVIOUS_RESULTS_DIR/piglit_results.txt |
|
||||||
done |
|
||||||
|
|
||||||
# This distinction adds too much variability |
|
||||||
sed -i "s/crash/fail/g" $RESULTS_DIR/piglit_results $PREVIOUS_RESULTS_DIR/piglit_results.txt |
|
||||||
|
|
||||||
# Sort results files |
|
||||||
sort -V $RESULTS_DIR/piglit_results -o $RESULTS_DIR/piglit_results |
|
||||||
sort -V $PREVIOUS_RESULTS_DIR/piglit_results.txt -o $PREVIOUS_RESULTS_DIR/piglit_results.txt |
|
||||||
|
|
||||||
diff -u $PREVIOUS_RESULTS_DIR/piglit_results.txt $RESULTS_DIR/piglit/results.txt 2>&1 > $RESULTS_DIR/piglit_diff.txt |
|
||||||
if [ $? -ne 0 ]; then |
|
||||||
cat $RESULTS_DIR/piglit_diff.txt |
|
||||||
touch /virglrenderer/results/regressions_detected |
|
||||||
else |
|
||||||
rm $RESULTS_DIR/piglit_diff.txt |
|
||||||
fi |
|
||||||
|
|
||||||
fi |
|
||||||
|
|
||||||
killall virgl_test_server |
|
@ -1,69 +1,216 @@ |
|||||||
#!/bin/bash |
#!/bin/bash |
||||||
|
|
||||||
set -x |
run_setup() |
||||||
|
{ |
||||||
#DEBIAN_FRONTEND=noninteractive apt-get -y install --no-install-recommends ninja-build meson |
set -x |
||||||
|
|
||||||
# Let .gitlab-ci or local ci runner set |
# Let .gitlab-ci or local ci runner set |
||||||
# desired thread count |
# desired thread count |
||||||
NUM_THREADS=${NUM_THREADS:-"$(nproc)"} |
NUM_THREADS=${NUM_THREADS:-"$(nproc)"} |
||||||
export NUM_THREADS |
export NUM_THREADS |
||||||
echo "Using $NUM_THREADS threads" |
echo "Using $NUM_THREADS threads" |
||||||
|
|
||||||
# To prevent hitting assertions such as the below: |
export CCACHE_BASEDIR=/virglrenderer |
||||||
# sb/sb_sched.cpp:1207:schedule_alu: Assertion `!"unscheduled pending instructions"' failed. |
export CCACHE_DIR=/virglrenderer/ccache |
||||||
export R600_DEBUG=nosb |
export PATH="/usr/lib/ccache:$PATH" |
||||||
|
mkdir -p $CCACHE_DIR |
||||||
export CCACHE_BASEDIR=/virglrenderer |
ccache -s |
||||||
export CCACHE_DIR=/virglrenderer/ccache |
|
||||||
export PATH="/usr/lib/ccache:$PATH" |
# To prevent hitting assertions such as the below: |
||||||
mkdir -p $CCACHE_DIR |
# sb/sb_sched.cpp:1207:schedule_alu: Assertion `!"unscheduled pending instructions"' failed. |
||||||
ccache -s |
export R600_DEBUG=nosb |
||||||
|
|
||||||
|
# If render node, like /dev/dri/renderD128, hasn't been set |
||||||
# If render node, like /dev/dri/renderD128, hasn't been set |
# or exists use softpipe instead of HW GPU. |
||||||
# or exists use softpipe instead of HW GPU. |
if [[ ! -c $RENDER_DEVICE ]]; then |
||||||
if [[ ! -c $RENDER_DEVICE ]]; then |
export SOFTWARE_ONLY=1 |
||||||
export LIBGL_ALWAYS_SOFTWARE=1 |
fi |
||||||
export GALLIVM_PERF=no_filter_hacks |
|
||||||
export GALLIUM_DRIVER=softpipe |
set +x |
||||||
LIMIT_TESTSET=--only-softpipe |
|
||||||
fi |
if [[ $LOCAL_MESA ]]; then |
||||||
|
cd $LOCAL_MESA && \ |
||||||
if [[ $LOCAL_MESA ]]; then |
mkdir -p build && \ |
||||||
cd $LOCAL_MESA && \ |
meson build/ && \ |
||||||
mkdir -p build && \ |
meson configure build/ -Dprefix=/usr/local -Dplatforms=drm,x11,wayland,surfaceless -Ddri-drivers=i965 -Dgallium-drivers=swrast,virgl,radeonsi,r600 -Dbuildtype=debugoptimized -Dllvm=true -Dglx=dri -Dgallium-vdpau=false -Dgallium-va=false -Dvulkan-drivers=[] -Dlibdir=lib && \ |
||||||
meson build/ && \ |
ninja -C build/ install -j $NUM_THREADS |
||||||
meson configure build/ -Dprefix=/usr/local -Dplatforms=drm,x11,wayland,surfaceless -Ddri-drivers=i965 -Dgallium-drivers=swrast,virgl,radeonsi,r600 -Dbuildtype=debugoptimized -Dllvm=true -Dglx=dri -Dgallium-vdpau=false -Dgallium-va=false -Dvulkan-drivers=[] -Dlibdir=lib && \ |
if [ $? -ne 0 ]; then |
||||||
ninja -C build/ install -j $NUM_THREADS |
exit 1 |
||||||
if [ $? -ne 0 ]; then |
fi |
||||||
exit 1 |
fi |
||||||
|
|
||||||
|
VIRGL_PATH="/virglrenderer" |
||||||
|
rm -rf $VIRGL_PATH/results/ |
||||||
|
mkdir -p $VIRGL_PATH/results/ |
||||||
|
|
||||||
|
if [ -d "$VIRGL_PATH" ]; then |
||||||
|
cd $VIRGL_PATH |
||||||
|
./autogen.sh --prefix=/usr/local --enable-debug --enable-tests |
||||||
|
make -j$NUM_THREADS install |
||||||
|
fi |
||||||
|
|
||||||
|
CI_DIR=$(dirname $(readlink -f "$0")) |
||||||
|
cd $CI_DIR |
||||||
|
} |
||||||
|
|
||||||
|
run_make_check() |
||||||
|
{ |
||||||
|
( |
||||||
|
cd /virglrenderer |
||||||
|
mkdir -p /virglrenderer/results/make_check |
||||||
|
VRENDTEST_USE_EGL_SURFACELESS=1 make -j$NUM_THREADS check --no-print-directory |
||||||
|
RET=$? |
||||||
|
cp tests/test*.log /virglrenderer/results/make_check/ |
||||||
|
return $RET |
||||||
|
) |
||||||
|
} |
||||||
|
|
||||||
|
run_deqp_gl() |
||||||
|
{ |
||||||
|
UNRELIABLE="$1" |
||||||
|
|
||||||
|
if [ $UNRELIABLE -eq 1 ]; then |
||||||
|
TEST_UNRELIABLE="--unreliable" |
||||||
|
fi |
||||||
|
|
||||||
|
BACKENDS="--backend vtest-softpipe" |
||||||
|
if [[ -z "$SOFTWARE_ONLY" ]]; then |
||||||
|
BACKENDS="${BACKENDS} --backend vtest-gpu" |
||||||
|
fi |
||||||
|
|
||||||
|
./run_test_suite.sh --deqp --gles2 --gles3 --gles31 \ |
||||||
|
--host-gl \ |
||||||
|
${TEST_UNRELIABLE} \ |
||||||
|
${BACKENDS} \ |
||||||
|
--compare-previous |
||||||
|
|
||||||
|
return $? |
||||||
|
} |
||||||
|
|
||||||
|
run_deqp_gles() |
||||||
|
{ |
||||||
|
UNRELIABLE="$1" |
||||||
|
|
||||||
|
if [ $UNRELIABLE -eq 1 ]; then |
||||||
|
TEST_UNRELIABLE="--unreliable" |
||||||
|
fi |
||||||
|
|
||||||
|
BACKENDS="--backend vtest-softpipe" |
||||||
|
if [[ -z "$SOFTWARE_ONLY" ]]; then |
||||||
|
BACKENDS="${BACKENDS} --backend vtest-gpu" |
||||||
fi |
fi |
||||||
fi |
|
||||||
|
./run_test_suite.sh --deqp --gles2 --gles3 --gles31 \ |
||||||
|
--host-gles \ |
||||||
rm -rf /virglrenderer/results/ |
${TEST_UNRELIABLE} \ |
||||||
mkdir -p /virglrenderer/results/ |
${BACKENDS} \ |
||||||
cd /virglrenderer |
--compare-previous |
||||||
./autogen.sh --prefix=/usr/local --enable-debug --enable-tests |
|
||||||
VRENDTEST_USE_EGL_SURFACELESS=1 make check |
return $? |
||||||
if [ $? -ne 0 ]; then |
} |
||||||
touch /virglrenderer/results/regressions_detected |
|
||||||
fi |
run_piglit_gl() |
||||||
mkdir -p /virglrenderer/results/make_check |
{ |
||||||
cp tests/test*.log /virglrenderer/results/make_check/ |
UNRELIABLE="$1" |
||||||
make -j$NUM_THREADS install |
|
||||||
|
if [ $UNRELIABLE -eq 1 ]; then |
||||||
|
TEST_UNRELIABLE="--unreliable" |
||||||
# Stop testing process if a failure have been found |
fi |
||||||
if [ -f /virglrenderer/results/regressions_detected ]; then |
|
||||||
exit 1 |
BACKENDS="--backend vtest-softpipe" |
||||||
fi |
if [[ -z "$SOFTWARE_ONLY" ]]; then |
||||||
|
BACKENDS="${BACKENDS} --backend vtest-gpu" |
||||||
/virglrenderer/ci/run-deqp.sh --with-vtest $LIMIT_TESTSET |
fi |
||||||
/virglrenderer/ci/run-deqp.sh --host-gl --with-vtest $LIMIT_TESTSET |
|
||||||
|
./run_test_suite.sh --piglit --gles2 --gles3 \ |
||||||
# Return test pass/fail |
--host-gl \ |
||||||
if [ -f /virglrenderer/results/regressions_detected ]; then |
${TEST_UNRELIABLE} \ |
||||||
exit 1 |
${BACKENDS} \ |
||||||
fi |
--compare-previous |
||||||
|
|
||||||
|
return $? |
||||||
|
} |
||||||
|
|
||||||
|
run_piglit_gles() |
||||||
|
{ |
||||||
|
UNRELIABLE="$1" |
||||||
|
|
||||||
|
if [ $UNRELIABLE -eq 1 ]; then |
||||||
|
TEST_UNRELIABLE="--unreliable" |
||||||
|
fi |
||||||
|
|
||||||
|
BACKENDS="--backend vtest-softpipe" |
||||||
|
if [[ -z "$SOFTWARE_ONLY" ]]; then |
||||||
|
BACKENDS="${BACKENDS} --backend vtest-gpu" |
||||||
|
fi |
||||||
|
|
||||||
|
./run_test_suite.sh --piglit --gles2 --gles3 \ |
||||||
|
--host-gles \ |
||||||
|
${TEST_UNRELIABLE} \ |
||||||
|
${BACKENDS} \ |
||||||
|
--compare-previous |
||||||
|
|
||||||
|
return $? |
||||||
|
} |
||||||
|
|
||||||
|
parse_input() |
||||||
|
{ |
||||||
|
RET=0 |
||||||
|
while [ -n "$1" ]; do |
||||||
|
echo "" |
||||||
|
UNRELIABLE=0 |
||||||
|
|
||||||
|
case $1 in |
||||||
|
--make-check) |
||||||
|
run_make_check |
||||||
|
;; |
||||||
|
|
||||||
|
--deqp-gl-unreliable) |
||||||
|
UNRELIABLE=1 |
||||||
|
;& #Fallthrough |
||||||
|
|
||||||
|
--deqp-gl) |
||||||
|
run_deqp_gl $UNRELIABLE |
||||||
|
;; |
||||||
|
|
||||||
|
--deqp-gles-unreliable) |
||||||
|
UNRELIABLE=1 |
||||||
|
;& #Fallthrough |
||||||
|
|
||||||
|
--deqp-gles) |
||||||
|
run_deqp_gles $UNRELIABLE |
||||||
|
;; |
||||||
|
|
||||||
|
--piglit-gl-unreliable) |
||||||
|
UNRELIABLE=1 |
||||||
|
;& #Fallthrough |
||||||
|
|
||||||
|
--piglit-gl) |
||||||
|
run_piglit_gl $UNRELIABLE |
||||||
|
;; |
||||||
|
|
||||||
|
--piglit-gles-unreliable) |
||||||
|
UNRELIABLE=1 |
||||||
|
;& #Fallthrough |
||||||
|
|
||||||
|
--piglit-gles) |
||||||
|
run_piglit_gles $UNRELIABLE |
||||||
|
;; |
||||||
|
|
||||||
|
*) |
||||||
|
echo "Unknown test option $1" |
||||||
|
exit 1 |
||||||
|
esac |
||||||
|
|
||||||
|
if [ $? -ne 0 ]; then |
||||||
|
RET=1 |
||||||
|
fi |
||||||
|
|
||||||
|
shift |
||||||
|
done |
||||||
|
|
||||||
|
exit $RET |
||||||
|
} |
||||||
|
|
||||||
|
run_setup |
||||||
|
parse_input $@ |
||||||
|
Loading…
Reference in new issue