tests: auto-enable ASAN option if necessary
Let's detect ASAN LDFLAGS in top level Makefile to make sure we call tests with --memcheck-asan if build-system has been configured with --enable-asan. Signed-off-by: Karel Zak <kzak@redhat.com>
This commit is contained in:
parent
0d37969cbe
commit
0b17c997c0
16
tests/run.sh
16
tests/run.sh
|
@ -25,6 +25,7 @@ SYSCOMMANDS=
|
|||
top_srcdir=
|
||||
top_builddir=
|
||||
paraller_jobs=1
|
||||
has_asan_opt=
|
||||
|
||||
function num_cpus()
|
||||
{
|
||||
|
@ -60,7 +61,6 @@ while [ -n "$1" ]; do
|
|||
--force |\
|
||||
--fake |\
|
||||
--memcheck-valgrind |\
|
||||
--memcheck-asan |\
|
||||
--nolocks |\
|
||||
--show-diff |\
|
||||
--verbose |\
|
||||
|
@ -70,6 +70,10 @@ while [ -n "$1" ]; do
|
|||
# these options are simply forwarded to the test scripts
|
||||
OPTS="$OPTS $1"
|
||||
;;
|
||||
--memcheck-asan)
|
||||
OPTS="$OPTS $1"
|
||||
has_asan_opt="yes"
|
||||
;;
|
||||
--use-system-commands)
|
||||
OPTS="$OPTS $1"
|
||||
SYSCOMMANDS="yes"
|
||||
|
@ -145,6 +149,14 @@ fi
|
|||
|
||||
OPTS="$OPTS --srcdir=$top_srcdir --builddir=$top_builddir"
|
||||
|
||||
# Auto-enable ASAN to avoid conflicts between tests and binaries
|
||||
if [ -z "$has_asan_opt" ]; then
|
||||
asan=$(awk '/^ASAN_LDFLAGS/ { print $3 }' $top_builddir/Makefile)
|
||||
if [ -n "$asan" ]; then
|
||||
OPTS="$OPTS --memcheck-asan"
|
||||
fi
|
||||
fi
|
||||
|
||||
declare -a comps
|
||||
if [ -n "$SUBTESTS" ]; then
|
||||
# selected tests only
|
||||
|
@ -196,6 +208,8 @@ echo
|
|||
printf "%13s: %-30s " "kernel" "$(uname -r)"
|
||||
echo
|
||||
echo
|
||||
echo " options: $(echo $OPTS | sed 's/ / \\\n /g')"
|
||||
echo
|
||||
|
||||
if [ "$paraller_jobs" -ne 1 ]; then
|
||||
tmp=$paraller_jobs
|
||||
|
|
Loading…
Reference in New Issue