#!/bin/sh

if test x"$srcdir" != x""; then
    builddir="."	# running from make check, but it does not define that
else
    srcdir=`echo "$0" | sed s,[^/]*$,,`
    test "$srcdir" = "$0" && srcdir=.
    test -z "$srcdir" && srcdir=.
    builddir="$srcdir"	# running manually, have to assume
fi

srcdir=`cd $srcdir;pwd`
builddir=`cd $builddir;pwd`

basedir=".."
cd $srcdir; if [ ! -d $basedir -o ! -f $basedir/src/a52dec.c -o \
    ! -f $basedir/a52dec-*.tar.gz ]; then
    cd ..; if [ ! -d $basedir -o ! -f $basedir/src/a52dec.c -o \
	! -f $basedir/a52dec-*.tar.gz ]; then
	exit 77;
    fi
fi
basedir=`cd $basedir;pwd`

cd $builddir
rm -fr compile_test

for compiler in gcc gcc272 gcc-3.0 cc checkergcc tcc icc; do
    compiler_path=`which $compiler`;
    if test x"$compiler_path" = x""; then continue; fi
    compiler_inode=`ls -Li $compiler_path|awk '{print $1}'`
    duplicate=0; for inode in $inodes; do
	if test x"$compiler_inode" = x"$inode"; then duplicate=1; fi
    done; if test x"$duplicate" = x"1"; then continue; fi
    inodes="$inodes $compiler_inode"

    mkdir compile_test
    cd compile_test; tar xzpf $basedir/a52dec-*.tar.gz; cd a52dec-*
    error=1
    CC=$compiler ./configure && make && error=0
    if test x"$error" != x"0"; then exit 1; fi
    cd ../..
    rm -fr compile_test
done

exit 0
