Skip to content

Commit

Permalink
cad/qucs-s: New port: Quite Universal Circuit Simulator: GUI for circ…
Browse files Browse the repository at this point in the history
…uit simulation kernels
  • Loading branch information
yurivict committed Jul 8, 2022
1 parent a34ff9c commit 7609fce
Show file tree
Hide file tree
Showing 6 changed files with 353 additions and 0 deletions.
1 change: 1 addition & 0 deletions cad/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,7 @@
SUBDIR += qflow
SUBDIR += qmls
SUBDIR += qrouter
SUBDIR += qucs-s
SUBDIR += repsnapper
SUBDIR += rubygem-gdsii
SUBDIR += scotch
Expand Down
24 changes: 24 additions & 0 deletions cad/qucs-s/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
PORTNAME= qucs-s
DISTVERSION= 0.0.24
CATEGORIES= cad

MAINTAINER= yuri@FreeBSD.org
COMMENT= Quite Universal Circuit Simulator: GUI for circuit simulation kernels

LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING

RUN_DEPENDS= ngspice:cad/ngspice_rework

USES= cmake qt:5
USE_QT= core gui printsupport svg widgets buildtools_build linguisttools_build qmake_build

USE_GITHUB= yes
GH_ACCOUNT= ra3xdh
GH_PROJECT= qucs_s

post-patch:
# first the patch under files/ introduces %%PREFIX%%, and now we fix it here
@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|' ${WRKSRC}/qucs/main.cpp

.include <bsd.port.mk>
3 changes: 3 additions & 0 deletions cad/qucs-s/distinfo
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
TIMESTAMP = 1657257731
SHA256 (ra3xdh-qucs_s-0.0.24_GH0.tar.gz) = f4d26c146ce8d2bd6d5837ef288d87eeed9399e09c21376c858543d6e55caeed
SIZE (ra3xdh-qucs_s-0.0.24_GH0.tar.gz) = 11377127
21 changes: 21 additions & 0 deletions cad/qucs-s/files/patch-qucs_main.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
- this patch works together with post-patch: %%PREFIX%% are substituted there

--- qucs/main.cpp.orig 2022-06-30 18:34:40 UTC
+++ qucs/main.cpp
@@ -139,13 +139,13 @@ bool loadSettings()
#ifdef Q_OS_WIN
QucsSettings.XyceExecutable = "Xyce.exe";
#else
- QucsSettings.XyceExecutable = "/usr/local/Xyce-Release-6.8.0-OPENSOURCE/bin/Xyce";
+ QucsSettings.XyceExecutable = "%%PREFIX%%/bin/Xyce";
#endif
}
if(settings.contains("XyceParExecutable")) QucsSettings.XyceParExecutable = settings.value("XyceParExecutable").toString();
- else QucsSettings.XyceParExecutable = "mpirun -np %p /usr/local/Xyce-Release-6.8.0-OPENMPI-OPENSOURCE/bin/Xyce";
+ else QucsSettings.XyceParExecutable = "mpirun -np %p %%PREFIX%%/bin/Xyce";
if(settings.contains("SpiceOpusExecutable")) QucsSettings.SpiceOpusExecutable = settings.value("SpiceOpusExecutable").toString();
- else QucsSettings.SpiceOpusExecutable = "spiceopus";
+ else QucsSettings.SpiceOpusExecutable = "%%PREFIX%%/bin/spiceopus";
if(settings.contains("Nprocs")) QucsSettings.NProcs = settings.value("Nprocs").toInt();
else QucsSettings.NProcs = 4;
if(settings.contains("S4Q_workdir")) QucsSettings.S4Qworkdir = settings.value("S4Q_workdir").toString();
22 changes: 22 additions & 0 deletions cad/qucs-s/pkg-descr
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
Qucs-S is a spin-off of the Qucs cross-platform circuit simulator.
"S" letter indicates SPICE.

Qucs-S project uses free SPICE circuit simulation kernels to sumulate
circuits. It merges the power of SPICE and the simplicity of the Qucs
GUI.

