From: Paul Eggert Date: Thu, 1 Jul 1993 19:06:50 +0000 (+0000) Subject: Don't create absolute symbolic links; X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=884caf18bbaa11fa562c52e44951016c4664ad74;p=gcc.git Don't create absolute symbolic links; make them relative instead. From-SVN: r4815 --- diff --git a/gcc/fixinc.svr4 b/gcc/fixinc.svr4 index 185d97412bd..a17247ce8ee 100755 --- a/gcc/fixinc.svr4 +++ b/gcc/fixinc.svr4 @@ -113,9 +113,12 @@ if $LINKS; then if expr $x : "${INPUT}/.*" > /dev/null; then # Y gets the actual target dir name, relative to ${INPUT}. y=`echo $x | sed -n "s&${INPUT}/&&p"` - echo $file '->' $y ': Making link' + # DOTS is the relative path from ${LIB}/$file's dir back to ${LIB}. + dots=`echo "$file" | + sed -e 's@^./@@' -e 's@[^/][^/]*@..@g' -e 's@..$@@'` + echo $file '->' $dots$y ': Making link' rm -fr ${LIB}/$file > /dev/null 2>&1 - ln -s ${LIB}/$y ${LIB}/$file > /dev/null 2>&1 + ln -s $dots$y ${LIB}/$file > /dev/null 2>&1 else # If the link is to outside ${INPUT}, # treat this directory as if it actually contained the files. diff --git a/gcc/fixincludes b/gcc/fixincludes index d589f2c8bf9..51616e4fd48 100755 --- a/gcc/fixincludes +++ b/gcc/fixincludes @@ -161,9 +161,12 @@ if $LINKS; then elif expr $x : "${INPUT}/.*" > /dev/null; then # Y gets the actual target dir name, relative to ${INPUT}. y=`echo $x | sed -n "s&${INPUT}/&&p"` - echo $file '->' $y ': Making link' + # DOTS is the relative path from ${LIB}/$file's dir back to ${LIB}. + dots=`echo "$file" | + sed -e 's@^./@@' -e 's@[^/][^/]*@..@g' -e 's@..$@@'` + echo $file '->' $dots$y ': Making link' rm -fr ${LIB}/$file > /dev/null 2>&1 - ln -s ${LIB}/$y ${LIB}/$file > /dev/null 2>&1 + ln -s $dots$y ${LIB}/$file > /dev/null 2>&1 else # If the link is to a dir $target outside ${INPUT}, # repoint the link at ${INPUT}/root$target @@ -201,8 +204,11 @@ if $LINKS; then ;; esac done + # DOTS is the relative path from ${LIB}/$file's dir back to ${LIB}. + dots=`echo "$file" | + sed -e 's@^./@@' -e 's@[^/][^/]*@..@g' -e 's@..$@@'` rm -fr ${LIB}/$file > /dev/null 2>&1 - ln -s ${LIB}/root$x ${LIB}/$file > /dev/null 2>&1 + ln -s ${dots}root$x ${LIB}/$file > /dev/null 2>&1 treetops="$treetops $x ${LIB}/root$x" fi fi