aboutsummaryrefslogtreecommitdiff
path: root/unix/hlib/util.csh/pkgclean
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2015-07-08 20:46:52 -0400
committerJoseph Hunkeler <jhunkeler@gmail.com>2015-07-08 20:46:52 -0400
commitfa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 (patch)
treebdda434976bc09c864f2e4fa6f16ba1952b1e555 /unix/hlib/util.csh/pkgclean
downloadiraf-linux-fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4.tar.gz
Initial commit
Diffstat (limited to 'unix/hlib/util.csh/pkgclean')
-rwxr-xr-xunix/hlib/util.csh/pkgclean89
1 files changed, 89 insertions, 0 deletions
diff --git a/unix/hlib/util.csh/pkgclean b/unix/hlib/util.csh/pkgclean
new file mode 100755
index 00000000..5dbf50cf
--- /dev/null
+++ b/unix/hlib/util.csh/pkgclean
@@ -0,0 +1,89 @@
+#!/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