guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

05/09: gnu: fpc: Add support for powerpc-linux.


From: guix-commits
Subject: 05/09: gnu: fpc: Add support for powerpc-linux.
Date: Sat, 16 Dec 2023 12:22:44 -0500 (EST)

efraim pushed a commit to branch master
in repository guix.

commit 2b501ed7305da10005fddec8a9538b48b14ba04b
Author: Efraim Flashner <efraim@flashner.co.il>
AuthorDate: Fri Dec 15 15:38:24 2023 +0200

    gnu: fpc: Add support for powerpc-linux.
    
    * gnu/packages/pascal.scm (fpc-bootstrap-powerpc): New variable.
    (fpc)[arguments]: Add cases for powerpc-linux.
    [native-inputs]: Add case for fpc-binary for powerpc-linux.
    
    Change-Id: I0d4d9dda9d4c8f70ff20031ab94f1dc439df88e2
---
 gnu/packages/pascal.scm | 31 +++++++++++++++++++++----------
 1 file changed, 21 insertions(+), 10 deletions(-)

diff --git a/gnu/packages/pascal.scm b/gnu/packages/pascal.scm
index c6ae1bf3dd..89a1734e38 100644
--- a/gnu/packages/pascal.scm
+++ b/gnu/packages/pascal.scm
@@ -56,6 +56,15 @@
      (base32
       "0n4r85dsr86zlk7r4hbd4nj14sda6rwgdgzxg4gj4q981fn80agn"))))
 
+(define fpc-bootstrap-powerpc
+  (origin
+    (method url-fetch)
+    (uri (string-append "mirror://sourceforge/freepascal/Linux/"
+                        %fpc-version "/fpc-" %fpc-version 
".powerpc-linux.tar"))
+    (sha256
+     (base32
+      "1zhdypm99bzs5706g4nxwajiadv82jwd87cr300lrivy1rzj5h4a"))))
+
 (define fpc-bootstrap-x86_64
   (origin
     (method url-fetch)
@@ -92,7 +101,7 @@
                   (rename-file "install-man" "install/man")
                   (delete-file "fpcsrc/tests/utils/dosbox/exitcode.exe")))))
     (build-system gnu-build-system)
-    (supported-systems '("i686-linux" "x86_64-linux"))
+    (supported-systems '("i686-linux" "x86_64-linux" "powerpc-linux"))
     (inputs
      (list expat glibc ncurses zlib))
     (native-inputs
@@ -101,7 +110,7 @@
                                  (%current-system))
                        ("i686-linux" fpc-bootstrap-i386)
                        ;;("powerpc64le-linux" fpc-bootstrap-ppc64le)
-                       ;;("powerpc-linux" fpc-bootstrap-ppc)
+                       ("powerpc-linux" fpc-bootstrap-powerpc)
                        ("x86_64-linux" fpc-bootstrap-x86_64)
                        ;; XXX: Wrong, but innocuous so long
                        ;; `supported-systems' is kept in sync.
@@ -111,11 +120,11 @@
        #:phases
        (let ((fpc-bootstrap-path
               (string-append (getcwd) "/" ,name "-" ,version "/fpc-bin"))
-             (arch ,(match (or (%current-target-system)
-                               (%current-system))
-                     ("i686-linux" "i386")
-                     ("x86_64-linux" "x86_64")
-                     (_ "unknown"))))
+             (arch ,(cond
+                      ((target-x86-32?) "i386")
+                      ((target-ppc32?) "powerpc")
+                      ((target-x86-64?) "x86_64")
+                      (else "unknown"))))
          (modify-phases %standard-phases
            (add-after 'unpack 'unpack-bin
              (lambda* (#:key inputs #:allow-other-keys)
@@ -199,9 +208,11 @@
              (lambda* (#:key outputs #:allow-other-keys)
                (let* ((out (assoc-ref outputs "out"))
                      ;; This is the suffix of the ppc[arch] binary.
-                     (suffix (if (string= arch "x86_64")
-                                 "x64"
-                                 "386"))
+                     (suffix ,(cond
+                                ((target-x86-32?) "386")
+                                ((target-ppc32?) "ppc")
+                                ((target-x86-64?) "x64")
+                                (else "")))
                      (ppc (string-append "ppc" suffix)))
                  (invoke "make" "install" "NOGDB=1"
                          (string-append "INSTALL_PREFIX=" out))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]