summaryrefslogtreecommitdiff
path: root/gnu/packages/make-bootstrap.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/make-bootstrap.scm')
-rw-r--r--gnu/packages/make-bootstrap.scm55
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)