summaryrefslogtreecommitdiff
path: root/ACE/bin/add_rel_link.sh
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/bin/add_rel_link.sh')
-rwxr-xr-xACE/bin/add_rel_link.sh98
1 files changed, 0 insertions, 98 deletions
diff --git a/ACE/bin/add_rel_link.sh b/ACE/bin/add_rel_link.sh
deleted file mode 100755
index fe5dd67e679..00000000000
--- a/ACE/bin/add_rel_link.sh
+++ /dev/null
@@ -1,98 +0,0 @@
-# This script assumes it is being run by bash
-
-# ======= needed functions ======
-# abspath relpath curentpath
-abspath ()
-{
-# treat "./" as a special case
-if expr "$1" : '\./' >/dev/null; then
- b=`echo $1 | sed 's@\./@@'`
- echo $2/$b
- return 0
-fi
-b=$1
-a=$2
-# for each "../" we remove one directory from the current path
-# and leading "../" from the relative path
-# until we have the unique part in b and the abs prefix in a
-while expr "$b" : '\.\./' >/dev/null
-do
- b=`echo $b | sed 's@\.\./@@'`
- a=`echo $a | sed 's@/[^/]*$@@'`
-done
-# return the completed absolute path
-echo $a/$b
-}
-
-# relpath abspath curentpath
-relpath ()
-{
-# take "/" off beginning
-a=`echo $1 | sed 's@^/@@'`
-# take "/" off beginning and add to end
-b=`echo $2 | sed 's@^/@@;s@$@/@'`
-while true
-do
- if [ "$b" = "" ]; then
- break;
- fi
- a1=`echo $a | sed 's@\([^/]*\)/.*@\1@'`
- b1=`echo $b | sed 's@\([^/]*\)/.*@\1@'`
- if [ "$a1" != "$b1" ]; then
- break;
- fi
- a=`echo $a | sed 's@[^/]*/@@'`
- b=`echo $b | sed 's@[^/]*/@@'`
-done
-# a now has the unique part of the path
-c=""
-# c will have the required number of "../"'s
-while [ "$b" != "" ]
-do
- c="../$c"
- b=`echo $b | sed 's@[^/]*/@@'`
-done
-# return the completed relative path
-echo "$c$a"
-}
-
-
-# ====== MAIN ======
-# Assume any relative path passed in is relative to the current directory
-# Given $1 is a path to the source file
-# Given $2 is a path of the link to be created
-# Create a link that has the relative path to the source file
-# That is, $1 converted relative to $2
-# Check if $1 is absolute or already relative
-#echo add_rel_link.sh $1 $2
-if expr "$1" : '\/' >/dev/null; then
- # The source path is absolute, this is the expected case
- # Check if $2 is absolute or relative
- if expr "$2" : '\/' >/dev/null; then
- # The link path is already absolute, so just use it
- lpath=$2
- else
- # The link path is relative, this is the expected case
- # WARNING: don't use $PWD here, it won't work right
- # WARNING: pwd may be a shell alias. Use /bin/pwd.
- cur=`/bin/pwd`
- lpath=`abspath $2 $cur`
- fi
- # take name off the end of the dest
- ldir=`echo $lpath | sed 's@/[^/]*$@@'`
-
- # If the original path and the ldir do not originate in the same
- # directory tree, we should just use absolute paths
- if [ "`echo $1 | cut -d/ -f2`" != "`echo $ldir | cut -d/ -f2`" ]; then
- spath=$1
- else
- spath=`relpath $1 $ldir`
- fi
- # use the completed relative path and the given destignation path
- echo ln -s $spath $2
- ln -s $spath $2
-else
- # The source path is already relative, so just use it
- echo ln -s $1 $2
- ln -s $1 $2
-fi