[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#27344] [PATCH v3 7/8] gnu: Add qucs.
From: |
Theodoros Foradis |
Subject: |
[bug#27344] [PATCH v3 7/8] gnu: Add qucs. |
Date: |
Sat, 9 Sep 2017 20:57:51 +0300 |
* gnu/packages/engineering.scm (qucs): New variable.
---
gnu/packages/engineering.scm | 93 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 93 insertions(+)
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index fa09c8823..e46b1e0d9 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -41,10 +41,12 @@
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
+ #:use-module (gnu packages commencement)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
+ #:use-module (gnu packages fpga)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gd)
@@ -53,6 +55,7 @@
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
+ #:use-module (gnu packages gperf)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages image)
@@ -1463,3 +1466,93 @@ parallel computing platforms. It also supports serial
execution.")
(license (list license:gpl2+
license:lgpl2.0+)))) ; freehdl's libraries
+(define-public qucs
+ (package
+ (name "qucs")
+ (version "0.0.19")
+ (source (origin
+ (method url-fetch)
+ (uri
+ (string-append
+ "https://sourceforge.net/projects/qucs/files/qucs/" version
+ "/qucs-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0giv9gfyfdizvjhq56x2pdncrlyv3k15lrsh6pk37i94vr7l7ij5"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'patch-configure
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "qucs/configure"
+ (("\\$QTDIR") (assoc-ref inputs "qt4")))
+ #t))
+ (add-after 'patch-configure 'patch-scripts
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (substitute* '("qucs/qucs/qucsdigi"
+ "qucs/qucs/qucsdigilib"
+ "qucs/qucs/qucsveri")
+ (("\\$BINDIR")
+ (string-append (assoc-ref outputs "out") "/bin"))
+ (("freehdl-config")
+ (string-append (assoc-ref inputs "freehdl")
"/bin/freehdl-config"))
+ (("freehdl-v2cc")
+ (string-append (assoc-ref inputs "freehdl")
"/bin/freehdl-v2cc"))
+ (("cp ")
+ (string-append (assoc-ref inputs "coreutils") "/bin/cp" " "))
+ (("glibtool")
+ (string-append (assoc-ref inputs "libtool") "/bin/libtool"))
+ (("sed")
+ (string-append (assoc-ref inputs "sed") "/bin/sed"))
+ (("iverilog")
+ (string-append (assoc-ref inputs "iverilog") "/bin/iverilog"))
+ (("vvp")
+ (string-append (assoc-ref inputs "iverilog") "/bin/vvp")))
+ #t))
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; The test suite requires a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ #t))
+ (add-after 'install 'make-wrapper
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (wrap-program (string-append out "/bin/qucs")
+ `("ADMSXMLBINDIR" ":" prefix
+ (,(string-append (assoc-ref inputs "adms") "/bin")))
+ `("ASCOBINDIR" ":" prefix
+ (,(string-append (assoc-ref inputs "asco") "/bin")))
+ `("QUCS_OCTAVE" ":" prefix
+ (,(string-append (assoc-ref inputs "octave")
"/bin/octave")))))
+ #t)))
+ #:parallel-build? #f ; race condition
+ #:configure-flags '("--disable-doc"))) ; we need octave-epstk
+ (native-inputs
+ `(("gperf" ,gperf)
+ ("libtool-native" ,libtool)
+ ("python" ,python-2) ; for tests
+ ("matplotlib" ,python2-matplotlib) ; for tests
+ ("numpy" ,python2-numpy) ; for tests
+ ("xorg-server" ,xorg-server))) ; for tests
+ (inputs
+ `(("adms" ,adms)
+ ("coreutils" ,coreutils)
+ ("asco" ,asco)
+ ("freehdl" ,freehdl)
+ ("iverilog" ,iverilog)
+ ("libtool" ,libtool)
+ ("octave" ,octave)
+ ("qt4" ,qt-4)
+ ("sed" ,sed)))
+ (propagated-inputs
+ `(("gcc-toolchain" ,gcc-toolchain-5))) ; for freehdl
+ (home-page "http://qucs.sourceforge.net/")
+ (synopsis "Circuit simulator with graphical user interface")
+ (description
+ "Qucs is a circuit simulator with graphical user interface.
+ The software aims to support all kinds of circuit simulation types,
+e.g. DC, AC, S-parameter, Transient, Noise and Harmonic Balance analysis.
+ Pure digital simulations are also supported.")
+ (license license:gpl2+)))
--
2.13.4
- [bug#27344] [PATCH 0/12] Add computational software and circuit simulators, Theodoros Foradis, 2017/09/09
- [bug#27344] [PATCH v3 1/8] gnu: Add asco., Theodoros Foradis, 2017/09/09
- [bug#27344] [PATCH v3 7/8] gnu: Add qucs.,
Theodoros Foradis <=
- [bug#27344] [PATCH v3 3/8] gnu: Add lapack-3.5., Theodoros Foradis, 2017/09/09
- [bug#27344] [PATCH v3 6/8] gnu: Add freehdl., Theodoros Foradis, 2017/09/09
- [bug#27344] [PATCH v3 5/8] gnu: Add xyce-parallel., Theodoros Foradis, 2017/09/09
- [bug#27344] [PATCH v3 8/8] gnu: Add qucs-s., Theodoros Foradis, 2017/09/09
- [bug#27344] [PATCH v3 4/8] gnu: Add xyce-serial., Theodoros Foradis, 2017/09/09
- [bug#27344] [PATCH v3 2/8] gnu: Add libngspice and ngspice., Theodoros Foradis, 2017/09/09
- [bug#27344] [PATCH v3 1/8] gnu: Add asco., Theodoros Foradis, 2017/09/09