aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorJosselin Poiret <dev@jpoiret.xyz>2023-05-22 11:04:13 +0200
committerJosselin Poiret <dev@jpoiret.xyz>2023-07-13 18:20:04 +0200
commitc2bb342b5ff0ac15d6dc37a9ba8daeb8956237e1 (patch)
treedb34473fe2963c79bd37448a0d4622ac9ad9e6bd /gnu
parent85ebfcf4ffe5dda6f1eceb00b6afdac3239c0a31 (diff)
downloadguix-c2bb342b5ff0ac15d6dc37a9ba8daeb8956237e1.tar.gz
guix-c2bb342b5ff0ac15d6dc37a9ba8daeb8956237e1.zip
gnu: gnumach-headers: Cross-build without relying on x86.
* gnu/packages/hurd.scm (gnumach-headers): Remove configure flags where we say the builder is running x86. * gnu/packages/cross-base.scm (cross-gnumach-headers): Work around limitation of build system, by manually changing the target host_cpu without relying on --host, because we don't have a working cross-compiler yet.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/cross-base.scm18
-rw-r--r--gnu/packages/hurd.scm11
2 files changed, 19 insertions, 10 deletions
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index e5fc4ba8b5..cdf642358d 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -375,6 +375,24 @@ target that libc."
(inherit gnumach-headers)
(name (string-append (package-name gnumach-headers)
"-cross-" target))
+ (arguments
+ (substitute-keyword-arguments (package-arguments gnumach-headers)
+ ((#:phases phases #~%standard-phases)
+ #~(modify-phases #$phases
+ ;; Cheat by setting the host_cpu variable manually, since using
+ ;; --host= would require a working cross-compiler, which we don't
+ ;; have yet.
+ (add-after 'unpack 'substitute-host-cpu
+ (lambda _
+ (substitute* "configure.ac"
+ (("AC_CANONICAL_HOST")
+ #$(string-append
+ "host_cpu="
+ (match target
+ ((? target-x86-32?)
+ "i386")
+ ((? target-x86-64?)
+ "x86_64")))))))))))
(native-inputs
(modify-inputs (package-native-inputs gnumach-headers)
(prepend xgcc xbinutils)))))
diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm
index c9f77d799a..438f07c20c 100644
--- a/gnu/packages/hurd.scm
+++ b/gnu/packages/hurd.scm
@@ -6,6 +6,7 @@
;;; Copyright © 2020, 2022 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Rene Saavedra <pacoon@protonmail.com>
+;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -75,16 +76,6 @@
(lambda _
(invoke "make" "install-data")))
(delete 'build))
-
- ;; GNU Mach supports only IA32 currently, so cheat so that we can at
- ;; least install its headers.
- ,@(if (%current-target-system)
- '()
- ;; See <http://lists.gnu.org/archive/html/bug-hurd/2015-06/msg00042.html>
- ;; <http://lists.gnu.org/archive/html/guix-devel/2015-06/msg00716.html>
- '(#:configure-flags '("--build=i586-pc-gnu"
- "--host=i686-linux-gnu")))
-
#:tests? #f))
(native-inputs
(list autoconf automake texinfo-4))