summary refs log tree commit diff
path: root/gnu/packages/base.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2016-11-04 15:16:11 +0100
committerLudovic Courtès <ludo@gnu.org>2016-11-04 15:36:00 +0100
commitfb77c61422ae2d03c0bf655d96b0e88f5f8001da (patch)
tree7471194396b89ba96dd3ca7dfdd63b87c8e66db7 /gnu/packages/base.scm
parent8af47ef603aeea6efbcfe9ab2c4adefefad2f6fb (diff)
downloadguix-fb77c61422ae2d03c0bf655d96b0e88f5f8001da.tar.gz
gnu: Remove '%final-inputs' references at the top level.
Due to circular dependencies, referring to bindings exported by other
modules from the top level is frowned upon.  This patch addresses one of
the remaining cases.

* gnu/packages/base.scm (%final-inputs): New procedure.
* gnu/packages/cross-base.scm: Remove (gnu packages commencement) import.
(cross-gcc): Use the new '%final-inputs'.
* gnu/packages/make-bootstrap.scm: Remove (gnu packages commencement) import.
(package-with-relocatable-glibc): Use the new '%final-inputs'.
Diffstat (limited to 'gnu/packages/base.scm')
-rw-r--r--gnu/packages/base.scm6
1 files changed, 6 insertions, 0 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index a476837102..012a807bab 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -1003,4 +1003,10 @@ program.  It supports a wide variety of different encodings.")
          (proc  (module-ref iface 'canonical-package)))
     (proc package)))
 
+(define-public (%final-inputs)
+  "Return the list of \"final inputs\"."
+  ;; Avoid circular dependency by lazily resolving 'commencement'.
+  (let ((iface (resolve-interface '(gnu packages commencement))))
+    (module-ref iface '%final-inputs)))
+
 ;;; base.scm ends here