Subject: [PATCH v2 15/15] gnu: elfutils: Fix build to loongarch64.

From: Zheng Junjie <[email-masked]>
Date: Sat, 25 Jan 2025 00:39:13 +0800

From: Zheng Junjie <[email-masked]>

* gnu/packages/elf.scm (elfutils)[native-inputs]: When target is loongarch64,
add config.
[arguments]: When target is loongarch64, Add update-config-scripts phase.

Change-Id: I0a0b4faa8594ecca2344eb4b15392e4355e79e45
---
 gnu/packages/elf.scm | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm
index a32339b600d..74bc62a3004 100644
--- a/gnu/packages/elf.scm
+++ b/gnu/packages/elf.scm
@@ -120,6 +120,17 @@ (define-public elfutils
                             (("run-strip-strmerge.sh") "")
                             (("run-elflint-self.sh") "")))))
                    #~())
+            #$@(if (target-loongarch64?)
+                   `((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"))
+                                   '("config.guess" "config.sub")))))
+                   '())
             #$@(if (system-hurd?)
                    #~((add-after 'unpack 'skip-tests
                         (lambda _
@@ -151,8 +162,10 @@ (define-public elfutils
                               (search-patch
                                "elfutils-libdwfl-string-overflow.patch"))))))
                    #~()))))
-
-    (native-inputs (list m4))
+    (native-inputs (append (if (target-loongarch64?)
+                               (list config)
+                               (list))
+                           (list m4)))
     (inputs (list xz zlib))
     (home-page "https://sourceware.org/elfutils/")
     (synopsis "Collection of utilities and libraries to handle ELF files and
-- 
2.47.1