#!/bin/sh
#
#  Run this to have autotools generate all of its output.
#
#  NOTE: This is based upon the original script and that found in
#        RTEMS (http://www.rtems.org).
#
#  $Id$
#

srcdir=`dirname $0`

test -z "$srcdir" && srcdir=.
progname=`basename $0`
top_srcdir=`dirname $0`

PROJECT=simulavr

test -d src || {
    echo "You must run this script in the top-level $PROJECT directory"
    exit 1
}

(autoconf --version) < /dev/null > /dev/null 2>&1 || {
    echo
    echo "You must have autoconf 2.63 installed to compile $PROJECT."
    exit 1
}

(libtool --version) < /dev/null > /dev/null 2>&1 || {
    echo
    echo "You must have libtool installed to compile $PROJECT."
    exit 1
}
		  
(automake --version) < /dev/null > /dev/null 2>&1 || {
    echo
    echo "You should use automake 1.10 or later to compile $PROJECT."
    exit 1
}

usage()
{
  echo
  echo "usage: ${progname} [-c|-p|-h] [-q][-v]"
  echo
  echo "options:"
  echo "	-c .. clean, remove all aclocal/autoconf/automake generated files"
  echo "	-h .. display this message and exit"
  echo "	-q .. quiet, don't display directories"
  echo "	-v .. verbose, pass -v to autotools"
  echo
  exit 1;
}

verbose=""
quiet="false"
mode="generate"

while test $# -gt 0; do
case $1 in
-h|--he|--hel|--help)
  usage ;;
-q|--qu|--qui|--quie|--quiet)
  quiet="true";
  shift;;
-v|--ve|--ver|--verb|--verbo|--verbos|--verbose)
  verbose="-v";
  shift;;
-c|--cl|--cle|--clea|--clean)
  mode="clean";
  shift;;
-*) echo "unknown option $1" ;
  usage ;;
*) echo "invalid parameter $1" ;
  usage ;;
esac
done

case ${mode} in 
  generate)
    aclocal ${verbose} -I m4
    autoheader ${verbose}
    libtoolize ${verbose} --copy --force
    automake ${verbose} --add-missing --copy
    autoconf ${verbose}
    echo
    echo "Now type './configure' to configure $PROJECT."
    ;;
  clean)
    test "$quiet" = "true" || echo "removing automake generated Makefile.in files"
    files=`find . -name 'Makefile.am' -print | sed -e 's%\.am%\.in%g'` ;
    for i in $files; do if test -f $i; then
      rm -f $i
      test "$verbose" = "-v" && echo "$i"    
    fi; done

    test "$quiet" = "true" || echo "removing configure files"
    files=`find . -name 'configure' -print` ;
    test "$verbose" = "-v" && test -n "$files" && echo "$files" ;
    for i in $files; do if test -f $i; then
      rm -f $i config.sub config.guess depcomp install-sh mdate-sh missing \
        mkinstalldirs texinfo.tex compile ltmain.sh src/config.h.in
      test "$verbose" = "-v" && echo "$i"    
    fi; done
    
    test "$quiet" = "true" || echo "removing aclocal.m4 files"
    files=`find . -name 'aclocal.m4' -print` ;
    test "$verbose" = "-v" && test -n "$files" && echo "$files" ;
    for i in $files; do if test -f $i; then
      rm -f $i
      test "$verbose" = "-v" && echo "$i"    
    fi; done

    find . -name '*~' -print | xargs rm -f
    find . -name 'bspopts.h.in' -print | xargs rm -f
    find . -name '*.orig' -print | xargs rm -f
    find . -name '*.rej' -print | xargs rm -f
    find . -name 'config.status' -print | xargs rm -f
    find . -name 'config.log' -print | xargs rm -f
    find . -name 'config.cache' -print | xargs rm -f
    find . -name 'Makefile' -print | xargs rm -f
    find . -name '.deps' -print | xargs rm -rf
    find . -name '.libs' -print | xargs rm -rf
    find . -name 'stamp-h.in' | xargs rm -rf
    find . -name 'autom4te*.cache' | xargs rm -rf
    find doc -name 'conf.py' | xargs rm -rf
    ;;

  *)
    ;;
esac

exit 0
