summary refs log tree commit diff
path: root/gnu/packages/hurd.scm
diff options
context:
space:
mode:
authorJosselin Poiret <dev@jpoiret.xyz>2023-03-20 23:10:46 +0100
committerLudovic Courtès <ludo@gnu.org>2023-03-30 12:44:20 +0200
commitd509aab2304c7ed8cd730ac97268d2b3a807fadf (patch)
tree18a0ce74e37b2165c24a47d79fda904b2843935d /gnu/packages/hurd.scm
parent4b62a031a25c4f52f0fccf440be085e4d28fdaa2 (diff)
downloadguix-d509aab2304c7ed8cd730ac97268d2b3a807fadf.tar.gz
gnu: gnumach, hurd-headers, hurd: Switch to using cross-mig.
* gnu/packages/hurd.scm (gnumach, hurd-headers, hurd): Switch to cross-mig when
cross-building.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/hurd.scm')
-rw-r--r--gnu/packages/hurd.scm26
1 files changed, 20 insertions, 6 deletions
diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm
index cc7d3d77a9..80fa061175 100644
--- a/gnu/packages/hurd.scm
+++ b/gnu/packages/hurd.scm
@@ -185,7 +185,13 @@ communication.")
                                          "hurd-fix-types-of-read-write-and-readables-methods-2.patch"))))
       (build-system gnu-build-system)
       (native-inputs
-       (list autoconf automake mig))
+       (list autoconf
+             automake
+             (if (%current-target-system)
+                 (let* ((cross-base (resolve-interface '(gnu packages cross-base)))
+                        (cross-mig (module-ref cross-base 'cross-mig)))
+                   (cross-mig (%current-target-system)))
+                 mig)))
       (arguments
        `(#:phases
          (modify-phases %standard-phases
@@ -309,7 +315,15 @@ Hurd-minimal package which are needed for both glibc and GCC.")
                  (invoke "make" "gnumach.gz")
                  (install-file "gnumach.gz" boot))))))))
     (native-inputs
-     (list mig perl autoconf automake texinfo-4))
+     (list autoconf
+           automake
+           (if (%current-target-system)
+                   (let* ((cross-base (resolve-interface '(gnu packages cross-base)))
+                          (cross-mig (module-ref cross-base 'cross-mig)))
+                     (cross-mig (%current-target-system)))
+                   mig)
+           perl
+           texinfo-4))
     (supported-systems (cons "i686-linux" %hurd-systems))
     (synopsis "Microkernel of the GNU system")
     (description
@@ -529,12 +543,12 @@ exec ${system}/rc \"$@\"
      `(("autoconf" ,autoconf)
        ("automake" ,automake)
        ("libgcrypt" ,libgcrypt)                   ;for 'libgcrypt-config'
-       ("pkg-config" ,pkg-config)
        ("mig" ,(if (%current-target-system)
-                   ;; XXX: When targeting i586-pc-gnu, we need a 32-bit MiG,
-                   ;; hence this hack.
-                   mig/32-bit
+                   (let* ((cross-base (resolve-interface '(gnu packages cross-base)))
+                          (cross-mig (module-ref cross-base 'cross-mig)))
+                     (cross-mig (%current-target-system)))
                    mig))
+       ("pkg-config" ,pkg-config)
        ("perl" ,perl)
        ("texinfo" ,texinfo-4)
        ("dde-sources" ,dde-sources)))