#!/bin/sh

file=
fileset=0

function usage(){
    echo usage: mk_test [otags options ...] target
}

while [ $# \!= 0 ]; do
    case $1 in
	-*)   options="$options $1"; shift;;
	*)    file=$1; fileset=1; shift;;
    esac
done


if [ $fileset = 0 ] ; then
    usage;
    exit 1
fi

ofile=$(basename $file)

#set -x
./otags $options -emacs -bindir . -libdir . -o test/$ofile.tags.emacs.new $file
./otags $options -vi    -bindir . -libdir . -o test/$ofile.tags.vi.new $file
#set +x

diff -q test/$ofile.tags.emacs.new test/$ofile.tags.emacs > /dev/null
emacsres=$?

diff -q test/$ofile.tags.vi.new test/$ofile.tags.vi > /dev/null
vires=$?

if [ $emacsres = 0 -a $vires = 0 ] ; then 
    echo $file: test passed
else
    if [ $emacsres = 1 ] ; then 
	echo $file: emacs test failed
    fi
    if [ $vires = 1 ] ; then 
	echo $file: vi test failed
    fi
    exit 2
fi

exit 0
