#! /bin/sh
# configure script for SLHALib
# last modified 18 Oct 06 th
# note: has nothing to do with GNU autoconf


if (echo "test\c"; echo 1,2,3) | grep c > /dev/null ; then
  if (echo -n test; echo 1,2,3) | grep n > /dev/null ; then
    echo_n=
    echo_c='
'
  else
    echo_n=-n
    echo_c=
  fi
else
  echo_n=
  echo_c='\c'
fi


findprog()
{
  echo $echo_n "looking for $1... $echo_c" 1>&2
  shift
  for prog in "$@" ; do
    full="`which \"$prog\"`"
    if [ -x "$full" ] ; then
      echo $full 1>&2
      echo $prog
      return 0
    fi
  done
  echo "no $@ in your path" 1>&2
  return 1
}


# check the arguments

CONF_HOSTTYPE=`tcsh -cf 'echo $HOSTTYPE'`

CONF_PREFIX=$CONF_HOSTTYPE

for arg in "$@" ; do
  case "$arg" in
  --prefix=*) CONF_PREFIX=`expr "$arg" : ".*--prefix=\(.*\)"` ;;
  -*) echo "Unknown option $arg" 1>&2 ;;
  *=*) eval `echo $arg\" | sed 's/=/="/'` ;;
  *) echo "Unknown argument $arg" 1>&2 ;;
  esac
done


# look for some programs

CONF_MAKE=`findprog make gmake Make make` || exit 1

CONF_FC=`findprog f77 $FC pgf77 ifort xlf f77 fort77 f90 g77 g95 gfortran` || exit 1

if $CONF_FC -v -c 2>&1 | grep "gcc version" > /dev/null ; then
  CONF_FFLAGS="-O0 -ffixed-line-length-none -Wall -g"
else
  CONF_FFLAGS="${FFLAGS-default}"
  [ "$CONF_FFLAGS" = default ] && case "$CONF_FC$CONF_HOSTTYPE" in
  *pgf77*)
	CONF_FFLAGS="-fast -Mextend -Minform=inform -g77libs -Ktrap=fp -g" ;;
  *ifort*)
	CONF_FFLAGS="-O3 -extend_source -warn truncated_source -fpe0 -g" ;;
  *alpha)
	CONF_FFLAGS="-fast -extend_source -warn truncated_source -fpe0 -g3" ;;
  *sun* | *sparc*)
	CONF_FFLAGS="-fast -e -ftrap=common -g" ;;
  *hp*)
	CONF_FFLAGS="-O2 +es +U77 +FPVZO -g" ;;
  *)
	CONF_FFLAGS="-O -g" ;;
  esac
fi


echo "creating makefile" 1>&2

cat - makefile.in > makefile << _EOF_
# --- variables defined by configure ---

FC = $CONF_FC
FFLAGS = $CONF_FFLAGS
PREFIX = $CONF_PREFIX

# --- end defs by configure ---


_EOF_

echo "" 1>&2
echo "now you must run $CONF_MAKE" 1>&2
echo "" 1>&2

exit 0

