summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/make-bootstrap.scm11
1 files changed, 10 insertions, 1 deletions
diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm
index f1c4bf7bc5..779b7ef5aa 100644
--- a/gnu/packages/make-bootstrap.scm
+++ b/gnu/packages/make-bootstrap.scm
@@ -532,6 +532,13 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
                       ''("LDFLAGS=-ldl"))
                      ((#:phases phases '%standard-phases)
                       `(modify-phases ,phases
+
+                         ;; Do not record the absolute file name of 'sh' in
+                         ;; (ice-9 popen).  This makes 'open-pipe' unusable in
+                         ;; a build chroot ('open-pipe*' is fine) but avoids
+                         ;; keeping a reference to Bash.
+                         (delete 'pre-configure)
+
                          (add-before 'configure 'static-guile
                            (lambda _
                              (substitute* "libguile/Makefile.in"
@@ -557,7 +564,9 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
     (name "guile-static-stripped")
     (build-system trivial-build-system)
     (arguments
-     `(#:modules ((guix build utils))
+     ;; The end result should depend on nothing but itself.
+     `(#:allowed-references ("out")
+       #:modules ((guix build utils))
        #:builder
        (let ()
          (use-modules (guix build utils))