scripts: fix build in a symlinked directory
authorOlivier Matz <olivier.matz@6wind.com>
Tue, 5 May 2015 09:00:09 +0000 (11:00 +0200)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Tue, 12 May 2015 12:13:42 +0000 (14:13 +0200)
The script relpath.sh returns the relative path of the first directory
from the second directory. It is used to generate relative symlinks,
which can be useful if the build directory is embedded in the dpdk
directory: the whole dpdk can be moved without breaking the links,
which is helpful for an installation.

In case the build directory is a symlink, the script was not generating
the proper relative path. Fix this by calling "readlink -f" on the
arguments.

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Tested-by: Simon Kagstrom <simon.kagstrom@netinsight.net>
scripts/relpath.sh

index 00030e5..7d2f48f 100755 (executable)
@@ -43,8 +43,13 @@ if [ $# -ne 2 ]; then
        exit 1
 fi
 
-REL1=${1#/}
-REL2=${2#/}
+# get the real absolute path, derefencing symlinks
+ABS1=$(readlink -f $1)
+ABS2=$(readlink -f $2)
+
+# remove leading slash
+REL1=${ABS1#/}
+REL2=${ABS2#/}
 
 left1=${REL1%%/*}
 right1=${REL1#*/}