#! /bin/sh
#
# ${R_HOME}/bin/REMOVE for removing add-on packages

revision='$Revision: 1.14 $'
version=`set - ${revision}; echo ${2}`
version="R add-on package remover ${version}

Copyright (C) 2000-2001 The R Core Development Team.
This is free software; see the GNU General Public Licence version 2
or later for copying conditions.  There is NO warranty."

usage="Usage: R CMD REMOVE [options] pkgs

Remove the add-on packages specified by pkgs.  The library tree to
remove from can be specified via \`--library'.  By default, packages are
removed from the library tree rooted at the first directory given in the
environment variable R_LIBS if this is set and non-null, and from the
default R library tree (${R_HOME}/library) otherwise.

Options:
  -h, --help		print short help message and exit
  -v, --version		print version info and exit
  -l, --library=LIB	remove packages from library tree LIB

Report bugs to <r-bugs@r-project.org>."

pkgs=
lib=`echo ${R_LIBS:-"${R_HOME}/library"} | cut -f1 -d:`

while test -n "${1}"; do
  case ${1} in
    -h|--help)
      echo "${usage}"; exit 0 ;;
    -v|--version)
      echo "${version}"; exit 0 ;;
    -l)
      lib=${2}; shift ;;
    --library=*)
      lib=`echo "${1}" | sed -e 's/[^=]*=//'` ;;
    *)
      pkgs="${pkgs} ${1}" ;;
  esac
  shift
done  

if test -z "${pkgs}"; then
  echo "ERROR: no packages specified"
  exit 1
fi

if test -d ${lib} -a -w ${lib}; then
  cd ${lib}
  lib=`pwd`
  ## FIXME: Remove eventually.
  rm -f ${lib}/LibIndex
  ## </FIXME>
else    
  echo "ERROR: cannot cd to or remove from directory \`${lib}'"
  exit 2
fi    

for pkg in ${pkgs}; do
  pkg=`basename ${pkg}`		# in case someone gave a path ...
  if test -d ${pkg}; then
    rm -rf ${pkg}
  else
    echo "WARNING: there is no pkg \`${pkg}' in lib \`${lib}'"
    continue
  fi
done

NO_PERL5=@NO_PERL5@
if ${NO_PERL5}; then
  echo "*** Cannot update the file"
  echo "***    ${lib}/index.html"
  echo "*** without Perl version 5.  Please delete the entries for"
  echo "*** the packages you removed manually."
  exit 2
fi

if test ${lib} = ${R_HOME}/library; then
  ${R_CMD} perl ${R_HOME}/share/perl/build-help.pl --htmllists
  cat ${R_HOME}/library/*/CONTENTS > ${R_HOME}/doc/html/search/index.txt
fi

### Local Variables: ***
### mode: sh ***
### sh-indentation: 2 ***
### End: ***