summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-07-06 19:13:12 +0200
committerLudovic Courtès <ludo@gnu.org>2014-07-06 19:13:12 +0200
commit6171070bec84bd84d1659576d646c9368531eacc (patch)
tree03e1e9613022f743fde84bae400a8149f03df11f
parentc2d774746475b61bab2f2154ba06a311d8ce65bc (diff)
downloadguix-6171070bec84bd84d1659576d646c9368531eacc.tar.gz
build: Use the canonical srcdir/builddir in 'pre-inst-env'.
Fixes <http://bugs.gnu.org/17935>.

* pre-inst-env.in (abs_top_builddir, abs_top_srcdir): Use 'pwd -P'.
-rw-r--r--pre-inst-env.in8
1 files changed, 5 insertions, 3 deletions
diff --git a/pre-inst-env.in b/pre-inst-env.in
index 15a48dedaa..233dfcc876 100644
--- a/pre-inst-env.in
+++ b/pre-inst-env.in
@@ -26,9 +26,11 @@
 # By default we may end up with absolute directory names that contain '..',
 # which get into $GUILE_LOAD_PATH, leading to '..' in the module file names
 # recorded by Guile.  To avoid that, make sure we get a real absolute
-# directory name.
-abs_top_srcdir="`cd "@abs_top_srcdir@" > /dev/null; pwd`"
-abs_top_builddir="`cd "@abs_top_builddir@" > /dev/null; pwd`"
+# directory name.  Additionally, use '-P' to get the canonical directory name
+# so that Guile's 'relative' %file-port-name-canonicalization can actually
+# work (see <http://bugs.gnu.org/17935>.)
+abs_top_srcdir="`cd "@abs_top_srcdir@" > /dev/null; pwd -P`"
+abs_top_builddir="`cd "@abs_top_builddir@" > /dev/null; pwd -P`"
 
 GUILE_LOAD_COMPILED_PATH="$abs_top_builddir${GUILE_LOAD_COMPILED_PATH:+:}$GUILE_LOAD_COMPILED_PATH"
 GUILE_LOAD_PATH="$abs_top_builddir:$abs_top_srcdir${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH"