X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/9a93f57473f12767629003e559fe8a8c500d0dfb..bfb22078fd3a184f60968938851ada97d7dead58:/gnu/packages/fpga.scm diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm index f65eae8673..c9454aa324 100644 --- a/gnu/packages/fpga.scm +++ b/gnu/packages/fpga.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Danny Milosavljevic -;;; Copyright © 2016 Theodoros Foradis +;;; Copyright © 2016, 2017 Theodoros Foradis +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,6 +26,7 @@ #: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) @@ -35,7 +37,7 @@ #: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) @@ -82,7 +84,7 @@ formal verification.") (define-public iverilog (package (name "iverilog") - (version "10.1.1") + (version "10.2") (source (origin (method url-fetch) (uri @@ -90,7 +92,7 @@ formal verification.") "verilog-" version ".tar.gz")) (sha256 (base32 - "1nnassxvq30rnn0r2p85rkb2zwxk97p109y13x3vr365wzgpbapx")))) + "0075x5nsxwkrgn7b3635il9kw7mslckaji518pdmwdrdn7fxppln")))) (build-system gnu-build-system) (native-inputs `(("flex" ,flex) @@ -103,7 +105,7 @@ It operates as a compiler, compiling source code written in Verilog (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 @@ -129,8 +131,10 @@ For synthesis, the compiler generates netlists in the desired format.") (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" @@ -148,7 +152,7 @@ For synthesis, the compiler generates netlists in the desired format.") #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")) @@ -159,7 +163,7 @@ For synthesis, the compiler generates netlists in the desired format.") (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)) @@ -198,6 +202,8 @@ For synthesis, the compiler generates netlists in the desired format.") ("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.") @@ -231,6 +237,11 @@ For synthesis, the compiler generates netlists in the desired format.") (("-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))) @@ -290,14 +301,14 @@ Includes the actual FTDI connector.") (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) @@ -317,7 +328,7 @@ Includes the actual FTDI connector.") (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))))