if [ ! -e $CTEST_BINDIR/setup ]; then echo "Missing environment variable \$CTEST_BINDIR or missing file $CTEST_BINDIR/setup"; exit 1; fi
if [ -z $TEST_SETUP ]; then source $CTEST_BINDIR/setup; fi
doalarm() { perl -e 'alarm shift; exec @ARGV' "$@"; }
if [ -z $CTEST_BINDIR ]; then die "Missing environment variable \$CTEST_BINDIR"; fi
if [ -z $CTEST_TMPDIR ]; then die "Missing environment variable \$CTEST_TMPDIR"; fi
if [ -z $CTEST_DRIVER ]; then die "Missing environment variable \$CTEST_DRIVER"; fi
if [ -z $CTEST_REPORT_FILE ]; then die "Missing environment variable \$CTEST_REPORT_FILE"; fi
TMPFILE=`mktemp $CTEST_TMPDIR/cc-wrapper.XXXXXX` || exit 1
if [ -z $CTEST_MAX_MEM ]; then
CTEST_MAX_MEM=64M
fi
doalarm 30 $CTEST_BINDIR/$CTEST_DRIVER +RTS -M$CTEST_MAX_MEM -RTS $@ 2>&1 | tee $TMPFILE
if [ $PIPESTATUS -ne 0 ]; then
if [ -n $CTEST_DEBUG ]; then
echo '[DEBUG]: Fatal Error (Caught)' 2>&1
fi
$CTEST_BINDIR/ReportFatal $CTEST_REPORT_FILE $@ < $TMPFILE
fi
rm $TMPFILE