#! /bin/sh
#
# This script is used to configure the Xarm library.
#

PROJECT=Xarm
SITECFG=config/site.cf

INSTALL_DIR="/usr/X11"
CXX_COMPILER="g++"
EXTRA_FLAGS=""
IRULESRC="`pwd`/config"
EXAMPLES=""
BUILD_EXAMPLES="n"

Ask()
{
   if test "${2}" = ""
   then
      echo -n "$1: "
   else 
      echo -n "$1 [$2]: "
   fi

   read ANSWER
   if test "${ANSWER}" = "" 
   then
      ANSWER="$2"
   fi
}

YesNo()
{
   if test "${2}" = ""
   then
      Ask "$1" "y"
   else
      Ask "$1" "$2"
   fi

   if test "${ANSWER}" = "Y"
   then
      ANSWER="y"
   fi
}

GetConfig()
{
   Ask "Install $PROJECT into directory" $INSTALL_DIR
   INSTALL_DIR=$ANSWER

   Ask "C++ compiler to use" $CXX_COMPILER
   CXX_COMPILER=$ANSWER

   Ask "Specify any extra compiler flags needed" $EXTRA_FLAGS
   EXTRA_FLAGS=$ANSWER

   YesNo "Build examples" $BUILD_EXAMPLES 
   if test ${ANSWER} = "y"
   then
      EXAMPLES="#define NEED_EXAMPLES"
      BUILD_EXAMPLES="yes"
   else
      BUILD_EXAMPLES="no"
   fi
}

ShowConfig()
{
   echo
   echo "Install into directory.: $INSTALL_DIR"
   echo "C++ compiler...........: $CXX_COMPILER"
   echo "Extra compiler flags...: $EXTRA_FLAGS"
   echo "Build examples.........: $BUILD_EXAMPLES"
   echo 
   YesNo "Is the above information correct"
   if test ${ANSWER} != "y"
   then
      echo "You need to run Configure again."
      exit 0
   fi
}

MakeSiteConfig()
{
   rm -f $SITECFG
   echo "EXTRA_IRULESRC=$IRULESRC" >> $SITECFG
   echo "BASEDIR=$INSTALL_DIR" >> $SITECFG
   echo "CC=$CXX_COMPILER" >> $SITECFG
   echo "EXTRA_FLAGS=$EXTRA_FLAGS" >> $SITECFG
   echo "$EXAMPLES" >> $SITECFG
   echo "#include \"C++.rules\"" >> $SITECFG
}

echo

GetConfig

ShowConfig

MakeSiteConfig

xmkmf 
make Makefiles

echo
echo "Please email bug fixes or comments to the maintainer of this project."
echo "See the README file for details."
echo
echo "Configuration complete."
echo 

echo "To compile type 'make'" 
echo "To install type 'make install'"
echo 
