[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
37/85: gnu: gcc-mesboot: Adjust for changes in gcc-mesboot1.
From: |
guix-commits |
Subject: |
37/85: gnu: gcc-mesboot: Adjust for changes in gcc-mesboot1. |
Date: |
Tue, 17 Dec 2024 04:08:07 -0500 (EST) |
efraim pushed a commit to branch wip-riscv-bootstrap
in repository guix.
commit e1024bf76bf6472570f800ee8539780d55d4fb26
Author: Efraim Flashner <efraim@flashner.co.il>
AuthorDate: Wed Oct 9 19:51:37 2024 +0300
gnu: gcc-mesboot: Adjust for changes in gcc-mesboot1.
* gnu/packages/commencement.scm (gcc-mesboot)[inputs]: Replace gmp, mpfr
and mpc sources with the ones used later in the bootstrap. Add the
no-longer inherited 'unpack-gmp&co phase. Replace the
'set-cplus-include-path phase instead of the 'setenv phase and make the
changes less dramatic.
Change-Id: I89ec54cae4f48ea5f1b2c894c50a6065a56e5d33
---
gnu/packages/commencement.scm | 42 +++++++++++++++++++++++++++++-------------
1 file changed, 29 insertions(+), 13 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index a7aeb04523..44ee252d1c 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -2120,6 +2120,9 @@ exec " gcc "/bin/" program
(native-inputs `(("gcc-wrapper" ,gcc-mesboot1-wrapper)
("headers" ,glibc-headers-mesboot)
,@(%boot-mesboot4-inputs)))
+ (inputs `(("gmp-source" ,(bootstrap-origin (package-source gmp-6.0)))
+ ("mpfr-source" ,(bootstrap-origin (package-source mpfr)))
+ ("mpc-source" ,(bootstrap-origin (package-source mpc)))))
(arguments
`(#:validate-runpath? #f
,@(substitute-keyword-arguments (package-arguments gcc-mesboot1)
@@ -2167,31 +2170,44 @@ exec " gcc "/bin/" program
(delete 'apply-boot-patch)
(delete 'unpack-g++) ; sadly, gcc-4.9.4 does not provide
; modular core/language
downloads
- (replace 'setenv
+ (add-after 'unpack 'unpack-gmp&co
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((gmp (assoc-ref %build-inputs "gmp-source"))
+ (mpfr (assoc-ref %build-inputs "mpfr-source"))
+ (mpc (assoc-ref %build-inputs "mpc-source")))
+
+ ;; To reduce the set of pre-built bootstrap inputs, build
+ ;; GMP & co. from GCC.
+ (for-each (lambda (source)
+ (invoke "tar" "xvf" source))
+ (list gmp mpfr mpc))
+
+ ;; Create symlinks like `gmp' -> `gmp-x.y.z'.
+ #$@(map (lambda (lib)
+ ;; Drop trailing letters, as gmp-6.0.0a unpacks
+ ;; into gmp-6.0.0.
+ #~(symlink #$(string-trim-right
+ (package-full-name lib "-")
+ char-set:letter)
+ #$(package-name lib)))
+ (list gmp-6.0 mpfr mpc)))))
+ (replace 'set-cplus-include-path
(lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (binutils (assoc-ref %build-inputs "binutils"))
- (bash (assoc-ref %build-inputs "bash"))
- (gcc (assoc-ref %build-inputs "gcc"))
- (glibc (assoc-ref %build-inputs "libc"))
- (kernel-headers (assoc-ref %build-inputs
"kernel-headers")))
+ (let* ((bash (assoc-ref %build-inputs "bash"))
+ (gcc (assoc-ref %build-inputs "gcc")))
(setenv "CONFIG_SHELL" (string-append bash "/bin/sh"))
(setenv "C_INCLUDE_PATH" (string-append
+ (getenv "C_INCLUDE_PATH") ":"
gcc "/lib/gcc-lib/"
#$(commencement-build-target)
"/4.6.4/include"
- ":" kernel-headers "/include"
- ":" glibc "/include"
":" (getcwd) "/mpfr/src"))
(setenv "CPLUS_INCLUDE_PATH" (string-append
+ (getenv
"CPLUS_INCLUDE_PATH") ":"
gcc "/lib/gcc-lib/"
#$(commencement-build-target)
"/4.6.4/include"
- ":" kernel-headers
"/include"
- ":" glibc "/include"
":" (getcwd) "/mpfr/src"))
- (setenv "LIBRARY_PATH" (string-append glibc "/lib"
- ":" gcc "/lib"))
(format (current-error-port) "C_INCLUDE_PATH=~a\n"
(getenv "C_INCLUDE_PATH"))
(format (current-error-port) "CPLUS_INCLUDE_PATH=~a\n"
(getenv "CPLUS_INCLUDE_PATH"))
(format (current-error-port) "LIBRARY_PATH=~a\n"
- 59/85: gnu: glibc-headers-mesboot: Remove unused C macro., (continued)
- 59/85: gnu: glibc-headers-mesboot: Remove unused C macro., guix-commits, 2024/12/17
- 65/85: gnu: tcc-musl: Update build flags for multiple architectures., guix-commits, 2024/12/17
- 69/85: gnu: binutils-muslboot0: Correct package inputs., guix-commits, 2024/12/17
- 23/85: gnu: tcc-boot: Update to 0.9.27.1139-8cd21e9., guix-commits, 2024/12/17
- 51/85: gnu: gnu-make-boot0: Adjust configure-flags on riscv64-linux., guix-commits, 2024/12/17
- 54/85: gnu: %boot0-inputs: Use newly built *-boot0 packages on riscv64-linux., guix-commits, 2024/12/17
- 75/85: fixup mpc-boot, guix-commits, 2024/12/17
- 80/85: gnu: gcc-muslboot: Backport c++ builtin values., guix-commits, 2024/12/17
- 78/85: gnu: gcc-mesboot1: Backport c++ builtin values., guix-commits, 2024/12/17
- 72/85: fixup gmp-boot, guix-commits, 2024/12/17
- 37/85: gnu: gcc-mesboot: Adjust for changes in gcc-mesboot1.,
guix-commits <=
- 45/85: gnu: gawk-mesboot: Remove pre-generated source file., guix-commits, 2024/12/17
- 66/85: gnu: musl-boot0: Fix installation order of headers., guix-commits, 2024/12/17
- 81/85: gnu: gcc-muslboot: Apply patches in the package source., guix-commits, 2024/12/17
- 55/85: gnu: %boot0-inputs: Remove duplicate packages., guix-commits, 2024/12/17