From ec8a5ec15f898e864705e5a5c834532e3fa8d0a4 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Sun, 17 Nov 2024 20:30:17 +0100 Subject: [PATCH] gnu: make-bootstrap: Update gcc-static to gcc-14, for the 64bit Hurd. * gnu/packages/make-bootstrap.scm (%gcc-static): Use gcc-14. Update to use G-Expressions. [inputs]: Remove libstdc++ and libstdc++-headers. (%gcc-stripped): Use gcc-14. [inputs, native-inputs]: Clear fields. Change-Id: I4e6d779cb457b256d80d1882f182b72a6f7d2be2 --- gnu/packages/make-bootstrap.scm | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm index 689d48d342..e0dcca7b33 100644 --- a/gnu/packages/make-bootstrap.scm +++ b/gnu/packages/make-bootstrap.scm @@ -488,11 +488,11 @@ (define (%glibc-stripped) (define %gcc-static ;; A statically-linked GCC, with stripped-down functionality. (package-with-relocatable-glibc - (package (inherit gcc) + (package (inherit gcc-14) (name "gcc-static") (outputs '("out")) ; all in one (arguments - (substitute-keyword-arguments (package-arguments gcc) + (substitute-keyword-arguments (package-arguments gcc-14) ((#:modules modules %default-gnu-modules) `((srfi srfi-1) (srfi srfi-26) @@ -501,7 +501,7 @@ (define %gcc-static ((#:guile _) #f) ((#:implicit-inputs? _) #t) ((#:configure-flags flags) - `(append (list + #~(append (list ;; We don't need a full bootstrap here. "--disable-bootstrap" @@ -526,9 +526,9 @@ (define %gcc-static "--disable-libssp" "--disable-libquadmath") (remove (cut string-match "--(.*plugin|enable-languages)" <>) - ,flags))) + #$flags))) ((#:phases phases) - `(modify-phases ,phases + #~(modify-phases #$phases (add-after 'pre-configure 'remove-lgcc_s (lambda _ ;; Remove the '-lgcc_s' added to GNU_USER_TARGET_LIB_SPEC in @@ -538,12 +538,12 @@ (define %gcc-static (substitute* (cons "gcc/config/rs6000/sysv4.h" (find-files "gcc/config" "^gnu-user.*\\.h$")) - ((" -lgcc_s}}") "}}")) - #t)))))) + ((" -lgcc_s}}") "}}")))))))) (inputs `(("zlib:static" ,zlib "static") ("isl:static" ,isl "static") - ,@(package-inputs gcc))) + ,@(fold alist-delete (package-inputs gcc-14) + '("libstdc++" "libstdc++-headers")))) (native-inputs (if (%current-target-system) `(;; When doing a Canadian cross, we need GMP/MPFR/MPC both @@ -556,17 +556,19 @@ (define %gcc-static ("gmp-native" ,gmp) ("mpfr-native" ,mpfr) ("mpc-native" ,mpc) - ,@(package-native-inputs gcc)) - (package-native-inputs gcc)))))) + ,@(package-native-inputs gcc-14)) + (package-native-inputs gcc-14)))))) (define %gcc-stripped ;; The subset of GCC files needed for bootstrap. (package - (inherit gcc) + (inherit gcc-14) (name "gcc-stripped") (build-system trivial-build-system) (source #f) (outputs '("out")) ;only one output + (inputs '()) + (native-inputs '()) (arguments (list #:modules '((guix build utils)) #:builder @@ -632,6 +634,7 @@ (define* (make-guile-static guile patches) (propagated-inputs (modify-inputs (package-propagated-inputs guile) (replace "libgc" libgc/static-libs))) + (arguments (substitute-keyword-arguments (package-arguments guile) ((#:configure-flags flags #~'())