Subject: [PATCH] platforms: allow cross-target mipsel-linux-gnu

From: 路辉 <[email-masked]>
Date: Sat, 18 Feb 2023 12:41:16 +0000

>From 9a111fd886b89914bd6bafe8202b8a9a1dce7017 Mon Sep 17 00:00:00 2001
From: LuHui <[email-masked]>
Date: Sat, 18 Feb 2023 20:35:37 +0800
Subject: [PATCH] platforms: allow cross-target mipsel-linux-gnu

* guix/platforms/mips.scm (mips-linux) : new variable.
* guix/utils.scm (target-mipsel?) : new function.
---
 guix/platforms/mips.scm | 10 +++++++++-
 guix/utils.scm          |  5 +++++
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/guix/platforms/mips.scm b/guix/platforms/mips.scm
index e6fa9eb292..c37c8bb292 100644
--- a/guix/platforms/mips.scm
+++ b/guix/platforms/mips.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2022 Mathieu Othacehe <[email-masked]>
+;;; Copyright © 2023 Lu Hui <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -19,7 +20,7 @@
 (define-module (guix platforms mips)
   #:use-module (guix platform)
   #:use-module (guix records)
-  #:export (mips64-linux))
+  #:export (mips64-linux mips-linux))

 (define mips64-linux
   (platform
@@ -27,3 +28,10 @@ (define mips64-linux
    (system "mips64el-linux")
    (linux-architecture "mips")
    (glibc-dynamic-linker "/lib/ld.so.1")))
+
+(define mips-linux
+  (platform
+   (target "mipsel-linux-gnu")
+   (system "mipsel-linux")
+   (linux-architecture "mips")
+   (glibc-dynamic-linker "/lib/ld.so.1")))
diff --git a/guix/utils.scm b/guix/utils.scm
index 774b80cd25..55af3562eb 100644
--- a/guix/utils.scm
+++ b/guix/utils.scm
@@ -17,6 +17,7 @@
 ;;; Copyright © 2022 Denis 'GNUtoo' Carikli <[email-masked]>
 ;;; Copyright © 2022 Antero Mejr <[email-masked]>
 ;;; Copyright © 2023 Philip McGrath <[email-masked]>
+;;; Copyright © 2023 Lu Hui <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -741,6 +742,10 @@ (define* (target-mips64el? #:optional (target (or
(%current-target-system)
                                                   (%current-system))))
   (string-prefix? "mips64el-" target))

+(define* (target-mipsel? #:optional (target (or (%current-target-system)
+                                                (%current-system))))
+  (string-prefix? "mipsel-" target))
+
 (define* (target-64bit? #:optional (system (or (%current-target-system)
                                                (%current-system))))
   (any (cut string-prefix? <> system) '("x86_64" "aarch64" "mips64"
-- 
2.39.1