2005-03-13 18:27:47 +01:00
|
|
|
#!/bin/sh
|
2004-08-09 17:41:59 +02:00
|
|
|
|
2005-03-13 18:27:47 +01:00
|
|
|
SPICE=$1
|
2004-08-09 17:41:59 +02:00
|
|
|
TEST=$2
|
|
|
|
|
|
2010-01-16 23:12:35 +01:00
|
|
|
FILTER="CPU|Dynamic|Note|Circuit|Trying|Reference|Date|Doing|---|v-sweep|time|est|Error|Warning|Data|Index|trans|acan|oise|nalysis|ole|Total|memory|urrent|Got|Added|BSIM|bsim|B4SOI|b4soi|codemodel"
|
2004-08-09 17:41:59 +02:00
|
|
|
|
|
|
|
|
testname=`basename $TEST .cir`
|
|
|
|
|
testdir=`dirname $TEST`
|
2005-03-13 18:27:47 +01:00
|
|
|
|
2005-03-17 22:22:33 +01:00
|
|
|
HOST_TYPE=`uname -srvm`
|
2005-03-13 18:27:47 +01:00
|
|
|
|
|
|
|
|
case $HOST_TYPE in
|
|
|
|
|
MINGW32*)
|
|
|
|
|
$SPICE --batch $testdir/$testname.cir -o $testname.test &&\
|
|
|
|
|
sed -e 's/e-000/e+000/g' $testname.test | sed 's/e-0/e-/g' | sed 's/e+0/e+/g' | egrep -v $FILTER > $testname.test_tmp &&\
|
|
|
|
|
sed -e 's/-0$/ 0/g' $testdir/$testname.out | egrep -v $FILTER > $testname.out_tmp
|
|
|
|
|
if diff -B -w -u $testname.out_tmp $testname.test_tmp; then
|
|
|
|
|
rm $testname.test $testname.test_tmp $testname.out_tmp
|
|
|
|
|
exit 0
|
|
|
|
|
fi
|
|
|
|
|
rm -f $testname.test_tmp $testname.out_tmp
|
|
|
|
|
sed -e 's/e-000/e+000/g' $testname.test | sed 's/e-0/e-/g' | sed 's/e+0/e+/g' > $testname.test_tmp
|
|
|
|
|
mv $testname.test_tmp $testname.test
|
|
|
|
|
;;
|
2009-02-21 21:52:19 +01:00
|
|
|
Linux*|Darwin*|CYGWIN*)
|
2005-03-13 18:27:47 +01:00
|
|
|
$SPICE --batch $testdir/$testname.cir >$testname.test &&\
|
|
|
|
|
egrep -v $FILTER $testname.test > $testname.test_tmp &&\
|
|
|
|
|
egrep -v $FILTER $testdir/$testname.out > $testname.out_tmp
|
|
|
|
|
if diff -B -w -u $testname.out_tmp $testname.test_tmp; then
|
|
|
|
|
rm $testname.test $testname.test_tmp $testname.out_tmp
|
|
|
|
|
exit 0
|
|
|
|
|
fi
|
|
|
|
|
rm -f $testname.test_tmp $testname.out_tmp
|
|
|
|
|
;;
|
|
|
|
|
SunOS*)
|
|
|
|
|
$SPICE --batch $testdir/$testname.cir >$testname.test &&\
|
|
|
|
|
sed -e '/^$/d' $testname.test | egrep -v $FILTER > $testname.test_tmp &&\
|
|
|
|
|
sed -e '/^$/d' $testdir/$testname.out | egrep -v $FILTER > $testname.out_tmp
|
|
|
|
|
if diff -b -w $testname.out_tmp $testname.test_tmp; then
|
|
|
|
|
rm $testname.test $testname.test_tmp $testname.out_tmp
|
|
|
|
|
exit 0
|
|
|
|
|
fi
|
|
|
|
|
rm -f $testname.test_tmp $testname.out_tmp
|
|
|
|
|
;;
|
2005-03-17 22:22:33 +01:00
|
|
|
*)
|
|
|
|
|
echo Unknown system type!
|
|
|
|
|
echo $HOST_TYPE
|
|
|
|
|
echo ./tests/bin/checks.sh may need updating for your system
|
|
|
|
|
;;
|
2005-03-13 18:27:47 +01:00
|
|
|
esac
|
|
|
|
|
|
2004-08-09 17:41:59 +02:00
|
|
|
exit 1
|