aboutsummaryrefslogtreecommitdiff
path: root/unix/hlib/util.csh/pkgclean
blob: 5dbf50cfed700e26734a3aefd19dcd56f5884860 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
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