For developing purpose only, and bound to HAVE_TSEARCH, HAVE_TDESTROY
IFparm descriptors must obey certain contracts,
1) aliases must be grouped together with their associated main descriptor,
and all must have flag IF_REDUNDANT set
2) there shall be no duplicated .id fields except for aliases.
3) aliased entries shall have consistent .dataType fields
check_ifparm will traverse all IFparm sets and report violations
Allow to override the admsXml executable when invoking
autogen.sh and configure.ac
ADMSXML=/foo/bar/baz/admsXml ./autogen.sh --adms
ADMSXML=/foo/bar/baz/admsXml ./configure --enable-adms
alternatively (and more advertised)
./configure ADMSXML=/foo/bar/baz/admsXml --enable-adms
The generated Makefiles remember the given path.
A relative path doesn't make sense of course.
notably on debian gnu/linux with package `mingw-w64'
cross-compile a mingw 32bit windows executable with this incantation:
(compile "
./autogen.sh
rm -rf tmp-build tmp-output
mkdir -p tmp-build tmp-output
( cd tmp-build && ../configure \
--build=$(../config.guess) \
--host=i686-w64-mingw32 \
--prefix='c:/spice' \
--exec-prefix='c:/spice'\
--with-windows --enable-xspice --enable-cider --disable-debug )
LC_ALL=C make -C tmp-build -k -j6
LC_ALL=C make -C tmp-build -k -j6 DESTDIR=$(pwd)/tmp-output/ install
(cd 'tmp-output/c:/' && zip -r - .) > tmp-output.zip
")
compilation to Win64 works the same way, with
--host=x86_64-w64-mingw32
The tmp-output.zip directory structure resembles the
structure of our original sourceforge ngspice-26_140112.zip windows package
ready to be unzip'ed in c:/
Though the testfiles, examples and documentation is missing.
explicitly use
configure --disable-maintainer-mode
only if you don't have bison and flex.
we still have the bison/flex generated output files in the repository,
causing quite complex make dependencies.
allow to overide CFLAGS like this:
CFLAGS=something ./configure
./configure CFLAGS=something
empty CFLAGS are allowed too, like this
CFLAGS="" ./configure
./configure CFLAGS=""
otherwise use our longish builtin default CFLAGS
./configure
check xpressn.c parser capability to parse {2--3}
check .control parser capability to parse 2--3
check B parser capability to parse 2--3
check echo commands capability to print "--"
check echo commands capability to print upper and lower case
check xpressn.c parser capabilities
check precision of some transcendental functions
unify and honor some hints from
(info "(autoconf) Limitations of Builtins")
use shell || and && instead of test -o and test -a
! test a = b --> test a != b
dont use ()
drop eval
missing quotes