#!/bin/sh
##
## A simple compare directory content utility.
##

topdir="`pwd`"
distdir="@TAR_NAME@"
log="$topdir/dist-log"
logerror="$topdir/dist-errors"

getdir() {
  for file in `ls`; do

    if test -d $file -a $file != "CVS" -a $file != $distdir; then 
      (cd $file && getdir) || (cd ..) 
    else
      if test ! -d $file -a \
              $file != $log -a \
              $file != $logerror -a \
              $file != "CVS" -a \
              $file != ${0##*/} -a \
              $file != "$distdir.tar.gz"; then

        orifile=`pwd`/$file

        distfile=$topdir/$distdir${orifile##*$topdir}

        echo -e "check:\t$orifile\nand\t$distfile" >> $log

        if test ! -e $distfile; then
          missingfile=${orifile##$topdir}
	  echo "${missingfile#/} is missing in tarball" >> $logerror
        fi

      fi
    fi

  done
}

main() {
  rm -f $log $logerror

  ./configure $CONFIG_ARGS && make dist && mv $distdir.tar.gz $distdir.tmp.tar.gz
  make clean && make distclean && mv $distdir.tmp.tar.gz $distdir.tar.gz
  tar -xzf $distdir.tar.gz

  echo "Check is running, be patient..."
  getdir

  rm -rf $distdir
  rm -f $distdir.tar.gz

  echo " * Log is ${log##*/}"
  echo " * Error log is ${logerror##*/}"
  
}

main
