Subject: [bug#60224] [PATCH v5 11/13] gnu: u-boot-rockpro64-rk3399: Use gexps and fix build.

From: Maxim Cournoyer <[email-masked]>
Date: Sun, 15 Jan 2023 22:25:42 -0500

* gnu/packages/bootloaders.scm (u-boot-rockpro64-rk3399)
[phases]: Use gexps.
[native-inputs]: Use modify-inputs and turn into...
[inputs]: ... this.

---

(no changes since v4)

Changes in v4:
- Make the arm-trusted-firmware-rk3399 a regular input

 gnu/packages/bootloaders.scm | 45 ++++++++++++++++++------------------
 1 file changed, 22 insertions(+), 23 deletions(-)

diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index d9f9672f77..9da97232ea 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -1176,37 +1176,36 @@ (define-public u-boot-rockpro64-rk3399
       (arguments
        (substitute-keyword-arguments (package-arguments base)
          ((#:phases phases)
-          `(modify-phases ,phases
-             (add-after 'unpack 'set-environment
-               (lambda* (#:key inputs #:allow-other-keys)
-                 (setenv "BL31"
-                         (search-input-file inputs "/bl31.elf"))))
-             (add-after 'unpack 'patch-header
-               (lambda _
-                 (substitute* "include/config_distro_bootcmd.h"
-                   (("\"scsi_need_init=false")
-                    "\"setenv scsi_need_init false")
-                   (("#define BOOTENV_SET_SCSI_NEED_INIT \"scsi_need_init=;")
-                    "#define BOOTENV_SET_SCSI_NEED_INIT \"setenv scsi_need_init;"))
-                 (substitute* "include/configs/rockchip-common.h"
-                   (("#define BOOT_TARGET_DEVICES\\(func\\)")
-                    "
+          #~(modify-phases #$phases
+              (add-after 'unpack 'set-environment
+                (lambda* (#:key inputs #:allow-other-keys)
+                  (setenv "BL31" (search-input-file inputs "/bl31.elf"))))
+              (add-after 'unpack 'patch-header
+                (lambda _
+                  (substitute* "include/config_distro_bootcmd.h"
+                    (("\"scsi_need_init=false")
+                     "\"setenv scsi_need_init false")
+                    (("#define BOOTENV_SET_SCSI_NEED_INIT \"scsi_need_init=;")
+                     "#define BOOTENV_SET_SCSI_NEED_INIT \"setenv scsi_need_init;"))
+                  (substitute* "include/configs/rockchip-common.h"
+                    (("#define BOOT_TARGET_DEVICES\\(func\\)")
+                     "
 #if CONFIG_IS_ENABLED(CMD_SCSI)
        #define BOOT_TARGET_SCSI(func) func(SCSI, scsi, 0)
 #else
        #define BOOT_TARGET_SCSI(func)
 #endif
 #define BOOT_TARGET_DEVICES(func)")
-                   (("BOOT_TARGET_NVME\\(func\\) \\\\")
-                    "\
+                    (("BOOT_TARGET_NVME\\(func\\) \\\\")
+                     "\
 BOOT_TARGET_NVME(func) \\
        BOOT_TARGET_SCSI(func) \\"))))
-             ;; Phases do not succeed on the bl31 ELF.
-             (delete 'strip)
-             (delete 'validate-runpath)))))
-      (native-inputs
-       `(("firmware" ,arm-trusted-firmware-rk3399)
-         ,@(package-native-inputs base))))))
+              ;; Phases do not succeed on the bl31 ELF.
+              (delete 'strip)
+              (delete 'validate-runpath)))))
+      (inputs
+       (modify-inputs (package-inputs base)
+         (append arm-trusted-firmware-rk3399))))))
 
 (define-public u-boot-pinebook-pro-rk3399
   (let ((base (make-u-boot-package "pinebook-pro-rk3399" "aarch64-linux-gnu")))
-- 
2.38.1