When configure runs "exit 1", the trap handler is run to cleanup any files created by configure, but this trap handler itself calls "exit" with no argument (which means zero exit code): [...] + echo Error: zlib check failed Error: zlib check failed + echo Make sure to have the zlib libs and headers installed. Make sure to have the zlib libs and headers installed. + echo
+ exit 1 + rm -f /tmp/qemu-conf--2779-.c /tmp/qemu-conf--2779-.o /tmp/qemu-conf--2779-.exe + exit To fix this, remove the call to exit from the trap handler, leaving it to the shell shell to exitafter the trap handler is run (honoring any previously provided exit code). --- configure | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/configure b/configure index 3bfc5e9..e0147d1 100755 --- a/configure +++ b/configure @@ -15,7 +15,7 @@ TMPC="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.c" TMPO="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.o" TMPE="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.exe" -trap "rm -f $TMPC $TMPO $TMPE ; exit" EXIT INT QUIT TERM +trap "rm -f $TMPC $TMPO $TMPE" EXIT INT QUIT TERM compile_object() { $cc $QEMU_CFLAGS -c -o $TMPO $TMPC > /dev/null 2> /dev/null -- 1.7.1