diff options
Diffstat (limited to 'gnu/packages/make-bootstrap.scm')
-rw-r--r-- | gnu/packages/make-bootstrap.scm | 55 |
1 files changed, 17 insertions, 38 deletions
diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm index b8d1b2af3e..335d5c811d 100644 --- a/gnu/packages/make-bootstrap.scm +++ b/gnu/packages/make-bootstrap.scm @@ -1,10 +1,11 @@ ;;; 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 © 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2018, 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> -;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -94,32 +95,11 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." (package (inherit gcc) (outputs '("out")) ;all in one so libgcc_s is easily found - (native-search-paths - ;; Set CPLUS_INCLUDE_PATH so GCC is able to find the libc - ;; C++ headers. - (cons (search-path-specification - (variable "CPLUS_INCLUDE_PATH") - (files '("include"))) - (package-native-search-paths gcc))) (inputs `( ;; Distinguish the name so we can refer to it below. ("bootstrap-libc" ,(glibc-for-bootstrap glibc)) ("libc:static" ,(glibc-for-bootstrap glibc) "static") - ,@(package-inputs gcc))) - (arguments - (substitute-keyword-arguments (package-arguments gcc) - ((#:phases phases) - `(modify-phases ,phases - (add-before 'configure 'treat-glibc-as-system-header - (lambda* (#:key inputs #:allow-other-keys) - (let ((libc (assoc-ref inputs "bootstrap-libc"))) - ;; GCCs build processes requires that the libc - ;; we're building against is on the system header - ;; search path. - (for-each (lambda (var) - (setenv var (string-append libc "/include"))) - '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH")) - #t)))))))))) + ,@(package-inputs gcc)))))) (define (package-with-relocatable-glibc p) "Return a variant of P that uses the libc as defined by @@ -137,7 +117,10 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." (define (inputs) (if (%current-target-system) ; is this package cross built? `(("cross-libc" - ,(cross-bootstrap-libc (%current-target-system)))) + ,(cross-bootstrap-libc (%current-target-system))) + ("cross-libc:static" + ,(cross-bootstrap-libc (%current-target-system)) + "static")) '())) (define (native-inputs) @@ -167,15 +150,6 @@ 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-reproducible-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) @@ -252,7 +226,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-for-bootstrap)) + `(("bash" ,static-bash)) '())))) (tar (package (inherit tar) (arguments @@ -298,7 +272,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." ("sed" ,sed) ("grep" ,grep) ("gawk" ,gawk))) - ("bash" ,static-bash-for-bootstrap)))) + ("bash" ,static-bash)))) (define %static-binaries (package @@ -400,6 +374,10 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." (package-arguments binutils)) ((#:configure-flags flags _ ...) flags))) + #:make-flags ,(match (memq #:make-flags (package-arguments binutils)) + ((#:make-flags flags _ ...) + flags) + (_ ''())) #:strip-flags '("--strip-all") #:phases (modify-phases %standard-phases (add-before 'configure 'all-static @@ -535,6 +513,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." #t))))))) (inputs `(("zlib:static" ,zlib "static") + ("isl:static" ,isl "static") ,@(package-inputs gcc))) (native-inputs (if (%current-target-system) @@ -910,8 +889,8 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." ,%linux-libre-headers-bootstrap-tarball))) (_ `(("gcc-tarball" ,%gcc-bootstrap-tarball) ("binutils-tarball" ,%binutils-bootstrap-tarball) - ("glibc-tarball" ,(%glibc-bootstrap-tarball))))) - ("coreutils&co-tarball" ,%bootstrap-binaries-tarball))) + ("glibc-tarball" ,(%glibc-bootstrap-tarball)) + ("coreutils&co-tarball" ,%bootstrap-binaries-tarball)))))) (synopsis "Tarballs containing all the bootstrap binaries") (description synopsis) (home-page #f) |