diff mbox series

[bug#62307,core-updates,11/15] gnumach, hurd-headers, hurd: Switch to using cross-mig.

Message ID dc0398e6b0d66ff7c848be80ca0245917ff1d79b.1679349992.git.dev@jpoiret.xyz
State New
Headers show
Series Update Hurd and fix build failures | expand

Commit Message

Josselin Poiret March 20, 2023, 10:10 p.m. UTC
* gnu/packages/hurd.scm (gnumach, hurd-headers, hurd): Switch to cross-mig when
cross-building.
---
 gnu/packages/hurd.scm | 26 ++++++++++++++++++++------
 1 file changed, 20 insertions(+), 6 deletions(-)
diff mbox series

Patch

diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm
index 866a9a7ac1..be5eb25fee 100644
--- a/gnu/packages/hurd.scm
+++ b/gnu/packages/hurd.scm
@@ -183,7 +183,13 @@  (define-public hurd-headers
                                          "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
@@ -307,7 +313,15 @@  (define-public gnumach
                  (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
@@ -527,12 +541,12 @@  (define-public hurd
      `(("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)))