summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/fpga.scm45
1 files changed, 45 insertions, 0 deletions
diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm
index 1802e0ed14..50a19a00d6 100644
--- a/gnu/packages/fpga.scm
+++ b/gnu/packages/fpga.scm
@@ -28,17 +28,22 @@
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system python)
   #:use-module (gnu packages)
+  #:use-module (gnu packages autotools)
+  #:use-module (gnu packages base)
   #: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 python)
   #:use-module (gnu packages bison)
+  #:use-module (gnu packages check)
   #:use-module (gnu packages flex)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages graphviz)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages llvm)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages ghostscript)
@@ -393,3 +398,43 @@ simulator trace files (@dfn{FST}).")
     (description "This package provides a library to turn Python into
 a hardware description and verification language. ")
     (license license:lgpl2.1+)))
+
+(define-public nvc
+  (package
+    (name "nvc")
+    (version "1.5.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                     (url "https://github.com/nickg/nvc.git")
+                     (commit (string-append "r" version))))
+              (file-name (string-append name "-" version "-checkout"))
+              (sha256
+               (base32
+                "0dd1xany6qhh2qsfw8ba0ky7y86h19yr4hlk0r5i2bvwsg4355v9"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:parallel-build? #f ; https://github.com/nickg/nvc/issues/409
+       #:configure-flags
+       '("--enable-vhpi")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'clean-up
+           (lambda _
+             (delete-file "autogen.sh")
+             #t)))))
+    (native-inputs
+     `(("automake" ,automake)
+       ("autoconf" ,autoconf)
+       ("flex" ,flex)
+       ("gettext" ,gnu-gettext)
+       ("libtool" ,libtool)
+       ("pkg-config" ,pkg-config)
+       ("which" ,which)
+       ("check" ,check))) ; for the tests
+    (inputs
+     `(("llvm" ,llvm-9)))
+    (synopsis "VHDL compiler and simulator")
+    (description "This package provides a VHDL compiler and simulator.")
+    (home-page "https://github.com/nickg/nvc")
+    (license license:gpl3+)))