From e050aa1990ca846ccbf27327bc9009ffcfa0d578 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 27 Feb 2019 20:39:13 +0100 Subject: gnu: make-bootstrap: Adjust for GCC7. This is a follow-up to commit 01e8263febb9634564b4b73af49b81a36567a11b. * gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc): Add the GCC7 'treat-glibc-as-system-header' build phase. --- gnu/packages/make-bootstrap.scm | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) (limited to 'gnu/packages/make-bootstrap.scm') diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm index 86e331b34d..ec477da7c8 100644 --- a/gnu/packages/make-bootstrap.scm +++ b/gnu/packages/make-bootstrap.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2018 Mark H Weaver ;;; Copyright © 2018 Jan (janneke) Nieuwenhuizen +;;; Copyright © 2019 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -114,11 +115,26 @@ (define (native-inputs) `(("libc" ,(glibc-for-bootstrap)) ("libc:static" ,(glibc-for-bootstrap) "static") ("gcc" ,(package (inherit gcc) - (outputs '("out")) ; all in one so libgcc_s is easily found + (outputs '("out")) ;all in one so libgcc_s is easily found (inputs - `(("libc" ,(glibc-for-bootstrap)) + `(;; Distinguish the name so we can refer to it below. + ("bootstrap-libc" ,(glibc-for-bootstrap)) ("libc:static" ,(glibc-for-bootstrap) "static") - ,@(package-inputs gcc))))) + ,@(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))))))))) ,@(fold alist-delete (%final-inputs) '("libc" "gcc"))))) (package-with-explicit-inputs p inputs -- cgit v1.2.3