[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
06/92: squash! gnu: Add libc-for-target and glibc/hurd.
From: |
guix-commits |
Subject: |
06/92: squash! gnu: Add libc-for-target and glibc/hurd. |
Date: |
Fri, 23 Jun 2023 12:45:36 -0400 (EDT) |
janneke pushed a commit to branch hurd-team
in repository guix.
commit 0e8ef6aadce8f45d39c537ebe8f9da272998e0f8
Author: Janneke Nieuwenhuizen <janneke@gnu.org>
AuthorDate: Thu Jun 1 23:39:50 2023 +0200
squash! gnu: Add libc-for-target and glibc/hurd.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)[outputs,
source, arguments]: Use (libc-for-target) instead of glibc.
(glibc-final)[source]: Use libc (libc-for-target), instead of glibc.
Co-authored-by: Janneke Nieuwenhuizen <janneke@gnu.org>
---
gnu/packages/commencement.scm | 105 +++++++++++++++++++++---------------------
1 file changed, 53 insertions(+), 52 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 5e2c9230f1..4f565255fa 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -2827,59 +2827,60 @@ memoized as a function of '%current-system'."
;; store path has no dependencies. Actually, the really-final libc is
;; built just below; the only difference is that this one uses the
;; bootstrap Bash.
- (package
- (inherit (libc-for-target))
- (name "glibc-intermediate")
- (outputs (delete "debug" (package-outputs glibc)))
- (source (bootstrap-origin (package-source glibc)))
- (arguments
- `(#:guile ,%bootstrap-guile
- #:implicit-inputs? #f
-
- ,@(substitute-keyword-arguments (package-arguments glibc)
- ((#:configure-flags flags)
- `(append (list ,(string-append "--host=" (boot-triplet))
- ,(string-append "--build="
- (nix-system->gnu-triplet))
- ,(if (system-hurd?) "--disable-werror"
- ""))
- ,flags))
- ((#:phases phases)
- `(modify-phases ,phases
- (add-before 'configure 'pre-configure
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Don't clobber include paths with the bootstrap libc.
- (unsetenv "C_INCLUDE_PATH")
- (unsetenv "CPLUS_INCLUDE_PATH")
-
- ;; Tell 'libpthread' where to find 'libihash' on Hurd
systems.
- ,@(if (system-hurd?)
- '((substitute* '("sysdeps/mach/Makefile"
- "sysdeps/mach/hurd/Makefile")
- (("LDLIBS-pthread.so =.*")
- (string-append "LDLIBS-pthread.so = "
- (assoc-ref %build-inputs
"kernel-headers")
- "/lib/libihash.a\n"))))
- '()))))))))
- (propagated-inputs `(("kernel-headers" ,(kernel-headers-boot0))))
- (native-inputs
- `(("bison" ,bison-boot0)
- ("texinfo" ,texinfo-boot0)
- ("perl" ,perl-boot0)
- ("python" ,python-boot0)))
- (inputs
- `( ;; The boot inputs. That includes the bootstrap libc. We don't want
- ;; it in $CPATH, hence the 'pre-configure' phase above.
- ,@(%boot1-inputs)
+ (let ((libc (libc-for-target)))
+ (package
+ (inherit libc)
+ (name "glibc-intermediate")
+ (outputs (delete "debug" (package-outputs libc)))
+ (source (bootstrap-origin (package-source libc)))
+ (arguments
+ `(#:guile ,%bootstrap-guile
+ #:implicit-inputs? #f
- ;; A native MiG is needed to build Glibc on Hurd.
- ,@(if (system-hurd?)
- `(("mig" ,mig-boot0))
- '())
+ ,@(substitute-keyword-arguments (package-arguments libc)
+ ((#:configure-flags flags)
+ `(append (list ,(string-append "--host=" (boot-triplet))
+ ,(string-append "--build="
+ (nix-system->gnu-triplet))
+ ,(if (system-hurd?) "--disable-werror"
+ ""))
+ ,flags))
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-before 'configure 'pre-configure
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Don't clobber include paths with the bootstrap libc.
+ (unsetenv "C_INCLUDE_PATH")
+ (unsetenv "CPLUS_INCLUDE_PATH")
+
+ ;; Tell 'libpthread' where to find 'libihash' on Hurd
systems.
+ ,@(if (system-hurd?)
+ '((substitute* '("sysdeps/mach/Makefile"
+ "sysdeps/mach/hurd/Makefile")
+ (("LDLIBS-pthread.so =.*")
+ (string-append "LDLIBS-pthread.so = "
+ (assoc-ref %build-inputs
"kernel-headers")
+ "/lib/libihash.a\n"))))
+ '()))))))))
+ (propagated-inputs `(("kernel-headers" ,(kernel-headers-boot0))))
+ (native-inputs
+ `(("bison" ,bison-boot0)
+ ("texinfo" ,texinfo-boot0)
+ ("perl" ,perl-boot0)
+ ("python" ,python-boot0)))
+ (inputs
+ `( ;; The boot inputs. That includes the bootstrap libc. We don't want
+ ;; it in $CPATH, hence the 'pre-configure' phase above.
+ ,@(%boot1-inputs)
+
+ ;; A native MiG is needed to build Glibc on Hurd.
+ ,@(if (system-hurd?)
+ `(("mig" ,mig-boot0))
+ '())
- ;; Here, we use the bootstrap Bash, which is not satisfactory
- ;; because we don't want to depend on bootstrap tools.
- ("static-bash" ,@(assoc-ref (%boot0-inputs) "bash"))))))
+ ;; Here, we use the bootstrap Bash, which is not satisfactory
+ ;; because we don't want to depend on bootstrap tools.
+ ("static-bash" ,@(assoc-ref (%boot0-inputs) "bash")))))))
(define (cross-gcc-wrapper gcc binutils glibc bash)
"Return a wrapper for the pseudo-cross toolchain GCC/BINUTILS/GLIBC
@@ -3003,7 +3004,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a
\"$@\"~%"
(let ((libc (libc-for-target)))
(package/inherit libc
(name "glibc")
- (source (bootstrap-origin (package-source glibc)))
+ (source (bootstrap-origin (package-source libc)))
(inputs `(("static-bash" ,static-bash-for-glibc)
,@(alist-delete
"static-bash"
- branch hurd-team created (now 479de78f62), guix-commits, 2023/06/23
- 03/92: gnu: gnumach-headers: Cross-build without relying on x86., guix-commits, 2023/06/23
- 04/92: gnu: hurd: Update supported systems., guix-commits, 2023/06/23
- 06/92: squash! gnu: Add libc-for-target and glibc/hurd.,
guix-commits <=
- 07/92: squash! gnu: Add libc-for-target and glibc/hurd., guix-commits, 2023/06/23
- 01/92: hurd-boot: Add urandom and default-pager translators., guix-commits, 2023/06/23
- 02/92: gnu: glibc/hurd-headers: Properly cross-build., guix-commits, 2023/06/23
- 05/92: gnu: Add libc-for-target and glibc/hurd., guix-commits, 2023/06/23
- 10/92: gnu: mig: Update to 04bfe7a91223ba15d868f7165e49328b1c6e86c3., guix-commits, 2023/06/23
- 14/92: gnu: Add libpciaccess-0.17., guix-commits, 2023/06/23
- 16/92: gnu: Add rumpkernel., guix-commits, 2023/06/23
- 19/92: gnu: hurd: Add rumpkernel., guix-commits, 2023/06/23
- 08/92: gnu: gnumach: Update to 1.8+git20221224., guix-commits, 2023/06/23
- 12/92: gnu: hurd: Update to v0.9.git20230216., guix-commits, 2023/06/23