tests: Allow running the testsuite on already installed binary / libraries

Currently the test runner script always expects to be run from within the
tests/ subdirectory of a dtc source tree: it looks for dtc and other
binaries in the parent of the current directory and for the libfdt shared
library in ../libfdt.

That works great with make check and for testing a build you've just made.
However, sometimes it's useful to test a dtc & libfdt which have already
been installed on the system, or which for whatever reason are located
somewhere else.

This patch allows the test runner script to do this when TEST_BINDIR and/or
TEST_LIBDIR environment variables are set.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
main
David Gibson 2020-03-04 16:26:33 +11:00
parent c5995ddf4c
commit 1f9a417508
2 changed files with 13 additions and 6 deletions

View File

@ -52,7 +52,10 @@ if [ -z "$STATSZ" ]; then
fi fi


# Help things find the libfdt shared object # Help things find the libfdt shared object
export LD_LIBRARY_PATH=../libfdt if [ -z "$TEST_LIBDIR" ]; then
TEST_LIBDIR=../libfdt
fi
export LD_LIBRARY_PATH="$TEST_LIBDIR"


export QUIET_TEST=1 export QUIET_TEST=1
STOP_ON_FAIL=0 STOP_ON_FAIL=0

View File

@ -18,11 +18,15 @@ FAIL_IF_SIGNAL () {
fi fi
} }


DTC=../dtc if [ -z "$TEST_BINDIR" ]; then
DTGET=../fdtget TEST_BINDIR=..
DTPUT=../fdtput fi
FDTDUMP=../fdtdump
FDTOVERLAY=../fdtoverlay DTC=${TEST_BINDIR}/dtc
DTGET=${TEST_BINDIR}/fdtget
DTPUT=${TEST_BINDIR}/fdtput
FDTDUMP=${TEST_BINDIR}/fdtdump
FDTOVERLAY=${TEST_BINDIR}/fdtoverlay


verbose_run () { verbose_run () {
if [ -z "$QUIET_TEST" ]; then if [ -z "$QUIET_TEST" ]; then