Subject: [bug#68355] [PATCH 5/8] gnu: make-crust-package: Update to 0.6.

From: Jean-Pierre De Jesus DIAZ <[email-masked]>
Date: Wed, 10 Jan 2024 00:14:39 +0100

* gnu/packages/firmware.scm (make-crust-package): Update to 0.6.

* gnu/packages/firmware.scm (make-crust-package): Do not install host
  tool as it is not built by default.

Change-Id: Ia79ae8208589601d32235f6d8ace9dce3f8d74f9
---
 gnu/packages/firmware.scm | 42 ++++++++-------------------------------
 1 file changed, 8 insertions(+), 34 deletions(-)

diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 5567bcfe45..30422a573c 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1195,7 +1195,7 @@ (define make-crust-package
     (package
       (name (string-append "crust-"
                            (string-replace-substring platform "_" "-")))
-      (version "0.5")
+      (version "0.6")
       (source
        (origin
          (method git-fetch)
@@ -1206,43 +1206,19 @@ (define make-crust-package
          (file-name (git-file-name "crust" version))
          (sha256
           (base32
-           "0xgbbhifg3miwd3yp6jq9kp7nqgz5gzy00w95vba45j8jk5vjvvz"))))
+           "1blq6bi2rmg4qqwwr07pamv28b50mwcsybhpn9bws8vbzxa43afd"))))
       (build-system gnu-build-system)
       (arguments
        (list
         #:tests? #f                       ;no test suite
         #:make-flags
-        (let ((triplet-without-vendor
-               (and (%current-target-system)
-                    ;; TODO: Is there a use case for allowing this?
-                    (not (target-avr?))
-                    (match (string-split (nix-system->gnu-triplet
-                                          (%current-target-system)) #\-)
-                      ((arch vendor os ..1)
-                       (string-join `(,arch ,@os) "-"))))))
-          #~(list "CROSS_COMPILE=or1k-elf-"
-                  "V=1"
-                  #$@(if triplet-without-vendor
-                         ;; We are cross-compiling the tools, intended to be
-                         ;; executable for the target system.
-                         (list (string-append "HOSTAR=" triplet-without-vendor
-                                              "-ar")
-                               (string-append "HOSTCC=" triplet-without-vendor
-                                              "-gcc"))
-                         ;; Not cross-compiling.
-                         (list "HOSTAR=ar"
-                               "HOSTCC=gcc"))
-                  "LEX=flex"))
+        #~(list "CROSS_COMPILE=or1k-elf-"
+                "V=1"
+                "HOSTAR=ar"
+                "HOSTCC=gcc"
+                "LEX=flex")
         #:phases
         #~(modify-phases %standard-phases
-            (add-after 'unpack 'do-not-build-tests
-              (lambda _
-                ;; Attempting to build the tools test binary on a non-aarch64
-                ;; architecture fails with: "No cache cleaning implementation
-                ;; available for this architecture".  Avoid building it (see:
-                ;; https://github.com/crust-firmware/crust/issues/182).
-                (substitute* "tools/Makefile"
-                  (("tools-y \\+= test") ""))))
             (delete 'configure)
             (add-before 'build 'defconfig
               (lambda* (#:key make-flags #:allow-other-keys)
@@ -1253,9 +1229,7 @@ (define make-crust-package
                 (for-each (lambda (file)
                             (install-file file (string-append #$output
                                                               "/libexec")))
-                          (find-files "." "(scp\\.bin|\\.config)$"))
-                (install-file "build/tools/load"
-                              (string-append #$output "/bin")))))))
+                          (find-files "." "(scp\\.bin|\\.config)$")))))))
       ;; The firmware is cross-compiled using a "bare bones" compiler (no libc).
       ;; Use our own tool chain for that.
       (native-inputs
-- 
2.41.0