123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137 |
- #!/bin/sh
- # $XConsortium: bsdinst.sh /main/2 1995/07/19 18:05:14 drk $
- #
- # This accepts bsd-style install arguments and makes the appropriate calls
- # to the System V install.
- #
- flags=""
- dst=""
- src=""
- dostrip=""
- owner=""
- mode=""
- while [ x$1 != x ]; do
- case $1 in
- -c) shift
- continue;;
- -m) flags="$flags $1 $2 "
- mode="$2"
- shift
- shift
- continue;;
- -o) flags="$flags -u $2 "
- owner="$2"
- shift
- shift
- continue;;
- -g) flags="$flags $1 $2 "
- shift
- shift
- continue;;
- -s) dostrip="strip"
- shift
- continue;;
- *) if [ x$src = x ]
- then
- src=$1
- else
- dst=$1
- fi
- shift
- continue;;
- esac
- done
- case "$mode" in
- "")
- ;;
- *)
- case "$owner" in
- "")
- flags="$flags -u root"
- ;;
- esac
- ;;
- esac
- if [ x$src = x ]
- then
- echo "bsdinst: no input file specified"
- exit 1
- fi
- if [ x$dst = x ]
- then
- echo "bsdinst: no destination specified"
- exit 1
- fi
- # set up some variable to be used later
- rmcmd=""
- srcdir="."
- # if the destination isn't a directory we'll need to copy it first
- if [ ! -d $dst ]
- then
- dstbase=`basename $dst`
- cp $src /tmp/$dstbase
- rmcmd="rm -f /tmp/$dstbase"
- src=$dstbase
- srcdir=/tmp
- dst="`echo $dst | sed 's,^\(.*\)/.*$,\1,'`"
- if [ x$dst = x ]
- then
- dst="."
- fi
- fi
- # If the src file has a directory, copy it to /tmp to make install happy
- srcbase=`basename $src`
- if [ "$src" != "$srcbase" -a "$src" != "./$srcbase" ]
- then
- cp $src /tmp/$srcbase
- src=$srcbase
- srcdir=/tmp
- rmcmd="rm -f /tmp/$srcbase"
- fi
- # do the actual install
- if [ -f /usr/sbin/install ]
- then
- installcmd=/usr/sbin/install
- elif [ -f /etc/install ]
- then
- installcmd=/etc/install
- else
- installcmd=install
- fi
- # This rm is commented out because some people want to be able to
- # install through symbolic links. Uncomment it if it offends you.
- # rm -f $dst/$srcbase
- (cd $srcdir ; $installcmd -f $dst $flags $src)
- if [ x$dostrip = xstrip ]
- then
- strip $dst/$srcbase
- fi
- # and clean up
- $rmcmd
|