diff options
Diffstat (limited to 'build-aux/pre-inst-env.in')
| -rwxr-xr-x | build-aux/pre-inst-env.in | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/build-aux/pre-inst-env.in b/build-aux/pre-inst-env.in new file mode 100755 index 0000000..c2aaf6d --- /dev/null +++ b/build-aux/pre-inst-env.in @@ -0,0 +1,28 @@ +#!/bin/sh + +# Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> +# +# Usage: ./pre-inst-env COMMAND ARG... +# +# Run COMMAND in a pre-installation environment. Typical use is +# "./pre-inst-env feed build hello". + +# 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. 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" +export GUILE_LOAD_COMPILED_PATH GUILE_LOAD_PATH + +# Define $PATH so that `feed' and friends are easily found. + +PATH="$abs_top_builddir/scripts:$abs_top_builddir:$PATH" +export PATH + +exec "$@" |
