[bug#78016,electronics-team,v2] gnu: Add symbiyosys.
Commit Message
From: Cayetano Santos via Guix-patches via <guix-patches@gnu.org>
* gnu/packages/electronics.scm (symbiyosys): New variable.
Change-Id: I1a3758e4bf46fc6d57ef63a0c0f5f2e39a862c4d
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
---
gnu/packages/electronics.scm | 76 +++++++++++++++++++++++++++++++++++-
1 file changed, 75 insertions(+), 1 deletion(-)
base-commit: 7e5913f90df916d8d9f5c509354d62324f54f481
@@ -48,6 +48,7 @@ (define-module (gnu packages electronics)
#:use-module (gnu packages embedded)
#:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
+ #:use-module (gnu packages fpga)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages graphviz)
@@ -57,6 +58,7 @@ (define-module (gnu packages electronics)
#:use-module (gnu packages linux)
#:use-module (gnu packages maths)
#:use-module (gnu packages m4)
+ #:use-module (gnu packages maths)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
@@ -71,7 +73,8 @@ (define-module (gnu packages electronics)
#:use-module (gnu packages tcl)
#:use-module (gnu packages tls)
#:use-module (gnu packages toolkits)
- #:use-module (gnu packages version-control))
+ #:use-module (gnu packages version-control)
+ #:use-module (gnu packages xml))
(define-public comedilib
(package
@@ -679,6 +682,77 @@ (define-public sigrok-firmware-fx2lafw
them usable as simple logic analyzer and/or oscilloscope hardware.")
(license license:gpl2+))))
+(define-public symbiyosys
+ (package
+ (name "symbiyosys")
+ (version "0.52")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/YosysHQ/sby/")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "06nhkmnl9ymp1wxapc0lnj82knj5q43x0s2rmfshwvs4cijzqm7f"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:test-target "test"
+ #:modules `((guix build gnu-build-system)
+ ((guix build python-build-system) #:prefix python:)
+ (guix build utils))
+ #:imported-modules `(,@%cmake-build-system-modules
+ (guix build python-build-system))
+ #:make-flags #~(list (string-append "PREFIX=" #$output))
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure)
+ (delete 'build)
+ ;; TODO: build docs, after furo-ys is packaged.
+ ;; (add-after 'install 'build-info
+ ;; (lambda _
+ ;; (invoke "make" "-C" "docs" "info")))
+ (add-before 'check 'git-init
+ (lambda _
+ (invoke "git" "init"))) ;check expects a git repo
+ (add-after 'git-init 'patch-/usr/bin/env
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "sbysrc/sby_core.py"
+ (("\"/usr/bin/env\", ")
+ ""))
+ (substitute* "sbysrc/sby.py"
+ (("/usr/bin/env python")
+ (search-input-file inputs "bin/python3")))))
+ ;; The tests related to abc (berkeley) binary used currently
+ ;; produce errors. We need abc-yosyshq, see #78059.
+ (add-after 'patch-/usr/bin/env 'disable-abc-tests
+ (lambda _
+ (delete-file "tests/keepgoing/keepgoing_multi_step.sby")
+ (delete-file-recursively "docs/examples/demos")
+ (delete-file
+ "tests/regression/aim_vs_smt2_nonzero_start_offset.sby")))
+ (add-after 'install 'python:wrap
+ (assoc-ref python:%standard-phases 'wrap)))))
+ (inputs (list abc
+ boolector
+ git-minimal/pinned
+ python
+ python-click
+ python-xmlschema
+ z3
+ yices
+ yosys))
+ ;; TODO: see above build-info phase comment.
+ ;; (native-inputs (list
+ ;; python-sphinx python-sphinx-argparse texinfo))
+ (home-page "https://github.com/YosysHQ/sby/")
+ (synopsis "Formal hardware verification with yosys")
+ (description
+ "SimbyYosys is a front-end program for yosys-based formal hardware
+verification flows.")
+ (license license:isc)))
+
(define-public uhdm
(package
(name "uhdm")