lilypond-1.3.145
[lilypond.git] / buildscripts / walk.sh
bloba1ffd5c1d90913dd6322236d7b9e531c93d407dd
1 #!@SHELL@
2 # walk.sh
3 # ugh
4 # print reversed relative path to $1
6 function base ()
8 expr "$1" : "\(/[^/]*\)"
11 function unbase ()
13 expr "$1" : "/[^/]*\(.*\)"
16 function walk ()
18 if expr "$1" : '/' > /dev/null 2>&1; then
19 c=../
21 from=`(cd "$1" && pwd) | sed 's://*:/:g'`
22 to=`pwd | sed 's://*:/:g'`
23 t=`base "$to"`
24 f=`base "$from"`
25 while [ -n "$t" -a "$t" = "$f" ]; do
26 to=`unbase "$to"`
27 from=`unbase "$from"`
28 t=`base "$to"`
29 f=`base "$from"`
30 done
31 i=`echo $from | sed -e 's:[^/]\+:..:g'`
32 i=`echo $i | sed -e 's:/[.][.]:..:'`
33 echo $c$i$to
36 walk $1