summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/commencement.scm53
1 files changed, 25 insertions, 28 deletions
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 1584f000d4..fe9fbebcc2 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -673,35 +673,32 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(define glibc-final
;; The final glibc, which embeds the statically-linked Bash built above.
- (package (inherit glibc)
- (package
- (inherit (package
- (inherit glibc)
- ;; Use the source patched with %BOOTSTRAP-GUILE.
- (source (package-source glibc-final-with-bootstrap-bash))))
- (name "glibc")
- (inputs `(("static-bash" ,static-bash-for-glibc)
- ,@(alist-delete
- "static-bash"
- (package-inputs glibc-final-with-bootstrap-bash))))
-
- ;; This time we need 'msgfmt' to install all the libc.mo files.
- (native-inputs `(,@(package-native-inputs glibc-final-with-bootstrap-bash)
- ("gettext" ,gettext-boot0)))
-
- (propagated-inputs
- (package-propagated-inputs glibc-final-with-bootstrap-bash))
-
- ;; The final libc only refers to itself, but the 'debug' output contains
- ;; references to GCC-BOOT0 and to the Linux headers. XXX: Would be great
- ;; if 'allowed-references' were per-output.
- (arguments
- `(#:allowed-references
- ,(cons* `(,gcc-boot0 "lib") (kernel-headers-boot0)
- static-bash-for-glibc
- (package-outputs glibc-final-with-bootstrap-bash))
+ ;; Use 'package/inherit' so we get the 'replacement' of 'glibc', if any.
+ (let ((glibc (package-with-bootstrap-guile glibc)))
+ (package/inherit glibc
+ (name "glibc")
+ (inputs `(("static-bash" ,static-bash-for-glibc)
+ ,@(alist-delete
+ "static-bash"
+ (package-inputs glibc-final-with-bootstrap-bash))))
+
+ ;; This time we need 'msgfmt' to install all the libc.mo files.
+ (native-inputs `(,@(package-native-inputs glibc-final-with-bootstrap-bash)
+ ("gettext" ,gettext-boot0)))
+
+ (propagated-inputs
+ (package-propagated-inputs glibc-final-with-bootstrap-bash))
+
+ ;; The final libc only refers to itself, but the 'debug' output contains
+ ;; references to GCC-BOOT0 and to the Linux headers. XXX: Would be great
+ ;; if 'allowed-references' were per-output.
+ (arguments
+ `(#:allowed-references
+ ,(cons* `(,gcc-boot0 "lib") (kernel-headers-boot0)
+ static-bash-for-glibc
+ (package-outputs glibc-final-with-bootstrap-bash))
- ,@(package-arguments glibc-final-with-bootstrap-bash)))))
+ ,@(package-arguments glibc-final-with-bootstrap-bash))))))
(define gcc-boot0-wrapped
;; Make the cross-tools GCC-BOOT0 and BINUTILS-BOOT0 available under the