summaryrefslogtreecommitdiff
path: root/gnu/packages/base.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-06-07 19:36:50 +0200
committerLudovic Courtès <ludo@gnu.org>2014-06-07 19:36:50 +0200
commit2e92375eb1618595df15fd4779eeb3595f919f78 (patch)
tree011adf1760a27f5ed81fcfb811dee9e97a6172a1 /gnu/packages/base.scm
parentf986c264b2502df5376f4c50ff104b5fc8db9f23 (diff)
gnu: glibc-final: Make sure we hold just the right set of references.
* gnu/packages/base.scm (glibc-final): Wrap in 'package-with-restricted-references'.
Diffstat (limited to 'gnu/packages/base.scm')
-rw-r--r--gnu/packages/base.scm19
1 files changed, 13 insertions, 6 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 1755ba17e6..92c7eb28ef 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -929,12 +929,19 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(define-public glibc-final
;; The final glibc, which embeds the statically-linked Bash built above.
- (package (inherit 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))))))
+ (package-with-restricted-references
+ (package (inherit 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)))))
+
+ ;; 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.
+ (cons* gcc-boot0 (linux-libre-headers-boot0)
+ (package-outputs glibc-final-with-bootstrap-bash))))
(define gcc-boot0-wrapped
;; Make the cross-tools GCC-BOOT0 and BINUTILS-BOOT0 available under the