virgl/ci: Fix identification of dEQP binary paths

In some cases the file paths passed to crosvm for execution do not point
to dEQP binaries, but can be wrapper scripts, like deqp-runner.sh.

Detect such cases and skip changing the working directory.

Additionally, use the POSIX compliant command substitution syntax
instead of the obsolete variant based on backquotes.

Fixes: 81f25d8f27 ("virgl/ci: Run each dEQP instance in its own VM")

Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14413>
This commit is contained in:
Cristian Ciocaltea 2022-01-04 23:15:19 +02:00 committed by Marge Bot
parent aec7eaf3e3
commit 9f0be629cd
1 changed files with 3 additions and 3 deletions

View File

@ -3,11 +3,11 @@
set -ex
# This script can be called concurrently, pass arguments and env in a per-instance tmp dir
export DEQP_TEMP_DIR=`mktemp -d /tmp.XXXXXXXXXX`
export DEQP_TEMP_DIR=$(mktemp -d /tmp.XXXXXXXXXX)
# The dEQP binary needs to run from the directory it's in
if [ -z "${1##*"deqp"*}" ]; then
PWD=`dirname $1`
if [ -n "${1##*.sh}" ] && [ -z "${1##*"deqp"*}" ]; then
PWD=$(dirname $1)
fi
export -p > $DEQP_TEMP_DIR/crosvm-env.sh