From bb2e24b1f8513308b92c3756839ef170dd870c86 Mon Sep 17 00:00:00 2001 From: Ralf Corsepius Date: Thu, 21 Aug 2003 12:54:12 +0000 Subject: 2003-08-21 Ralf Corsepius * ChangeLog: New. * .cvsignore: New. * configure.ac: New. * runtest: Removed. * runtest.in: New (Copied from runtest). * Makefile.am: Reflect changes above. Use @RTEMS_BSP@ instead of simsh4. --- c/src/lib/libbsp/sh/simsh4/tools/.cvsignore | 15 ++ c/src/lib/libbsp/sh/simsh4/tools/Makefile.am | 16 +- c/src/lib/libbsp/sh/simsh4/tools/configure.ac | 24 +++ c/src/lib/libbsp/sh/simsh4/tools/runtest | 231 -------------------------- c/src/lib/libbsp/sh/simsh4/tools/runtest.in | 231 ++++++++++++++++++++++++++ 5 files changed, 279 insertions(+), 238 deletions(-) create mode 100644 c/src/lib/libbsp/sh/simsh4/tools/.cvsignore create mode 100644 c/src/lib/libbsp/sh/simsh4/tools/configure.ac delete mode 100644 c/src/lib/libbsp/sh/simsh4/tools/runtest create mode 100644 c/src/lib/libbsp/sh/simsh4/tools/runtest.in diff --git a/c/src/lib/libbsp/sh/simsh4/tools/.cvsignore b/c/src/lib/libbsp/sh/simsh4/tools/.cvsignore new file mode 100644 index 0000000000..43dd2ee260 --- /dev/null +++ b/c/src/lib/libbsp/sh/simsh4/tools/.cvsignore @@ -0,0 +1,15 @@ +aclocal.m4 +autom4te*.cache +config.cache +config.guess +config.log +config.status +config.sub +configure +depcomp +install-sh +Makefile +Makefile.in +missing +mkinstalldirs +runtest diff --git a/c/src/lib/libbsp/sh/simsh4/tools/Makefile.am b/c/src/lib/libbsp/sh/simsh4/tools/Makefile.am index 98ddf4b1aa..b3b00c8f7f 100644 --- a/c/src/lib/libbsp/sh/simsh4/tools/Makefile.am +++ b/c/src/lib/libbsp/sh/simsh4/tools/Makefile.am @@ -2,19 +2,21 @@ ## $Id$ ## -ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal +ACLOCAL_AMFLAGS = -I ../../../../../aclocal -noinst_SCRIPTS = runtest +transform = +bsptools_bindir = ${exec_prefix}/@RTEMS_BSP@/tests +bsptools_bin_SCRIPTS = runtest -TMPINSTALL_FILES += $(PROJECT_ROOT)/simsh4/tests \ - $(PROJECT_ROOT)/simsh4/tests/runtest +TMPINSTALL_FILES = $(PROJECT_ROOT)/@RTEMS_BSP@/tests \ + $(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest -$(PROJECT_ROOT)/simsh4/tests: +$(PROJECT_ROOT)/@RTEMS_BSP@/tests: $(mkinstalldirs) $@ -$(PROJECT_ROOT)/simsh4/tests/runtest: runtest +$(PROJECT_ROOT)/@RTEMS_BSP@/tests/runtest: runtest $(INSTALL_SCRIPT) $< $@ all-local: $(TMPINSTALL_FILES) -include $(top_srcdir)/../../../../automake/host.am +include $(top_srcdir)/../../../../../automake/host.am diff --git a/c/src/lib/libbsp/sh/simsh4/tools/configure.ac b/c/src/lib/libbsp/sh/simsh4/tools/configure.ac new file mode 100644 index 0000000000..a6966687ba --- /dev/null +++ b/c/src/lib/libbsp/sh/simsh4/tools/configure.ac @@ -0,0 +1,24 @@ +## Process this file with autoconf to produce a configure script. +## +## $Id$ + +AC_PREREQ(2.57) +AC_INIT([rtems-c-src-lib-libbsp-sh-simsh4-tools],[_RTEMS_VERSION],[rtems-bugs@rtems.com]) +AC_CONFIG_SRCDIR([runtest.in]) +RTEMS_TOP(../../../../../../..) + +# FIXME: This should not be here +AC_ARG_VAR([RTEMS_BSP],[]) +RTEMS_CANONICAL_TARGET_CPU + +AM_INIT_AUTOMAKE([no-define foreign 1.7.6]) +AM_MAINTAINER_MODE + +RTEMS_PROJECT_ROOT +RTEMS_TOOLPATHS + +# Explicitly list all Makefiles here +AC_CONFIG_FILES([Makefile +runtest +]) +AC_OUTPUT diff --git a/c/src/lib/libbsp/sh/simsh4/tools/runtest b/c/src/lib/libbsp/sh/simsh4/tools/runtest deleted file mode 100644 index 735af9eb5c..0000000000 --- a/c/src/lib/libbsp/sh/simsh4/tools/runtest +++ /dev/null @@ -1,231 +0,0 @@ -#! /bin/sh -p -# -# Run rtems tests on the Motorola MCF5206eLITE Coldfire Evaluation board -# using gdb configured with P&E Micro Background Debug Mode debugging -# interface. -# -# This program generates a gdb script to run each test, intercept -# serial port output and put log into output file. -# -# Author: Victor V. Vengerov -# Copyright (C) 2000 OKTET Ltd., St.-Petersburg, Russia -# -# Partially based on runtest script for powerpc psim. -# -# COPYRIGHT (c) 1989-1999. -# On-Line Applications Research Corporation (OAR). -# -# The license and distribution terms for this file may be -# found in found in the file LICENSE in this distribution or at -# http://www.OARcorp.com/rtems/license.html. -# -# @(#) $Id$ -# - -# progname=`basename $0` -progname=${0##*/} # fast basename hack for ksh, bash - -USAGE=\ -"usage: $progname [ -opts ] test [ test ... ] - -r runname -- specify name of run program to be used - -v -- verbose output - -d -- don't remove temporary files (for debugging only) - -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 $* -} - -# run at normal and signalled exit -test_exit() -{ - exit_code=$1 - - rm -f ${logfile}.tmp* - [ "$run_pid" ] && kill -9 $run_pid - - exit $exit_code -} - -# -# process the options -# -# defaults for getopt vars -# -# max_run_time is defaulted to 5 minutes -# - -verbose="" -runprog=sh-rtemself-run -logdir=log -max_run_time=$((10 * 60)) -#sizeof_ram=$((1 * 1024 * 1024)) -debugging="no" -#console_mode=0 - -while getopts vdips:r:b:l: OPT -do - case "$OPT" in - v) - verbose="yes";; - d) - debugging="yes";; - l) - logdir="$OPTARG";; - r) - runprog="$OPTARG";; -# p) -# console_mode=1;; -# i) -# console_mode=2;; - *) - 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)" - -# where the tmp files go -trap "test_exit" 1 2 3 13 14 15 - -for tfile in $tests -do - - tname=`basename $tfile .exe` - cpus="1" - TEST_TYPE="single" - - case "$tname" in - # size is no longer interactive. - monitor* | termios* | fileio*) - warn "Skipping $tname; it is interactive" - continue - ;; - *-node2*) - warn "Skipping $tname; 'runtest' runs both nodes when for *-node1" - continue - ;; - *-node1*) - warn "Running both nodes associated with $tname" - tname=`echo $tname | sed 's/-node.*//'` - TEST_TYPE="mp" - ;; - minimum*|spfatal*) - continue - ;; - esac - - if [ "$TEST_TYPE" = "mp" ] ; then - fatal "MP tests not supported for this board" - fi - - if [ $TEST_TYPE = "single" ] ; then - logfile=$logdir/${tname} - infofile=${logfile}.info -# scriptfile=${logfile}.ss -# runlogfile=${logfile}.run - - rm -f ${logfile}.tmp* - - date=`date` - echo "Starting $tname at $date" - - ${runprog} "${tfile}" > "${logfile}" 2>&1 & - run_pid=$! - { - time_run=0 - while [ $time_run -lt $max_run_time ] ; do - sleep 10s - if kill -0 $run_pid 2> /dev/null ; then - time_run=$((time_run+10)) ; - else - exit 0 - fi - done - kill -2 $run_pid 2> /dev/null - { - sleep 5s ; - if kill -0 $run_pid 2> /dev/null ; then - kill -9 $run_pid 2> /dev/null ; - fi - } & - } & - wait $run_pid - run_status=$? - if [ $run_status -ge 128 ] ; then - ran_too_long="yes" ; - else - ran_too_long="no" - fi - if [ $run_status -ne 0 ] ; then - test_failed="yes" ; - else - test_failed="no" - fi - run_pid="" - fi - - # Create the info files - { - echo "$date" - echo "Test run on: `uname -n`" - echo "Host Information:" - echo `uname -a` - echo - echo "run: `type -path ${runprog}`" - - cat ${logfile} - - if [ "$test_failed" = "yes" ] ; then - echo -e "\\n\\nTest did not finish normally" - if [ "$ran_too_long" = "yes" ] ; then - echo "Test killed after $max_run_time seconds" - fi - fi - - echo - date; - } > ${infofile} -# if [ "${debugging}" = "no" ] ; then -# rm -f ${runlogfile} -# fi -done - -echo "Tests completed at " `date` -test_exit 0 diff --git a/c/src/lib/libbsp/sh/simsh4/tools/runtest.in b/c/src/lib/libbsp/sh/simsh4/tools/runtest.in new file mode 100644 index 0000000000..68dec00b91 --- /dev/null +++ b/c/src/lib/libbsp/sh/simsh4/tools/runtest.in @@ -0,0 +1,231 @@ +#!@KSH@ -p +# +# Run rtems tests on the Motorola MCF5206eLITE Coldfire Evaluation board +# using gdb configured with P&E Micro Background Debug Mode debugging +# interface. +# +# This program generates a gdb script to run each test, intercept +# serial port output and put log into output file. +# +# Author: Victor V. Vengerov +# Copyright (C) 2000 OKTET Ltd., St.-Petersburg, Russia +# +# Partially based on runtest script for powerpc psim. +# +# COPYRIGHT (c) 1989-1999. +# On-Line Applications Research Corporation (OAR). +# +# The license and distribution terms for this file may be +# found in found in the file LICENSE in this distribution or at +# http://www.OARcorp.com/rtems/license.html. +# +# @(#) $Id$ +# + +# progname=`basename $0` +progname=${0##*/} # fast basename hack for ksh, bash + +USAGE=\ +"usage: $progname [ -opts ] test [ test ... ] + -r runname -- specify name of run program to be used + -v -- verbose output + -d -- don't remove temporary files (for debugging only) + -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 $* +} + +# run at normal and signalled exit +test_exit() +{ + exit_code=$1 + + rm -f ${logfile}.tmp* + [ "$run_pid" ] && kill -9 $run_pid + + exit $exit_code +} + +# +# process the options +# +# defaults for getopt vars +# +# max_run_time is defaulted to 5 minutes +# + +verbose="" +runprog=sh-rtemself-run +logdir=log +max_run_time=$((10 * 60)) +#sizeof_ram=$((1 * 1024 * 1024)) +debugging="no" +#console_mode=0 + +while getopts vdips:r:b:l: OPT +do + case "$OPT" in + v) + verbose="yes";; + d) + debugging="yes";; + l) + logdir="$OPTARG";; + r) + runprog="$OPTARG";; +# p) +# console_mode=1;; +# i) +# console_mode=2;; + *) + 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)" + +# where the tmp files go +trap "test_exit" 1 2 3 13 14 15 + +for tfile in $tests +do + + tname=`basename $tfile .exe` + cpus="1" + TEST_TYPE="single" + + case "$tname" in + # size is no longer interactive. + monitor* | termios* | fileio*) + warn "Skipping $tname; it is interactive" + continue + ;; + *-node2*) + warn "Skipping $tname; 'runtest' runs both nodes when for *-node1" + continue + ;; + *-node1*) + warn "Running both nodes associated with $tname" + tname=`echo $tname | sed 's/-node.*//'` + TEST_TYPE="mp" + ;; + minimum*|spfatal*) + continue + ;; + esac + + if [ "$TEST_TYPE" = "mp" ] ; then + fatal "MP tests not supported for this board" + fi + + if [ $TEST_TYPE = "single" ] ; then + logfile=$logdir/${tname} + infofile=${logfile}.info +# scriptfile=${logfile}.ss +# runlogfile=${logfile}.run + + rm -f ${logfile}.tmp* + + date=`date` + echo "Starting $tname at $date" + + ${runprog} "${tfile}" > "${logfile}" 2>&1 & + run_pid=$! + { + time_run=0 + while [ $time_run -lt $max_run_time ] ; do + sleep 10s + if kill -0 $run_pid 2> /dev/null ; then + time_run=$((time_run+10)) ; + else + exit 0 + fi + done + kill -2 $run_pid 2> /dev/null + { + sleep 5s ; + if kill -0 $run_pid 2> /dev/null ; then + kill -9 $run_pid 2> /dev/null ; + fi + } & + } & + wait $run_pid + run_status=$? + if [ $run_status -ge 128 ] ; then + ran_too_long="yes" ; + else + ran_too_long="no" + fi + if [ $run_status -ne 0 ] ; then + test_failed="yes" ; + else + test_failed="no" + fi + run_pid="" + fi + + # Create the info files + { + echo "$date" + echo "Test run on: `uname -n`" + echo "Host Information:" + echo `uname -a` + echo + echo "run: `type -path ${runprog}`" + + cat ${logfile} + + if [ "$test_failed" = "yes" ] ; then + echo -e "\\n\\nTest did not finish normally" + if [ "$ran_too_long" = "yes" ] ; then + echo "Test killed after $max_run_time seconds" + fi + fi + + echo + date; + } > ${infofile} +# if [ "${debugging}" = "no" ] ; then +# rm -f ${runlogfile} +# fi +done + +echo "Tests completed at " `date` +test_exit 0 -- cgit v1.2.3