Mercurial > projects > ldc
view tests/runtest @ 318:8e570dbe4087 trunk
[svn r339] Add cleanup handling when within an action chain and some more documentation to the eh personality function.
author | ChristianK |
---|---|
date | Fri, 04 Jul 2008 09:00:49 +0200 |
parents | 9f228c1e5311 |
children | 1aaf6ff7f685 |
line wrap: on
line source
#!/bin/bash # check for command line arguments if [ -z "$1" ] ; then echo "Usage: `basename $0` <test result file>" exit fi TARGETFILE=$1 # check for dstress if ! [ -d dstress ] ; then echo "Testing requires DStress to be checked out into dstress/" exit fi BASEPATH=`pwd` cd dstress # remove excessive tests sed -e 's/torture-//g' -i Makefile # make sure only .d files in 'run' tests are run sed -e 's/find run -type f |/find run -type f -name "*\\\\.d" |/' -i Makefile sed -e 's/find norun -type f |/find norun -type f -name "*\\\\.d" |/' -i Makefile # make sure linker-generated bc files are deleted sed -e 's/find run -type f -name "\*\\\\\.exe" |/find run -type f -name "*\\\\.exe" -o -name "*\\\\.bc" |/' -i Makefile sed -e 's/find norun -type f -name "\*\\\\\.exe" |/find norun -type f -name "*\\\\.exe" -o -name "*\\\\.bc" |/' -i Makefile # impose more conservative constraints (10s and 256 MB) sed -e 's/crashRun 30 1000/crashRun 10 256/' -i dstress.c echo echo "Running new test and storing result in $TARGETFILE ..." echo echo "Remember to make sure you have an up to date runtime!" echo if [ -z "$DMD" ] ; then echo "Testing with llvmdc. Set DMD environment variable to select compiler." DMD="llvmdc -O0 -I$BASEPATH" echo "Default is $DMD" else echo "Using compiler given by DMD environment variable: $DMD" fi echo echo "This will take a while, try 'tail -f $TARGETFILE' to follow progress." echo "Note that aborting is tricky. Try killing the processes by the name of" echo "run.sh, compile.sh, nocompile.sh and norun.sh as well as this one." echo DMD=$DMD make compile nocompile run norun > ../$TARGETFILE cd .. echo echo "Cleanup... (removing all .bc and .exe files)" echo find dstress -name "*\.bc" -o -name "*\.exe" -exec rm {} \;