X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fclocc-ansi.test.sh;h=1e4cba98f1524ca7eafa3738683a4b4725df354e;hb=a189a69454ef7635149319ae213b337f17c50d20;hp=b9d8bf83c5d2761bbd7d19cee09d67e674684af8;hpb=d1c237164f9bd00879843cba7a79c05449cf50f7;p=sbcl.git diff --git a/tests/clocc-ansi.test.sh b/tests/clocc-ansi.test.sh index b9d8bf8..1e4cba9 100644 --- a/tests/clocc-ansi.test.sh +++ b/tests/clocc-ansi.test.sh @@ -1,6 +1,8 @@ #!/bin/sh -# Run clocc's ansi-test suite on SBCL. +# Run clocc's ansi-test suite on SBCL (if you set the appropriate +# environment variable so that the test suite, a separate piece of +# software, can be found). # # This is implemented as a shell script because ansi-test likes to # report its errors on standard output and it's convenient to use the @@ -18,21 +20,23 @@ # While most of SBCL is derived from the CMU CL system, the test # files (like this one) were written from scratch after the fork # from CMU CL. -# +# # This software is in the public domain and is provided with # absolutely no warranty. See the COPYING and CREDITS files for # more information. -# Remember where we came from so we can find local support files later. -originalpwd=`pwd` +. ./subr.sh # Find clocc ansi-test (or just punt, returning success). +set +u if [ "$SBCL_CLOCC_ANSI_TEST" = "" ] ; then - echo punting clocc ansi-test because SBCL_CLOCC_ANSI_TEST is undefined - exit 104 -else + echo //punting clocc ansi-test because SBCL_CLOCC_ANSI_TEST is undefined + exit $EXIT_TEST_WIN +else + echo //going on to run clocc ansi-test in $SBCL_CLOCC_ANSI_TEST cd $SBCL_CLOCC_ANSI_TEST fi +set -u # The condition system is for the weak. tmpprefix="${TMPDIR:-/tmp}/sbcl-clocc-ansi-test-$$" @@ -40,14 +44,15 @@ rawfilename="$tmpprefix-raw.tmp" bugsfilename="$tmpprefix-bugs.tmp" # Go SBCL go. -$SBCL <$rawfilename (in-package :cl-user) ;;; Tell ansi-test about our known bugs. -(load "$originalpwd/clocc-ansi-test-known-bugs.lisp") +(load "$SBCL_PWD/clocc-ansi-test-known-bugs.lisp") ;;; Actually run ansi-test. (load "tests.lisp") ;;; Return a special status code to show that we reached the end ;;; normally instead of taking a dirt nap. +(print "back from ansi-test tests.lisp") (sb-ext:quit :unix-status 52) EOF if [ $? != 52 ]; then @@ -55,8 +60,8 @@ if [ $? != 52 ]; then exit 1 fi -# Klingon programmers detect errors by searching for error tags in -# standard output. +# Klingon programmers handle errors by recognizing error strings +# in standard output. if egrep 'ERROR!!' $rawfilename > $bugsfilename; then # new bugs, better luck next time cat $bugsfilename