diff options
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/minstall | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/bin/minstall b/bin/minstall deleted file mode 100755 index 094ec0c..0000000 --- a/bin/minstall +++ /dev/null @@ -1,112 +0,0 @@ -#!/bin/sh - - -# A minimal replacement for 'install' that supports installing symbolic links. -# Only a limited number of options are supported: -# -d dir Create a directory -# -m mode Sets a file's mode when installing - - -# If these commands aren't portable, we'll need some "if (arch)" type stuff -SYMLINK="ln -s" -MKDIR="mkdir -p" -RM="rm -f" - -MODE="" - -if [ "$1" = "-d" ] ; then - # make a directory path - $MKDIR "$2" - exit 0 -fi - -if [ "$1" = "-m" ] ; then - # set file mode - MODE=$2 - shift 2 -fi - -# install file(s) into destination -if [ $# -ge 2 ] ; then - - # Last cmd line arg is the dest dir - for FILE in $@ ; do - DESTDIR="$FILE" - done - - # Loop over args, moving them to DEST directory - I=1 - for FILE in $@ ; do - if [ $I = $# ] ; then - # stop, don't want to install $DEST into $DEST - exit 0 - fi - - DEST=$DESTDIR - - # On CYGWIN, because DLLs are loaded by the native Win32 loader, - # they are installed in the executable path. Stub libraries used - # only for linking are installed in the library path - case `uname` in - CYGWIN*) - case $FILE in - *.dll) - DEST="$DEST/../bin" - ;; - *) - ;; - esac - ;; - *) - ;; - esac - - PWDSAVE=`pwd` - - # determine file's type - if [ -h "$FILE" ] ; then - #echo $FILE is a symlink - # Unfortunately, cp -d isn't universal so we have to - # use a work-around. - - # Use ls -l to find the target that the link points to - LL=`ls -l "$FILE"` - for L in $LL ; do - TARGET=$L - done - #echo $FILE is a symlink pointing to $TARGET - - FILE=`basename "$FILE"` - # Go to $DEST and make the link - cd "$DEST" # pushd - $RM "$FILE" - $SYMLINK "$TARGET" "$FILE" - cd "$PWDSAVE" # popd - - elif [ -f "$FILE" ] ; then - #echo "$FILE" is a regular file - # Only copy if the files differ - if ! cmp -s $FILE $DEST/`basename $FILE`; then - $RM "$DEST/`basename $FILE`" - cp "$FILE" "$DEST" - fi - if [ $MODE ] ; then - FILE=`basename "$FILE"` - chmod $MODE "$DEST/$FILE" - fi - else - echo "Unknown type of argument: " "$FILE" - exit 1 - fi - - I=`expr $I + 1` - done - - exit 0 -fi - -# If we get here, we didn't find anything to do -echo "Usage:" -echo " install -d dir Create named directory" -echo " install [-m mode] file [...] dest Install files in destination" - |