summaryrefslogtreecommitdiff
path: root/port/install.sh
diff options
context:
space:
mode:
Diffstat (limited to 'port/install.sh')
-rw-r--r--port/install.sh246
1 files changed, 246 insertions, 0 deletions
diff --git a/port/install.sh b/port/install.sh
new file mode 100644
index 00000000..fc423669
--- /dev/null
+++ b/port/install.sh
@@ -0,0 +1,246 @@
+#! /bin/sh
+# $Header: /d1/sam/tiff/port/RCS/install.sh.in,v 1.20 1997/08/29 21:48:53 sam Exp $
+#
+# Warning, this file was automatically created by the TIFF configure script
+#
+# HylaFAX Facsimile Software
+#
+# Copyright (c) 1990-1997 Sam Leffler
+# Copyright (c) 1991-1997 Silicon Graphics, Inc.
+# HylaFAX is a trademark of Silicon Graphics
+#
+# Permission to use, copy, modify, distribute, and sell this software and
+# its documentation for any purpose is hereby granted without fee, provided
+# that (i) the above copyright notices and this permission notice appear in
+# all copies of the software and related documentation, and (ii) the names of
+# Sam Leffler and Silicon Graphics may not be used in any advertising or
+# publicity relating to the software without the specific, prior written
+# permission of Sam Leffler and Silicon Graphics.
+#
+# THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
+# EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
+# WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+#
+# IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
+# ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
+# OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+# WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
+# LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
+# OF THIS SOFTWARE.
+#
+
+#
+# Warning, this file was automatically created by the HylaFAX configure script
+#
+# VERSION: v3.4beta037
+# DATE: Wed Feb 3 19:53:27 EST 1999
+# TARGET: i586-unknown-linux
+#
+
+#
+# Shell script to emulate Silicon Graphics install program.
+# We emulate the non-standard interface used by install so
+# that we can build SGI inst packages on SGI systems. Note
+# that we cannot emulate everything because we don't maintain
+# a history of installed software; thus we cannot tell when
+# configuration files have been modified and save old copies.
+#
+# NB: we don't do chown/chmod/chgrp by default; it must be
+# explicitly set on the command line.
+#
+
+#
+# install [options] files ...
+#
+# Options are:
+#
+# -o save existing target foo as OLDfoo
+# -O remove existing target foo, if it fails save as OLDfoo
+# -m mode set mode of installed target
+# -u uid set uid of installed target
+# -g gid set gid of installed target
+# -root path set ROOT directory for target pathnames
+# -dir create directories
+# -fifo create FIFO special files
+# -ln path create hard link
+# -lns path create symbolic link
+# -src path source pathname different from target
+# -f dir install files in the target directory ROOT/dir
+# -F dir like -f, but create directories that do not exist
+# -v echo actions
+# -idb stuff specify package and, optionally, do special work
+#
+preopts=
+postopts=
+SaveFirst=no
+HasSource=yes
+RemoveFirst=no
+NoUpdate=no
+Suggested=no
+Updated=no
+
+CMD=cp
+SRC=
+FILES=
+DESTDIR=
+CHMOD=":"
+CHOWN=":"
+CHGRP=":"
+RM="rm -f"
+MV="mv -f"
+ECHO=echo
+VERBOSE=":"
+STRIP="/usr/bin/strip"
+CMP=cmp
+
+TARGETS=
+while [ x"$1" != x ]
+do
+ arg=$1
+ case $arg in
+ -m) shift; CHMOD="/bin/chmod $1";;
+ -u) shift; CHOWN="@CHOWN@ $1";;
+ -g) shift; CHGRP="@CHGRP@ $1";;
+ -o) SaveFirst=yes;;
+ -O) RemoveFirst=yes; SaveFirst=yes;;
+ -root) shift; ROOT=$1;;
+ -dir) CMD=mkdir; HasSource=no;
+ RM=":"; STRIP=":"
+ ;;
+ -fifo) CMD=@MKFIFO@; HasSource=no;
+ x=`echo $CMD | /bin/sed 's;.*/;;'`;
+ test $x = mknod && postopts="p";
+ STRIP=":"
+ ;;
+ -ln) shift; CMD=/bin/ln; SRC="$1"
+ STRIP=":"
+ ;;
+ -lns) shift; CMD=/bin/ln; preopts="-s"; SRC="$1"
+ STRIP=":"
+ ;;
+ -src) shift; SRC="$1";;
+ -[fF]) shift; DESTDIR="$1";;
+ -idb) shift; opt="$1"
+ case "$opt" in
+ *config\(update\)*) Updated=yes;;
+ *config\(suggest\)*) Suggested=yes;;
+ *config\(noupdate\)*) NoUpdate=yes;;
+ *nostrip*) STRIP=":";;
+ esac
+ ;;
+ # these are skipped/not handled
+ -new|-rawidb|-blk|-chr) shift;;
+ -v) VERBOSE=$ECHO;;
+ -*) ;;
+ *) TARGETS="$TARGETS $arg";;
+ esac
+ shift
+done
+
+#
+# Install the specified target.
+#
+install()
+{
+ src=$1 target=$2
+ if [ $RemoveFirst = yes -a -f $target ]; then
+ $VERBOSE "$RM $target"
+ $RM $target
+ fi
+ if [ $SaveFirst = yes -a -f $target ]; then
+ bf=`echo $src | /bin/sed 's;.*/;;'`
+ $VERBOSE "$MV $target $ROOT/$DESTDIR/OLD$bf"
+ $MV $target $ROOT/$DESTDIR/OLD$bf
+ fi
+ if [ -z "$SRC" -a $HasSource = yes ]; then
+ $VERBOSE "$CMD $preopts $src $target $postopts"
+ $CMD $preopts $f $target $postopts
+ else
+ $VERBOSE "$CMD $preopts $SRC $target $postopts"
+ $CMD $preopts $SRC $target $postopts
+ fi
+ if [ $? -eq 0 ]; then
+ $VERBOSE "$CHOWN $target"
+ $CHOWN $target
+ $VERBOSE "$CHGRP $target"
+ $CHGRP $target
+ $VERBOSE "$CHMOD $target"
+ $CHMOD $target
+ if [ $STRIP != ":" -a -x $ROOT/$DESTDIR/$f ]; then
+ $STRIP $target >/dev/null 2>&1 || true
+ $VERBOSE "$STRIP $target"
+ fi
+ fi
+}
+
+if [ $Suggested = yes ]; then
+ #
+ # A suggested file. If an existing target does
+ # not exist, then install it. Otherwise, install
+ # it as target.N if it's different from the current
+ # installed target.
+ #
+ # NB: cannot be used with a special file 'cuz we
+ # use test -f to see if the file exists.
+ #
+ for f in $TARGETS; do
+ t=$ROOT/$DESTDIR/$f
+ if [ -f $t ]; then
+ if [ -z "$SRC" -a $HasSource = yes ]; then
+ $CMP -s $f $t || {
+ $ECHO "*** Warning, target has local changes, installing $f as $t.N"
+ install $f $t.N;
+ }
+ else
+ $CMP -s $SRC $t || {
+ $ECHO "*** Warning, target has local changes, installing $f as $t.N"
+ install $f $t.N
+ }
+ fi
+ else
+ install $f $t
+ fi
+ done
+elif [ $Updated = yes ]; then
+ #
+ # A file to be updated. If an existing target does
+ # not exist, then install it. Otherwise, install
+ # it as target and save the old version as target.O
+ # if the old version is different from the current
+ # installed target.
+ #
+ # NB: cannot be used with a special file 'cuz we
+ # use test -f to see if the file exists.
+ #
+ for f in $TARGETS; do
+ t=$ROOT/$DESTDIR/$f
+ if [ -f $t ]; then
+ if [ -z "$SRC" -a $HasSource = yes ]; then
+ $CMP -s $f $t || $MV $t $t.O
+ else
+ $CMP -s $SRC $t || $MV $t $t.O
+ fi
+ fi
+ install $f $t
+ done
+elif [ $NoUpdate = yes ]; then
+ #
+ # A file that is never to be updated; the target
+ # is created only if it does not exist.
+ #
+ # NB: cannot be used with a special file 'cuz we
+ # use test -f to see if the file exists.
+ #
+ for f in $TARGETS; do
+ t=$ROOT/$DESTDIR/$f
+ test -f $t || install $f $t
+ done
+else
+ #
+ # Normal case, a target that should be installed
+ # with the existing copy, optionally, saved first.
+ #
+ for f in $TARGETS; do
+ install $f $ROOT/$DESTDIR/$f
+ done
+fi