X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=contrib%2Freghunt%2Fexamples%2Ftestall;fp=contrib%2Freghunt%2Fexamples%2Ftestall;h=61d99e0b6a6607d382827e382113c774f1ca4535;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=0000000000000000000000000000000000000000;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/contrib/reghunt/examples/testall b/contrib/reghunt/examples/testall new file mode 100755 index 00000000..61d99e0b --- /dev/null +++ b/contrib/reghunt/examples/testall @@ -0,0 +1,73 @@ +#! /bin/sh + +# Run one or more regression hunts +# +# The file specified as the single argument is a queue of regression +# hunts and/or lists of patches to test. Each entry in the file is +# "hunt" or "test" followed by a bugid for which there is a config +# file and other required files (patch list and test source file). +# Each line of the file is removed as it is processed, and new ones +# can be added while the script is still running. + +#set -ex + +if [ $# != 1 ]; then + echo "usage: $0 testfile" + exit 1 +fi + +REGFILE=$1 +TMPFILE=testall.tmp + +if [ ! -f $REGFILE ]; then + echo "$0: file $REGFILE does not exist" + exit 1 +fi + +RETURN_FOR_TEST=return +RETURN_FOR_TEST=true + +. ../gcc-svn-env + +hunt() { + id=$1 + + echo regression hunt for $id + $RETURN_FOR_TEST + $REG_CLEANUP + reg-hunt $id.config >> $id.log 2>&1 + tail -n 1 $id.log + #tail -n 1 $id.log | mutt -s "reghunt for $id finished" janis187 +} + +testit() { + id=$1 + + echo testing specific dates for $id + $RETURN_FOR_TEST + $REG_CLEANUP + reg-test $id.config >> $id.log 2>&1 + #mutt -s "reg-test for $id finished" janis187 < /dev/null +} + +rm -f $REG_STOP + +while + read WHICH ID < $REGFILE +do + if [ -f $REG_STOP ]; then + echo "$REG_STOP detected" + rm -f $REG_STOP + exit 1 + fi + + sed 1d < $REGFILE > $TMPFILE + mv $TMPFILE $REGFILE + + case $WHICH in + hunt) hunt $ID;; + test) testit $ID;; + *) echo "unknown action $WHICH, skipping $ID";; + esac + echo +done