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.
Contrary to older versions gnuplot 5 uses "enhanced text mode" per default.
The strings which we pass to gnuplot don't have "latex" semantics,
thus consistently enforce "noenhanced text mode".
Add a function quote_gnuplot_string() to escape and quote strings
in such a way that they will arrive in gnuplot unmodified.
reported by Marcel Hendrix.
Using conditional expressions within a .control sequence
left some garbage vectors in the current plot.
For example
> let ix = 0
>
> while ix < 2
> let ix = ix + 1
> end
>
> display
"display" reported a variable named "ix < 2"
which was an internal temporary value in said function `cp_istrue()'
let 2foo = someexpression
was silently accepted, even though 2foo is an illegal identifier.
(first letter is a digit)
This was especially irritating, since
print 2foo
has a legal meaning, 2 femto oO, which is 2e-15
(whatever Unit an oO might be)
Reported by Justin Fisher in
http://sourceforge.net/p/ngspice/bugs/302/
a diode model named "1smb4148" could not be found
because it was dropped in `comment_out_unused_subckt_models()'
as a work around the function
is_a_modelname()
is extended to accept an additional pattern which does match "1smb4148"
Thanks to Martin who submitted the bug report here:
http://sourceforge.net/p/ngspice/bugs/307/
meas "AVG" did merely the average of the given values,
without consideration of their spacing on the "scale" axis.
now use trapezoidal summing to calculate the AVG
note, there is "meas INTEG"
which goes beyond trapezoidal summing
The "delete" command destroyed the whole list of stored breakpoints
instead of just the specified one.
Thanks to "jpcgt", who reported this in
"#306 Deleting breakpoint causes Internal Error in status"
http://sourceforge.net/p/ngspice/bugs/306/