1
Fork 0
mirror of https://https.git.savannah.gnu.org/git/guix.git/ synced 2025-07-14 19:10:49 +02:00

bootstrap: Build bootstrap bash deterministically.

* gnu/packages/patches/bash-4.4-linux-pgrp-pipe.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/make-bootstrap.scm (static-bash-for-bootstrap): New variable.
(%static-inputs): Use 'static-bash-for-bootstrap' instead of 'static-bash'.
This commit is contained in:
Mark H Weaver 2019-08-11 22:37:12 -04:00
parent 6744cef5b0
commit fe507d7a3d
No known key found for this signature in database
GPG key ID: 7CEF29847562C516
3 changed files with 43 additions and 3 deletions

View file

@ -2,7 +2,7 @@
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2018, 2019 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
@ -125,6 +125,15 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
(current-source-location)
#:native-inputs native-inputs))
(define static-bash-for-bootstrap
(package
(inherit static-bash)
(source (origin
(inherit (package-source static-bash))
(patches
(cons (search-patch "bash-4.4-linux-pgrp-pipe.patch")
(origin-patches (package-source static-bash))))))))
(define %static-inputs
;; Packages that are to be used as %BOOTSTRAP-INPUTS.
(let ((coreutils (package (inherit coreutils)
@ -192,7 +201,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
(("-Wl,-export-dynamic") ""))
#t)))))))
(inputs (if (%current-target-system)
`(("bash" ,static-bash))
`(("bash" ,static-bash-for-bootstrap))
'()))))
(tar (package (inherit tar)
(arguments
@ -233,7 +242,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
("sed" ,sed)
("grep" ,grep)
("gawk" ,gawk)))
("bash" ,static-bash))))
("bash" ,static-bash-for-bootstrap))))
(define %static-binaries
(package