aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xscripts/pvscheck.sh12
1 files changed, 10 insertions, 2 deletions
diff --git a/scripts/pvscheck.sh b/scripts/pvscheck.sh
index 314966f6aa..84b42c2bae 100755
--- a/scripts/pvscheck.sh
+++ b/scripts/pvscheck.sh
@@ -302,8 +302,16 @@ create_compile_commands() {(
# realpath is not available in Ubuntu trusty yet.
realdir() {(
local dir="$1"
- cd "$dir"
- printf '%s\n' "$PWD"
+ local add=""
+ while ! cd "$dir" 2>/dev/null ; do
+ add="${dir##*/}/$add"
+ local new_dir="${dir%/*}"
+ if test "$new_dir" = "$dir" ; then
+ return 1
+ fi
+ dir="$new_dir"
+ done
+ printf '%s\n' "$PWD/$add"
)}
patch_sources() {(