;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
-;;; Copyright © 2016 Theodoros Foradis <theodoros.for@openmailbox.org>
+;;; Copyright © 2016, 2017 Theodoros Foradis <theodoros@foradis.org>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (gnu packages)
+ #:use-module (gnu packages compression)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages tcl)
#:use-module (gnu packages readline)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
- #:use-module (gnu packages zip)
+ #:use-module (gnu packages maths)
#:use-module (gnu packages perl)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages gperf)
(define-public iverilog
(package
(name "iverilog")
- (version "10.1.1")
+ (version "10.2")
(source (origin
(method url-fetch)
(uri
"verilog-" version ".tar.gz"))
(sha256
(base32
- "1nnassxvq30rnn0r2p85rkb2zwxk97p109y13x3vr365wzgpbapx"))))
+ "0075x5nsxwkrgn7b3635il9kw7mslckaji518pdmwdrdn7fxppln"))))
(build-system gnu-build-system)
(native-inputs
`(("flex" ,flex)
(IEEE-1364) into some target format.
For batch simulation, the compiler can generate an intermediate form
called vvp assembly.
-This intermediate form is executed by the ``vvp'' command.
+This intermediate form is executed by @command{vvp}.
For synthesis, the compiler generates netlists in the desired format.")
;; GPL2 only because of:
;; - ./driver/iverilog.man.in
(file-name (string-append name "-" version "-checkout.tar.gz"))
(modules '((guix build utils)))
(snippet
- '(substitute* "Makefile"
- (("ABCREV = .*") "ABCREV = default\n")))))
+ '(begin
+ (substitute* "Makefile"
+ (("ABCREV = .*") "ABCREV = default\n"))
+ #t))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
#t))
(replace 'configure
(lambda* (#:key inputs (make-flags '()) #:allow-other-keys)
- (zero? (apply system* "make" "config-gcc" make-flags))))
+ (apply invoke "make" "config-gcc" make-flags)))
(add-after 'configure 'prepare-abc
(lambda* (#:key inputs #:allow-other-keys)
(let* ((sourceabc (assoc-ref inputs "abc"))
(lambda (port)
(format port ".PHONY: all\nall:\n\tcp -f abc abc-default\n")))
(copy-file source "abc/abc")
- (zero? (system* "chmod" "+w" "abc/abc")))))
+ (invoke "chmod" "+w" "abc/abc"))))
(add-before 'check 'fix-iverilog-references
(lambda* (#:key inputs native-inputs #:allow-other-keys)
(let* ((xinputs (or native-inputs inputs))
("psmisc" ,psmisc)
("xdot" ,xdot)
("abc" ,abc)))
+ (propagated-inputs
+ `(("z3" ,z3))) ; should be in path for yosys-smtbmc
(home-page "http://www.clifford.at/yosys/")
(synopsis "FPGA Verilog RTL synthesizer")
(description "Yosys synthesizes Verilog-2005.")
(("-I/usr/local/include") "")
(("-L/usr/local/lib") ""))
#t))
+ (add-after 'remove-usr-local 'fix-usr-local
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "icebox/icebox_vlog.py"
+ (("/usr/local/share") (string-append (assoc-ref outputs "out") "/share")))
+ #t))
(delete 'configure))))
(inputs
`(("libftdi" ,libftdi)))
(define-public gtkwave
(package
(name "gtkwave")
- (version "3.3.76")
+ (version "3.3.91")
(source (origin
(method url-fetch)
(uri (string-append "http://gtkwave.sourceforge.net/"
name "-" version ".tar.gz"))
(sha256
(base32
- "1vlvavszb1jwwiixiagld88agjrjg0ix8qa4xnxj4ziw0q87jbmn"))))
+ "1vp9qj3wyfwm36jk3pajvi09xvc1m1crf3d4gphfbs6nkyx2z942"))))
(build-system gnu-build-system)
(native-inputs
`(("gperf" ,gperf)
(synopsis "Waveform viewer for FPGA simulator trace files")
(description "This package is a waveform viewer for FPGA
-simulator trace files (FST).")
+simulator trace files (@dfn{FST}).")
(home-page "http://gtkwave.sourceforge.net/")
- ;; Exception against free government use in tcl_np.c and tcl_np.h
+ ;; Exception against free government use in tcl_np.c and tcl_np.h.
(license (list license:gpl2+ license:expat license:tcl/tk))))