[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#68355] [PATCH v2 8/9] gnu: Add make-crust-tools.
From: |
Jean-Pierre De Jesus DIAZ |
Subject: |
[bug#68355] [PATCH v2 8/9] gnu: Add make-crust-tools. |
Date: |
Fri, 19 Jan 2024 14:54:47 +0100 |
* gnu/packages/firmware.scm (make-crust-tools): New procedure.
Change-Id: Iac05ecf1796e4c10692a423c12423ea9b078d141
---
gnu/packages/firmware.scm | 44 +++++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 129dd0dfdd..41fe55eb2e 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -1252,6 +1252,50 @@ (define make-crust-package
;; Most files are dual-licensed "BSD-3 OR GPL2", a few are GPL2 only.
(license (list license:bsd-3 license:gpl2)))))
+(define make-crust-tools
+ (mlambda (platform firmware)
+ (package
+ (inherit firmware)
+ (name (string-append "crust-"
+ (string-replace-substring platform "_" "-")
+ "-tools"))
+ (arguments
+ (list #:make-flags
+ #~(list "V=1"
+ "LEX=flex"
+ (string-append "HOSTAR=" #$(ar-for-target))
+ (string-append "HOSTCC=" #$(cc-for-target)))
+ #: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") ""))))
+ (replace 'configure
+ (lambda* (#:key inputs native-inputs #:allow-other-keys)
+ (copy-file (search-input-file inputs "/libexec/.config")
+ ".config")))
+ (replace 'build
+ (lambda* (#:key make-flags parallel-build?
+ #:allow-other-keys)
+ (apply invoke "make" "tools"
+ `(,@(if parallel-build?
+ `("-j"
+ ,(number->string (parallel-job-count)))
+ '())
+ ,@make-flags))))
+ (replace 'install
+ (lambda _
+ (install-file "build/tools/load"
+ (string-append #$output "/bin")))))))
+ (synopsis "Firmware for Allwinner sunxi SoCs (tools)")
+ (inputs (list firmware)))))
+
(define-public crust-pinebook
(make-crust-package "pinebook"))
--
2.41.0
- [bug#68355] [PATCH 2/8] gnu: cross-gcc-toolchain: Use fixed name., (continued)
- [bug#68355] [PATCH 2/8] gnu: cross-gcc-toolchain: Use fixed name., Jean-Pierre De Jesus DIAZ, 2024/01/09
- [bug#68355] [PATCH 5/8] gnu: make-crust-package: Update to 0.6., Jean-Pierre De Jesus DIAZ, 2024/01/09
- [bug#68355] [PATCH 7/8] gnu: Add make-crust-tools., Jean-Pierre De Jesus DIAZ, 2024/01/09
- [bug#68355] [PATCH 3/8] gnu: Add gcc-cross-or1k-elf-toolchain., Jean-Pierre De Jesus DIAZ, 2024/01/09
- [bug#68355] [PATCH 8/8] gnu: make-crust-package: Unite firmware and tools., Jean-Pierre De Jesus DIAZ, 2024/01/09
- [bug#68355] [PATCH v2 1/9] guix: Add ork1-elf platform., Jean-Pierre De Jesus DIAZ, 2024/01/19
- [bug#68355] [PATCH v2 3/9] gnu: Add gcc-cross-or1k-elf-toolchain., Jean-Pierre De Jesus DIAZ, 2024/01/19
- [bug#68355] [PATCH v2 8/9] gnu: Add make-crust-tools.,
Jean-Pierre De Jesus DIAZ <=
- [bug#68355] [PATCH v2 5/9] gnu: make-crust-package: Memoize., Jean-Pierre De Jesus DIAZ, 2024/01/19
- [bug#68355] [PATCH v2 6/9] gnu: make-crust-package: Update to 0.6., Jean-Pierre De Jesus DIAZ, 2024/01/19
- [bug#68355] [PATCH v2 2/9] gnu: cross-gcc-toolchain: Use fixed name., Jean-Pierre De Jesus DIAZ, 2024/01/19
- [bug#68355] [PATCH v2 9/9] gnu: make-crust-package: Unite firmware and tools., Jean-Pierre De Jesus DIAZ, 2024/01/19
- [bug#68355] [PATCH v2 4/9] gnu: make-crust-package: Use shorter synopsis., Jean-Pierre De Jesus DIAZ, 2024/01/19
- [bug#68355] [PATCH v2 7/9] gnu: make-crust-package: Use or1k-elf as target., Jean-Pierre De Jesus DIAZ, 2024/01/19
- bug#68355: [PATCH v2 1/9] guix: Add ork1-elf platform., Mathieu Othacehe, 2024/01/22