From f0b13873a3efd873c4b070fc2a0fedcbf7a9dc31 Mon Sep 17 00:00:00 2001 From: Michal Nowak Date: Mon, 19 Oct 2020 13:33:32 +0200 Subject: [PATCH] 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. --- bin/tests/system/run.sh.in | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) 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 \ -- 2.47.3