|
|
1.1 ! root 1: #!/bin/sh ! 2: ! 3: # ! 4: # install - install a program, script, or datafile ! 5: # This comes from X11R5; it is not part of GNU. ! 6: # ! 7: # $XConsortium: install.sh,v 1.2 89/12/18 14:47:22 jim Exp $ ! 8: # ! 9: # This script is compatible with the BSD install script, but was written ! 10: # from scratch. ! 11: # ! 12: ! 13: ! 14: # set DOITPROG to echo to test this script ! 15: ! 16: doit="${DOITPROG:-}" ! 17: ! 18: ! 19: # put in absolute paths if you don't have them in your path; or use env. vars. ! 20: ! 21: mvprog="${MVPROG:-mv}" ! 22: cpprog="${CPPROG:-cp}" ! 23: chmodprog="${CHMODPROG:-chmod}" ! 24: chownprog="${CHOWNPROG:-chown}" ! 25: chgrpprog="${CHGRPPROG:-chgrp}" ! 26: stripprog="${STRIPPROG:-strip}" ! 27: rmprog="${RMPROG:-rm}" ! 28: ! 29: instcmd="$mvprog" ! 30: chmodcmd="" ! 31: chowncmd="" ! 32: chgrpcmd="" ! 33: stripcmd="" ! 34: rmcmd="$rmprog -f" ! 35: src="" ! 36: dst="" ! 37: ! 38: while [ x"$1" != x ]; do ! 39: case $1 in ! 40: -c) instcmd="$cpprog" ! 41: shift ! 42: continue;; ! 43: ! 44: -m) chmodcmd="$chmodprog $2" ! 45: shift ! 46: shift ! 47: continue;; ! 48: ! 49: -o) chowncmd="$chownprog $2" ! 50: shift ! 51: shift ! 52: continue;; ! 53: ! 54: -g) chgrpcmd="$chgrpprog $2" ! 55: shift ! 56: shift ! 57: continue;; ! 58: ! 59: -s) stripcmd="$stripprog" ! 60: shift ! 61: continue;; ! 62: ! 63: *) if [ x"$src" = x ] ! 64: then ! 65: src=$1 ! 66: else ! 67: dst=$1 ! 68: fi ! 69: shift ! 70: continue;; ! 71: esac ! 72: done ! 73: ! 74: if [ x"$src" = x ] ! 75: then ! 76: echo "install: no input file specified" ! 77: exit 1 ! 78: fi ! 79: ! 80: if [ x"$dst" = x ] ! 81: then ! 82: echo "install: no destination specified" ! 83: exit 1 ! 84: fi ! 85: ! 86: ! 87: # if destination is a directory, append the input filename; if your system ! 88: # does not like double slashes in filenames, you may need to add some logic ! 89: ! 90: if [ -d $dst ] ! 91: then ! 92: dst="$dst"/`basename $src` ! 93: fi ! 94: ! 95: ! 96: # get rid of the old one and mode the new one in ! 97: ! 98: $doit $rmcmd $dst ! 99: $doit $instcmd $src $dst ! 100: ! 101: ! 102: # and set any options; do chmod last to preserve setuid bits ! 103: ! 104: if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; fi ! 105: if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; fi ! 106: if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; fi ! 107: if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; fi ! 108: ! 109: exit 0
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.