...
 
Commits (2)
  • felix s's avatar
    de-capitalise GNUCAP in changelog and man pages · 8cba66b3
    felix s authored
    it has always (?) been "Gnucap". already on the old website from 2006.
    8cba66b3
  • felix s's avatar
    gnucap-conf in common · d8d228b4
    felix s authored
    this fixes multi-arch
    
    gnucap extension build systems call gnucap-conf
    move that to gnucap-common, together with /etc/gnucap.conf
    
    gnucap-conf now figures out paths at run time, by asking g++.
    d8d228b4
......@@ -15,23 +15,23 @@ but if it does, will move to libgnucap.so.1.
gnucap-default-plugins0 contains the default plugins. these are installed into
/usr/lib/<multiarch>/gnucap0/. The "0" indicates the relation to libgnucap0.
This is the library, these plugins have been tested with. libgnucap loads
plugins from the path specified in the environment variable GNUCAP_PLUGPATH
(colon separated, first wins, like PATH, PYTHONPATH etc.).
This is the library, these plugins have been tested with. In the past, plugins
have been forward compatible. libgnucap provides a plugin loader, it loads from
the path specified in the environment variable GNUCAP_PLUGPATH (colon
separated, first wins, like PATH, PYTHONPATH etc.).
/usr/bin/gnucap sets the GNUCAP_PLUGPATH environment to
/usr/lib/<multiarch>/gnucap0, if empty. This is where further packages are
expected to install plugins to.
(not yet, currently part of the gnucap package..)
The gnucap-devel package provides the files necessary to compile plugins.
Plugins can be compiled upon loading from within libgnucap, through dispatched
commands.
expected to install plugins to. Other programs are expected to query
"gnucap-conf --pkglibdir" at configure time, hardwire that in a similar way,
and set the environment accordingly.
gnucap-common contains some architecture independent files, headers, examples
and (not yet:) pkg-config wrapper.
and /usr/bin/gnucap-conf. This package hardwires the "pkglibdir", and
determines where new plugins are installed to (this makes sense, because
plugins are compiled against the headers from this very package).
The libgnucap-dev package provides the necessary files to build/link programs
similar to /usr/bin/gnucap.
The libgnucap-dev package ships the development library symlink, necessary to
build/link programs similar to /usr/bin/gnucap.
-- Felix Salfelder <felix@salfelder.org>, April 2018
......@@ -21,16 +21,20 @@ gnucap (1:0.36~20171003-1) unstable; urgency=medium
binary plugins should also be installed into this directory. The default
command for loading plugins uses the GNUCAP_PLUGPATH environment
variable to locate plugins, a colon separated list of paths.
* gnucap-common package (Closes: #693267)
The headers are required, if plugins need to be compiled from within a
gnucap session, also for the purpose of libgnucap-dev, above. Further, these
headers are architecture independent. Hence this additional package.
* gnucap-devel package
This package provides the additional arch dependent infrastructure to
build plugins e.g.
from within a gnucap session; this is currently implemented with pkgconfig
called from /usr/bin/gnucap-conf in gnucap-common.
None of the functionality supplied was present in previous packages.
* gnucap-common package (Closes: #693267)
Contains the development headers and build infrastructure. This package
is architecture independent.
* man pages for /usr/bin/gnucap and /usr/bin/gnucap-{conf,modelgen}. The
upstream project makes no attempt in providing these, hence they are
maintained here.
* get-orig-source target, snapshotting upstream git
There are no release tarballs, just tags, nowadays. these are equivalent
There are no release tarballs, just tags, nowadays. These are equivalent
to releases ("development snapshots"). This is new and was not required for
previous tarball releases.
* set sysconfdir to /etc, equivalent to --sysconfdir in autotools.
......
......@@ -13,15 +13,13 @@ Homepage: http://gnucap.org
Vcs-Git: https://salsa.debian.org/felixs-guest/gnucap.git
Vcs-Browser: https://salsa.debian.org/felixs-guest/gnucap
# actually Recommends gnucap-devel. not there yet...
Package: libgnucap0
Architecture: any
Multi-Arch: same
Section: libs
Depends: ${misc:Depends}, ${shlibs:Depends}
Recommends: gnucap-common
Description: GNU Circuit Analysis package, the library
GNUCAP is a general purpose circuit simulator. It performs nonlinear
Gnucap is a general purpose circuit simulator. It performs nonlinear
dc and transient analyses, Fourier analysis, and ac analysis
linearized at an operating point. It is fully interactive and
command driven. It can also be run in batch mode or as a server.
......@@ -31,9 +29,9 @@ Description: GNU Circuit Analysis package, the library
Package: gnucap
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends}
Recommends: gnucap-default-plugins0
Recommends: gnucap-common, gnucap-default-plugins0
Description: GNU Circuit Analysis package, main executable
GNUCAP is a general purpose circuit simulator. It performs nonlinear
Gnucap is a general purpose circuit simulator. It performs nonlinear
dc and transient analyses, Fourier analysis, and ac analysis
linearized at an operating point. It is fully interactive and
command driven. It can also be run in batch mode or as a server.
......@@ -43,15 +41,14 @@ Description: GNU Circuit Analysis package, main executable
Package: gnucap-common
Architecture: all
Depends: ${misc:Depends}
Suggests: gnucap
Recommends: c++-compiler
Recommends: g++
Description: GNU Circuit Analysis package, development headers
GNUCAP is a general purpose circuit simulator. It performs nonlinear
Gnucap is a general purpose circuit simulator. It performs nonlinear
dc and transient analyses, Fourier analysis, and ac analysis
linearized at an operating point. It is fully interactive and
command driven. It can also be run in batch mode or as a server.
.
This package contains the headers required to build plugins.
This package contains headers and infrastructure.
Package: libgnucap-dev
Architecture: any
......@@ -60,7 +57,7 @@ Depends: gnucap-common (= ${source:Version}),
libgnucap0 (= ${binary:Version}),
${misc:Depends}
Description: GNU Circuit Analysis package, development library
GNUCAP is a general purpose circuit simulator. It performs nonlinear
Gnucap is a general purpose circuit simulator. It performs nonlinear
dc and transient analyses, Fourier analysis, and ac analysis
linearized at an operating point. It is fully interactive and
command driven. It can also be run in batch mode or as a server.
......@@ -73,14 +70,9 @@ Multi-Arch: same
Depends: ${misc:Depends}, ${shlibs:Depends}
Suggests: gnucap
Description: GNU Circuit Analysis package, default plugins
GNUCAP is a general purpose circuit simulator. It performs nonlinear
Gnucap is a general purpose circuit simulator. It performs nonlinear
dc and transient analyses, Fourier analysis, and ac analysis
linearized at an operating point. It is fully interactive and
command driven. It can also be run in batch mode or as a server.
.
This package contains the default plugins.
# Package: gnucap-src
# Depends: c++-compiler, gnucap-devel, make?
# This package contains the default plugins as raw source, more or less
# under construction.
etc/gnucap.conf
usr/bin/gnucap-conf
usr/include/gnucap/*.h
usr/include/gnucap/spice-wrapper.cc
......@@ -7,7 +7,7 @@ gnucap-conf \- GNU Circuit Analysis Package, configuration
.B gnucap-conf [what]
.br
.SH DESCRIPTION
.I GNUCAP-CONF
.I Gnucap-conf
Print various configuration variables that are useful for building extensions. The approach is
close to pkg-config but without the dependency.
......@@ -39,12 +39,12 @@ what is one of
.B /usr/share/doc/gnucap/bugs
for a list of known bugs in this release.
.PP
GNUCAP is an ongoing research project. It is being released in a
Gnucap is an ongoing research project. It is being released in a
preliminary phase in hopes that it will be useful and that others
will use it as a thrust or base for their research.
.SH AUTHOR
GNUCAP is being written by Albert Davis <ad211@freeelectron.net>
Gnucap is being written by Albert Davis <ad211@freeelectron.net>
.PP
This manual page was written by Felix Salfelder for the Debian package of
gnucap. See also .B /usr/share/doc/gnucap/manual.
......@@ -7,8 +7,8 @@ gnucap-modelgen \- GNU Circuit Analysis Package .model translator
.B gnucap-modelgen [\fB-cc\fP] [\fB-h\fP] [filename]
.br
.SH DESCRIPTION
.I GNUCAP-MODELGEN
is a .model translator tool in the GNUCAP suite. It will transform .model models
.B Gnucap-Modelgen
is a .model translator tool in the Gnucap suite. It will transform .model models
into c++ code implementing gnucap component plugins.
.PP
A typical usage can be
......@@ -29,13 +29,13 @@ See
.B /usr/share/doc/gnucap/bugs
for a list of known bugs in this release.
.PP
GNUCAP is an ongoing research project. It is being released in a
Gnucap is an ongoing research project. It is being released in a
preliminary phase in hopes that it will be useful and that others
will use it as a thrust or base for their research. I also hope
for some comments that may help me direct my research.
.SH AUTHOR
GNUCAP is being written by Albert Davis <al211@freeelectron.org>
Gnucap is being written by Albert Davis <al211@freeelectron.org>
.PP
This manual page was written by Felix Salfelder <felix@salfelder.org>.
For the full LaTeX documentation, please see
......
......@@ -8,7 +8,7 @@ gnucap \- GNU Circuit Analysis Package
[\fB-b\fP filename] [\fB-i\fP filename] [filename]
.br
.SH DESCRIPTION
.I GNUCAP
.B Gnucap
is a general purpose circuit simulator. It performs nonlinear
dc and transient analyses, fourier analysis, and ac analysis
linearized at an operating point. It is fully interactive and
......@@ -27,7 +27,7 @@ undergraduate teaching and courses in MOS design, but not for
bipolar design.
.PP
In batch mode it is mostly Spice compatible, so it is often possible
to use the same file for both GNUCAP and Spice.
to use the same file for both Gnucap and Spice.
.PP
The analog simulation is based on traditional nodal analysis with
iteration by Newton's method and LU decomposition. An event queue
......@@ -59,13 +59,13 @@ See
.B /usr/share/doc/gnucap/bugs
for a list of known bugs in this release.
.PP
GNUCAP is an ongoing research project. It is being released in a
Gnucap is an ongoing research project. It is being released in a
preliminary phase in hopes that it will be useful and that others
will use it as a thrust or base for their research. I also hope
for some comments that may help me direct my research.
.SH AUTHOR
GNUCAP is being written by Albert Davis <ad211@freeelectron.net>
Gnucap is being written by Albert Davis <ad211@freeelectron.net>
.PP
This manual page was written by Jon Rabone <jkr@debian.org> and maintained
by Hamish Moffatt <hamish@debian.org> for the Debian package of gnucap.
......
usr/bin/gnucap*
usr/bin/gnucap
usr/bin/gnucap-modelgen
usr/share/doc/gnucap/examples/*
usr/lib/*/*/gnucap.conf
debian/gnucap-conf.1
debian/gnucap-modelgen.1
debian/gnucap.1
......@@ -25,6 +25,7 @@ LN_S = ln -sf
libdir = /usr/lib/$(DEB_HOST_MULTIARCH)
pkglibdir = ${libdir}/gnucap${SOVERSION}
pcdir = ${libdir}/pkgconfig
%:
dh $@
......@@ -33,9 +34,10 @@ override_dh_auto_configure:
./configure --prefix=/usr
sed -e '/GNUCAP_PLUGPATH/s#/lib/gnucap#'/lib/${DEB_HOST_MULTIARCH}/gnucap0'#' -i main/config.h
sed -e '/^libdir/s#=.*#='${libdir}'#' -i main/gnucap.conf
sed -e '/^pkglibdir/s#=.*#='${pkglibdir}'#' -i main/gnucap.conf
sed -e '/^sysconfdir/s#=.*#=${pkglibdir}/#' -i main/gnucap-conf
sed -e '/^$$/s##triplet=$$\( g++ --print-multiarch \)#' -i main/gnucap.conf
sed -e '/^libdir/s#=.*#=/usr/lib/$${triplet}#' -i main/gnucap.conf
sed -e '/^pkglibdir/s#=.*#=$${libdir}/gnucap'${SOVERSION}'#' -i main/gnucap.conf
sed -e '/^sysconfdir/s#=.*#=/etc#' -i main/gnucap-conf
sed -e '/^sysconfdir/s#=.*#=/etc#' -i main/gnucap.conf
sed -e 's#-ltermcap##' -i lib/Make2
......@@ -97,7 +99,7 @@ override_dh_auto_install:
mkdir -p $(CURDIR)/debian/tmp/etc
mv $(CURDIR)/debian/tmp/usr/etc/gnucap.conf \
$(CURDIR)/debian/tmp/${pkglibdir}/gnucap.conf
$(CURDIR)/debian/tmp/etc/gnucap.conf
# mv $(CURDIR)/debian/tmp/usr/bin/gnucap-conf $(CURDIR)/debian/tmp/${pkglibdir}/
......