summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/mips/jmr3904/tools/runtest.in
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2009-01-06 22:52:12 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2009-01-06 22:52:12 +0000
commitd32641146980c75094232a5733276d9f8e4c6cea (patch)
tree13b8dae45c085c3250e397e858849c1a14fddecc /c/src/lib/libbsp/mips/jmr3904/tools/runtest.in
parent2009-01-06 Joel Sherrill <joel.sherrill@OARcorp.com> (diff)
downloadrtems-d32641146980c75094232a5733276d9f8e4c6cea.tar.bz2
2009-01-06 Joel Sherrill <joel.sherrill@OARcorp.com>
* configure.ac: Make runtest an autoconf generated file so we can insert target alias. Also detect more program termination conditions so tests are killed more reliably. * runtest.in: New file. * runtest: Removed.
Diffstat (limited to '')
-rwxr-xr-xc/src/lib/libbsp/mips/jmr3904/tools/runtest.in (renamed from c/src/lib/libbsp/mips/jmr3904/tools/runtest)55
1 files changed, 15 insertions, 40 deletions
diff --git a/c/src/lib/libbsp/mips/jmr3904/tools/runtest b/c/src/lib/libbsp/mips/jmr3904/tools/runtest.in
index 3d94546d90..8dfc166d71 100755
--- a/c/src/lib/libbsp/mips/jmr3904/tools/runtest
+++ b/c/src/lib/libbsp/mips/jmr3904/tools/runtest.in
@@ -1,4 +1,4 @@
-#!/bin/sh -p
+#!@KSH@ -p
#
# Run rtems tests on the powerpc simulator
# This program generates a simulator script to run each test
@@ -85,7 +85,8 @@ logdir=log
update_on_tick="no"
max_run_time=$((5 * 60))
using_print_buffer="yes"
-simulator=mipstx39-rtems4.9-run
+txtarget=`echo @target_alias@ | sed -e 's/mips-/mipstx39-/'`
+simulator=${txtarget}-run
while getopts vdl:o:s: OPT
do
@@ -155,44 +156,15 @@ do
continue
fi
;;
- *-node2*)
- warn "Skipping $tname; 'runtest' runs both nodes when for *-node1"
- continue;;
- *-node1*)
- warn "Running both nodes associated with $tname"
- variant=`echo $tname | sed 's/.*-node[12]//' | sed 's/\.exe//'`
- tname=`echo $tname | sed 's/-node.*//'`
- TEST_TYPE="mp"
+ *-node*)
+ warn "Skipping $tname; MP tests not supported"
+ continue
;;
minimum*|stackchk*|*fatal*|termio*)
continue
;;
esac
- if [ $TEST_TYPE = "mp" ]
- then
- cpus="1 2"
-
- logfile1=$logdir/${tname}_1${variant}
- logfile2=$logdir/${tname}_2${variant}
- infofile1=$logfile1.info
- infofile2=$logfile2.info
-
- rm -f ${logfile1} ${logfile2}
-
- date=`date`
- echo "Starting $tname at $date"
-
- ${simulator} --board=jmr3904 ${tname}-node1${variant}.exe | \
- sed -e 's/ //' -e '/^$/d' > ${logfile1} &
-
- ${simulator} --board=jmr3904 ${tname}-node2${variant}.exe | \
- sed -e 's/ //' -e '/^$/d' > ${logfile2} &
-
- wait
-
- fi
-
if [ $TEST_TYPE = "single" ]
then
logfile=$logdir/${tname}_1
@@ -207,7 +179,6 @@ do
# The device file must do the following:
#
# arrange for more memory (2 Mb)
-
if [ "$device_and_exit" = "yes" ]
then
fatal "Cannot currently generate device files"
@@ -215,8 +186,7 @@ do
# Spin off the simulator in the background
- ${simulator} --board=jmr3904 $tfile </dev/null | \
- sed -e 's/ //' -e '/^$/d' > ${logfile} 2>&1 &
+ ${simulator} --board=jmr3904 $tfile </dev/null > ${logfile} 2>&1 &
pid=$!
# Make sure it won't run forever...
@@ -241,7 +211,12 @@ do
exceptionExit=$?
grep "^mips-core: " ${logfile} >/dev/null
badAccessExit=$?
- if [ $badAccessExit -eq 0 -o $exceptionExit -eq 0 ] ; then
+ grep "^Warning, resuming with mismatched" ${logfile} >/dev/null
+ simExceptExit=$?
+ grep "^assertion" ${logfile} >/dev/null
+ assertExit=$?
+ if [ $badAccessExit -eq 0 -o $exceptionExit -eq 0 -o \
+ $simExceptExit -eq 0 -o $assertExit -eq 0 ] ; then
kill -9 ${pid} >/dev/null 2>&1
#cat ${logfile}
# echo Ran in ${milliseconds} milliseconds
@@ -281,8 +256,8 @@ do
if [ "$cpus" = "1" ]
then
- mv ${infofile} $logdir/${tname}.info
- mv ${logfile} $logdir/${tname}
+ sed -e 's/ //' -e '/^$/d' < ${infofile} >$logdir/${tname}.info
+ sed -e 's/ //' -e '/^$/d' < ${logfile} >$logdir/${tname}
fi
done