X-Git-Url: https://git.hcoop.net/bpt/guile.git/blobdiff_plain/070d8db023c663ce14f25cb601d46b300ad82da4..8051cf23044e5dbbece0d328102197a04ce5718d:/meta/uninstalled-env.in diff --git a/meta/uninstalled-env.in b/meta/uninstalled-env.in index eec648d72..567c6e243 100644 --- a/meta/uninstalled-env.in +++ b/meta/uninstalled-env.in @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright (C) 2003, 2006, 2008, 2009, 2010 Free Software Foundation +# Copyright (C) 2003, 2006, 2008, 2009, 2010, 2011, 2012 Free Software Foundation # # This file is part of GUILE. # @@ -32,7 +32,7 @@ # Example: ../../uninstalled-env ./guile-test-foo # config -subdirs_with_ltlibs="srfi guile-readline libguile" # maintain me +subdirs_with_ltlibs="guile-readline libguile" # maintain me # env (set by configure) top_srcdir="@top_srcdir_absolute@" @@ -46,59 +46,72 @@ top_builddir="@top_builddir_absolute@" exit 1 } -if [ x"$GUILE_LOAD_PATH" = x ] +# When cross-compiling, let $GUILE_FOR_BUILD use its own .go files since +# the ones that are being built may be incompatible ($GUILE_FOR_BUILD is +# typically used to run `guild compile --target=$host'.) Likewise, +# $GUILE_FOR_BUILD must use its own source files when booting; for +# instance, $srcdir/module/ice-9/boot-9.scm must not be in its search +# path, because it would then end up using its C evaluator to run the +# compiler. +if test "@cross_compiling@" = "no" then - GUILE_LOAD_PATH="${top_srcdir}/module:${top_srcdir}:${top_srcdir}/guile-readline" - if test "${top_srcdir}" != "${top_builddir}"; then - GUILE_LOAD_PATH="$GUILE_LOAD_PATH:${top_builddir}/module:${top_builddir}:${top_builddir}/guile-readline" + if [ x"$GUILE_LOAD_PATH" = x ] + then + GUILE_LOAD_PATH="${top_srcdir}/module:${top_srcdir}/guile-readline" + if test "${top_srcdir}" != "${top_builddir}"; then + GUILE_LOAD_PATH="$GUILE_LOAD_PATH:${top_builddir}/module:${top_builddir}/guile-readline" + fi + else + for d in "/module" "/guile-readline" + do + # This hair prevents double inclusion. + # The ":" prevents prefix aliasing. + case x"$GUILE_LOAD_PATH" in + x*${top_srcdir}${d}:*) ;; + x*${top_srcdir}${d}) ;; + *) GUILE_LOAD_PATH="${top_srcdir}${d}:$GUILE_LOAD_PATH" ;; + esac + case x"$GUILE_LOAD_PATH" in + x*${top_builddir}${d}:*) ;; + x*${top_builddir}${d}) ;; + *) GUILE_LOAD_PATH="${top_builddir}${d}:$GUILE_LOAD_PATH" ;; + esac + done fi -else - for d in "/module" "" "/guile-readline" - do - # This hair prevents double inclusion. - # The ":" prevents prefix aliasing. - case x"$GUILE_LOAD_PATH" in - x*${top_srcdir}${d}:*) ;; - *) GUILE_LOAD_PATH="${top_srcdir}${d}:$GUILE_LOAD_PATH" ;; - esac - case x"$GUILE_LOAD_PATH" in - x*${top_builddir}${d}:*) ;; - *) GUILE_LOAD_PATH="${top_builddir}${d}:$GUILE_LOAD_PATH" ;; - esac - done -fi -export GUILE_LOAD_PATH + export GUILE_LOAD_PATH -if [ x"$GUILE_LOAD_COMPILED_PATH" = x ] -then - GUILE_LOAD_COMPILED_PATH="${top_builddir}/module:${top_builddir}:${top_builddir}/guile-readline" -else - for d in "/module" "" "/guile-readline" - do - # This hair prevents double inclusion. - # The ":" prevents prefix aliasing. - case x"$GUILE_LOAD_COMPILED_PATH" in - x*${top_builddir}${d}:*) ;; - *) GUILE_LOAD_COMPILED_PATH="${top_builddir}${d}:$GUILE_LOAD_COMPILED_PATH" ;; - esac - done -fi -export GUILE_LOAD_COMPILED_PATH + if test "x$GUILE_LOAD_COMPILED_PATH" = "x" + then + GUILE_LOAD_COMPILED_PATH="${top_builddir}/module:${top_builddir}/guile-readline" + else + for d in "/module" "/guile-readline" + do + # This hair prevents double inclusion. + # The ":" prevents prefix aliasing. + case x"$GUILE_LOAD_COMPILED_PATH" in + x*${top_builddir}${d}:*) ;; + x*${top_builddir}${d}) ;; + *) GUILE_LOAD_COMPILED_PATH="${top_builddir}${d}:$GUILE_LOAD_COMPILED_PATH" ;; + esac + done + fi + export GUILE_LOAD_COMPILED_PATH -# Don't look in installed dirs for guile modules -if ( env | grep -v '^GUILE_SYSTEM_PATH=' > /dev/null ); then - GUILE_SYSTEM_PATH= - export GUILE_SYSTEM_PATH -fi -# Don't look in installed dirs for compiled guile modules -if ( env | grep -v '^GUILE_SYSTEM_COMPILED_PATH=' > /dev/null ); then - GUILE_SYSTEM_COMPILED_PATH= - export GUILE_SYSTEM_COMPILED_PATH -fi -# Don't look in installed dirs for dlopen-able modules -if ( env | grep -v '^GUILE_SYSTEM_EXTENSIONS_PATH=' > /dev/null ); then - GUILE_SYSTEM_EXTENSIONS_PATH= - export GUILE_SYSTEM_EXTENSIONS_PATH + # Don't look in installed dirs for guile modules + if ( env | grep -v '^GUILE_SYSTEM_PATH=' > /dev/null ); then + GUILE_SYSTEM_PATH= + export GUILE_SYSTEM_PATH + fi + # Don't look in installed dirs for compiled guile modules + if ( env | grep -v '^GUILE_SYSTEM_COMPILED_PATH=' > /dev/null ); then + GUILE_SYSTEM_COMPILED_PATH= + export GUILE_SYSTEM_COMPILED_PATH + fi + # Don't look in installed dirs for dlopen-able modules + if ( env | grep -v '^GUILE_SYSTEM_EXTENSIONS_PATH=' > /dev/null ); then + GUILE_SYSTEM_EXTENSIONS_PATH= + export GUILE_SYSTEM_EXTENSIONS_PATH + fi fi # handle LTDL_LIBRARY_PATH (no clobber) @@ -128,9 +141,13 @@ export PKG_CONFIG_PATH # handle PATH (no clobber) PATH="${top_builddir}/libguile:${PATH}" PATH="${top_srcdir}/meta:${PATH}" -if "x${top_srcdir}" != "x${top_builddir}"; then +if test "x${top_srcdir}" != "x${top_builddir}"; then PATH="${top_builddir}/meta:${PATH}" fi export PATH +# Define $GUILE, used by `guild'. +GUILE="${top_builddir}/meta/guile" +export GUILE + exec "$@"