#! /bin/bash if [ $# != 3 -a $# != 4 ];then echo "$0 {|44|45|head} {|44|45|head} path/testfile.exp [path/binary]" fi set -ex rm -rf fail rm -rf pass if [ -n "$1" ];then gccold="$HOME/redhat/gcc$1-root/bin" else gccold="/" fi if [ -n "$2" ];then gccnew="$HOME/redhat/gcc$2-root/bin" else gccnew="/" fi test -d $gccold test -d $gccnew exp=`echo $3|sed 's/\.exp$//'`.exp test -f $exp if [ -n "$4" ];then bin=$4 else bin=`echo $3|sed 's/\.exp$//'` fi binbase=`basename $bin` if [ -e $bin ];then file $bin | grep ': ELF' fi rm -f $bin PATH="$gccold:$PATH" runtest $exp || exit 1 file $bin | grep ': ELF' mkdir pass mv gdb.sum gdb.log $bin pass readelf -wi pass/$binbase >pass/$binbase.d PATH="$gccnew:$PATH" runtest $exp && exit 1 file $bin | grep ': ELF' mkdir fail mv gdb.sum gdb.log $bin fail readelf -wi fail/$binbase >fail/$binbase.d echo OK