Sébastien Villemot
8065e9d439
Build system: by default, error out if some dependency is missing
...
In particular, if either MATLAB or Octave is missing, one needs to pass either
--disable-matlab or --disable-octave.
Moreover, several new configure flags have been introduced for disabling some
components:
--disable-doc
--disable-dynare++
--disable-mex-dynare++
--disable-mex-ms-sbvar
--disable-mex-kalman-steady-state
2019-11-26 13:53:42 +01:00
Houtan Bastani
f8eb982767
octave configure: remove unnecessary library linking for macOS
2019-09-24 15:22:36 +02:00
Sébastien Villemot
0d0a0a9bbb
Bump to C++17
...
This means we now require GCC 8.
Boost filesystem library is no longer needed.
Ref preprocessor#16
2019-09-11 15:06:12 +02:00
Sébastien Villemot
35acc111ff
Windows package: fix random build failure due to race condition
...
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.
2019-09-04 11:39:52 +02:00
Sébastien Villemot
bae1fa255a
Add scripts and CI job for building Windows package
...
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.
2019-09-03 21:36:47 +02:00
Sébastien Villemot
9557061fa3
Add new num_procs MEX file for getting number of available processing units
2019-06-27 14:34:09 +02:00
Sébastien Villemot
7c39b12b7b
Always compile MEX files with OpenMP (when they can take advantage of it)
...
As a consequence, remove the --enable-openmp option of the configure script.
2019-06-25 17:26:17 +02:00
Sébastien Villemot
5b591fac42
New perfect_foresight_problem MEX file
...
It constructs the stacked residuals and jacobian of the perfect foresight
problem.
It is an almost perfect replacement for the perfect_foresight_problem.m
routine, while being much more efficient.
Note however that the DLL never return complex numbers (it instead puts NaNs at
the place where there would have been complex). This may create problems for
some MOD files; the algorithms will need to be adapted to use a more
line-search method.
2019-06-24 17:53:59 +02:00
Sébastien Villemot
f5e2bfc30a
Ask GCC to warn about C-style casts (-Wold-style-cast)
...
Adapt the code accordingly.
2019-04-23 13:03:20 +02:00
Sébastien Villemot
f953374dba
More Unicode copyright symbol
2019-04-16 14:34:05 +02:00
Sébastien Villemot
c46023ad56
POSIX shell stylistic improvements
2019-03-25 18:47:49 +01:00
Sébastien Villemot
752a02a36c
Dynare++: use C++11 threads (instead of POSIX threads API)
...
On Windows, this means that a POSIX threads implementation is no longer needed,
since C++11 threads are implemented using native Windows threads.
On GNU/Linux and macOS, POSIX threads are still used under the hood.
A new m4 macro (AX_CXX11_THREAD) is used to add the proper compilation
flags (instead of AX_PTHREAD).
2019-01-28 18:44:24 +01:00
Sébastien Villemot
c6f5c804d9
Gensylv MEX also needs MatIO (because Dynare++ code does)
2018-11-12 12:56:01 +01:00
Sébastien Villemot
feeda74dfb
Remove spurious executable permission
2018-09-27 12:24:57 +02:00
Sébastien Villemot
e669321eec
Require C++14 for MEX files
...
Needed because bytecode DLL uses some preprocessor code which is C++14.
2018-06-05 11:34:41 +02:00
Sébastien Villemot
02084ce310
Remove qzcomplex Oct-file
...
It's actually not needed. The QZ complex decomposition can be obtained in
Octave on real matrices by casting them to the complex type.
2018-05-17 12:11:15 +02:00
Sébastien Villemot
3f674f0f26
Enforce minimal Octave version in the configure script
2018-05-16 10:50:27 +02:00
Sébastien Villemot
e2c2f2d966
Remove fallbacks for ilu, linsolve and ordschur under Octave
...
These functions are all included in Octave 4.2.
2018-05-16 10:48:44 +02:00
Sébastien Villemot
fbddfc0aae
Require C99 when compiling MEX files, since mjdgges now uses C99 features
2018-05-15 14:53:56 +02:00
Houtan Bastani
fb6a11f544
move estimation-dll to its own repository: https://github.com/DynareTeam/estimation-dll.git
2017-09-22 15:31:23 +02:00
Stéphane Adjemian (Charybdis)
e3769670df
Updated AC_INIT
2017-05-19 18:54:32 +02:00
Stéphane Adjemian (Charybdis)
537e384122
Fixed make parallel mode (missing dependency in automake).
2016-12-01 23:25:01 +01:00
Sébastien Villemot
d0628af1f2
No longer compile ordschur.oct for Octave >= 4.0.
...
The function is now an Octave builtin.
2015-03-17 17:53:11 +01:00
Sébastien Villemot
9b5a09958c
Fixes to make install.
...
- fix DESTDIR for preprocessor and MEX files (it was duplicated)
- don't install libdynare++.a
2014-07-18 12:15:36 +02:00
Houtan Bastani
8d2b79a224
make install, closes #576
2014-07-16 16:18:06 +02:00
Sébastien Villemot
75ae191d33
Upgrade to a newer version of the AX_BOOST_BASE macro.
...
Our workaround for cross-compilation has been incorporated upstream.
2014-03-03 11:13:27 +01:00
Sébastien Villemot
66d48f5917
Compatibility fixes for Octave 3.8.
...
- no longer use OCTAVE_QUIT in MEX files; this seems now only possible in
oct-files. (Ref #304 )
- do not build linsolve.oct on Octave >= 3.8, it is available natively.
- do not add strjoin.m to the patch on Octave >= 3.8, it is available natively.
- default_save_options has been renamed save_default_options.
2014-01-03 11:05:39 +01:00
Sébastien Villemot
7ada720e7b
Bump version number
2013-12-02 17:55:10 +01:00
Sébastien Villemot
82edf48256
No longer consider automake warnings as fatal
...
With automake 1.14 there are a lot of new warnings related to the way we deal
with MEX files (they are compiled from source files located in a different
tree). Automake wants us to use the 'subdir-objects' option, but it breaks in
our case.
In automake 2.0, the 'subdir-objects' option will be activated by default, so
we will have to refactor the build system for MEX files. But for now we can
live with the automake warnings.
2013-09-09 14:50:32 +02:00
Sébastien Villemot
d8e9bc978d
Revert "Compatibility fix with automake 1.14"
...
This reverts commit 7541bb52f5
.
This commit was breaking compilation of MEX files: the subdir-objects option
does not deal well with source files that are under a distinct tree.
2013-09-09 14:47:29 +02:00
Sébastien Villemot
7541bb52f5
Compatibility fix with automake 1.14
2013-09-06 15:00:37 +02:00
Houtan Bastani
47b53dbeea
build system: osx fix for bytecode mex in octave
2013-04-17 17:45:28 +02:00
Sébastien Villemot
c8e59f1361
Do not put -lumfpack in LIBS, rather use a special variable for it
2013-03-29 15:30:31 +01:00
Sébastien Villemot
513ae741e3
Build system for MEX/Octave: use Octave's LDFLAGS in the configure script
...
This will facilitate the detection of UMFPACK under Windows
2013-03-29 15:07:58 +01:00
Sébastien Villemot
86db8d805c
Add configure test for UMFPACK
2013-03-23 17:09:00 +01:00
Sébastien Villemot
1db892efc4
Fix compilation problems of bytecode with UMFPACK and MATLAB's libut
2013-03-23 13:02:07 +01:00
Sébastien Villemot
82930ee29a
Implementation of steady state computation in estim DLL, using the GSL
...
Does not seem very robust (fails on fs2000), need to investigate why.
2013-03-06 16:58:22 +01:00
Sébastien Villemot
3d39d77917
Remove spurious executable permissions
2012-10-13 16:10:01 +02:00
Sébastien Villemot
3e612e0211
Fix build system with Automake 1.12
2012-09-28 17:31:39 +02:00
Sébastien Villemot
5d5771a823
Another typo
2012-09-25 19:58:03 +02:00
Sébastien Villemot
6cfec3f6ad
More CPPFLAGS_MATIO fun
2012-09-25 19:53:20 +02:00
Sébastien Villemot
4d98c2007f
Rename CFLAGS_MATIO to CPPFLAGS_MATIO
2012-09-20 22:53:47 +02:00
Houtan Bastani
4f54391e94
add --with-matio option to configure
2012-09-19 12:11:57 +02:00
Houtan Bastani
e48f535004
bug fix: ms_sbvar requires matio under octave but configure output doesn't state that it's missing.
2012-09-19 12:11:57 +02:00
Houtan Bastani
a54af094f2
bug fix: slicot configuration (allow path specification using --with-slicot flag)
2012-09-18 14:45:32 +02:00
Sébastien Villemot
c07ffd8705
Merge branch 'slicot'
2012-09-13 11:11:46 +02:00
Sébastien Villemot
0332309647
Remove embedded SLICOT, rely on external binary
2012-09-13 11:08:42 +02:00
Sébastien Villemot
5f861cb0d8
Use MatIO in Dynare++ instead of the home-made engine
2012-08-23 18:31:07 +02:00
Sébastien Villemot
2e65a9ab96
Provide a better implementation of linsolve for Octave
...
Closes : #273
2012-08-06 18:26:16 +02:00
Houtan Bastani
7c4b36695d
change autoconf min version to match that of root config file
2012-08-02 16:17:08 +02:00
Sébastien Villemot
91967eac6d
Bump version numbers
2012-06-11 12:07:10 +02:00
Sébastien Villemot
ff4285d6fb
matio is a requirement for ms-sbvar under Octave
2012-04-20 11:50:03 +02:00
Houtan Bastani
f402d59acf
ms-sbvar: link to Matio library for Octave compilation
2012-04-13 15:54:48 +02:00
Stéphane Adjemian (Charybdis)
40329e3e29
Added routine to compute one step ahead state space iteration (mex and m). The state space
...
equations are approximated at order two around the deterministic steady state.
2012-03-04 22:07:27 +01:00
Sébastien Villemot
a66594caed
Add MEXEXT define to build system, adapt relevant DLL and Windows packaging
...
Closes : #235
2012-01-09 12:39:09 +01:00
Sébastien Villemot
2185924081
Build system: fix for Octave 3.4
2011-12-28 13:05:30 +01:00
Sébastien Villemot
d33f149178
Windows package: build against Octave 3.4.3
2011-12-26 18:00:08 +01:00
Stéphane Adjemian (Charybdis)
bdee23876d
Fixed Octave's mex extension for qmc_sequence.
2011-12-22 14:32:32 +01:00
Stéphane Adjemian (Charybdis)
f28084e79b
Removed binary.
2011-12-22 14:32:07 +01:00
Stéphane Adjemian (Charybdis)
4869fff243
Added new mex file for computing Quasi Monte-Carlo sequences (Sobol), texinfo headers and unitary tests are available in <DYNARE_PATH>/matlab/qmc_sequence.m.
2011-12-21 18:23:15 +01:00
Sébastien Villemot
a3ec794f48
Build system: adding files forgotten in a1ee7f1ee4
2011-09-26 10:17:01 +02:00
Sébastien Villemot
a1ee7f1ee4
block_kalman_filter: add MEX to build system
2011-09-23 18:22:15 +02:00
Houtan Bastani
75f5b88f86
SWZ: integrate ms-sbvar in build system
2011-02-22 15:16:51 +01:00
Houtan Bastani
6cdbf51a54
SWZ: Revert "SWZ: remove gsl from build system, to be reintstated if gsl remains a requirement in the ms new code"
...
This reverts commit e19026d130
.
2011-02-22 15:06:38 +01:00
Stéphane Adjemian (Scylla)
478b13eb7c
Changed default fortran compiler to gfortran.
2011-02-11 16:00:15 +01:00
Sébastien Villemot
fcb12985c1
Bump version number
2011-02-04 17:45:54 +01:00
Houtan Bastani
6674b5ffcf
SWZ: remove from swz from mex build system
2011-02-02 19:00:14 +01:00
Houtan Bastani
e19026d130
SWZ: remove gsl from build system, to be reintstated if gsl remains a requirement in the ms new code
2011-02-02 18:58:36 +01:00
Sébastien Villemot
80b5c23346
Build system for MEX files:
...
- remove the dirty vpath hack
- factorize between the two estimation DLLs
- factorize within SWZ makefile
2011-01-25 17:13:00 -05:00
Sébastien Villemot
afeaf1ead0
bump min boost to 1.36 to accord with 72008502c1
2011-01-24 17:52:33 -05:00
Sébastien Villemot
e39cb94954
Build system: remove warning about parentheses (we know the priority rules of C++, no need to be reminded)
2011-01-13 19:05:58 +01:00
Houtan Bastani
e7843e349a
Modify configure script to show Kalman Steady State seperately from other mex files
2010-12-14 10:27:39 +01:00
Sébastien Villemot
e826fb8239
Build system: kalman_steady_state depends on libslicot and must be built after
2010-12-14 09:57:15 +01:00
Houtan Bastani
41bda1eb07
Mac libslicot compilation optional (because a Fortran compiler is not standard on OS X)
2010-12-13 18:15:11 +01:00
Sébastien Villemot
965ea7280a
Build system: add detection and linking of MatIO library for Estimation DLL under Octave
2010-12-08 10:22:44 +01:00
Stéphane Adjemian (Charybdis)
160922a189
Added mex file for computing the fixed point of the riccati equation in the kalman filter.
...
The mex works with octave but not with matlab (lapack issue again ;-).
2010-11-19 14:39:54 +01:00
Sébastien Villemot
479b2be602
Build system: added missing PIC flag for Fortran code in Octave DLLs
2010-11-18 11:10:49 +01:00
Stéphane Adjemian (Charybdis)
382ab96cde
Added the Slicot library (distributed under the GNU General Public Licence at www.slicot.org). This library provides routines
...
for the design and analysis of control systems. Adapted the building system to handle fortran 77 source files.
2010-11-18 10:11:27 +01:00
Sébastien Villemot
48096db2ff
Build system: add logMHMCMC DLL
2010-10-28 10:17:58 +02:00
Sébastien Villemot
a2367e9ecb
Build system: fixed typo introduced in 69fc0e320b
2010-10-22 11:50:16 +02:00
Sébastien Villemot
81823ad035
New oct-file for "ordschur": the diffuse filter now works under Octave
2010-10-21 15:43:13 +02:00
Sébastien Villemot
69fc0e320b
New oct-file "qzcomplex" for bringing the complex QZ decomposition to Octave. Fixes issues with partial information under Octave.
2010-10-21 12:33:18 +02:00
Sébastien Villemot
1a27ed9f38
OpenMP support:
...
- removed build_matlab_multithread.m and isopenmp MEX file
- introduced a new option "--enable-openmp" in configure script
- when openmp support is compiled in, the default is still one thread; the user can set the number of threads with "set_dynare_threads(n)"
- closes #68
2010-09-27 15:56:19 +02:00
Sébastien Villemot
0893e963cb
Build system: change the way we detect the GSL, to make it work when cross-compiling
2010-08-24 16:24:03 +02:00
Sébastien Villemot
acf5451c1f
Build system: rename 'loglikelihood' to 'logposterior'
2010-07-09 12:48:08 +02:00
Houtan Bastani
ad28c2054d
Add boost/math and boost/random to configure script for mex build system
2010-07-01 14:15:08 +02:00
Sébastien Villemot
04905660b8
Added new loglikelihood DLL (does not yet contain prior computation, only the likelihood)
2010-06-11 19:18:16 +02:00
Sébastien Villemot
e347f2ae7a
Build system: adding -Wall when building MEX files
2010-06-11 18:40:58 +02:00
Sébastien Villemot
9318856a4e
SWZ: finalize build system for MEX by adding a test for GSL
2010-06-01 15:33:45 +02:00
Houtan Bastani
28602be1e8
include in build system
2010-06-01 11:18:55 +02:00
Sébastien Villemot
ef521882cc
Fixed 4.2 version numbers
2010-02-02 18:23:31 +01:00
Sébastien Villemot
00c73845e0
Build system: further fixes for possibly empty directories (needed because of Git migration)
2010-02-01 10:50:29 +01:00
Sébastien Villemot
d6aa4f1329
Build system: create empty directories (needed because of Git migration)
2010-01-29 15:13:34 +01:00
sebastien
03600d9131
k_order_perturbation DLL:
...
* no longer use mexPrintf()/mexErrMsgTxt() outside mexFunction(): use exceptions to report errors, in order to be able to integrate the code in a standalone executable
* fixed a few memory leaks (other still remain)
* fixed a buffer overflow issue in the filename of the dynamic MEX (using C++ string object)
* various cosmetic cleanups
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3177 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-30 16:31:27 +00:00
sebastien
e5f31e4ed3
Build system:
...
* added dynare_simul_ DLL
* factorized in a library object the Dynare++ code shared between gensylv, k_order_perturbation and dynare_simul_
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3114 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-02 12:04:07 +00:00
sebastien
11230eec3f
Build system: added k_order_perturbation to the build_matlab script
...
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3106 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-30 17:29:50 +00:00
sebastien
9ab04f3323
Renamed kordepert to k_order_perturbation
...
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3070 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-23 09:07:47 +00:00
sebastien
343e0b3c7d
Build system: refactored the build system for MEX files, using two sub-packages with their own configure scripts
...
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3019 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-02 17:22:19 +00:00