The detection of the slicot library failed because xerbla has been moved out of
the BLAS implementation shipped with Octave (probably since 5.1.0). This commit
fixes our fake implementation of mkoctfile so that it returns -lxerbla after
-lblas (as is done in the official Windows package for Octave).
Since 533a4ff7db, several MEX files were missing
in the Windows package (gensylv, k-order, dynare_simul, MS-SBVAR). The problem
was that the environment variable containing the directory containing MSYS2
libraries (incl. matio and gsl) was not correctly passed to parallelized
subshells.
Those archives contain 3 hidden files, which always have the same name. This
can make the parallel build fail when several packages are unpacked at the same
time. Hence, we just skip these files when unpacking.
— Reorganize the components: there is now a 64-bit group (with the MEX and
MinGW), and similarly a 32-bit group. That makes it easy to cut down
installation size when the user knows which one to choose. Add a description
text that explains that.
— Dynare++ is no longer installed by default and is listed in the last position
— Remove the “Description” box in the components page, so that the components
names are more visible
– before executing the rule for unpacking the source, delete previously
unpacked sources to avoid file overwrite (delete all versions so that the
Gitlab cache does not grow too big)
— ensure that those rules are executed when a patch is modified
The MEX files are built out-of-tree (because we want to do them in parallel).
This would create a potential race condition if several builds want to create
the symlinks under mex/matlab/ or mex/octave/.
The solution is to disable those symlinks for out-of-tree builds.
The scripts are based the former “dynare-build” project. They have been
overhauled and simplified.
Building a Windows package (both installer and zip archive) is as easy as
running “make -C windows” (provided the right Debian packages are installed,
use the “windows/install-packages.sh” script for that purpose).
The layout of MEX files for Octave in the package has been
changed (mex/octave/win32/ and mex/octave/win64/ instead of mex/octave32/ and
mex/octave/), for consistency with MATLAB MEX.
- integrate with autoconf/automake, so that "make html pdf" now build the
manual
- remove the old texinfo manual
- the PDF manual is now called dynare-manual.pdf (Closes#1543)
- add a Gitlab CI job that updates the online unstable manual under
www.dynare.org/manual-unstable/
The material of this document comes from the introduction to the library that
had been lost in the move away from CWEB (formerly tl/cc/main.web).
This file gives a good overview of the library. It has been adapted from TeX to
LaTeX. Also I fixed a mistake in the Faà di Bruno's tensor formula.
- Use the -static flag when linking Dynare++, so that shipping libquadmath and
libgcc DLL in the installer is no longer needed.
- Use AM_CXXFLAGS and AM_LDFLAGS variables for changing flags, since CXXFLAGS
and LDFLAGS are user variables. Also, this avoids passing these flags down to
configure scripts in subdirectories.
- Check for the SZIP library in the configure test for the MatIO, this is
needed under MSYS2.
- Statically link MatIO and GSL in MEX files for MATLAB, this is needed under
MSYS2.