Subject: [bug#66958] [PATCH] build: Require scripts/guix in pre-inst-env.

From: Sergey Trofimov <[email-masked]>
Date: Sun, 5 Nov 2023 19:43:34 +0100

* Makefile.am: Make scripts/guix depend on local guile.
* build-aux/pre-inst-env.in: Require scripts/guix.
---
 Makefile.am               | 2 +-
 build-aux/pre-inst-env.in | 7 +++++++
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/Makefile.am b/Makefile.am
index c99f2f2911..d7f14b8962 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -46,7 +46,7 @@ do_subst = $(SED)					\
   -e 's,[@]abs_top_builddir[@],$(abs_top_builddir),g'	\
   -e 's,[@]localedir[@],$(localedir),g'
 
-scripts/guix: scripts/guix.in Makefile
+scripts/guix: scripts/guix.in Makefile guile$(EXEEXT)
 	$(AM_V_at)rm -f $@ $@-t
 	$(AM_V_at)$(MKDIR_P) "$(@D)"
 	$(AM_V_GEN)$(do_subst) < "$(srcdir)/$@.in" > "$@-t"
diff --git a/build-aux/pre-inst-env.in b/build-aux/pre-inst-env.in
index cd90a06cbc..4063b46a4b 100644
--- a/build-aux/pre-inst-env.in
+++ b/build-aux/pre-inst-env.in
@@ -37,11 +37,18 @@ GUILE_LOAD_COMPILED_PATH="$abs_top_builddir${GUILE_LOAD_COMPILED_PATH:+:}$GUILE_
 GUILE_LOAD_PATH="$abs_top_builddir:$abs_top_srcdir${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH"
 export GUILE_LOAD_COMPILED_PATH GUILE_LOAD_PATH
 
+CURRENT_GUIX=$(which guix)
 # Define $PATH so that `guix' and friends are easily found.
 
 PATH="$abs_top_builddir/scripts:$abs_top_builddir:$PATH"
 export PATH
 
+# sanity check
+if [ "$CURRENT_GUIX" = "`which guix`" ]; then
+    echo "$abs_top_builddir/scripts/guix is not built. Please run make scripts/guix"
+    exit 1
+fi
+
 # The daemon invokes 'guix'; tell it which one to use.
 GUIX="$abs_top_builddir/scripts/guix"
 export GUIX

base-commit: 286639c9af49dc56dce68a5483fd8ca3aeaecdb0
-- 
2.41.0