guix_mirror_bot pushed a commit to branch core-packages-team in repository guix.
commit 1682a62969977b13ad72358b5306491b7e36b6b1 Author: Nicolas Graves <[email protected]> AuthorDate: Thu Feb 19 20:34:46 2026 +0100 gnu: make-libstdc++-boot0: Improve style. * gnu/packages/commencement.scm (make-libstdc++-boot0) [arguments]<#:phases>: Replace phase 'unpack-gmp&co with unpack-and-symlink-other-tarballs phase. <#:modules>: Adapt accoringly. [inputs]: Drop input labels. * gnu/packages/gcc.scm (make-libstdc++)[arguments]<#:phases>: Adjust hide-gcc-headers phase. Change-Id: I89e633c15dc77c64e6a38db5438af1a3bc1bcf3e Signed-off-by: Ludovic Courtès <[email protected]> --- gnu/packages/commencement.scm | 33 ++++++++------------------------- gnu/packages/gcc.scm | 15 +++++++++++---- 2 files changed, 19 insertions(+), 29 deletions(-) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 6e7dffe336c..75f703f4c7f 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -2391,33 +2391,16 @@ exec " gcc-bin "/" program "--disable-libstdcxx-pch" #$flags) flags)) + ((#:modules modules) + (append '((ice-9 ftw) (ice-9 match)) modules)) ((#:phases phases) #~(modify-phases #$phases - (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)))))))))) - (inputs `(("gmp-source" ,(bootstrap-origin (package-source gmp-6.0))) - ("mpfr-source" ,(bootstrap-origin (package-source mpfr))) - ("mpc-source" ,(bootstrap-origin (package-source mpc))) - ,@(%boot0-inputs))) + (add-after 'unpack 'unpack-other-tarballs + #$unpack-and-symlink-other-tarballs-phase)))))) + (inputs (cons* (bootstrap-origin (package-source gmp-6.0)) + (bootstrap-origin (package-source mpfr)) + (bootstrap-origin (package-source mpc)) + (map cadr (%boot0-inputs)))) (native-inputs '())))) (define gcc-boot0 diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 3625dcb722d..9065a9073ae 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -1251,10 +1251,17 @@ using compilers other than GCC." #$@(if (version>=? (package-version gcc) "11") #~((add-after 'unpack 'hide-gcc-headers (lambda* (#:key native-inputs inputs #:allow-other-keys) - (let ((gcc (assoc-ref (or native-inputs inputs) - #$(if (%current-target-system) - "cross-gcc" - "gcc")))) + ;; Depending on the actual gcc input, two locations + ;; candidates to check to get gcc from the file tree. + (let* ((gcc-nested (false-if-exception + (search-input-directory + (or native-inputs inputs) + "libexec/gcc"))) + (gcc-nested (or gcc-nested + (search-input-file + (or native-inputs inputs) + "bin/gcc"))) + (gcc (dirname (dirname gcc-nested)))) ;; Fix a regression in GCC 11 where the GCC headers ;; shadows glibc headers when building libstdc++. An ;; upstream fix was added in GCC 11.3.0, but it only
