[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/21: gnu: glibc: Work around broken GNU Mach header detection.
From: |
guix-commits |
Subject: |
01/21: gnu: glibc: Work around broken GNU Mach header detection. |
Date: |
Thu, 30 Mar 2023 06:46:59 -0400 (EDT) |
civodul pushed a commit to branch core-updates
in repository guix.
commit 065d766f09b4163b9c016583fbdfb9291a039439
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Sun Mar 26 21:40:46 2023 +0200
gnu: glibc: Work around broken GNU Mach header detection.
* gnu/packages/base.scm (%glibc/hurd-configure-flags): New variable.
(glibc)[arguments]: Use it.
(glibc/hurd-headers)[arguments]: likewise.
* gnu/packages/cross-base.scm (cross-libc*): Likewise.
Co-authored-by: Josselin Poiret <dev@jpoiret.xyz>
---
gnu/packages/base.scm | 19 ++++++++++++++++---
gnu/packages/cross-base.scm | 4 +++-
2 files changed, 19 insertions(+), 4 deletions(-)
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 041f16b4fc..520c2093f3 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -755,6 +755,17 @@ the store.")
(home-page "https://www.gnu.org/software/guix//")
(license gpl3+)))
+(define-public %glibc/hurd-configure-flags
+ ;; 'configure' in glibc 2.35 omits to pass '-ffreestanding' when detecting
+ ;; Mach headers. This is fixed in glibc commits
+ ;; 8b8c768e3c701ed1993789bb46acb8a12c7a93df and
+ ;; 7685630b98ca2a3f5de86eadf130993e6cf998a0; as a workaround, bypass those
+ ;; tests.
+ '("ac_cv_header_mach_mach_types_defs=yes"
+ "ac_cv_header_mach_mach_types_h=yes"
+ "ac_cv_header_mach_machine_ndr_def_h=no"
+ "libc_cv_mach_task_creation_time=yes"))
+
(define-public glibc
;; This is the GNU C Library, used on GNU/Linux and GNU/Hurd. Prior to
;; version 2.28, GNU/Hurd used a different glibc branch.
@@ -854,7 +865,8 @@ the store.")
;; On GNU/Hurd we get discarded-qualifiers warnings for
;; 'device_write_inband' among other things. Ignore them.
,@(if (hurd-target?)
- '("--disable-werror")
+ `("--disable-werror"
+ ,@%glibc/hurd-configure-flags)
'()))
#:tests? #f ; XXX
@@ -1392,9 +1404,10 @@ command.")
(arguments
(substitute-keyword-arguments (package-arguments glibc)
;; We just pass the flags really needed to build the headers.
- ((#:configure-flags _)
+ ((#:configure-flags flags)
`(list "--enable-add-ons"
- "--host=i586-pc-gnu"))
+ "--host=i586-pc-gnu"
+ ,@%glibc/hurd-configure-flags))
((#:phases _)
'(modify-phases %standard-phases
(replace 'install
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 2959616af6..f86e8005c4 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -577,7 +577,9 @@ and the cross tool chain."
((#:configure-flags flags)
`(cons ,(string-append "--host=" target)
,(if (target-hurd? target)
- `(cons "--disable-werror" ,flags)
+ `(append (list "--disable-werror"
+ ,@%glibc/hurd-configure-flags)
+ ,flags)
flags)))
((#:phases phases)
`(modify-phases ,phases
- branch core-updates updated (d9dc32b871 -> 35b208cb22), guix-commits, 2023/03/30
- 01/21: gnu: glibc: Work around broken GNU Mach header detection.,
guix-commits <=
- 06/21: gnu: cross-base: Removed useless inputs to xhurd-core-headers., guix-commits, 2023/03/30
- 08/21: gnu: gnumach: Update to 1.8+git20220827., guix-commits, 2023/03/30
- 02/21: gnu: cross-base: Use gexps for 'cross-gcc-arguments'., guix-commits, 2023/03/30
- 10/21: gnu: hurd: Remove useless glibc/hurd-headers input., guix-commits, 2023/03/30
- 11/21: gnu: gnumach, hurd-headers, hurd: Switch to using cross-mig., guix-commits, 2023/03/30
- 13/21: gnu: mig/32-bit: Remove., guix-commits, 2023/03/30
- 09/21: gnu: hurd: Update to 3ff7053., guix-commits, 2023/03/30
- 16/21: gnu: linux-pam: Allow compilation on GNU/Hurd., guix-commits, 2023/03/30
- 18/21: gnu: guile: Switch to gexps., guix-commits, 2023/03/30
- 04/21: gnu: cross-base: Factor out cross-mig., guix-commits, 2023/03/30