gnu: target->hare-arch: Check for system support before target support.

This fixes bug #2449.

* gnu/packages/hare.scm (target->hare-arch): Only when building on a
supported system check if the target is supported by hare.

Change-Id: I9bb2bd32a204043ce2702a206598398fbd0541eb
This commit is contained in:
Efraim Flashner 2025-09-02 19:23:10 +03:00
parent a407d3f8bd
commit 520ba1b904
No known key found for this signature in database
GPG key ID: 41AAE7DCCA3D8351

View file

@ -39,10 +39,13 @@
(define* (target->hare-arch #:optional (target (or (%current-target-system)
(%current-system))))
(cond ((target-x86-64? target) "x86_64")
((target-aarch64? target) "aarch64")
((target-riscv64? target) "riscv64")
(else (error "unsupported hare target" target))))
;; Only error on supported systems, so we don't break guix pull.
(if (member (%current-system) hare-supported-systems)
(cond ((target-x86-64? target) "x86_64")
((target-aarch64? target) "aarch64")
((target-riscv64? target) "riscv64")
(else (error "unsupported hare target" target)))
""))
(define (cross-target? target) ; only has to work for supported arches
(and target (not (if (%current-target-system)