aboutsummaryrefslogtreecommitdiff
dnl SPDX-License-Identifier: CC0-1.0
dnl
dnl Copyright (C) 2023 Wojtek Kosior <koszko@koszko.org>
dnl
dnl This file proviced an autoconf macro that generates a pre-inst-env script
dnl suitable for use in Guile projects.
dnl
# AX_ADD_GUILE_PRE_INST_ENV([FILENAME = pre-inst-env],
#                           [SCM_ROOT_PATH = src/guile],
#                           [GO_ROOT_PATH = src/guile]
#                           [SCRIPTS_PATH = scripts])
# ------------------------------------------------------------------------------
AC_DEFUN([AX_ADD_GUILE_PRE_INST_ENV], [
printf '%s' '
set -eu

SOURCE_DIR='"$(cd "$srcdir" && pwd -P)"'
BUILD_DIR="$(cd "$(dirname "[$]0")" && pwd -P)"

export G''UILE_LOAD_PATH="$SOURCE_DIR/m4_default([$2], [src/guile])[]dnl
:$BUILD_DIR/m4_default([$3], [src/guile])[]dnl
${G''UILE_LOAD_PATH:+:}${G''UILE_LOAD_PATH:-}"

export G''UILE_LOAD_COMPILED_PATH="$BUILD_DIR/m4_default([$3], [src/guile])[]dnl
${G''UILE_LOAD_COMPILED_PATH:+:}${G''UILE_LOAD_COMPILED_PATH:-}"

export G''UILE_AUTO_COMPILE=0

export PATH="$SOURCE_DIR/m4_default([$3], [scripts])${PATH:+:}${PATH:-}"

if test 0 = "[$]#"
then :
     "${SHELL:-/bin/sh}"
else :
    PROGRAM="[$]1"
    shift
    "$PROGRAM" "[$]@"
fi
' > m4_default([$1], [pre-inst-env])

chmod 755 m4_default([$1], [pre-inst-env])
])dnl AX_ADD_GUILE_PRE_INST_ENV