Subject: [bug#61865] [PATCH 4/8] gnu: mtdev: fix riscv64 cross-compile.

From: Z572 <[email-masked]>
Date: Tue, 28 Feb 2023 16:33:36 +0800

* gnu/packages/xdisorg.scm(mtdev): fix riscv64 cross-compile
[arguments]: when target is riscv64, add phase to update config.{guess,sub}.
[native-inputs]: when target is riscv64, add config.
---
 gnu/packages/xdisorg.scm | 20 ++++++++++++++++++--
 1 file changed, 18 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 2ebeb4e013..21bc368538 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -41,7 +41,7 @@
 ;;; Copyright © 2020 Gabriel Arazas <[email-masked]>
 ;;; Copyright © 2020 James Smith <[email-masked]>
 ;;; Copyright © 2020 B. Wilson <[email-masked]>
-;;; Copyright © 2020, 2021 Zheng Junjie <[email-masked]>
+;;; Copyright © 2020, 2021, 2023 Zheng Junjie <[email-masked]>
 ;;; Copyright © 2021, 2022 Maxim Cournoyer <[email-masked]>
 ;;; Copyright © 2021, 2022 Nicolas Goaziou <[email-masked]>
 ;;; Copyright © 2021 Xinglu Chen <[email-masked]>
@@ -763,7 +763,23 @@ (define-public mtdev
          (base32
           "1q700h9dqcm3zl6c3gj0qxxjcx6ibw2c51wjijydhwdcm26v5mqm"))))
     (build-system gnu-build-system)
-    (arguments '(#:configure-flags '("--disable-static")))
+    (arguments `(#:configure-flags '("--disable-static")
+                 ,@(if (target-riscv64?)
+                       `(#:phases
+                         (modify-phases %standard-phases
+                           (add-after 'unpack 'update-config-scripts
+                             (lambda* (#:key inputs native-inputs #:allow-other-keys)
+                               ;; Replace outdated config.guess and config.sub.
+                               (for-each (lambda (file)
+                                           (install-file
+                                            (search-input-file
+                                             (or native-inputs inputs)
+                                             (string-append "/bin/" file)) "./config-aux"))
+                                         '("config.guess" "config.sub"))))))
+                       '())))
+    (native-inputs (if (target-riscv64?)
+                       (list config)
+                       '()))
     (home-page "http://bitmath.org/code/mtdev/")
     (synopsis "Multitouch protocol translation library")
     (description "Mtdev is a stand-alone library which transforms all
-- 
2.39.1