diff options
Diffstat (limited to '')
-rw-r--r-- | debian/tests/test-@NAME@.in | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/debian/tests/test-@NAME@.in b/debian/tests/test-@NAME@.in new file mode 100644 index 0000000..a359f7d --- /dev/null +++ b/debian/tests/test-@NAME@.in @@ -0,0 +1,28 @@ +#!/bin/sh + +set -e + +DEB_HOST_MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH) + + +"/usr/libexec/$DEB_HOST_MULTIARCH/isa-support/qemu-static-good-@NAME@" "/usr/libexec/$DEB_HOST_MULTIARCH/isa-support/test-@NAME@" +# trap signal to self +trap "exit 0" ILL +trap "exit 0" SEGV +trap "exit 0" BUS + + +sed_move_to_stderr() { + sed -e "/$1/w /dev/stderr" -e "/$1/d" +} + +qemu_bad() { + "/usr/libexec/$DEB_HOST_MULTIARCH/isa-support/qemu-static-bad-@NAME@" "/usr/libexec/$DEB_HOST_MULTIARCH/isa-support/test-@NAME@" || true +} + +exec 5>&1 +exec 3>&1 +error_qemu=$( ( ( (qemu_bad) 2>&1 >&3 3>&- ; echo $? >&4) | sed_move_to_stderr 'uncaught target signal' 2>&1 >&3 3>&- ) 4>&1 >&5) +exec 3>&- +exec 5>&- +test "X$error_qemu" = "X0" |