forked from Imagelibrary/rtems
2011-06-11 Joel Sherrill <joel.sherrill@oarcorp.com>
* Makefile.am, configure.ac: runtest for this BSP obsoleted by rtems-testing/sim-scripts support. Please use those scripts. * tools/.cvsignore, tools/ChangeLog, tools/Makefile.am, tools/configure.ac, tools/runtest.in: Removed.
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
2011-06-11 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||
|
||||
* Makefile.am, configure.ac: runtest for this BSP obsoleted by
|
||||
rtems-testing/sim-scripts support. Please use those scripts.
|
||||
* tools/.cvsignore, tools/ChangeLog, tools/Makefile.am,
|
||||
tools/configure.ac, tools/runtest.in: Removed.
|
||||
|
||||
2011-04-25 Jennifer Averett <jennifer.averett@OARcorp.com>
|
||||
|
||||
PR 1783/bsps
|
||||
|
||||
@@ -19,8 +19,6 @@ DISTCLEANFILES = include/bspopts.h
|
||||
|
||||
noinst_PROGRAMS =
|
||||
|
||||
SUBDIRS = . tools
|
||||
|
||||
include_HEADERS += include/erc32.h
|
||||
include_HEADERS += ../../shared/include/coverhd.h
|
||||
|
||||
|
||||
@@ -21,8 +21,6 @@ RTEMS_CHECK_SMP
|
||||
AM_CONDITIONAL(HAS_NETWORKING,test "$HAS_NETWORKING" = "yes")
|
||||
AM_CONDITIONAL(HAS_SMP,[test "$rtems_cv_HAS_SMP" = "yes"])
|
||||
|
||||
RTEMS_CONFIG_BUILD_SUBDIRS(tools)
|
||||
|
||||
## bsp-specific options
|
||||
RTEMS_BSPOPTS_SET([CONSOLE_USE_INTERRUPTS],[*],[0])
|
||||
RTEMS_BSPOPTS_HELP([CONSOLE_USE_INTERRUPTS],
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
aclocal.m4
|
||||
autom4te*.cache
|
||||
config.cache
|
||||
config.log
|
||||
config.status
|
||||
configure
|
||||
Makefile
|
||||
Makefile.in
|
||||
runtest
|
||||
@@ -1,156 +0,0 @@
|
||||
2011-02-25 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: Remove RTEMS_CANONICAL_TARGET_CPU.
|
||||
|
||||
2011-02-02 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: Require autoconf-2.68, automake-1.11.1.
|
||||
|
||||
2008-09-26 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||
|
||||
* runtest.in: Use target_alias instead of hard-coded target.
|
||||
|
||||
2008-09-08 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||
|
||||
* runtest.in: Work on .exe and .ralf files.
|
||||
|
||||
2008-09-08 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||
|
||||
* runtest.in: Update to support .exe or .ralf extension.
|
||||
|
||||
2008-07-31 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||
|
||||
* runtest.in: Make attempt to detect memory exceptions and abort
|
||||
running tests.
|
||||
|
||||
2008-03-11 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||
|
||||
* runtest.in: Skip all fatal error tests.
|
||||
|
||||
2008-01-29 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||
|
||||
* runtest.in: sp39 and sp41 lock on sis but run correctly on
|
||||
tsim/erc32.
|
||||
|
||||
2007-12-12 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||
|
||||
* runtest.in: Update to 4.9.
|
||||
|
||||
2007-11-26 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||
|
||||
* runtest.in: Filter out Memory exception error messages.
|
||||
|
||||
2007-09-04 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||
|
||||
* runtest.in: Add capture to list of interative tests to skip in batch
|
||||
mode.
|
||||
|
||||
2007-01-26 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* Makefile.am: Use MKDIR_P instead of mkdir_p.
|
||||
|
||||
2006-12-02 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: New BUG-REPORT address.
|
||||
|
||||
2006-11-17 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* runtest.in: Change toolname to match 4.8.
|
||||
|
||||
2006-10-17 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: Require autoconf-2.60. Require automake-1.10.
|
||||
|
||||
2004-09-24 Ralf Corsepius <ralf_corsepius@rtems.org>
|
||||
|
||||
* configure.ac: Require automake > 1.9.
|
||||
|
||||
2004-01-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Re-add dirstamps to PRE/TMPINSTALL_FILES.
|
||||
Add PRE/TMPINSTALL_FILES to CLEANFILES.
|
||||
|
||||
2003-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Reworked.
|
||||
|
||||
2003-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Require automake >= 1.8, autoconf >= 2.59.
|
||||
|
||||
2003-12-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Misc cleanups and fixes.
|
||||
|
||||
2003-08-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Reflect having moved aclocal/.
|
||||
|
||||
2003-08-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Reflect having moved automake/.
|
||||
|
||||
2003-08-14 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* runtest.in: Add fileio to list of interactive tests.
|
||||
|
||||
2003-08-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Use rtems-bugs@rtems.com as bug report email address.
|
||||
|
||||
2003-03-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: Remove AC_CONFIG_AUX_DIR.
|
||||
|
||||
2003-02-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: AM_INIT_AUTOMAKE([1.7.2]).
|
||||
|
||||
2003-02-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac: AC_PREREQ(2.57).
|
||||
|
||||
2002-10-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* .cvsignore: Reformat.
|
||||
Add autom4te*cache.
|
||||
Remove autom4te.cache.
|
||||
|
||||
2002-07-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Add transform and bsptools_bindir hacks.
|
||||
* configure.ac: Add RTEMS_ENV_RTEMSBSP.
|
||||
|
||||
2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* configure.ac:
|
||||
AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
|
||||
AM_INIT_AUTOMAKE([no-define foreign 1.6]).
|
||||
* Makefile.am: Remove AUTOMAKE_OPTIONS.
|
||||
|
||||
2001-10-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* .cvsignore: Add autom4te.cache for autoconf > 2.52.
|
||||
* configure.in: Remove.
|
||||
* configure.ac: New file, generated from configure.in by autoupdate.
|
||||
|
||||
2001-09-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Use 'TMPINSTALL_FILES ='.
|
||||
|
||||
2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
|
||||
|
||||
2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
|
||||
|
||||
2000-10-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
|
||||
Switch to GNU canonicalization.
|
||||
|
||||
2000-08-10 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* ChangeLog: New file.
|
||||
@@ -1,26 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
ACLOCAL_AMFLAGS = -I ../../../../../aclocal
|
||||
|
||||
transform =
|
||||
bsptools_bindir = ${exec_prefix}/@RTEMS_BSP@/tests
|
||||
bsptools_bin_SCRIPTS = runtest
|
||||
|
||||
all-local: $(TMPINSTALL_FILES)
|
||||
|
||||
TMPINSTALL_FILES =
|
||||
|
||||
$(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp):
|
||||
@$(MKDIR_P) $(PROJECT_ROOT)/@RTEMS_BSP@/tests
|
||||
@: > $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
|
||||
TMPINSTALL_FILES += $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
|
||||
|
||||
$(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest: runtest $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
|
||||
$(INSTALL_SCRIPT) $< $(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest
|
||||
TMPINSTALL_FILES += $(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest
|
||||
|
||||
CLEANFILES = $(TMPINSTALL_FILES)
|
||||
|
||||
include $(top_srcdir)/../../../../../automake/host.am
|
||||
@@ -1,23 +0,0 @@
|
||||
## Process this file with autoconf to produce a configure script.
|
||||
##
|
||||
## $Id$
|
||||
|
||||
AC_PREREQ([2.68])
|
||||
AC_INIT([rtems-c-src-lib-libbsp-sparc-erc32-tools],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
|
||||
AC_CONFIG_SRCDIR([runtest.in])
|
||||
RTEMS_TOP(../../../../../../..)
|
||||
|
||||
AM_INIT_AUTOMAKE([no-define foreign 1.11.1])
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
RTEMS_ENV_RTEMSBSP
|
||||
|
||||
RTEMS_PATH_KSH
|
||||
|
||||
RTEMS_PROJECT_ROOT
|
||||
RTEMS_TOOLPATHS
|
||||
|
||||
# Explicitly list all Makefiles here
|
||||
AC_CONFIG_FILES([Makefile
|
||||
runtest])
|
||||
AC_OUTPUT
|
||||
@@ -1,329 +0,0 @@
|
||||
#!@KSH@ -p
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# Run rtems tests on the SPARC simulator includeed with GDB
|
||||
# This program generates a simulator script to run each test
|
||||
# Typically the test is then run, although it can be generated
|
||||
# and left as a file using -s
|
||||
#
|
||||
|
||||
# progname=`basename $0`
|
||||
progname=${0##*/} # fast basename hack for ksh, bash
|
||||
|
||||
USAGE=\
|
||||
"usage: $progname [ -opts ] test [ test ... ]
|
||||
-o options -- specify options to be passed to simulator
|
||||
-v -- verbose
|
||||
-s -- generate script file (as 'test'.ss) and exit
|
||||
-l logdir -- specify log directory (default is 'logdir')
|
||||
|
||||
Specify test as 'test' or 'test.exe' or 'test.ralf'.
|
||||
All multiprocessing tests *must* be specified simply as 'mp01', etc.
|
||||
"
|
||||
|
||||
# export everything
|
||||
set -a
|
||||
|
||||
# log an error to stderr
|
||||
prerr()
|
||||
{
|
||||
echo "$*" >&2
|
||||
}
|
||||
|
||||
fatal() {
|
||||
[ "$1" ] && prerr $*
|
||||
prerr "$USAGE"
|
||||
exit 1
|
||||
}
|
||||
|
||||
warn() {
|
||||
[ "$1" ] && prerr $*
|
||||
}
|
||||
|
||||
# print args, 1 per line
|
||||
ml_echo()
|
||||
{
|
||||
for l
|
||||
do
|
||||
echo "$l"
|
||||
done
|
||||
}
|
||||
|
||||
# run at normal and signalled exit
|
||||
test_exit()
|
||||
{
|
||||
exit_code=$1
|
||||
|
||||
rm -f ${statfile}* ${scriptfile}* ${logfile}.tmp*
|
||||
[ "$sim_pid" ] && kill -9 $sim_pid
|
||||
|
||||
exit $exit_code
|
||||
}
|
||||
|
||||
#
|
||||
# process the options
|
||||
#
|
||||
# defaults for getopt vars
|
||||
#
|
||||
# max_run_time is defaulted to 3 minutes
|
||||
#
|
||||
|
||||
verbose=""
|
||||
extra_options=""
|
||||
script_and_exit=""
|
||||
stdio_setup="yes"
|
||||
run_to_completion="yes"
|
||||
logdir=log
|
||||
update_on_tick="no"
|
||||
max_run_time=$((3 * 60))
|
||||
using_print_buffer="yes"
|
||||
|
||||
while getopts vhr12o:c:sl:t OPT
|
||||
do
|
||||
case "$OPT" in
|
||||
v)
|
||||
verbose="yes";;
|
||||
s)
|
||||
script_and_exit="yes"
|
||||
run_to_completion="no"
|
||||
stdio_setup="no";;
|
||||
l)
|
||||
logdir="$OPTARG";;
|
||||
o)
|
||||
extra_options="$OPTARG";;
|
||||
*)
|
||||
fatal;;
|
||||
esac
|
||||
done
|
||||
|
||||
let $((shiftcount = $OPTIND - 1))
|
||||
shift $shiftcount
|
||||
|
||||
args=$*
|
||||
|
||||
#
|
||||
# Run the tests
|
||||
#
|
||||
|
||||
tests="$args"
|
||||
if [ ! "$tests" ]
|
||||
then
|
||||
set -- `ls -1 *.exe *.ralf 2>/dev/null`
|
||||
tests="$*"
|
||||
fi
|
||||
|
||||
[ -d $logdir ] ||
|
||||
mkdir $logdir || fatal "could not create log directory ($logdir)"
|
||||
|
||||
cpus=1
|
||||
|
||||
# where the tmp files go
|
||||
statfile=/tmp/stats$$
|
||||
scriptfile=/tmp/script$$
|
||||
|
||||
trap "test_exit" 1 2 3 13 14 15
|
||||
|
||||
for tfile in $tests
|
||||
do
|
||||
|
||||
echo $tfile | grep "exe$" >/dev/null
|
||||
if [ $? -eq 0 ] ; then
|
||||
ext=.exe
|
||||
else
|
||||
ext=.ralf
|
||||
fi
|
||||
tname=`basename $tfile ${ext}`
|
||||
TEST_TYPE="single"
|
||||
|
||||
case $tname in
|
||||
capture* | monitor* | termios* | fileio* | pppd*)
|
||||
if [ $run_to_completion = "yes" ]
|
||||
then
|
||||
warn "Skipping $tname; it is interactive"
|
||||
continue
|
||||
fi
|
||||
;;
|
||||
*-node2*)
|
||||
fatal "MP tests not supported"
|
||||
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/${ext}/"`
|
||||
tname=`echo $tname | sed 's/-node.*//'`
|
||||
TEST_TYPE="mp"
|
||||
;;
|
||||
sp39*|sp41*)
|
||||
warn "Skipping $tname; it does not complete long on sis"
|
||||
continue
|
||||
;;
|
||||
minimum*|stackchk*|*fatal*|termio*)
|
||||
warn "Skipping $tname; it locks up or takes a VERY long time to run"
|
||||
continue
|
||||
;;
|
||||
esac
|
||||
|
||||
# Change the title bar to indicate which test we are running
|
||||
# The simulator screen doesn't provide any indication
|
||||
|
||||
logfile=$logdir/$tname
|
||||
infofile=$logfile.info
|
||||
|
||||
rm -f ${statfile}* ${scriptfile}* ${logfile}.tmp*
|
||||
|
||||
date=`date`
|
||||
echo "Starting $tname at $date"
|
||||
|
||||
# Generate a script file to get the work done.
|
||||
# The script file must do the following:
|
||||
#
|
||||
# load the program (programs if MP test)
|
||||
# arrange for capture of output
|
||||
# run the program
|
||||
# produce statistics
|
||||
|
||||
{
|
||||
case $TEST_TYPE in
|
||||
"mp")
|
||||
fatal "MP tests not supported"
|
||||
;;
|
||||
|
||||
# All other tests (single-processor)
|
||||
*)
|
||||
echo "load $tfile"
|
||||
echo "go 0x02000000"
|
||||
echo ""
|
||||
echo "perf"
|
||||
echo "quit"
|
||||
;;
|
||||
esac
|
||||
|
||||
} > ${scriptfile}
|
||||
|
||||
if [ "$script_and_exit" = "yes" ]
|
||||
then
|
||||
mv ${scriptfile} $tname.ss
|
||||
warn "script left in $tname.ss"
|
||||
test_exit 0
|
||||
fi
|
||||
|
||||
# Spin off the simulator in the background
|
||||
@target_alias@-sis $extra_options -c ${scriptfile} >${logfile}.tmp &
|
||||
sim_pid=$!
|
||||
|
||||
# Make sure it won't run forever...
|
||||
{
|
||||
time_run=0
|
||||
while [ $time_run -lt $max_run_time ]
|
||||
do
|
||||
# sleep 1s at a time waiting for job to finish or timer to expire
|
||||
# if job has exited, then we exit, too.
|
||||
sleep 1
|
||||
if kill -0 $sim_pid 2>/dev/null
|
||||
then
|
||||
grep "Memory exception " ${logfile}.tmp >/dev/null
|
||||
if [ $? -eq 0 ] ; then
|
||||
break
|
||||
fi
|
||||
|
||||
time_run=$((time_run + 1))
|
||||
else
|
||||
exit 0
|
||||
fi
|
||||
done
|
||||
|
||||
kill -2 $sim_pid 2>/dev/null
|
||||
{ sleep 5; kill -9 $sim_pid 2>/dev/null; } &
|
||||
} &
|
||||
|
||||
wait $sim_pid
|
||||
status=$?
|
||||
if [ $status -ne 0 ]
|
||||
then
|
||||
ran_too_long="yes"
|
||||
else
|
||||
ran_too_long="no"
|
||||
fi
|
||||
|
||||
sim_pid=""
|
||||
|
||||
# fix up the printf output from the test
|
||||
case $TEST_TYPE in
|
||||
mp)
|
||||
fatal "MP not supported"
|
||||
;;
|
||||
*)
|
||||
output_it=1
|
||||
grep -v "Memory exception " ${logfile}.tmp | \
|
||||
sed -e '1,9d' \
|
||||
-e 's/
|
||||
//' -e '/^$/d' | \
|
||||
while read line
|
||||
do
|
||||
if [ $output_it -eq 1 ] ; then
|
||||
if [ "$line" = "sis> perf" ] ; then
|
||||
output_it=0
|
||||
elif [ "$line" = "sis> quit" ] ; then
|
||||
output_it=0
|
||||
elif [ "$line" = "sis>" ] ; then
|
||||
output_it=0
|
||||
else
|
||||
echo "$line"
|
||||
fi
|
||||
fi
|
||||
done > ${logfile}_1
|
||||
;;
|
||||
esac
|
||||
|
||||
# Create the info files
|
||||
for cpu in $cpus
|
||||
do
|
||||
{
|
||||
echo "$date"
|
||||
echo "Test run on: `uname -n` ( `uname -a` )"
|
||||
|
||||
output_it=0
|
||||
grep -v "Memory exception " ${logfile}.tmp | \
|
||||
sed -e 's/
|
||||
//' | \
|
||||
while read line
|
||||
do
|
||||
if [ $output_it -eq 1 ] ; then
|
||||
if [ "$line" = "sis> quit" ] ; then
|
||||
output_it=0
|
||||
else
|
||||
echo "$line"
|
||||
fi
|
||||
else
|
||||
if [ "$line" = "sis> perf" ] ; then
|
||||
output_it=1
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
if [ "$ran_too_long" = "yes" ]
|
||||
then
|
||||
echo "Test did NOT finish normally; killed after $max_run_time seconds"
|
||||
fi
|
||||
|
||||
echo
|
||||
date;
|
||||
} > ${infofile}_$cpu
|
||||
done
|
||||
|
||||
rm -f ${logfile}.tmp*
|
||||
|
||||
if [ "$cpus" = "1" ]
|
||||
then
|
||||
mv ${infofile}_1 ${infofile}
|
||||
mv ${logfile}_1 ${logfile}
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
test_exit 0
|
||||
|
||||
# Local Variables: ***
|
||||
# mode:ksh ***
|
||||
@@ -1,3 +1,10 @@
|
||||
2011-06-11 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||
|
||||
* Makefile.am, configure.ac: runtest for this BSP obsoleted by
|
||||
rtems-testing/sim-scripts support. Please use those scripts.
|
||||
* tools/.cvsignore, tools/ChangeLog, tools/Makefile.am,
|
||||
tools/configure.ac, tools/runtest.in: Removed.
|
||||
|
||||
2011-04-25 Jennifer Averett <jennifer.averett@OARcorp.com>
|
||||
|
||||
PR 1783/bsps
|
||||
|
||||
@@ -37,10 +37,6 @@ DISTCLEANFILES = include/bspopts.h
|
||||
|
||||
noinst_PROGRAMS =
|
||||
|
||||
# wrapup is the one that actually builds and installs the library
|
||||
# from the individual .rel files built in other directories
|
||||
SUBDIRS = . tools
|
||||
|
||||
include_HEADERS += include/leon.h
|
||||
include_HEADERS += ../../shared/include/coverhd.h
|
||||
|
||||
|
||||
@@ -21,8 +21,6 @@ RTEMS_CHECK_SMP
|
||||
AM_CONDITIONAL(HAS_NETWORKING,test "$HAS_NETWORKING" = "yes")
|
||||
AM_CONDITIONAL(HAS_SMP,[test "$rtems_cv_HAS_SMP" = "yes"])
|
||||
|
||||
RTEMS_CONFIG_BUILD_SUBDIRS(tools)
|
||||
|
||||
## bsp-specific options
|
||||
RTEMS_BSPOPTS_SET([CONSOLE_USE_INTERRUPTS],[*],[0])
|
||||
RTEMS_BSPOPTS_HELP([CONSOLE_USE_INTERRUPTS],
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
aclocal.m4
|
||||
autom4te*.cache
|
||||
config.cache
|
||||
config.log
|
||||
config.status
|
||||
configure
|
||||
Makefile
|
||||
Makefile.in
|
||||
runtest
|
||||
@@ -1,37 +0,0 @@
|
||||
2011-02-25 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: Remove RTEMS_CANONICAL_TARGET_CPU.
|
||||
|
||||
2011-02-02 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: Require autoconf-2.68, automake-1.11.1.
|
||||
|
||||
2008-03-11 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||
|
||||
* runtest.in: Skip all fatal error tests.
|
||||
|
||||
2007-09-04 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||
|
||||
* runtest.in: Add capture to list of interative tests to skip in batch
|
||||
mode.
|
||||
|
||||
2007-05-11 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||
|
||||
* runtest.in: Now works with tsim.
|
||||
|
||||
2007-01-26 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* Makefile.am: Use MKDIR_P instead of mkdir_p.
|
||||
|
||||
2006-12-02 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: New BUG-REPORT address.
|
||||
|
||||
2006-10-17 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: Require autoconf-2.60. Require automake-1.10.
|
||||
|
||||
2006-01-09 Ralf Corsepius <ralf.corsepius@rtems.org>
|
||||
|
||||
* Makefile.am, runtest.in, configure.ac: Backport from
|
||||
rtems-4-6-branch.
|
||||
@@ -1,26 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
ACLOCAL_AMFLAGS = -I ../../../../../aclocal
|
||||
|
||||
transform =
|
||||
bsptools_bindir = ${exec_prefix}/@RTEMS_BSP@/tests
|
||||
bsptools_bin_SCRIPTS = runtest
|
||||
|
||||
all-local: $(TMPINSTALL_FILES)
|
||||
|
||||
TMPINSTALL_FILES =
|
||||
|
||||
$(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp):
|
||||
@$(MKDIR_P) $(PROJECT_ROOT)/@RTEMS_BSP@/tests
|
||||
@: > $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
|
||||
TMPINSTALL_FILES += $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
|
||||
|
||||
$(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest: runtest $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
|
||||
$(INSTALL_SCRIPT) $< $(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest
|
||||
TMPINSTALL_FILES += $(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest
|
||||
|
||||
CLEANFILES = $(TMPINSTALL_FILES)
|
||||
|
||||
include $(top_srcdir)/../../../../../automake/host.am
|
||||
@@ -1,23 +0,0 @@
|
||||
## Process this file with autoconf to produce a configure script.
|
||||
##
|
||||
## $Id$
|
||||
|
||||
AC_PREREQ([2.68])
|
||||
AC_INIT([rtems-c-src-lib-libbsp-sparc-leon-tools],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
|
||||
AC_CONFIG_SRCDIR([runtest.in])
|
||||
RTEMS_TOP(../../../../../../..)
|
||||
|
||||
AM_INIT_AUTOMAKE([no-define foreign 1.11.1])
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
RTEMS_ENV_RTEMSBSP
|
||||
|
||||
RTEMS_PATH_KSH
|
||||
|
||||
RTEMS_PROJECT_ROOT
|
||||
RTEMS_TOOLPATHS
|
||||
|
||||
# Explicitly list all Makefiles here
|
||||
AC_CONFIG_FILES([Makefile
|
||||
runtest])
|
||||
AC_OUTPUT
|
||||
@@ -1,312 +0,0 @@
|
||||
#!@KSH@ -p
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# Run rtems tests on the hppa simulator
|
||||
# This program generates a simulator script to run each test
|
||||
# Typically the test is then run, although it can be generated
|
||||
# and left as a file using -s
|
||||
#
|
||||
|
||||
# progname=`basename $0`
|
||||
progname=${0##*/} # fast basename hack for ksh, bash
|
||||
|
||||
USAGE=\
|
||||
"usage: $progname [ -opts ] test [ test ... ]
|
||||
-o options -- specify options to be passed to simulator
|
||||
-v -- verbose
|
||||
-s -- generate script file (as 'test'.ss) and exit
|
||||
-l logdir -- specify log directory (default is 'logdir')
|
||||
|
||||
Specify test as 'test' or 'test.exe'.
|
||||
All multiprocessing tests *must* be specified simply as 'mp01', etc.
|
||||
"
|
||||
|
||||
# export everything
|
||||
set -a
|
||||
|
||||
# log an error to stderr
|
||||
prerr()
|
||||
{
|
||||
echo "$*" >&2
|
||||
}
|
||||
|
||||
fatal() {
|
||||
[ "$1" ] && prerr $*
|
||||
prerr "$USAGE"
|
||||
exit 1
|
||||
}
|
||||
|
||||
warn() {
|
||||
[ "$1" ] && prerr $*
|
||||
}
|
||||
|
||||
# print args, 1 per line
|
||||
ml_echo()
|
||||
{
|
||||
for l
|
||||
do
|
||||
echo "$l"
|
||||
done
|
||||
}
|
||||
|
||||
# run at normal and signalled exit
|
||||
test_exit()
|
||||
{
|
||||
exit_code=$1
|
||||
|
||||
rm -f ${statfile}* ${scriptfile}* ${logfile}.tmp*
|
||||
[ "$sim_pid" ] && kill -9 $sim_pid
|
||||
|
||||
exit $exit_code
|
||||
}
|
||||
|
||||
#
|
||||
# process the options
|
||||
#
|
||||
# defaults for getopt vars
|
||||
#
|
||||
# max_run_time is defaulted to 5 minutes
|
||||
#
|
||||
|
||||
verbose=""
|
||||
extra_options=""
|
||||
script_and_exit=""
|
||||
stdio_setup="yes"
|
||||
run_to_completion="yes"
|
||||
logdir=log
|
||||
update_on_tick="no"
|
||||
max_run_time=$((5 * 60))
|
||||
using_print_buffer="yes"
|
||||
|
||||
while getopts vhr12o:c:sl:t OPT
|
||||
do
|
||||
case "$OPT" in
|
||||
v)
|
||||
verbose="yes";;
|
||||
s)
|
||||
script_and_exit="yes"
|
||||
run_to_completion="no"
|
||||
stdio_setup="no";;
|
||||
l)
|
||||
logdir="$OPTARG";;
|
||||
o)
|
||||
extra_options="$OPTARG";;
|
||||
*)
|
||||
fatal;;
|
||||
esac
|
||||
done
|
||||
|
||||
let $((shiftcount = $OPTIND - 1))
|
||||
shift $shiftcount
|
||||
|
||||
args=$*
|
||||
|
||||
#
|
||||
# Run the tests
|
||||
#
|
||||
|
||||
tests="$args"
|
||||
if [ ! "$tests" ]
|
||||
then
|
||||
set -- `echo *.exe`
|
||||
tests="$*"
|
||||
fi
|
||||
|
||||
[ -d $logdir ] ||
|
||||
mkdir $logdir || fatal "could not create log directory ($logdir)"
|
||||
|
||||
cpus=1
|
||||
|
||||
# where the tmp files go
|
||||
statfile=/tmp/stats$$
|
||||
scriptfile=/tmp/script$$
|
||||
|
||||
trap "test_exit" 1 2 3 13 14 15
|
||||
|
||||
for tfile in $tests
|
||||
do
|
||||
|
||||
tname=`basename $tfile .exe`
|
||||
TEST_TYPE="single"
|
||||
|
||||
case $tname in
|
||||
capture* | monitor* | termios* | fileio* | pppd*)
|
||||
if [ $run_to_completion = "yes" ]
|
||||
then
|
||||
warn "Skipping $tname; it is interactive"
|
||||
continue
|
||||
fi
|
||||
;;
|
||||
*-node2*)
|
||||
fatal "MP tests not supported"
|
||||
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"
|
||||
;;
|
||||
minimum*|stackchk*|*fatal*|termio*)
|
||||
warn "Skipping $tname; it locks up or takes a VERY long time to run"
|
||||
continue
|
||||
;;
|
||||
esac
|
||||
|
||||
# Change the title bar to indicate which test we are running
|
||||
# The simulator screen doesn't provide any indication
|
||||
|
||||
logfile=$logdir/$tname
|
||||
infofile=$logfile.info
|
||||
|
||||
rm -f ${statfile}* ${scriptfile}* ${logfile}.tmp*
|
||||
|
||||
date=`date`
|
||||
echo "Starting $tname at $date"
|
||||
|
||||
# Generate a script file to get the work done.
|
||||
# The script file must do the following:
|
||||
#
|
||||
# load the program (programs if MP test)
|
||||
# arrange for capture of output
|
||||
# run the program
|
||||
# produce statistics
|
||||
|
||||
{
|
||||
case $TEST_TYPE in
|
||||
"mp")
|
||||
fatal "MP tests not supported"
|
||||
;;
|
||||
|
||||
# All other tests (single-processor)
|
||||
*)
|
||||
echo "load $tfile"
|
||||
echo "go 0x40000000"
|
||||
echo ""
|
||||
echo "perf"
|
||||
echo "quit"
|
||||
;;
|
||||
esac
|
||||
|
||||
} > ${scriptfile}
|
||||
|
||||
if [ "$script_and_exit" = "yes" ]
|
||||
then
|
||||
mv ${scriptfile} $tname.ss
|
||||
warn "script left in $tname.ss"
|
||||
test_exit 0
|
||||
fi
|
||||
|
||||
# Spin off the simulator in the background
|
||||
tsim-leon $extra_options -c ${scriptfile} >${logfile}.tmp &
|
||||
sim_pid=$!
|
||||
|
||||
# Make sure it won't run forever...
|
||||
{
|
||||
time_run=0
|
||||
while [ $time_run -lt $max_run_time ]
|
||||
do
|
||||
# sleep 10s at a time waiting for job to finish or timer to expire
|
||||
# if job has exited, then we exit, too.
|
||||
sleep 10
|
||||
if kill -0 $sim_pid 2>/dev/null
|
||||
then
|
||||
time_run=$((time_run + 10))
|
||||
else
|
||||
exit 0
|
||||
fi
|
||||
done
|
||||
|
||||
kill -2 $sim_pid 2>/dev/null
|
||||
{ sleep 5; kill -9 $sim_pid 2>/dev/null; } &
|
||||
} &
|
||||
|
||||
wait $sim_pid
|
||||
status=$?
|
||||
if [ $status -ne 0 ]
|
||||
then
|
||||
ran_too_long="yes"
|
||||
else
|
||||
ran_too_long="no"
|
||||
fi
|
||||
|
||||
sim_pid=""
|
||||
|
||||
# fix up the printf output from the test
|
||||
case $TEST_TYPE in
|
||||
mp)
|
||||
fatal "MP not supported"
|
||||
;;
|
||||
*)
|
||||
output_it=1
|
||||
sed -e '1,19d' \
|
||||
-e 's/
|
||||
//' -e '/^$/d' < ${logfile}.tmp |
|
||||
while read line
|
||||
do
|
||||
if [ $output_it -eq 1 ] ; then
|
||||
if [ "$line" = "tsim> perf" ] ; then
|
||||
output_it=0
|
||||
elif [ "$line" = "tsim> quit" ] ; then
|
||||
output_it=0
|
||||
elif [ "$line" = "tsim>" ] ; then
|
||||
output_it=0
|
||||
else
|
||||
echo "$line"
|
||||
fi
|
||||
fi
|
||||
done > ${logfile}_1
|
||||
;;
|
||||
esac
|
||||
|
||||
# Create the info files
|
||||
for cpu in $cpus
|
||||
do
|
||||
{
|
||||
echo "$date"
|
||||
echo "Test run on: `uname -n` ( `uname -a` )"
|
||||
|
||||
output_it=0
|
||||
sed -e 's/
|
||||
//' < ${logfile}.tmp |
|
||||
while read line
|
||||
do
|
||||
if [ $output_it -eq 1 ] ; then
|
||||
if [ "$line" = "tsim> quit" ] ; then
|
||||
output_it=0
|
||||
else
|
||||
echo "$line"
|
||||
fi
|
||||
else
|
||||
if [ "$line" = "tsim> perf" ] ; then
|
||||
output_it=1
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
if [ "$ran_too_long" = "yes" ]
|
||||
then
|
||||
echo "Test did NOT finish normally; killed after $max_run_time seconds"
|
||||
fi
|
||||
|
||||
echo
|
||||
date;
|
||||
} > ${infofile}_$cpu
|
||||
done
|
||||
|
||||
rm -f ${logfile}.tmp*
|
||||
|
||||
if [ "$cpus" = "1" ]
|
||||
then
|
||||
mv ${infofile}_1 ${infofile}
|
||||
mv ${logfile}_1 ${logfile}
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
test_exit 0
|
||||
|
||||
# Local Variables: ***
|
||||
# mode:ksh ***
|
||||
@@ -1,3 +1,10 @@
|
||||
2011-06-11 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||
|
||||
* Makefile.am, configure.ac: runtest for this BSP obsoleted by
|
||||
rtems-testing/sim-scripts support. Please use those scripts.
|
||||
* tools/.cvsignore, tools/ChangeLog, tools/Makefile.am,
|
||||
tools/configure.ac, tools/runtest.in: Removed.
|
||||
|
||||
2011-04-25 Jennifer Averett <jennifer.averett@OARcorp.com>
|
||||
|
||||
PR 1783/bsps
|
||||
|
||||
@@ -20,10 +20,6 @@ DISTCLEANFILES = include/bspopts.h
|
||||
|
||||
noinst_PROGRAMS =
|
||||
|
||||
# wrapup is the one that actually builds and installs the library
|
||||
# from the individual .rel files built in other directories
|
||||
SUBDIRS = . tools
|
||||
|
||||
include_HEADERS += include/leon.h
|
||||
include_HEADERS += ../../shared/include/coverhd.h
|
||||
|
||||
|
||||
@@ -21,8 +21,6 @@ RTEMS_CHECK_SMP
|
||||
AM_CONDITIONAL(HAS_NETWORKING,test "$HAS_NETWORKING" = "yes")
|
||||
AM_CONDITIONAL(HAS_SMP,[test "$rtems_cv_HAS_SMP" = "yes"])
|
||||
|
||||
RTEMS_CONFIG_BUILD_SUBDIRS(tools)
|
||||
|
||||
## bsp-specific options
|
||||
RTEMS_BSPOPTS_SET([CONSOLE_USE_INTERRUPTS],[*],[0])
|
||||
RTEMS_BSPOPTS_HELP([CONSOLE_USE_INTERRUPTS],
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
aclocal.m4
|
||||
autom4te*.cache
|
||||
config.cache
|
||||
config.log
|
||||
config.status
|
||||
configure
|
||||
Makefile
|
||||
Makefile.in
|
||||
runtest
|
||||
@@ -1,37 +0,0 @@
|
||||
2011-02-25 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: Remove RTEMS_CANONICAL_TARGET_CPU.
|
||||
|
||||
2011-02-02 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: Require autoconf-2.68, automake-1.11.1.
|
||||
|
||||
2008-03-11 Joel Sherrill <joel.sherrill@oarcorp.com>
|
||||
|
||||
* runtest.in: Skip all fatal error tests.
|
||||
|
||||
2007-09-04 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||
|
||||
* runtest.in: Add capture to list of interative tests to skip in batch
|
||||
mode.
|
||||
|
||||
2007-05-11 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||
|
||||
* runtest.in: Now tries to work with tsim.
|
||||
|
||||
2007-01-26 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* Makefile.am: Use MKDIR_P instead of mkdir_p.
|
||||
|
||||
2006-12-02 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: New BUG-REPORT address.
|
||||
|
||||
2006-10-17 Ralf Corsépius <ralf.corsepius@rtems.org>
|
||||
|
||||
* configure.ac: Require autoconf-2.60. Require automake-1.10.
|
||||
|
||||
2006-01-09 Ralf Corsepius <ralf.corsepius@rtems.org>
|
||||
|
||||
* Makefile.am, runtest.in, configure.ac: Backport from
|
||||
rtems-4-6-branch.
|
||||
@@ -1,26 +0,0 @@
|
||||
##
|
||||
## $Id$
|
||||
##
|
||||
|
||||
ACLOCAL_AMFLAGS = -I ../../../../../aclocal
|
||||
|
||||
transform =
|
||||
bsptools_bindir = ${exec_prefix}/@RTEMS_BSP@/tests
|
||||
bsptools_bin_SCRIPTS = runtest
|
||||
|
||||
all-local: $(TMPINSTALL_FILES)
|
||||
|
||||
TMPINSTALL_FILES =
|
||||
|
||||
$(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp):
|
||||
@$(MKDIR_P) $(PROJECT_ROOT)/@RTEMS_BSP@/tests
|
||||
@: > $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
|
||||
TMPINSTALL_FILES += $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
|
||||
|
||||
$(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest: runtest $(PROJECT_ROOT)/@RTEMS_BSP@/tests/$(dirstamp)
|
||||
$(INSTALL_SCRIPT) $< $(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest
|
||||
TMPINSTALL_FILES += $(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest
|
||||
|
||||
CLEANFILES = $(TMPINSTALL_FILES)
|
||||
|
||||
include $(top_srcdir)/../../../../../automake/host.am
|
||||
@@ -1,23 +0,0 @@
|
||||
## Process this file with autoconf to produce a configure script.
|
||||
##
|
||||
## $Id$
|
||||
|
||||
AC_PREREQ([2.68])
|
||||
AC_INIT([rtems-c-src-lib-libbsp-sparc-leon-tools],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
|
||||
AC_CONFIG_SRCDIR([runtest.in])
|
||||
RTEMS_TOP(../../../../../../..)
|
||||
|
||||
AM_INIT_AUTOMAKE([no-define foreign 1.11.1])
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
RTEMS_ENV_RTEMSBSP
|
||||
|
||||
RTEMS_PATH_KSH
|
||||
|
||||
RTEMS_PROJECT_ROOT
|
||||
RTEMS_TOOLPATHS
|
||||
|
||||
# Explicitly list all Makefiles here
|
||||
AC_CONFIG_FILES([Makefile
|
||||
runtest])
|
||||
AC_OUTPUT
|
||||
@@ -1,312 +0,0 @@
|
||||
#!@KSH@ -p
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# Run rtems tests on the hppa simulator
|
||||
# This program generates a simulator script to run each test
|
||||
# Typically the test is then run, although it can be generated
|
||||
# and left as a file using -s
|
||||
#
|
||||
|
||||
# progname=`basename $0`
|
||||
progname=${0##*/} # fast basename hack for ksh, bash
|
||||
|
||||
USAGE=\
|
||||
"usage: $progname [ -opts ] test [ test ... ]
|
||||
-o options -- specify options to be passed to simulator
|
||||
-v -- verbose
|
||||
-s -- generate script file (as 'test'.ss) and exit
|
||||
-l logdir -- specify log directory (default is 'logdir')
|
||||
|
||||
Specify test as 'test' or 'test.exe'.
|
||||
All multiprocessing tests *must* be specified simply as 'mp01', etc.
|
||||
"
|
||||
|
||||
# export everything
|
||||
set -a
|
||||
|
||||
# log an error to stderr
|
||||
prerr()
|
||||
{
|
||||
echo "$*" >&2
|
||||
}
|
||||
|
||||
fatal() {
|
||||
[ "$1" ] && prerr $*
|
||||
prerr "$USAGE"
|
||||
exit 1
|
||||
}
|
||||
|
||||
warn() {
|
||||
[ "$1" ] && prerr $*
|
||||
}
|
||||
|
||||
# print args, 1 per line
|
||||
ml_echo()
|
||||
{
|
||||
for l
|
||||
do
|
||||
echo "$l"
|
||||
done
|
||||
}
|
||||
|
||||
# run at normal and signalled exit
|
||||
test_exit()
|
||||
{
|
||||
exit_code=$1
|
||||
|
||||
rm -f ${statfile}* ${scriptfile}* ${logfile}.tmp*
|
||||
[ "$sim_pid" ] && kill -9 $sim_pid
|
||||
|
||||
exit $exit_code
|
||||
}
|
||||
|
||||
#
|
||||
# process the options
|
||||
#
|
||||
# defaults for getopt vars
|
||||
#
|
||||
# max_run_time is defaulted to 5 minutes
|
||||
#
|
||||
|
||||
verbose=""
|
||||
extra_options=""
|
||||
script_and_exit=""
|
||||
stdio_setup="yes"
|
||||
run_to_completion="yes"
|
||||
logdir=log
|
||||
update_on_tick="no"
|
||||
max_run_time=$((5 * 60))
|
||||
using_print_buffer="yes"
|
||||
|
||||
while getopts vhr12o:c:sl:t OPT
|
||||
do
|
||||
case "$OPT" in
|
||||
v)
|
||||
verbose="yes";;
|
||||
s)
|
||||
script_and_exit="yes"
|
||||
run_to_completion="no"
|
||||
stdio_setup="no";;
|
||||
l)
|
||||
logdir="$OPTARG";;
|
||||
o)
|
||||
extra_options="$OPTARG";;
|
||||
*)
|
||||
fatal;;
|
||||
esac
|
||||
done
|
||||
|
||||
let $((shiftcount = $OPTIND - 1))
|
||||
shift $shiftcount
|
||||
|
||||
args=$*
|
||||
|
||||
#
|
||||
# Run the tests
|
||||
#
|
||||
|
||||
tests="$args"
|
||||
if [ ! "$tests" ]
|
||||
then
|
||||
set -- `echo *.exe`
|
||||
tests="$*"
|
||||
fi
|
||||
|
||||
[ -d $logdir ] ||
|
||||
mkdir $logdir || fatal "could not create log directory ($logdir)"
|
||||
|
||||
cpus=1
|
||||
|
||||
# where the tmp files go
|
||||
statfile=/tmp/stats$$
|
||||
scriptfile=/tmp/script$$
|
||||
|
||||
trap "test_exit" 1 2 3 13 14 15
|
||||
|
||||
for tfile in $tests
|
||||
do
|
||||
|
||||
tname=`basename $tfile .exe`
|
||||
TEST_TYPE="single"
|
||||
|
||||
case $tname in
|
||||
capture* | monitor* | termios* | fileio* | pppd*)
|
||||
if [ $run_to_completion = "yes" ]
|
||||
then
|
||||
warn "Skipping $tname; it is interactive"
|
||||
continue
|
||||
fi
|
||||
;;
|
||||
*-node2*)
|
||||
fatal "MP tests not supported"
|
||||
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"
|
||||
;;
|
||||
minimum*|stackchk*|*fatal*|termio*)
|
||||
warn "Skipping $tname; it locks up or takes a VERY long time to run"
|
||||
continue
|
||||
;;
|
||||
esac
|
||||
|
||||
# Change the title bar to indicate which test we are running
|
||||
# The simulator screen doesn't provide any indication
|
||||
|
||||
logfile=$logdir/$tname
|
||||
infofile=$logfile.info
|
||||
|
||||
rm -f ${statfile}* ${scriptfile}* ${logfile}.tmp*
|
||||
|
||||
date=`date`
|
||||
echo "Starting $tname at $date"
|
||||
|
||||
# Generate a script file to get the work done.
|
||||
# The script file must do the following:
|
||||
#
|
||||
# load the program (programs if MP test)
|
||||
# arrange for capture of output
|
||||
# run the program
|
||||
# produce statistics
|
||||
|
||||
{
|
||||
case $TEST_TYPE in
|
||||
"mp")
|
||||
fatal "MP tests not supported"
|
||||
;;
|
||||
|
||||
# All other tests (single-processor)
|
||||
*)
|
||||
echo "load $tfile"
|
||||
echo "go 0x40000000"
|
||||
echo ""
|
||||
echo "perf"
|
||||
echo "quit"
|
||||
;;
|
||||
esac
|
||||
|
||||
} > ${scriptfile}
|
||||
|
||||
if [ "$script_and_exit" = "yes" ]
|
||||
then
|
||||
mv ${scriptfile} $tname.ss
|
||||
warn "script left in $tname.ss"
|
||||
test_exit 0
|
||||
fi
|
||||
|
||||
# Spin off the simulator in the background
|
||||
tsim-leon3 $extra_options -c ${scriptfile} >${logfile}.tmp &
|
||||
sim_pid=$!
|
||||
|
||||
# Make sure it won't run forever...
|
||||
{
|
||||
time_run=0
|
||||
while [ $time_run -lt $max_run_time ]
|
||||
do
|
||||
# sleep 10s at a time waiting for job to finish or timer to expire
|
||||
# if job has exited, then we exit, too.
|
||||
sleep 10
|
||||
if kill -0 $sim_pid 2>/dev/null
|
||||
then
|
||||
time_run=$((time_run + 10))
|
||||
else
|
||||
exit 0
|
||||
fi
|
||||
done
|
||||
|
||||
kill -2 $sim_pid 2>/dev/null
|
||||
{ sleep 5; kill -9 $sim_pid 2>/dev/null; } &
|
||||
} &
|
||||
|
||||
wait $sim_pid
|
||||
status=$?
|
||||
if [ $status -ne 0 ]
|
||||
then
|
||||
ran_too_long="yes"
|
||||
else
|
||||
ran_too_long="no"
|
||||
fi
|
||||
|
||||
sim_pid=""
|
||||
|
||||
# fix up the printf output from the test
|
||||
case $TEST_TYPE in
|
||||
mp)
|
||||
fatal "MP not supported"
|
||||
;;
|
||||
*)
|
||||
output_it=1
|
||||
sed -e '1,19d' \
|
||||
-e 's/
|
||||
//' -e '/^$/d' < ${logfile}.tmp |
|
||||
while read line
|
||||
do
|
||||
if [ $output_it -eq 1 ] ; then
|
||||
if [ "$line" = "tsim> perf" ] ; then
|
||||
output_it=0
|
||||
elif [ "$line" = "tsim> quit" ] ; then
|
||||
output_it=0
|
||||
elif [ "$line" = "tsim>" ] ; then
|
||||
output_it=0
|
||||
else
|
||||
echo "$line"
|
||||
fi
|
||||
fi
|
||||
done > ${logfile}_1
|
||||
;;
|
||||
esac
|
||||
|
||||
# Create the info files
|
||||
for cpu in $cpus
|
||||
do
|
||||
{
|
||||
echo "$date"
|
||||
echo "Test run on: `uname -n` ( `uname -a` )"
|
||||
|
||||
output_it=0
|
||||
sed -e 's/
|
||||
//' < ${logfile}.tmp |
|
||||
while read line
|
||||
do
|
||||
if [ $output_it -eq 1 ] ; then
|
||||
if [ "$line" = "tsim> quit" ] ; then
|
||||
output_it=0
|
||||
else
|
||||
echo "$line"
|
||||
fi
|
||||
else
|
||||
if [ "$line" = "tsim> perf" ] ; then
|
||||
output_it=1
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
if [ "$ran_too_long" = "yes" ]
|
||||
then
|
||||
echo "Test did NOT finish normally; killed after $max_run_time seconds"
|
||||
fi
|
||||
|
||||
echo
|
||||
date;
|
||||
} > ${infofile}_$cpu
|
||||
done
|
||||
|
||||
rm -f ${logfile}.tmp*
|
||||
|
||||
if [ "$cpus" = "1" ]
|
||||
then
|
||||
mv ${infofile}_1 ${infofile}
|
||||
mv ${logfile}_1 ${logfile}
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
test_exit 0
|
||||
|
||||
# Local Variables: ***
|
||||
# mode:ksh ***
|
||||
Reference in New Issue
Block a user