92 lines
1.3 KiB
Bash
Executable File
92 lines
1.3 KiB
Bash
Executable File
#!/bin/sh
|
|
# $XConsortium: syminst.sh /main/2 1995/07/19 18:05:57 drk $
|
|
|
|
#
|
|
# syminst - install with a symbolic link back to the build tree
|
|
#
|
|
|
|
# set DOITPROG to echo to test this script
|
|
|
|
doit="${DOITPROG-}"
|
|
|
|
|
|
# put in absolute paths if you don't have them in your path; or use env. vars.
|
|
|
|
lnprog="${LNPROG-ln -s}"
|
|
rmprog="${RMPROG-rm}"
|
|
|
|
instcmd="$lnprog"
|
|
rmcmd="$rmprog -f"
|
|
srcdir=`pwd`/
|
|
src=""
|
|
dst=""
|
|
|
|
while [ x"$1" != x ]; do
|
|
case $1 in
|
|
-c) shift
|
|
continue;;
|
|
|
|
-m) shift
|
|
shift
|
|
continue;;
|
|
|
|
-o) shift
|
|
shift
|
|
continue;;
|
|
|
|
-g) shift
|
|
shift
|
|
continue;;
|
|
|
|
-s) shift
|
|
continue;;
|
|
|
|
-DIR) srcdir=`echo $2 | sed 's;/\./;/;g'`/
|
|
shift
|
|
shift
|
|
continue;;
|
|
|
|
*) if [ x"$src" = x ]
|
|
then
|
|
src=$1
|
|
else
|
|
dst=$1
|
|
fi
|
|
shift
|
|
continue;;
|
|
esac
|
|
done
|
|
|
|
if [ x"$src" = x ]
|
|
then
|
|
echo "syminst: no input file specified"
|
|
exit 1
|
|
fi
|
|
|
|
if [ x"$dst" = x ]
|
|
then
|
|
echo "syminst: no destination specified"
|
|
exit 1
|
|
fi
|
|
|
|
|
|
# if destination is a directory, append the input filename; if your system
|
|
# does not like double slashes in filenames, you may need to add some logic
|
|
|
|
if [ -d $dst ]
|
|
then
|
|
dst="$dst"/`basename $src`
|
|
fi
|
|
|
|
case $src in
|
|
/*) srcdir=""
|
|
instcmd=cp;;
|
|
esac
|
|
|
|
# get rid of the old one and mode the new one in
|
|
|
|
$doit $rmcmd $dst
|
|
$doit $instcmd $srcdir$src $dst
|
|
|
|
exit 0
|