#!/bin/csh -f
#
#  PKGCLEAN -- Clean the named package, or all packages from the system.
#
#  Usage:     pkgclean [-all] [-dist] [-init] <pkg>
#
#  Where	-all	clean all packages
#		<pkg>	package to be removed
#
# ----------------------------------------------------------------------------


unset	noclobber
unalias rm 

set	all 	= no
set	init 	= no

# Process cmdline flags.
while ("$1" != "")
    switch ("$1")
    case -all:                          # clean all package sources
        set all = yes
        breaksw
    case -init:                         # init all packages
        set init = yes
        breaksw
    default:
        set pkg = $1
        break
    endsw

    shift
end


if ("$all" == "yes") then
  if (-e ".repo_pkgs") then
    foreach p (`cat .repo_pkgs`)
      if (-e $p) then
        /bin/rm -rf $p
        mkdir $p

        echo "" > .installed
        echo "" > .zzsetenv.def
      endif
    end
  endif

else if ("$init" == "yes") then
  if (-e ".repo_pkgs") then
    foreach p (`cat .repo_pkgs`)
      if (-e $p) then
        /bin/rm -rf $p
      endif
    end
  endif
  /bin/rm -rf Makefile    >& /dev/null
  /bin/rm -rf .installed  >& /dev/null
  /bin/rm -rf .repo*      >& /dev/null
  echo "" > .zzsetenv.def

else
   if (-e $pkg) then
      /bin/rm -rf $pkg
      mkdir $pkg
   else
     echo "Package '$pkg' is not currently installed"
     exit 1
   endif
endif


#  Normal exit.
exit 0



#=============================================================================
# Usage
#=============================================================================

Usage:
    echo "Usage: pkgclean [-all] [-dist] [-init] <pkg>"
    echo ""
    echo "    Where    -all	clean all packages"
    echo "	       <pkg>	package to be removed"

exit 0
