gnu: Gracefully handle circular dependencies between 'base' and 'linux'.

* gnu/packages/base.scm (linux-libre-headers-boot0): Turn into a thunk.
  User updated.
This commit is contained in:
Ludovic Courtès 2013-10-06 22:01:15 +02:00
parent 9a6a9dae6f
commit 74067e1aeb
1 changed files with 5 additions and 2 deletions

View File

@ -764,7 +764,10 @@ identifier SYSTEM."
(native-inputs (alist-delete "texinfo"
(package-native-inputs gcc-4.7))))))
(define linux-libre-headers-boot0
(define (linux-libre-headers-boot0)
"Return Linux-Libre header files for the bootstrap environment."
;; Note: this is wrapped in a thunk to nicely handle circular dependencies
;; between (gnu packages linux) and this module.
(package-with-bootstrap-guile
(package (inherit linux-libre-headers)
(arguments `(#:guile ,%bootstrap-guile
@ -809,7 +812,7 @@ identifier SYSTEM."
;; install rpc/*.h.
"--enable-obsolete-rpc")
,flags)))))
(propagated-inputs `(("linux-headers" ,linux-libre-headers-boot0)))
(propagated-inputs `(("linux-headers" ,(linux-libre-headers-boot0))))
(inputs
`( ;; A native GCC is needed to build `cross-rpcgen'.
("native-gcc" ,@(assoc-ref %boot0-inputs "gcc"))