From: Michal Nowak Date: Mon, 19 Oct 2020 11:33:32 +0000 (+0200) Subject: Fix system test backtrace generation on OpenBSD X-Git-Tag: v9.17.7~41^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f0b13873a3efd873c4b070fc2a0fedcbf7a9dc31;p=thirdparty%2Fbind9.git Fix system test backtrace generation on OpenBSD On Linux core dump contains absolute path to crashed binary Core was generated by `/home/newman/isc/ws/bind9/bin/named/.libs/lt-named -D glue-ns1 -X named.lock -m'. However, on OpenBSD there's only a basename Core was generated by `named'. This commit adds support for the latter, retains the former. --- diff --git a/bin/tests/system/run.sh.in b/bin/tests/system/run.sh.in index 2ab8bb91e76..c00d73466b8 100644 --- a/bin/tests/system/run.sh.in +++ b/bin/tests/system/run.sh.in @@ -265,7 +265,10 @@ if [ -n "$core_dumps" ]; then export SYSTESTDIR="$systest" echoinfo "D:$systest:backtrace from $coredump:" echoinfo "D:$systest:--------------------------------------------------------------------------------" - binary=$(gdb --batch --core="$coredump" 2>/dev/null | sed -ne "s/Core was generated by \`//;s/ .*'.$//p;") + binary=$(gdb --batch --core="$coredump" 2>/dev/null | sed -ne "s|Core was generated by \`\([^' ]*\)[' ].*|\1|p") + if [ ! -f "${binary}" ]; then + binary=$(find "${top_builddir}" -path "*/.libs/${binary}" -type f) + fi "${top_builddir}/libtool" --mode=execute gdb \ -batch \ -ex bt \