[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/05: gnu: guile-static-stripped: Remove dependency on bash-minimal.
From: |
Ludovic Courtès |
Subject: |
02/05: gnu: guile-static-stripped: Remove dependency on bash-minimal. |
Date: |
Wed, 28 Feb 2018 16:48:13 -0500 (EST) |
civodul pushed a commit to branch master
in repository guix.
commit 63e48300d19b848dfe75880581338c2c73b7b0df
Author: Ludovic Courtès <address@hidden>
Date: Wed Feb 28 16:43:59 2018 +0100
gnu: guile-static-stripped: Remove dependency on bash-minimal.
Previously guile-static-stripped, which is embedded in the initrd, would
depend on 'bash-minimal' and 'glibc'; the closure size was 77 MiB. Now
the closure size is down to 45.7 MiB.
Reported by Danny Milosavljevic <address@hidden> in
<https://lists.gnu.org/archive/html/guix-devel/2018-02/msg00505.html>.
* gnu/packages/make-bootstrap.scm (%guile-static): Remove the
'pre-configure' phase.
(%guile-static-stripped)[arguments]: Add #:allowed-references.
---
gnu/packages/make-bootstrap.scm | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm
index f1c4bf7..779b7ef 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))