From: Julian Seward Date: Wed, 5 Nov 2008 12:05:14 +0000 (+0000) Subject: Try to compute a correct VG base directory, regardless of how/where X-Git-Tag: svn/VALGRIND_3_4_0~162 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4677e728df9582d3de64f6a82ba0882e3d531d03;p=thirdparty%2Fvalgrind.git Try to compute a correct VG base directory, regardless of how/where the script is invoked. See #162092. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8732 --- diff --git a/vg-in-place b/vg-in-place index 0f58ed1199..23e85407be 100755 --- a/vg-in-place +++ b/vg-in-place @@ -1,14 +1,29 @@ #!/bin/sh -# This ensures it works when invoked from any directory. -d="`dirname $0`" -if [ "$d" = "." ]; then - d="$PWD" +# Figure out an absolute pathname to this file, based on +# $0 (the name of the file) and $PWD. + +dollarzero=$0 + +if [ "${dollarzero#/}" == "${dollarzero}" ]; +then + # Relative name + scriptname=$PWD/$dollarzero; +else + # Absolute name + scriptname=$dollarzero; fi +# echo "Name of this script: " $scriptname + +vgbasedir=`dirname $scriptname` + +# echo "VG base directory: " $vgbasedir + + # We set both VALGRIND_LIB and VALGRIND_LIB_INNER to handle normal and # 'inner' builds. -VALGRIND_LIB="$d/.in_place" \ - VALGRIND_LIB_INNER="$d/.in_place" \ - "$d/coregrind/valgrind" "$@" +VALGRIND_LIB="$vgbasedir/.in_place" \ + VALGRIND_LIB_INNER="$vgbasedir/.in_place" \ + "$vgbasedir/coregrind/valgrind" "$@"