1#!/bin/sh 2 3if test x"$srcdir" != x""; then 4 builddir="." # running from make check, but it does not define that 5else 6 srcdir=`echo "$0" | sed s,[^/]*$,,` 7 test "$srcdir" = "$0" && srcdir=. 8 test -z "$srcdir" && srcdir=. 9 builddir="$srcdir" # running manually, have to assume 10fi 11 12srcdir=`cd $srcdir;pwd` 13builddir=`cd $builddir;pwd` 14 15testfile="$srcdir/tests" 16if [ $# -ge 1 ]; then testfile="$1"; fi 17 18dirs=`awk -F '#' '{print $1}' $testfile` 19 20basedir=`head -n 1 $testfile | awk '{print $2}'` 21cd $srcdir; if [ ! -d $basedir ]; then 22 cd ..; if [ ! -d $basedir ]; then exit 77; fi # for make distcheck 23fi 24basedir=`cd $basedir;pwd` 25 26cd $builddir 27error=0 28 29a52dec="../src/a52dec"; if [ ! -x $a52dec ]; then 30 if [ -x ../vc++/Release/a52dec.exe ]; then 31 a52dec="../vc++/Release/a52dec.exe" 32 basedir=`echo "$basedir" | sed "s,/cygdrive/\(.\)/,\1:/,"` 33 elif [ -x ../vc++/Debug/a52dec.exe ]; then 34 a52dec="../vc++/Debug/a52dec.exe" 35 basedir=`echo "$basedir" | sed "s,/cygdrive/\(.\)/,\1:/,"` 36 else 37 echo "Can not find a52dec executable"; exit 1 38 fi 39fi 40 41for dir in $dirs; do 42 echo $dir 43 $a52dec -co float $basedir/$dir/stream >/dev/null 2>&1 >output.float 44 ./compare output.float $basedir/$dir/output.float || error=1 45 rm -f output.float 46done 47 48exit $error 49