| 1 | #! /bin/sh |
| 2 | |
| 3 | set -e |
| 4 | ext="" mandir=/usr/local/man srcdir=. inst=install mode=644 |
| 5 | while [ $# -gt 0 ]; do |
| 6 | case $1 in |
| 7 | -h) |
| 8 | echo "$0: [-e EXT] [-d DIR] [-i INSTALL] [-m MODE] [un]install FILE ..." |
| 9 | exit 0 |
| 10 | ;; |
| 11 | -e) ext=$2; shift 2 ;; |
| 12 | -d) mandir=$2; shift 2 ;; |
| 13 | -i) inst=$2; shift 2 ;; |
| 14 | -m) mode=$2; shift 2 ;; |
| 15 | -s) srcdir=$2; shift 2 ;; |
| 16 | --) shift; break ;; |
| 17 | -*) echo >&2 "$0: unknown option \`$1'"; exit 1 ;; |
| 18 | *) break ;; |
| 19 | esac |
| 20 | done |
| 21 | op=$1; shift |
| 22 | case $op in |
| 23 | install | uninstall) ;; |
| 24 | *) echo >&2 "$0: unknown operation \`$1'"; exit 1 ;; |
| 25 | esac |
| 26 | for i; do |
| 27 | base=`echo "$i" | sed 's:^.*/::'` |
| 28 | sec=`echo "$base" | sed 's:^.*\.::'` |
| 29 | case $op in |
| 30 | install) |
| 31 | echo -n " Installing manpage $base$ext" |
| 32 | $inst -d "$mandir/man$sec" |
| 33 | $inst -m $mode "$srcdir/$i" "$mandir/man$sec/$base$ext" |
| 34 | ;; |
| 35 | uninstall) |
| 36 | rm -f "$mandir/man$sec/$base$ext" |
| 37 | ;; |
| 38 | esac |
| 39 | for l in `sed 's:^\.\\\" *@::p; d' "$srcdir/$i"`; do |
| 40 | case $op in |
| 41 | install) |
| 42 | if [ "$l.$sec" != "$base" ]; then |
| 43 | echo -n "." |
| 44 | echo ".so man$sec/$base$ext" >"$mandir/man$sec/$l.$sec$ext" |
| 45 | chmod $mode "$mandir/man$sec/$l.$sec$ext" |
| 46 | fi |
| 47 | ;; |
| 48 | uninstall) |
| 49 | rm -f "$mandir/man$sec/$l.$sec$ext" |
| 50 | ;; |
| 51 | esac |
| 52 | done |
| 53 | case $op in |
| 54 | install) echo ;; |
| 55 | esac |
| 56 | done |