Backends:
* Ngspice is a default backend recommended to use. Ngspice is powerful
mixed-level/mixed-signal circuit simulator. Most of industrial
SPICE models are compatible with Ngspice. It has an excellent
performance for time-domain simulation of switching circuits and
powerful postprocessor.
* XYCE is a new SPICE-compatible circuit simulator written by Sandia
from the scratch. It supports basic SPICE simulation types and has
an advanced RF simulation features such as Harmonic balance
simulation.
* SpiceOpus is developed by the Faculty of Electrical Engineering of
the Ljubljana University. It based on the SPICE-3f5 code.
* Qucsator as backward compatible.

WWW: https://ra3xdh.github.io/
282 changes: 282 additions & 0 deletions cad/qucs-s/pkg-plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,282 @@
bin/qucs-s
bin/qucs-sactivefilter
bin/qucs-sfilter
bin/qucs-slib
share/applications/qucs-s.desktop
share/icons/hicolor/128x128/apps/qucs-s.png
share/icons/hicolor/16x16/apps/qucs-s.png
share/icons/hicolor/22x22/apps/qucs-s.png
share/icons/hicolor/256x256/apps/qucs-s.png
share/icons/hicolor/32x32/apps/qucs-s.png
share/icons/hicolor/48x48/apps/qucs-s.png
share/icons/hicolor/512x512/apps/qucs-s.png
share/icons/hicolor/64x64/apps/qucs-s.png
share/icons/hicolor/scalable/apps/qucs-s.svg
share/man/man1/qucs-s.1.gz
%%DATADIR%%/examples/Amp_Baseband_Low-noise.sch
%%DATADIR%%/examples/Amp_Two_Tone.sch
%%DATADIR%%/examples/BPF_1550_edge_cpld.sch
%%DATADIR%%/examples/BPF_2000_Co-ax.sch
%%DATADIR%%/examples/Comb_Gen.sch
%%DATADIR%%/examples/IdealBalun.sch
%%DATADIR%%/examples/LPF-Balun2.sch
%%DATADIR%%/examples/LPF-Balun3.sch
%%DATADIR%%/examples/LPF_1000_Coplanar.sch
%%DATADIR%%/examples/LPF_1000_Radial-Stub.sch
%%DATADIR%%/examples/LPF_1250_Elliptical.sch
%%DATADIR%%/examples/Mixer_FFT.sch
%%DATADIR%%/examples/Puls3b.sch
%%DATADIR%%/examples/README
%%DATADIR%%/examples/SmithChartTest.sch
%%DATADIR%%/examples/VCO_100.sch
%%DATADIR%%/examples/X2_100_Bipolar.sch
%%DATADIR%%/examples/X5_500.sch
%%DATADIR%%/examples/active_bp.sch
%%DATADIR%%/examples/active_lp.sch
%%DATADIR%%/examples/active_mixer.sch
%%DATADIR%%/examples/bbv.sch
%%DATADIR%%/examples/boostconverter.sch
%%DATADIR%%/examples/bpf_10Ghz.sch
%%DATADIR%%/examples/bridge.sch
%%DATADIR%%/examples/buckboost.sch
%%DATADIR%%/examples/buckconverter.sch
%%DATADIR%%/examples/charac.sch
%%DATADIR%%/examples/chargepump.sch
%%DATADIR%%/examples/chebyshev1_5th.sch
%%DATADIR%%/examples/classic_osci.sch
%%DATADIR%%/examples/colpitts.sch
%%DATADIR%%/examples/colpitts_base.sch
%%DATADIR%%/examples/diff1.sch
%%DATADIR%%/examples/diode_hb.sch
%%DATADIR%%/examples/elliptic_5th.sch
%%DATADIR%%/examples/external_interface/cpp-interface/boostconverter.net
%%DATADIR%%/examples/external_interface/cpp-interface/main.cpp
%%DATADIR%%/examples/external_interface/cpp-interface/qucs_cpp_interface_example.cbp
%%DATADIR%%/examples/external_interface/example_ecvs.net
%%DATADIR%%/examples/external_interface/example_probe_and_subcircuit_access.net
%%DATADIR%%/examples/external_interface/m-interface/asynchronous_boost_converter_example.m
%%DATADIR%%/examples/external_interface/m-interface/boostconverter.net
%%DATADIR%%/examples/external_interface/m-interface/example_ecvs.m
%%DATADIR%%/examples/external_interface/m-interface/example_probe_and_subcircuit_access_async.m
%%DATADIR%%/examples/external_interface/m-interface/synchronous_boost_converter_example.m
%%DATADIR%%/examples/external_interface/probe_and_subcircuit/example_probe_and_subcircuit.sch
%%DATADIR%%/examples/external_interface/probe_and_subcircuit/example_sub_subcircuit.sch
%%DATADIR%%/examples/external_interface/probe_and_subcircuit/example_subcircuit.sch
%%DATADIR%%/examples/fet.sch
%%DATADIR%%/examples/fet_noise.sch
%%DATADIR%%/examples/fgummel.sch
%%DATADIR%%/examples/fhr01fh.sch
%%DATADIR%%/examples/filter_optimization.sch
%%DATADIR%%/examples/flicker.sch
%%DATADIR%%/examples/fullwaverectifier_1.sch
%%DATADIR%%/examples/fullwaverectifier_2.sch
%%DATADIR%%/examples/gain.sch
%%DATADIR%%/examples/giacoletto.sch
%%DATADIR%%/examples/gilbert.sch
%%DATADIR%%/examples/groupdelay_ac.sch
%%DATADIR%%/examples/groupdelay_sp.sch
%%DATADIR%%/examples/gyrator.sch
%%DATADIR%%/examples/lc_osc.sch
%%DATADIR%%/examples/lf_osci.sch
%%DATADIR%%/examples/microstrip.sch
%%DATADIR%%/examples/mixer.sch
%%DATADIR%%/examples/mscoupler.sch
%%DATADIR%%/examples/multiplier.sch
%%DATADIR%%/examples/ngspice/B-sources.sch
%%DATADIR%%/examples/ngspice/BJT-four.sch
%%DATADIR%%/examples/ngspice/BJT-noise.sch
%%DATADIR%%/examples/ngspice/BJT-swp.dat.ngspice
%%DATADIR%%/examples/ngspice/BJT-swp.dpl
%%DATADIR%%/examples/ngspice/BJT-swp.sch
%%DATADIR%%/examples/ngspice/BJT.sch
%%DATADIR%%/examples/ngspice/BJT_dc.sch
%%DATADIR%%/examples/ngspice/Distortion.sch
%%DATADIR%%/examples/ngspice/EDD-Q-test.sch
%%DATADIR%%/examples/ngspice/Full_wave.sch
%%DATADIR%%/examples/ngspice/LM358_spice_prj.tar.gz
%%DATADIR%%/examples/ngspice/MESFETs/testACMESFETCL1.sch
%%DATADIR%%/examples/ngspice/MESFETs/testDCIdsVgs.sch
%%DATADIR%%/examples/ngspice/MESFETs/testDCMESFETCL1.sch
%%DATADIR%%/examples/ngspice/RCL.sch
%%DATADIR%%/examples/ngspice/RFLumpComp/RFLumpedComponents.lib
%%DATADIR%%/examples/ngspice/RFLumpComp/Test_RATF_EquivCircD.sch
%%DATADIR%%/examples/ngspice/RFLumpComp/Test_chip_res_basic.sch
%%DATADIR%%/examples/ngspice/Relay.sch
%%DATADIR%%/examples/ngspice/TestFNXSPICEDC.sch
%%DATADIR%%/examples/ngspice/Test_Cores.qucs
%%DATADIR%%/examples/ngspice/Test_XSPICE_Xanalogue_lib.zip
%%DATADIR%%/examples/ngspice/Test_tran_coup.sch
%%DATADIR%%/examples/ngspice/TranLibTest.qucs
%%DATADIR%%/examples/ngspice/Transformer_opposite_coupling.sch
%%DATADIR%%/examples/ngspice/Transformer_positive_coupling.sch
%%DATADIR%%/examples/ngspice/Tunnel.sch
%%DATADIR%%/examples/ngspice/XSPICE_CM/DiodeCap_prj/diodecap.ifs
%%DATADIR%%/examples/ngspice/XSPICE_CM/DiodeCap_prj/diodecap.mod
%%DATADIR%%/examples/ngspice/XSPICE_CM/testRFind.sch
%%DATADIR%%/examples/ngspice/audio_amp.sch
%%DATADIR%%/examples/ngspice/diode.sch
%%DATADIR%%/examples/ngspice/irfz44_switch.sch
%%DATADIR%%/examples/ngspice/par_sweep_test.sch
%%DATADIR%%/examples/ngspice/quarz.sch
%%DATADIR%%/examples/ngspice/quarz_test.dat.ngspice
%%DATADIR%%/examples/ngspice/quarz_test.dat.xyce
%%DATADIR%%/examples/ngspice/quarz_test.dpl
%%DATADIR%%/examples/ngspice/quarz_test.sch
%%DATADIR%%/examples/ngspice/s_param_wideband_amp.sch
%%DATADIR%%/examples/ngspice/s_param_wideband_amp_noise.sch
%%DATADIR%%/examples/ngspice/sensitivityACandDC.sch
%%DATADIR%%/examples/ngspice/single_phase_transformer.sch
%%DATADIR%%/examples/ngspice/spice4qucs-help/Chapter13/S11_Probe.sch
%%DATADIR%%/examples/ngspice/spice4qucs-help/Chapter13/S12_Probe.sch
%%DATADIR%%/examples/ngspice/spice4qucs-help/Chapter13/S21_Probe.sch
%%DATADIR%%/examples/ngspice/spice4qucs-help/Chapter13/S22_Probe.sch
%%DATADIR%%/examples/ngspice/spice4qucs-help/Chapter13/STestBench.sch
%%DATADIR%%/examples/ngspice/spice4qucs-help/Chapter13/TestLPF.sch
%%DATADIR%%/examples/ngspice/spice4qucs-help/Chapter13/TwoPortConversion_scripts.sch
%%DATADIR%%/examples/ngspice/spice4qucs-help/Chapter13/Xyce2ToneTest.sch
%%DATADIR%%/examples/ngspice/spice4qucs-help/Chapter13/ngspiceCustom1.sch
%%DATADIR%%/examples/ngspice/spice4qucs-help/Chapter13/testDiodeSM.sch
%%DATADIR%%/examples/notch.sch
%%DATADIR%%/examples/opamp_gyrator.sch
%%DATADIR%%/examples/pentode.sch
%%DATADIR%%/examples/preregulator.sch
%%DATADIR%%/examples/resonance.sch
%%DATADIR%%/examples/rf_osci.sch
%%DATADIR%%/examples/rgummel.sch
%%DATADIR%%/examples/sawtooth-1.sch
%%DATADIR%%/examples/sawtooth-2.sch
%%DATADIR%%/examples/sawtooth-3.sch
%%DATADIR%%/examples/sawtooth-discreet.sch
%%DATADIR%%/examples/schmitt.sch
%%DATADIR%%/examples/selective_amp.sch
%%DATADIR%%/examples/shot.sch
%%DATADIR%%/examples/singleOPV.sch
%%DATADIR%%/examples/single_balanced.sch
%%DATADIR%%/examples/stab.sch
%%DATADIR%%/examples/supply.sch
%%DATADIR%%/examples/swr_meter.sch
%%DATADIR%%/examples/sym_osci.sch
%%DATADIR%%/examples/time_resistor.sch
%%DATADIR%%/examples/triode.sch
%%DATADIR%%/examples/wilkinson.sch
%%DATADIR%%/examples/xyce/XyceDigital/testCombLogic1.sch
%%DATADIR%%/examples/xyce/XyceDigital/testCombLogic2.sch
%%DATADIR%%/examples/xyce/XyceDigital/testNAND2.sch
%%DATADIR%%/examples/xyce/XyceDigital/testPATGENX1.sch
%%DATADIR%%/examples/xyce/XyceDigital/testPATGENX4.sch
%%DATADIR%%/examples/xyce/hb-test.sch
%%DATADIR%%/examples/xyce/s_param_lc_filter.sch
%%DATADIR%%/examples/xyce/s_param_wideband_amp.sch
%%DATADIR%%/examples/xyce/sensitivityDC.sch
%%DATADIR%%/examples/xyce/sensitivityTRAN.sch
%%DATADIR%%/lang/qucs_ar.qm
%%DATADIR%%/lang/qucs_ca.qm
%%DATADIR%%/lang/qucs_cs.qm
%%DATADIR%%/lang/qucs_de.qm
%%DATADIR%%/lang/qucs_en.qm
%%DATADIR%%/lang/qucs_es.qm
%%DATADIR%%/lang/qucs_fr.qm
%%DATADIR%%/lang/qucs_he.qm
%%DATADIR%%/lang/qucs_hu.qm
%%DATADIR%%/lang/qucs_it.qm
%%DATADIR%%/lang/qucs_ja.qm
%%DATADIR%%/lang/qucs_kk.qm
%%DATADIR%%/lang/qucs_pl.qm
%%DATADIR%%/lang/qucs_pt_BR.qm
%%DATADIR%%/lang/qucs_pt_PT.qm
%%DATADIR%%/lang/qucs_ro.qm
%%DATADIR%%/lang/qucs_ru.qm
%%DATADIR%%/lang/qucs_sv.qm
%%DATADIR%%/lang/qucs_tr.qm
%%DATADIR%%/lang/qucs_uk.qm
%%DATADIR%%/lang/qucs_zh_CN.qm
%%DATADIR%%/library/AnalogueCM.lib
%%DATADIR%%/library/AnalogueCM/FNXSPICECM.ifs
%%DATADIR%%/library/AnalogueCM/FNXSPICECM.mod
%%DATADIR%%/library/AnalogueCM/RFind.ifs
%%DATADIR%%/library/AnalogueCM/RFind.mod
%%DATADIR%%/library/AnalogueCM/etd.ifs
%%DATADIR%%/library/AnalogueCM/etd.mod
%%DATADIR%%/library/BF998.lib
%%DATADIR%%/library/Bridges.lib
%%DATADIR%%/library/Diodes.lib
%%DATADIR%%/library/Ideal.lib
%%DATADIR%%/library/JFETs.lib
%%DATADIR%%/library/LEDs.lib
%%DATADIR%%/library/MESFETs.lib
%%DATADIR%%/library/MESFETs/curtice1.ifs
%%DATADIR%%/library/MESFETs/curtice1.mod
%%DATADIR%%/library/MOSFETs.lib
%%DATADIR%%/library/NMOSFETs.lib
%%DATADIR%%/library/OpAmps.lib
%%DATADIR%%/library/PMOSFETs.lib
%%DATADIR%%/library/Regulators.lib
%%DATADIR%%/library/SpiceOpamp.lib
%%DATADIR%%/library/Substrates.lib
%%DATADIR%%/library/Transformers.lib
%%DATADIR%%/library/Transistors.lib
%%DATADIR%%/library/Tubes.lib
%%DATADIR%%/library/Varistors.lib
%%DATADIR%%/library/Xanalogue.lib
%%DATADIR%%/library/XyceDigital.lib
%%DATADIR%%/library/XyceDigital/A2DBRIDGE.sym
%%DATADIR%%/library/XyceDigital/A2DBRIDGEX2.sym
%%DATADIR%%/library/XyceDigital/A2DBRIDGEX4.sym
%%DATADIR%%/library/XyceDigital/A2DBRIDGEX8.sym
%%DATADIR%%/library/XyceDigital/AND2.sym
%%DATADIR%%/library/XyceDigital/AND4.sym
%%DATADIR%%/library/XyceDigital/ANDOR4X2.sym
%%DATADIR%%/library/XyceDigital/BUF.sym
%%DATADIR%%/library/XyceDigital/D2ABRIDGE.sym
%%DATADIR%%/library/XyceDigital/D2ABRIDGEX2.sym
%%DATADIR%%/library/XyceDigital/D2ABRIDGEX4.sym
%%DATADIR%%/library/XyceDigital/D2ABRIDGEX8.sym
%%DATADIR%%/library/XyceDigital/FADDER.sym
%%DATADIR%%/library/XyceDigital/GEN0OR1X4.sym
%%DATADIR%%/library/XyceDigital/GEN0OR1X8.sym
%%DATADIR%%/library/XyceDigital/INV.sym
%%DATADIR%%/library/XyceDigital/LOGIC0.sym
%%DATADIR%%/library/XyceDigital/LOGIC1.sym
%%DATADIR%%/library/XyceDigital/MUX2TO1.sym
%%DATADIR%%/library/XyceDigital/MUX4TO1.sym
%%DATADIR%%/library/XyceDigital/MUX8TO1.sym
%%DATADIR%%/library/XyceDigital/NAND2.sym
%%DATADIR%%/library/XyceDigital/NAND4.sym
%%DATADIR%%/library/XyceDigital/NOR2.sym
%%DATADIR%%/library/XyceDigital/NOR4.sym
%%DATADIR%%/library/XyceDigital/NXOR.sym
%%DATADIR%%/library/XyceDigital/OR2.sym
%%DATADIR%%/library/XyceDigital/OR4.sym
%%DATADIR%%/library/XyceDigital/PATGENX1.sym
%%DATADIR%%/library/XyceDigital/PATGENX128.sym
%%DATADIR%%/library/XyceDigital/PATGENX2.sym
%%DATADIR%%/library/XyceDigital/PATGENX32.sym
%%DATADIR%%/library/XyceDigital/PATGENX4.sym
%%DATADIR%%/library/XyceDigital/PATGENX8.sym
%%DATADIR%%/library/XyceDigital/XOR.sym
%%DATADIR%%/library/Xyce_Digital_TTL_Technology.lib
%%DATADIR%%/library/Z-Diodes.lib
%%DATADIR%%/library/ngspice.blacklist
%%DATADIR%%/library/qucs.blacklist
%%DATADIR%%/library/xyce.blacklist
%%DATADIR%%/octave/getQucsVariable.m
%%DATADIR%%/octave/loadQucsDataSet.m
%%DATADIR%%/octave/loadQucsVariable.m
%%DATADIR%%/octave/plotCartesian2D.m
%%DATADIR%%/octave/plotCartesian2D2V.m
%%DATADIR%%/octave/plotFFT.m
%%DATADIR%%/octave/plotFFT2V.m
%%DATADIR%%/octave/plotTimeFFT.m
%%DATADIR%%/octave/showQucsDataSet.m
%%DATADIR%%/python/parse_result.py
%%DATADIR%%/python/parse_result_example.py
%%DATADIR%%/python/rc_ac_sweep.dat
%%DATADIR%%/python/rc_ac_sweep.net
%%DATADIR%%/symbols/nmos4.sym
%%DATADIR%%/symbols/opamp3t.sym
%%DATADIR%%/symbols/opamp5t.sym
%%DATADIR%%/symbols/pmos4.sym
%%DATADIR%%/xspice_cmlib/cmlib.linux.rules.mk
%%DATADIR%%/xspice_cmlib/cmlib.mingw32.rules.mk
%%DATADIR%%/xspice_cmlib/include/ngspice_mathfunc.inc
%%DATADIR%%/xspice_cmlib/include/xspice_mathfunc.h

0 comments on commit 7609fce

Please sign in to comment.