From 8fa5e0acecf429d562ee849f8465a76e9b245f16 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 16 Feb 2023 11:19:17 +0200 Subject: gnu: Add fcode-utils. * gnu/packages/firmware.scm (fcode-utils): New variable. --- gnu/packages/firmware.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 23975c72e8..f99ee32abf 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -69,6 +69,7 @@ (define-module (gnu packages firmware) #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages shells) #:use-module (gnu packages sqlite) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) @@ -347,6 +348,45 @@ (define-public eg25-manager (home-page "https://gitlab.com/mobian1/devices/eg25-manager") (license license:gpl3+))) +(define-public fcode-utils + (package + (name "fcode-utils") + (version "1.0.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/openbios/fcode-utils") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0yyqmiqvlf644jrv8x39aqdqywdnm80k62d2assgcammwbc7krya")))) + (build-system gnu-build-system) + (arguments + (list + #:test-target "tests" + #:make-flags + #~(list (string-append "CC=" #$(cc-for-target)) + (string-append "DESTDIR=" #$output)) + #:phases + #~(modify-phases %standard-phases + (delete 'configure)))) ; No configure script. + (native-inputs + (list tcsh)) + (home-page "https://www.openfirmware.info/FCODE_suite") + (synopsis "Utilities to process FCODE, OpenFirmware's byte code") + (description "This is the OpenBIOS FCODE suite. It contains a set of +utilites used to process FCODE, OpenFirmware's byte code, consisting of: +@enumerate +@item toke - A tokenizer +@item detok - A detokenizer +@item romheaders - A PCI rom header utility +@item localvalues - A portable implementation of Forth local values +@end enumerate") + (license (list license:gpl2 + ;; localvalues implementation and some documentation. + license:cpl1.0)))) + (define* (make-openbios-package name arch) (let ((target (cond ((string-suffix? "ppc" arch) -- cgit v1.2.3