[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#74290] [PATCH 06/31] gnu: cross-libc: Support cross-building for th
From: |
Janneke Nieuwenhuizen |
Subject: |
[bug#74290] [PATCH 06/31] gnu: cross-libc: Support cross-building for the 64bit Hurd. |
Date: |
Sun, 10 Nov 2024 11:38:02 +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 | 18 ++++++++++++------
gnu/packages/cross-base.scm | 17 +++++++++++------
2 files changed, 23 insertions(+), 12 deletions(-)
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 4e8121ae2c..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")
@@ -1088,11 +1088,17 @@ (define-public glibc
" libmachuser.so
libhurduser.so"))))))
(add-after 'install 'create-machine-symlink
(lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (cpu "i386"))
- (symlink cpu
- (string-append out
-
"/include/mach/machine"))))))
+ (let* ((out (assoc-ref outputs "out"))
+ (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)
+ (symlink cpu machine))))))
'()))))
(inputs `(("static-bash" ,static-bash)))
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 7b32a6b64e..3827e87aec 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")
@@ -747,11 +747,16 @@ (define* (cross-libc* target
" libmachuser.so
libhurduser.so"))))))
(add-after 'install 'create-machine-symlink
(lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (cpu "i386"))
- (symlink cpu
- (string-append out
-
"/include/mach/machine"))))))
+ (let* ((out (assoc-ref outputs "out"))
+ (cpu ,(match target
+ ((? target-x86-32?)
+ "i386")
+ ((? target-x86-64?)
+ "x86_64")))
+ (machine (string-append
+ out "/include/mach/machine")))
+ (unless (file-exists? machine)
+ (symlink cpu machine))))))
'())))))
;; Shadow the native "kernel-headers" because glibc's recipe expects the
--
Janneke Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | AvatarĀ® https://AvatarAcademy.com
- [bug#74290] [PATCH 00/31] Add support for x86_64-gnu, aka the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 02/31] gnu: gnumach: Update to v1.8+git20240714., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 03/31] gnu: hurd: Update to v0.9.git20240714., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 01/31] gnu: mig: Update to v1.8+git20231217., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 06/31] gnu: cross-libc: Support cross-building for the 64bit Hurd.,
Janneke Nieuwenhuizen <=
- [bug#74290] [PATCH 08/31] gnu: elfutils: Fix build for 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 10/31] gnu: patch: Fix build for the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 11/31] gnu: libxcrypt: Support the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 05/31] gnu: Add basic support for x86_64-pc-gnu target, aka 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 04/31] gnu: gcc: Add indirections current-gcc, current-gcc-toolchain., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 07/31] gnu: bash-minimal: Fix build for 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 12/31] gnu: libstdc++: Support the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 09/31] gnu: grep: Fix build for the 64bit Hurd., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 13/31] gnu: gcc-13, gcc-14: Support being used as parent for gcc-static., Janneke Nieuwenhuizen, 2024/11/10
- [bug#74290] [PATCH 15/31] system: image: Add hurd64 image types., Janneke Nieuwenhuizen, 2024/11/10