From 637a1e7dcce4d1a2c4f2f9c478df4a640ae1f230 Mon Sep 17 00:00:00 2001 From: Maxime Devos Date: Wed, 14 Jul 2021 13:12:47 +0200 Subject: utils: Define 'target-hurd?' predicate. It behaves similarily to the other target-...? procedures. The usage of hurd-triplet? / target-hurd? in libgc appears incorrect to me, as (%current-system) is normally never false. * gnu/packages/hurd.scm (hurd-triplet?): Move to ... * guix/util.scm (target-hurd?): ... here, let its argument default to (%current-target-system) or (%current-system), and write a docstring. * gnu/packages/hurd.scm (hurd-target?, hurd-system?): Use target-hurd? instead of hurd-triplet?. * gnu/packages/bdw-gc.scm (libgc): Likewise. * gnu/packages/cross-base.scm (cross-libc)[arguments]<#:configure-flags>: Likewise. (cross-libc)[arguments]<#:phases>: Likewise. (cross-libc)[arguments]<#:native-inputs>: Likewise. * gnu/packages/make-boostrap.scm (%glibc-stripped)[inputs]: Likewise. Signed-off-by: Mathieu Othacehe --- gnu/packages/bdw-gc.scm | 4 ++-- gnu/packages/cross-base.scm | 6 +++--- gnu/packages/hurd.scm | 10 +++------- gnu/packages/make-bootstrap.scm | 2 +- 4 files changed, 9 insertions(+), 13 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/bdw-gc.scm b/gnu/packages/bdw-gc.scm index 0d82889bac..5ced11bb64 100644 --- a/gnu/packages/bdw-gc.scm +++ b/gnu/packages/bdw-gc.scm @@ -56,8 +56,8 @@ (define-public libgc ;; to configure script. See bug report and discussion: ;; ;; - ,@(if (hurd-triplet? (or (%current-system) - (%current-target-system))) + ,@(if (target-hurd? (or (%current-system) + (%current-target-system))) '("--disable-gcj-support") '())))) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm index ced226ef34..78cbf871ac 100644 --- a/gnu/packages/cross-base.scm +++ b/gnu/packages/cross-base.scm @@ -505,7 +505,7 @@ (define* (cross-libc target ,@(package-arguments libc)) ((#:configure-flags flags) `(cons ,(string-append "--host=" target) - ,(if (hurd-triplet? target) + ,(if (target-hurd? target) `(cons "--disable-werror" ,flags) flags))) ((#:phases phases) @@ -519,7 +519,7 @@ (define* (cross-libc target (setenv "CROSS_LIBRARY_PATH" (string-append kernel "/lib")) ; for Hurd's libihash #t))) - ,@(if (hurd-triplet? target) + ,@(if (target-hurd? target) '((add-after 'install 'augment-libc.so (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out"))) @@ -536,7 +536,7 @@ (define* (cross-libc target (native-inputs `(("cross-gcc" ,xgcc) ("cross-binutils" ,xbinutils) - ,@(if (hurd-triplet? target) + ,@(if (target-hurd? target) `(("cross-mig" ,@(assoc-ref (package-native-inputs xheaders) "cross-mig"))) diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm index 59a7b55943..222ddbce65 100644 --- a/gnu/packages/hurd.scm +++ b/gnu/packages/hurd.scm @@ -51,20 +51,16 @@ (define-module (gnu packages hurd) hurd-target? hurd-triplet?)) -(define (hurd-triplet? triplet) - (and (string-suffix? "-gnu" triplet) - (not (string-contains triplet "linux")))) - (define (hurd-target?) "Return true if the cross-compilation target or the current system is GNU/Hurd." - (or (and=> (%current-target-system) hurd-triplet?) + (or (and=> (%current-target-system) target-hurd?) (and (not (%current-target-system)) - (and=> (%current-system) hurd-triplet?)))) + (and=> (%current-system) target-hurd?)))) (define (hurd-system?) "Return true if the current system is the Hurd." - (and=> (%current-system) hurd-triplet?)) + (and=> (%current-system) target-hurd?)) (define (hurd-source-url version) (string-append "mirror://gnu/hurd/hurd-" diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm index 265884020e..5c306c145d 100644 --- a/gnu/packages/make-bootstrap.scm +++ b/gnu/packages/make-bootstrap.scm @@ -439,7 +439,7 @@ (define (%glibc-stripped) (assoc-ref %build-inputs "kernel-headers"))))) (inputs `(("kernel-headers" ,(if (or (and (%current-target-system) - (hurd-triplet? (%current-target-system))) + (target-hurd? (%current-target-system))) (string-suffix? "-hurd" (%current-system))) gnumach-headers linux-libre-headers)) -- cgit v1.2.3