[bug#75051,v2,12/15] gnu: sed: Fix build to loongarch64.

Message ID 4f527d35a8af0a04806a187d1961ddfa25c50dfd.1737736020.git.zhengjunjie@iscas.ac.cn
State New
Headers
Series guix: Add loongarch platform. |

Commit Message

Zheng Junjie Jan. 24, 2025, 4:39 p.m. UTC
  From: Zheng Junjie <873216071@qq.com>

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

Change-Id: I056d5004ec326f8c5b30853d5ea401ea12a949b7
---
 gnu/packages/base.scm | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)
  

Patch

diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 46390506236..4c96ffa1a46 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -217,7 +217,23 @@  (define-public sed
             (modules '((guix build utils)))))
    (build-system gnu-build-system)
    (synopsis "Stream editor")
-   (native-inputs (list perl))                    ;for tests
+   (native-inputs (append (if (target-loongarch64?)
+                              (list config)
+                              '())
+                          (list perl)))                    ;for tests
+    (arguments (if (target-loongarch64?)
+                   (list #: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)) "./build-aux"))
+                                           '("config.guess" "config.sub"))))))
+                   '()))
    (description
     "Sed is a non-interactive, text stream editor.  It receives a text
 input from a file or from standard input and it then applies a series of text