For PR1355:

Make the script process multiple files and describe its usage properly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36466 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Reid Spencer 2007-04-26 03:59:24 +00:00
parent 8d35c79f27
commit 0e72512a6c

View File

@ -1,32 +1,32 @@
#!/bin/sh #!/bin/sh
# #
# TestRunner.sh - This script is used to run arbitrary unit tests. Unit # TestRunner.sh - This script is used to run the deja-gnu tests exactly like
# tests must contain the command used to run them in the input file, starting # deja-gnu does, by executing the Tcl script specified in the test case's
# immediately after a "RUN:" string. # RUN: lines. This is made possible by a simple make target supported by the
# test/Makefile. All this script does is invoke that make target.
# #
# This runner recognizes and replaces the following strings in the command: # Usage:
# TestRunner.sh {script_names}
# #
# %s - Replaced with the input name of the program, or the program to # This script is typically used by cd'ing to a test directory and then
# execute, as appropriate. # running TestRunner.sh with a list of test file names you want to run.
# %llvmgcc - llvm-gcc command
# %llvmgxx - llvm-g++ command
# %prcontext - prcontext.tcl script
# #
TESTFILE=$1 for TESTFILE in "$@" ; do
if test `dirname $TESTFILE` == . ; then if test `dirname $TESTFILE` == . ; then
TESTPATH=`pwd` TESTPATH=`pwd`
SUBDIR="" SUBDIR=""
while test `basename $TESTPATH` != "test" -a ! -z "$TESTPATH" ; do while test `basename $TESTPATH` != "test" -a ! -z "$TESTPATH" ; do
tmp=`basename $TESTPATH` tmp=`basename $TESTPATH`
SUBDIR="$tmp/$SUBDIR" SUBDIR="$tmp/$SUBDIR"
TESTPATH=`dirname $TESTPATH` TESTPATH=`dirname $TESTPATH`
done done
if test -d "$TESTPATH" ; then if test -d "$TESTPATH" ; then
cd $TESTPATH cd $TESTPATH
make check-one TESTONE="$SUBDIR$TESTFILE" make check-one TESTONE="$SUBDIR$TESTFILE"
else
echo "Can't find llvm/test directory in " `pwd`
fi
else else
echo "Can't find llvm/test directory in " `pwd` make check-one TESTONE=$TESTFILE
fi fi
else done
make check-one TESTONE=$TESTFILE
fi