guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

05/05: gnu: commencement: Micro-optimize the package graph.


From: guix-commits
Subject: 05/05: gnu: commencement: Micro-optimize the package graph.
Date: Sun, 29 Mar 2020 17:20:38 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit 71d17a09ee133ee4232f08cd8b60ae4373eea6cf
Author: Ludovic Courtès <address@hidden>
AuthorDate: Sun Mar 29 18:57:10 2020 +0200

    gnu: commencement: Micro-optimize the package graph.
    
    This removes 2 'add-data-to-store-cache' lookups.
    
    * gnu/packages/commencement.scm (flex-boot0): Move (package (inherit …))
    outside the 'propagated-inputs' field to avoid creating a new node each
    time the field is accessed.
---
 gnu/packages/commencement.scm | 31 ++++++++++++++++---------------
 1 file changed, 16 insertions(+), 15 deletions(-)

diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 42d1132..9da0f77 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès 
<address@hidden>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic 
Courtès <address@hidden>
 ;;; Copyright © 2014 Andreas Enge <address@hidden>
 ;;; Copyright © 2012 Nikita Karetnikov <address@hidden>
 ;;; Copyright © 2014, 2015, 2017 Mark H Weaver <address@hidden>
@@ -1760,20 +1760,21 @@ exec " gcc "/bin/" program
 
 (define flex-boot0
   ;; This Flex is needed to build MiG as well as Linux-Libre headers.
-  (package
-    (inherit flex)
-    (native-inputs `(("bison" ,bison-boot0)))
-    (propagated-inputs
-     ;; XXX: Here we use an 'm4-boot0' package that's not eq? so that it
-     ;; appears twice in '%build-inputs', like when we were using
-     ;; 'package-with-explicit-inputs'.
-     ;; TODO: Remove this hack on the next rebuild cycle.
-     `(("m4" ,(package (inherit m4-boot0*)))))
-    (inputs (%boot0-inputs))
-    (arguments
-     `(#:implicit-inputs? #f
-       #:guile ,%bootstrap-guile
-       #:tests? #f))))
+  (let ((m4-boot0* (package (inherit m4-boot0*))))
+    (package
+      (inherit flex)
+      (native-inputs `(("bison" ,bison-boot0)))
+      (propagated-inputs
+       ;; XXX: Here we use an 'm4-boot0' package that's not eq? so that it
+       ;; appears twice in '%build-inputs', like when we were using
+       ;; 'package-with-explicit-inputs'.
+       ;; TODO: Remove this hack on the next rebuild cycle.
+       `(("m4" ,m4-boot0*)))
+      (inputs (%boot0-inputs))
+      (arguments
+       `(#:implicit-inputs? #f
+         #:guile ,%bootstrap-guile
+         #:tests? #f)))))
 
 (define linux-libre-headers-boot0
   (mlambda ()



reply via email to

[Prev in Thread] Current Thread [Next in Thread]