[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#74290] [PATCH v3 05/51] gnu: cross-libc: Support cross-building for
From: |
Janneke Nieuwenhuizen |
Subject: |
[bug#74290] [PATCH v3 05/51] gnu: cross-libc: Support cross-building for the 64bit Hurd. |
Date: |
Tue, 19 Nov 2024 07:54:35 +0100 |
* gnu/packages/base.scm (glibc)[arguments]: When building for the Hurd, in
phase "create-machine-symlink", do not assume CPU is i386, also cater for
x86_64.
* gnu/packages/cross-base.scm (cross-libc*)[arguments]: Likewise.
Change-Id: Ib009b7bd301b543b8629382330cca9d963b7a812
---
gnu/packages/base.scm | 9 +++++++--
gnu/packages/bootstrap.scm | 2 +-
gnu/packages/cross-base.scm | 8 ++++++--
3 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 90c25b54e1..02ef71f20d 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -1079,7 +1079,7 @@ (define-public glibc
(string-append locale "/C.UTF-8")))))
,@(if (target-hurd?)
- '((add-after 'install 'augment-libc.so
+ `((add-after 'install 'augment-libc.so
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* (string-append out "/lib/libc.so")
@@ -1089,7 +1089,12 @@ (define-public glibc
(add-after 'install 'create-machine-symlink
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
- (cpu "i386")
+ (cpu ,(match (or (%current-target-system)
+ (%current-system))
+ ((? target-x86-32?)
+ "i386")
+ ((? target-x86-64?)
+ "x86_64")))
(machine (string-append
out "/include/mach/machine")))
(unless (file-exists? machine)
diff --git a/gnu/packages/bootstrap.scm b/gnu/packages/bootstrap.scm
index 33cbaa30ae..27798fe278 100644
--- a/gnu/packages/bootstrap.scm
+++ b/gnu/packages/bootstrap.scm
@@ -311,7 +311,7 @@ (define* (glibc-dynamic-linker
gnu-triplet->nix-system)
(%current-system))))
"Return the name of Glibc's dynamic linker for SYSTEM."
- ;; See the 'SYSDEP_KNOWN_INTERPRETER_NAMES' cpp macro in libc.
+ ;; See the appropriate 'shlib-versions' file in libc.
(let ((platform (false-if-platform-not-found
(lookup-platform-by-system system))))
(cond
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 83672ab383..4961b3b4c0 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -738,7 +738,7 @@ (define* (cross-libc* target
(delete 'install-utf8-c-locale)
,@(if (target-hurd? target)
- '((add-after 'install 'augment-libc.so
+ `((add-after 'install 'augment-libc.so
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* (string-append out "/lib/libc.so")
@@ -748,7 +748,11 @@ (define* (cross-libc* target
(add-after 'install 'create-machine-symlink
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
- (cpu "i386")
+ (cpu ,(match target
+ ((? target-x86-32?)
+ "i386")
+ ((? target-x86-64?)
+ "x86_64")))
(machine (string-append
out "/include/mach/machine")))
(unless (file-exists? machine)
--
2.46.0
- [bug#74290] [PATCH v3 01/51] gnu: gnumach: Update to v1.8+git20240714., (continued)
- [bug#74290] [PATCH v3 01/51] gnu: gnumach: Update to v1.8+git20240714., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 07/51] gnu: elfutils: Fix build for 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 06/51] gnu: bash-minimal: Support [cross-]build with gcc-14., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 03/51] gnu: hurd: Update to 0.9.git20240714., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 08/51] gnu: grep: Fix build for the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 04/51] gnu: Add basic support for x86_64-pc-gnu target, aka 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 11/51] gnu: libstdc++: Support the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 10/51] gnu: libxcrypt: Support the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 12/51] gnu: glibc/hurd: Add patches for the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 13/51] gnu: bash: Avoid hang when cross-built for the Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 05/51] gnu: cross-libc: Support cross-building for the 64bit Hurd.,
Janneke Nieuwenhuizen <=
- [bug#74290] [PATCH v3 15/51] gnu: flex: Fix [cross-]build with gcc-14., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 09/51] gnu: patch: Fix build for the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 14/51] gnu: git-minimal: Support [cross-]build with gcc-14 and the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 19/51] gnu: hurd: Fix build with gcc-14., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 23/51] gnu: guile-lzlib: Support [cross-]build with gcc-14 and the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 24/51] gnu: cross-base: Update %xgcc to gcc-14, to support the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 16/51] gnu: libffi: Fix [cross-]build with gcc-14., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 17/51] gnu: perl: Support [cross-]build with gcc-14 and the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 18/51] gnu: texinfo-4: Fix [cross-]build with gcc-14 and the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/19
- [bug#74290] [PATCH v3 21/51] gnu: libedit: Fix [cross-]build with gcc-14 for 32bit., Janneke Nieuwenhuizen, 2024/11/19