diff options
author | Ludovic Courtès <ludo@gnu.org> | 2020-03-29 18:57:10 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2020-03-29 23:14:28 +0200 |
commit | 71d17a09ee133ee4232f08cd8b60ae4373eea6cf (patch) | |
tree | 11e681aa758a7fd6f3b93c3520049e005f17ded1 | |
parent | 5a17b9b673c9509ac31401fa60aa0a010656e8ac (diff) | |
download | guix-71d17a09ee133ee4232f08cd8b60ae4373eea6cf.tar guix-71d17a09ee133ee4232f08cd8b60ae4373eea6cf.tar.gz |
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.
-rw-r--r-- | gnu/packages/commencement.scm | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 42d1132fba..9da0f77879 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 <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2014, 2015, 2017 Mark H Weaver <mhw@netris.org> @@ -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 () |