summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Cessenat <cessenat@gmail.com>2021-05-25 09:10:52 +0200
committerGitHub <noreply@github.com>2021-05-25 09:10:52 +0200
commit7c73a786b34e981ead76ad79a078bd51135d1873 (patch)
tree7472a80bd862690f9583a46c69b4b5c5f88659c9
parentcbd46be21b1270846a9d13a7c927fe5d5f7c8ae0 (diff)
downloadspack-7c73a786b34e981ead76ad79a078bd51135d1873.tar.gz
spack-7c73a786b34e981ead76ad79a078bd51135d1873.tar.bz2
spack-7c73a786b34e981ead76ad79a078bd51135d1873.tar.xz
spack-7c73a786b34e981ead76ad79a078bd51135d1873.zip
qucs: add new package (#23849)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
-rw-r--r--var/spack/repos/builtin/packages/qucs/package.py63
1 files changed, 63 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/qucs/package.py b/var/spack/repos/builtin/packages/qucs/package.py
new file mode 100644
index 0000000000..ed23c7c979
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qucs/package.py
@@ -0,0 +1,63 @@
+# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+from spack import *
+import os
+
+
+class Qucs(AutotoolsPackage):
+ """QUCS - Quite Universal Circuit Simulator
+
+ Qucs is an integrated circuit simulator which means you are able to
+ setup a circuit with a graphical user interface (GUI) and simulate
+ the large-signal, small-signal and noise behaviour of the circuit.
+ After that simulation has finished you can view the simulation results
+ on a presentation page or window.
+ """
+
+ homepage = "http://qucs.sourceforge.net/"
+ url = "https://sourceforge.net/projects/qucs/files/qucs/0.0.19/qucs-0.0.19.tar.gz"
+ git = "https://git.code.sf.net/p/qucs/git"
+
+ version('master', branch='master')
+ version('0.0.19', sha256='45c6434fde24c533e63550675ac21cdbd3cc6cbba29b82a1dc3f36e7dd4b3b3e')
+ version('0.0.18', sha256='3609a18b57485dc9f19886ac6694667f3251702175bd1cbbbea37981b2c482a7')
+
+ # Can use external simulators:
+ variant(
+ 'simulators', default='qucs', multi=True,
+ values=('qucs', 'ngspice', 'xyce'),
+ description='Circuits simulators (builtin qucsator and external ngspice, xyce)'
+ )
+
+ depends_on('flex@2.5.9:', type='build')
+ depends_on('bison@2.5:', type='build')
+ depends_on('pkgconfig', type='build')
+
+ depends_on("autoconf@2.64:", type='build')
+ depends_on("automake@1.7.0:", type='build')
+ depends_on("libtool", type='build')
+ depends_on("m4", type='build')
+
+ depends_on('adms', when='@0.0.19:')
+ depends_on('qt@4.8.5:4.8.7')
+ depends_on('gperf@3.0.1:')
+
+ # Simulators can be qucsator, the Circuit simulator of the Qucs project
+ # from https://github.com/Qucs/qucsator, or they can also be provided by
+ # ngspice and xyce.
+ # See https://qucs-help.readthedocs.io/en/spice4qucs/BasSim.html
+ depends_on('ngspice build=bin', type='run', when='simulators=ngspice')
+ depends_on('xyce', type='run', when='simulators=xyce')
+
+ def autoreconf(self, spec, prefix):
+ sh = which('sh')
+ if os.path.exists('bootstrap'):
+ sh('./bootstrap')
+ else:
+ sh('./autogen.sh')
+
+ def configure_args(self):
+ args = ['--disable-doc']
+ return args