Drop autoconf/automake build system
parent
83e1b307d2
commit
6dd55726e6
|
@ -3,107 +3,12 @@
|
|||
# Any file that is displayed should be removed from the ignore list
|
||||
# (possibly by an exclusion rule beginning with an exclamation mark)
|
||||
|
||||
# Generic ignore rules
|
||||
*~
|
||||
*.o
|
||||
*.a
|
||||
*.fig
|
||||
\#*\#
|
||||
TAGS
|
||||
*.mat
|
||||
|
||||
# Build system rules
|
||||
.deps
|
||||
Makefile
|
||||
Makefile.in
|
||||
confdefs.h
|
||||
configure
|
||||
config.log
|
||||
config.status
|
||||
aclocal.m4
|
||||
autom4te.cache
|
||||
config.guess
|
||||
config.sub
|
||||
depcomp
|
||||
install-sh
|
||||
/missing
|
||||
/mex/build/matlab/missing
|
||||
/mex/build/octave/missing
|
||||
/compile
|
||||
/mex/build/matlab/compile
|
||||
/mex/build/octave/compile
|
||||
ylwrap
|
||||
ar-lib
|
||||
|
||||
# checksum associated with fast option
|
||||
checksum
|
||||
|
||||
# Make Check Rules
|
||||
*.trs
|
||||
*.tls
|
||||
|
||||
# Doc rules
|
||||
*.pdf
|
||||
*.aux
|
||||
*.log
|
||||
*.out
|
||||
*.toc
|
||||
*.idx
|
||||
*.scn
|
||||
*.nav
|
||||
*.snm
|
||||
*.vrb
|
||||
*.bbl
|
||||
*.blg
|
||||
*.lof
|
||||
/doc/manual/build
|
||||
/doc/manual/utils/version.py
|
||||
# Created when building the reference manual
|
||||
/doc/manual/utils/__pycache__/*
|
||||
!/doc/parallel/AvenueParadigm.pdf
|
||||
!/doc/parallel/iVaNo_*.pdf
|
||||
!/doc/parallel/netbook_*.pdf
|
||||
!/doc/parallel/quest_*.pdf
|
||||
!/doc/parallel/RWMH_quest1_*.pdf
|
||||
!/doc/parallel/waitbars*.pdf
|
||||
doc/internals/*.html
|
||||
doc/internals/ltxpng
|
||||
|
||||
# MATLAB dir
|
||||
/matlab/preprocessor64/
|
||||
/matlab/dynare_version.m
|
||||
|
||||
# DLL rules
|
||||
*.mex
|
||||
*.mexa64
|
||||
*.mexw64
|
||||
*.mexmaci64
|
||||
*.mexmaca64
|
||||
/mex/matlab/
|
||||
/mex/octave/
|
||||
|
||||
# Symbolic links created for building MEX files
|
||||
/mex/build/matlab/*/*.c
|
||||
/mex/build/matlab/*/*.cc
|
||||
/mex/build/matlab/*/*.f08
|
||||
/mex/build/matlab/*/*.F08
|
||||
/mex/build/octave/*/*.c
|
||||
/mex/build/octave/*/*.cc
|
||||
/mex/build/octave/*/*.f08
|
||||
/mex/build/octave/*/*.F08
|
||||
|
||||
# Fortran modules
|
||||
/mex/build/matlab/*/*.mod
|
||||
/mex/build/octave/*/*.mod
|
||||
|
||||
# Extra rules for trust_region MEX testfiles
|
||||
/mex/sources/block_trust_region/test/*.mod
|
||||
/mex/sources/block_trust_region/test/dulmage_mendelsohn_test
|
||||
/mex/sources/block_trust_region/test/trust_region_test
|
||||
!/mex/sources/block_trust_region/test/Makefile
|
||||
|
||||
# Windows
|
||||
!/windows/Makefile
|
||||
!/windows/deps/Makefile
|
||||
# Created by the Windows package build script
|
||||
/windows/deps/lib64/
|
||||
/windows/deps/lib64-msys2/
|
||||
/windows/deps/matlab64/
|
||||
|
@ -114,35 +19,14 @@ doc/internals/ltxpng
|
|||
/windows/exe/
|
||||
/windows/7z/
|
||||
/windows/zip/
|
||||
/matlab/preprocessor64/
|
||||
/matlab/supported_octave_version.m
|
||||
|
||||
# MacOS stuff
|
||||
.DS_Store
|
||||
/macOS/pkg/
|
||||
# Created by the macOS package build script
|
||||
/macOS/deps/sources64/
|
||||
/macOS/deps/tarballs/
|
||||
/macOS/deps/lib64/
|
||||
!/macOS/Makefile
|
||||
!/macOS/deps/Makefile
|
||||
|
||||
# Emacs stuff
|
||||
scripts/dynare.elc
|
||||
|
||||
# MS-Sbvar
|
||||
/contrib/ms-sbvar/*.prn
|
||||
/contrib/ms-sbvar/*.dat
|
||||
/contrib/ms-sbvar/sbvar_commandline
|
||||
/contrib/ms-sbvar/sbvar_init_file
|
||||
!/contrib/ms-sbvar/Makefile
|
||||
/tests/ms-sbvar/*.tmp
|
||||
|
||||
# Reporting
|
||||
*synctex.gz
|
||||
tests/reporting/tmpRepDir
|
||||
|
||||
# Octave variables saved when Octave crashes
|
||||
octave-workspace
|
||||
|
||||
# VERSION generated file
|
||||
VERSION
|
||||
|
||||
matlab/supported_octave_version.m
|
||||
|
|
67
Makefile.am
67
Makefile.am
|
@ -1,67 +0,0 @@
|
|||
SUBDIRS = preprocessor doc tests mex/sources
|
||||
|
||||
if ENABLE_MATLAB
|
||||
SUBDIRS += mex/build/matlab
|
||||
endif
|
||||
if ENABLE_OCTAVE
|
||||
SUBDIRS += mex/build/octave
|
||||
endif
|
||||
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
EXTRA_DIST = \
|
||||
matlab \
|
||||
contrib \
|
||||
NEWS.md \
|
||||
license.txt \
|
||||
README.md \
|
||||
COPYING \
|
||||
CONTRIBUTING.md \
|
||||
windows \
|
||||
macOS \
|
||||
examples \
|
||||
scripts \
|
||||
.dir-locals.el
|
||||
|
||||
all-local:
|
||||
# Create top-level preprocessor symlink needed by matlab/dynare.m (when Dynare is run
|
||||
# from the locally-built copy)
|
||||
$(LN_S) -f $(abs_builddir)/preprocessor/src/dynare-preprocessor$(EXEEXT) $(abs_builddir)/preprocessor/dynare-preprocessor$(EXEEXT)
|
||||
# Create backward-compatibility symlink for old location of preprocessor
|
||||
$(MKDIR_P) matlab/preprocessor64/
|
||||
$(LN_S) -f $(abs_builddir)/preprocessor/src/dynare-preprocessor$(EXEEXT) $(abs_srcdir)/matlab/preprocessor64/dynare_m$(EXEEXT)
|
||||
|
||||
clean-local:
|
||||
rm -f preprocessor/dynare-preprocessor$(EXEEXT)
|
||||
rm -rf matlab/preprocessor64/
|
||||
|
||||
dist-hook:
|
||||
rm -rf `find $(distdir)/matlab $(distdir)/examples -name *~`
|
||||
rm -f $(distdir)/matlab/dynare_version.m
|
||||
rm -rf $(distdir)/matlab/preprocessor64/
|
||||
$(MKDIR_P) $(distdir)/mex/matlab $(distdir)/mex/octave
|
||||
rm -rf `find $(distdir) -name '.git*'`
|
||||
|
||||
install-exec-local:
|
||||
$(MKDIR_P) $(DESTDIR)$(pkglibdir)/preprocessor
|
||||
# The following will break under Windows, but we don’t use the install rule there
|
||||
$(LN_S) -f $(bindir)/dynare-preprocessor$(EXEEXT) $(DESTDIR)$(pkglibdir)/preprocessor/dynare-preprocessor$(EXEEXT)
|
||||
$(MKDIR_P) $(DESTDIR)$(pkglibdir)/contrib/ms-sbvar/TZcode
|
||||
cp -r contrib/ms-sbvar/TZcode/MatlabFiles $(DESTDIR)$(pkglibdir)/contrib/ms-sbvar/TZcode
|
||||
$(MKDIR_P) $(DESTDIR)$(pkglibdir)/contrib/jsonlab
|
||||
cp -r contrib/jsonlab $(DESTDIR)$(pkglibdir)/contrib/jsonlab
|
||||
cp -r examples $(DESTDIR)$(pkglibdir)
|
||||
cp -r matlab $(DESTDIR)$(pkglibdir)
|
||||
find $(DESTDIR)$(pkglibdir) -name LICENSE.md -delete
|
||||
# Recreate backward-compatibility symlink
|
||||
rm -f $(DESTDIR)$(pkglibdir)/matlab/preprocessor64/dynare_m$(EXEEXT)
|
||||
$(LN_S) -f $(bindir)/dynare-preprocessor$(EXEEXT) $(DESTDIR)$(pkglibdir)/matlab/preprocessor64/dynare_m$(EXEEXT)
|
||||
# We don’t fail over doc install rules, since the user may deliberately not have compiled them
|
||||
# (e.g. with the “nodoc” option under Debian)
|
||||
$(MKDIR_P) $(DESTDIR)$(docdir)
|
||||
-cp doc/*.pdf doc/gsa/gsa.pdf doc/parallel/parallel.pdf doc/dseries-and-reporting/dseriesReporting.pdf preprocessor/doc/preprocessor/preprocessor.pdf preprocessor/doc/macroprocessor/macroprocessor.pdf doc/manual/build/latex/dynare-manual.pdf $(DESTDIR)$(docdir)
|
||||
-cp -r doc/manual/build/html $(DESTDIR)$(docdir)/dynare-manual.html
|
||||
|
||||
uninstall-local:
|
||||
rm -rf $(DESTDIR)$(pkglibdir)
|
||||
rm -rf $(DESTDIR)$(docdir)
|
|
@ -1 +0,0 @@
|
|||
@PACKAGE_VERSION@
|
124
configure.ac
124
configure.ac
|
@ -1,124 +0,0 @@
|
|||
dnl Process this file with autoconf to produce a configure script.
|
||||
|
||||
dnl Copyright © 2009-2023 Dynare Team
|
||||
dnl
|
||||
dnl This file is part of Dynare.
|
||||
dnl
|
||||
dnl Dynare is free software: you can redistribute it and/or modify
|
||||
dnl it under the terms of the GNU General Public License as published by
|
||||
dnl the Free Software Foundation, either version 3 of the License, or
|
||||
dnl (at your option) any later version.
|
||||
dnl
|
||||
dnl Dynare is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with Dynare. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_PREREQ([2.62])
|
||||
AC_INIT([dynare], [6-unstable])
|
||||
AC_CONFIG_SRCDIR([preprocessor/src/DynareMain.cc])
|
||||
AM_INIT_AUTOMAKE([1.11 -Wall -Wno-portability foreign no-dist-gzip dist-xz tar-pax])
|
||||
|
||||
AC_CONFIG_SUBDIRS([preprocessor])
|
||||
|
||||
# For setting EXEEXT, needed by top-level Makefile.am
|
||||
AC_PROG_CC
|
||||
|
||||
AX_PROG_LN_S
|
||||
|
||||
AC_PROG_MKDIR_P
|
||||
|
||||
# Define optional components and their corresponding flags and Automake conditionals
|
||||
AC_ARG_ENABLE([doc], AS_HELP_STRING([--disable-doc], [disable compilation of documentation]), [], [enable_doc=yes])
|
||||
AM_CONDITIONAL([ENABLE_DOC], [test "$enable_doc" = yes])
|
||||
|
||||
AC_ARG_ENABLE([matlab], AS_HELP_STRING([--disable-matlab], [disable compilation of MEX files for MATLAB]), [], [enable_matlab=yes])
|
||||
AM_CONDITIONAL([ENABLE_MATLAB], [test "$enable_matlab" = yes])
|
||||
|
||||
AC_ARG_ENABLE([octave], AS_HELP_STRING([--disable-octave], [disable compilation of MEX files for Octave]), [], [enable_octave=yes])
|
||||
AM_CONDITIONAL([ENABLE_OCTAVE], [test "$enable_octave" = yes])
|
||||
|
||||
AC_ARG_ENABLE([org-export], AS_HELP_STRING([--enable-org-export], [enable exporting of Org files (requires Emacs, org-mode and other external programs)]))
|
||||
AM_CONDITIONAL([ENABLE_ORG_EXPORT], [test -n "$enable_org_export"])
|
||||
|
||||
# Check utilities needed for documentation
|
||||
if test "$enable_doc" = yes; then
|
||||
AC_CHECK_PROG([PDFLATEX], [pdflatex], [pdflatex], [no])
|
||||
test "$PDFLATEX" = no && AC_MSG_ERROR([pdflatex cannot be found. If you want to skip the compilation of the documentation, pass the --disable-doc flag.])
|
||||
AC_CHECK_PROG([BIBTEX], [bibtex], [bibtex], [no])
|
||||
test "$BIBTEX" = no && AC_MSG_ERROR([bibtex cannot be found. If you want to skip the compilation of the documentation, pass the --disable-doc flag.])
|
||||
AC_CHECK_PROG([SPHINXBUILD], [sphinx-build], [sphinx-build], [no])
|
||||
test "$SPHINXBUILD" = no && AC_MSG_ERROR([sphinx-build cannot be found. If you want to skip the compilation of the documentation, pass the --disable-doc flag.])
|
||||
AX_LATEX_CLASS([beamer], [ax_latex_have_beamer], [], [AC_MSG_ERROR([beamer cannot be found. If you want to skip the compilation of the documentation, pass the --disable-doc flag.])])
|
||||
fi
|
||||
|
||||
# Check for MATLAB
|
||||
if test "$enable_matlab" = yes; then
|
||||
AC_CONFIG_SUBDIRS([mex/build/matlab])
|
||||
AX_MATLAB
|
||||
AX_MATLAB_BATCH_OPTIONS
|
||||
test "$ax_enable_matlab" != yes && AC_MSG_ERROR([MATLAB cannot be found. If you want to compile Dynare without MATLAB support, pass the --disable-matlab flag.])
|
||||
fi
|
||||
|
||||
# Check for Octave
|
||||
if test "$enable_octave" = yes; then
|
||||
AC_CONFIG_SUBDIRS([mex/build/octave])
|
||||
AX_OCTAVE
|
||||
test "$ax_enable_octave" != yes && AC_MSG_ERROR([Octave cannot be found. If you want to compile Dynare without Octave support, pass the --disable-octave flag.])
|
||||
fi
|
||||
|
||||
# Construct final output message
|
||||
if test "$enable_doc" = yes; then
|
||||
BUILD_DOC="yes"
|
||||
else
|
||||
BUILD_DOC="no"
|
||||
fi
|
||||
|
||||
if test -n "$enable_org_export"; then
|
||||
BUILD_INTERNAL_DOC="yes"
|
||||
else
|
||||
BUILD_INTERNAL_DOC="no"
|
||||
fi
|
||||
|
||||
if test "$enable_matlab" = yes; then
|
||||
TESTSUITE_MATLAB="yes"
|
||||
else
|
||||
TESTSUITE_MATLAB="no"
|
||||
fi
|
||||
|
||||
if test "$enable_octave" = yes; then
|
||||
TESTSUITE_OCTAVE="yes"
|
||||
else
|
||||
TESTSUITE_OCTAVE="no"
|
||||
fi
|
||||
|
||||
AC_MSG_NOTICE([
|
||||
|
||||
Dynare is now configured for building the following components...
|
||||
|
||||
Documentation (with "make html pdf"):
|
||||
Manual and other documents $BUILD_DOC
|
||||
Dynare internal doc: $BUILD_INTERNAL_DOC
|
||||
|
||||
Testsuites (run with "make check"):
|
||||
Dynare for MATLAB: $TESTSUITE_MATLAB
|
||||
Dynare for Octave: $TESTSUITE_OCTAVE
|
||||
])
|
||||
|
||||
AC_CONFIG_FILES([Makefile
|
||||
VERSION
|
||||
doc/Makefile
|
||||
doc/manual/Makefile
|
||||
doc/parallel/Makefile
|
||||
doc/internals/Makefile
|
||||
doc/gsa/Makefile
|
||||
doc/dseries-and-reporting/Makefile
|
||||
tests/Makefile
|
||||
matlab/dynare_version.m
|
||||
mex/sources/Makefile
|
||||
])
|
||||
|
||||
AC_OUTPUT
|
|
@ -1,33 +0,0 @@
|
|||
SUBDIRS = parallel internals gsa dseries-and-reporting
|
||||
|
||||
if ENABLE_DOC
|
||||
SUBDIRS += manual
|
||||
pdf-local: guide.pdf bvar-a-la-sims.pdf dr.pdf sylvester.pdf tl.pdf
|
||||
endif
|
||||
|
||||
EXTRA_DIST = guide.tex bvar-a-la-sims.tex dr.tex dr.bib dynare.plots
|
||||
|
||||
guide.pdf: guide.tex
|
||||
$(PDFLATEX) guide
|
||||
$(PDFLATEX) guide
|
||||
|
||||
bvar-a-la-sims.pdf: bvar-a-la-sims.tex
|
||||
$(PDFLATEX) bvar-a-la-sims
|
||||
$(PDFLATEX) bvar-a-la-sims
|
||||
|
||||
dr.pdf: dr.tex dr.bib
|
||||
$(PDFLATEX) dr
|
||||
$(BIBTEX) dr
|
||||
$(PDFLATEX) dr
|
||||
$(PDFLATEX) dr
|
||||
|
||||
sylvester.pdf: sylvester.tex
|
||||
$(PDFLATEX) sylvester
|
||||
$(PDFLATEX) sylvester
|
||||
|
||||
tl.pdf: tl.tex
|
||||
$(PDFLATEX) tl
|
||||
$(PDFLATEX) tl
|
||||
|
||||
clean-local:
|
||||
rm -f *~ *.pdf *.log *.aux *.out *.blg *.bbl
|
|
@ -1,14 +0,0 @@
|
|||
if ENABLE_DOC
|
||||
pdf-local: dseriesReporting.pdf
|
||||
endif
|
||||
|
||||
SRC = dseriesReporting.tex
|
||||
|
||||
EXTRA_DIST = $(SRC)
|
||||
|
||||
dseriesReporting.pdf: $(SRC)
|
||||
$(PDFLATEX) dseriesReporting
|
||||
$(PDFLATEX) dseriesReporting
|
||||
|
||||
clean-local:
|
||||
rm -f dseriesReporting.pdf *.toc *.aux *.log *.nav *.snm *.vrb *.out *~
|
|
@ -1,16 +0,0 @@
|
|||
if ENABLE_DOC
|
||||
pdf-local: gsa.pdf
|
||||
endif
|
||||
|
||||
SRC = gsa.tex marco.bib
|
||||
|
||||
EXTRA_DIST = $(SRC)
|
||||
|
||||
gsa.pdf: $(SRC)
|
||||
$(PDFLATEX) gsa
|
||||
$(BIBTEX) gsa
|
||||
$(PDFLATEX) gsa
|
||||
$(PDFLATEX) gsa
|
||||
|
||||
clean-local:
|
||||
rm -f *.pdf *.log *.aux *.toc *.lof *.blg *.bbl *.out *~
|
|
@ -1,9 +0,0 @@
|
|||
EXTRA_DIST = dynare-internals.org
|
||||
|
||||
if ENABLE_ORG_EXPORT
|
||||
html-local:
|
||||
emacs --batch --visit=dynare-internals.org --funcall org-html-export-to-html
|
||||
endif
|
||||
|
||||
clean-local:
|
||||
rm -rf *.html ltxpng
|
|
@ -1,22 +0,0 @@
|
|||
EXTRA_DIST = source \
|
||||
utils/dynare_dom.py \
|
||||
utils/dynare_lex.py
|
||||
|
||||
SRC = $(wildcard source/*.rst)
|
||||
|
||||
html-local: build/html/index.html
|
||||
|
||||
build/html/index.html: $(SRC) source/conf.py
|
||||
$(SPHINXBUILD) -b html -D version=$(PACKAGE_VERSION) -D release=$(PACKAGE_VERSION) -d build/doctrees source build/html
|
||||
|
||||
pdf-local: build/latex/dynare-manual.pdf
|
||||
|
||||
# NB: we cannot use -M latexpdf because of this bug:
|
||||
# https://bugs.debian.org/933347
|
||||
build/latex/dynare-manual.pdf: $(SRC) source/conf.py
|
||||
$(SPHINXBUILD) -b latex -D version=$(PACKAGE_VERSION) -D release=$(PACKAGE_VERSION) -d build/doctrees source build/latex
|
||||
make -C build/latex all-pdf
|
||||
|
||||
clean-local:
|
||||
rm -rf build
|
||||
rm -rf utils/__pycache__
|
|
@ -1,29 +0,0 @@
|
|||
if ENABLE_DOC
|
||||
pdf-local: parallel.pdf
|
||||
endif
|
||||
|
||||
SRC = AvenueParadigm.pdf iVaNo_gain.pdf iVaNo_time_comp.pdf marco.bib \
|
||||
netbook_complete_comp.pdf netbook_complete_openclose.pdf \
|
||||
netbook_partial_comp.pdf netbook_partial_openclose.pdf parallel.tex \
|
||||
quest_complete_comp.pdf quest_complete_openclose.pdf quest_partial_comp.pdf \
|
||||
quest_partial_openclose.pdf RWMH_quest1_PriorsAndPosteriors1Comp.pdf \
|
||||
RWMH_quest1_PriorsAndPosteriors2Comp.pdf \
|
||||
RWMH_quest1_PriorsAndPosteriors3Comp.pdf \
|
||||
RWMH_quest1_PriorsAndPosteriors4Comp.pdf \
|
||||
RWMH_quest1_PriorsAndPosteriors5Comp.pdf \
|
||||
RWMH_quest1_PriorsAndPosteriors6Comp.pdf \
|
||||
RWMH_quest1_PriorsAndPosteriors7Comp.pdf waitbars1.pdf waitbars2.pdf \
|
||||
waitbarsP.pdf
|
||||
|
||||
EXTRA_DIST = $(SRC)
|
||||
|
||||
parallel.pdf: $(SRC)
|
||||
$(PDFLATEX) parallel
|
||||
$(BIBTEX) parallel
|
||||
$(PDFLATEX) parallel
|
||||
$(PDFLATEX) parallel
|
||||
$(PDFLATEX) parallel
|
||||
|
||||
clean-local:
|
||||
rm -f *.log *.aux *.toc *.blg *.bbl *.out
|
||||
rm -f parallel.pdf
|
92
license.txt
92
license.txt
|
@ -282,20 +282,6 @@ Files: doc/sylvester.tex doc/tl.tex
|
|||
Copyright: 2004-2011 Ondra Kamenik
|
||||
License: GPL-3+
|
||||
|
||||
Files: m4/ax_compare_version.m4
|
||||
Copyright: 2008 Tim Toolan <toolan@ele.uri.edu>
|
||||
License: FSFAP
|
||||
|
||||
Files: m4/ax_latex_class.m4 m4/ax_latex_test.m4
|
||||
Copyright: 2008 Boretti Mathieu <boretti@eig.unige.ch>
|
||||
2009 Dynare Team
|
||||
License: LGPL-2.1+
|
||||
|
||||
Files: m4/ax_matlab_arch.m4 m4/ax_matlab.m4 m4/ax_mexext.m4
|
||||
Copyright: 2002-2003 Ralph Schleicher
|
||||
2009-2021 Dynare Team
|
||||
License: GPL-2+ with Autoconf exception
|
||||
|
||||
Files: scripts/dynare.el
|
||||
Copyright: 2010 Yannick Kalantzis
|
||||
2019-2023 Dynare Team
|
||||
|
@ -318,17 +304,6 @@ Copyright: 2009-2019 Homebrew contributors
|
|||
2019-2021 Dynare Team
|
||||
License: BSD-2-clause
|
||||
|
||||
Files: preprocessor/m4/ax_boost_base.m4
|
||||
Copyright: 2008-2009 Thomas Porschberg <thomas@randspringer.de>
|
||||
2009 Peter Adolphs
|
||||
License: FSFAP
|
||||
|
||||
Files: preprocessor/m4/ax_latex_class.m4
|
||||
preprocessor/m4/ax_latex_test.m4
|
||||
Copyright: 2008 Boretti Mathieu <boretti@eig.unige.ch>
|
||||
2009 Dynare Team
|
||||
License: LGPL-2.1+
|
||||
|
||||
Files: preprocessor/doc/macroprocessor/*
|
||||
Copyright: 2008-2021 Dynare Team
|
||||
License: CC-BY-SA-4.0
|
||||
|
@ -499,26 +474,6 @@ License: GFDL-NIV-1.3+
|
|||
.
|
||||
A copy of the license can be found at <https://www.gnu.org/licenses/fdl.txt>
|
||||
|
||||
License: GPL-2+ with Autoconf exception
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License as
|
||||
published by the Free Software Foundation; either version 2,
|
||||
or (at your option) any later version.
|
||||
.
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
.
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
.
|
||||
As a special exception to the GNU General Public License, if
|
||||
you distribute this file as part of a program that contains a
|
||||
configuration script generated by GNU Autoconf, you may include
|
||||
it under the same distribution terms that you use for the rest
|
||||
of that program.
|
||||
|
||||
License: GPL-3+
|
||||
Dynare is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -533,47 +488,6 @@ License: GPL-3+
|
|||
You should have received a copy of the GNU General Public License
|
||||
along with Dynare. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
License: GPL-3+ with Autoconf exception
|
||||
This program is free software: you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation, either version 3 of the License, or (at your
|
||||
option) any later version.
|
||||
.
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
||||
Public License for more details.
|
||||
.
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
.
|
||||
As a special exception, the respective Autoconf Macro's copyright owner
|
||||
gives unlimited permission to copy, distribute and modify the configure
|
||||
scripts that are the output of Autoconf when processing the Macro. You
|
||||
need not follow the terms of the GNU General Public License when using
|
||||
or distributing such scripts, even though portions of the text of the
|
||||
Macro appear in them. The GNU General Public License (GPL) does govern
|
||||
all other use of the material that constitutes the Autoconf Macro.
|
||||
.
|
||||
This special exception to the GPL applies to versions of the Autoconf
|
||||
Macro released by the Autoconf Archive. When you make and distribute a
|
||||
modified version of the Autoconf Macro, you may extend this special
|
||||
exception to the GPL to apply to your modified version as well.
|
||||
|
||||
License: LGPL-2.1+
|
||||
This library is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or (at
|
||||
your option) any later version.
|
||||
.
|
||||
This library is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
|
||||
General Public License for more details.
|
||||
.
|
||||
You should have received a copy of the GNU Lesser General Public License
|
||||
along with this library. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
License: LGPL-3+
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
|
@ -1014,9 +928,3 @@ License: CC-BY-SA-4.0
|
|||
licenses.
|
||||
.
|
||||
Creative Commons may be contacted at creativecommons.org.
|
||||
|
||||
License: FSFAP
|
||||
Copying and distribution of this file, with or without modification, are
|
||||
permitted in any medium without royalty provided the copyright notice
|
||||
and this notice are preserved. This file is offered as-is, without any
|
||||
warranty.
|
||||
|
|
|
@ -1,177 +0,0 @@
|
|||
# ===========================================================================
|
||||
# https://www.gnu.org/software/autoconf-archive/ax_compare_version.html
|
||||
# ===========================================================================
|
||||
#
|
||||
# SYNOPSIS
|
||||
#
|
||||
# AX_COMPARE_VERSION(VERSION_A, OP, VERSION_B, [ACTION-IF-TRUE], [ACTION-IF-FALSE])
|
||||
#
|
||||
# DESCRIPTION
|
||||
#
|
||||
# This macro compares two version strings. Due to the various number of
|
||||
# minor-version numbers that can exist, and the fact that string
|
||||
# comparisons are not compatible with numeric comparisons, this is not
|
||||
# necessarily trivial to do in a autoconf script. This macro makes doing
|
||||
# these comparisons easy.
|
||||
#
|
||||
# The six basic comparisons are available, as well as checking equality
|
||||
# limited to a certain number of minor-version levels.
|
||||
#
|
||||
# The operator OP determines what type of comparison to do, and can be one
|
||||
# of:
|
||||
#
|
||||
# eq - equal (test A == B)
|
||||
# ne - not equal (test A != B)
|
||||
# le - less than or equal (test A <= B)
|
||||
# ge - greater than or equal (test A >= B)
|
||||
# lt - less than (test A < B)
|
||||
# gt - greater than (test A > B)
|
||||
#
|
||||
# Additionally, the eq and ne operator can have a number after it to limit
|
||||
# the test to that number of minor versions.
|
||||
#
|
||||
# eq0 - equal up to the length of the shorter version
|
||||
# ne0 - not equal up to the length of the shorter version
|
||||
# eqN - equal up to N sub-version levels
|
||||
# neN - not equal up to N sub-version levels
|
||||
#
|
||||
# When the condition is true, shell commands ACTION-IF-TRUE are run,
|
||||
# otherwise shell commands ACTION-IF-FALSE are run. The environment
|
||||
# variable 'ax_compare_version' is always set to either 'true' or 'false'
|
||||
# as well.
|
||||
#
|
||||
# Examples:
|
||||
#
|
||||
# AX_COMPARE_VERSION([3.15.7],[lt],[3.15.8])
|
||||
# AX_COMPARE_VERSION([3.15],[lt],[3.15.8])
|
||||
#
|
||||
# would both be true.
|
||||
#
|
||||
# AX_COMPARE_VERSION([3.15.7],[eq],[3.15.8])
|
||||
# AX_COMPARE_VERSION([3.15],[gt],[3.15.8])
|
||||
#
|
||||
# would both be false.
|
||||
#
|
||||
# AX_COMPARE_VERSION([3.15.7],[eq2],[3.15.8])
|
||||
#
|
||||
# would be true because it is only comparing two minor versions.
|
||||
#
|
||||
# AX_COMPARE_VERSION([3.15.7],[eq0],[3.15])
|
||||
#
|
||||
# would be true because it is only comparing the lesser number of minor
|
||||
# versions of the two values.
|
||||
#
|
||||
# Note: The characters that separate the version numbers do not matter. An
|
||||
# empty string is the same as version 0. OP is evaluated by autoconf, not
|
||||
# configure, so must be a string, not a variable.
|
||||
#
|
||||
# The author would like to acknowledge Guido Draheim whose advice about
|
||||
# the m4_case and m4_ifvaln functions make this macro only include the
|
||||
# portions necessary to perform the specific comparison specified by the
|
||||
# OP argument in the final configure script.
|
||||
#
|
||||
# LICENSE
|
||||
#
|
||||
# Copyright (c) 2008 Tim Toolan <toolan@ele.uri.edu>
|
||||
#
|
||||
# Copying and distribution of this file, with or without modification, are
|
||||
# permitted in any medium without royalty provided the copyright notice
|
||||
# and this notice are preserved. This file is offered as-is, without any
|
||||
# warranty.
|
||||
|
||||
#serial 13
|
||||
|
||||
dnl #########################################################################
|
||||
AC_DEFUN([AX_COMPARE_VERSION], [
|
||||
AC_REQUIRE([AC_PROG_AWK])
|
||||
|
||||
# Used to indicate true or false condition
|
||||
ax_compare_version=false
|
||||
|
||||
# Convert the two version strings to be compared into a format that
|
||||
# allows a simple string comparison. The end result is that a version
|
||||
# string of the form 1.12.5-r617 will be converted to the form
|
||||
# 0001001200050617. In other words, each number is zero padded to four
|
||||
# digits, and non digits are removed.
|
||||
AS_VAR_PUSHDEF([A],[ax_compare_version_A])
|
||||
A=`echo "$1" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \
|
||||
-e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \
|
||||
-e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \
|
||||
-e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \
|
||||
-e 's/[[^0-9]]//g'`
|
||||
|
||||
AS_VAR_PUSHDEF([B],[ax_compare_version_B])
|
||||
B=`echo "$3" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \
|
||||
-e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \
|
||||
-e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \
|
||||
-e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \
|
||||
-e 's/[[^0-9]]//g'`
|
||||
|
||||
dnl # In the case of le, ge, lt, and gt, the strings are sorted as necessary
|
||||
dnl # then the first line is used to determine if the condition is true.
|
||||
dnl # The sed right after the echo is to remove any indented white space.
|
||||
m4_case(m4_tolower($2),
|
||||
[lt],[
|
||||
ax_compare_version=`echo "x$A
|
||||
x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/false/;s/x${B}/true/;1q"`
|
||||
],
|
||||
[gt],[
|
||||
ax_compare_version=`echo "x$A
|
||||
x$B" | sed 's/^ *//' | sort | sed "s/x${A}/false/;s/x${B}/true/;1q"`
|
||||
],
|
||||
[le],[
|
||||
ax_compare_version=`echo "x$A
|
||||
x$B" | sed 's/^ *//' | sort | sed "s/x${A}/true/;s/x${B}/false/;1q"`
|
||||
],
|
||||
[ge],[
|
||||
ax_compare_version=`echo "x$A
|
||||
x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/true/;s/x${B}/false/;1q"`
|
||||
],[
|
||||
dnl Split the operator from the subversion count if present.
|
||||
m4_bmatch(m4_substr($2,2),
|
||||
[0],[
|
||||
# A count of zero means use the length of the shorter version.
|
||||
# Determine the number of characters in A and B.
|
||||
ax_compare_version_len_A=`echo "$A" | $AWK '{print(length)}'`
|
||||
ax_compare_version_len_B=`echo "$B" | $AWK '{print(length)}'`
|
||||
|
||||
# Set A to no more than B's length and B to no more than A's length.
|
||||
A=`echo "$A" | sed "s/\(.\{$ax_compare_version_len_B\}\).*/\1/"`
|
||||
B=`echo "$B" | sed "s/\(.\{$ax_compare_version_len_A\}\).*/\1/"`
|
||||
],
|
||||
[[0-9]+],[
|
||||
# A count greater than zero means use only that many subversions
|
||||
A=`echo "$A" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"`
|
||||
B=`echo "$B" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"`
|
||||
],
|
||||
[.+],[
|
||||
AC_WARNING(
|
||||
[invalid OP numeric parameter: $2])
|
||||
],[])
|
||||
|
||||
# Pad zeros at end of numbers to make same length.
|
||||
ax_compare_version_tmp_A="$A`echo $B | sed 's/./0/g'`"
|
||||
B="$B`echo $A | sed 's/./0/g'`"
|
||||
A="$ax_compare_version_tmp_A"
|
||||
|
||||
# Check for equality or inequality as necessary.
|
||||
m4_case(m4_tolower(m4_substr($2,0,2)),
|
||||
[eq],[
|
||||
test "x$A" = "x$B" && ax_compare_version=true
|
||||
],
|
||||
[ne],[
|
||||
test "x$A" != "x$B" && ax_compare_version=true
|
||||
],[
|
||||
AC_WARNING([invalid OP parameter: $2])
|
||||
])
|
||||
])
|
||||
|
||||
AS_VAR_POPDEF([A])dnl
|
||||
AS_VAR_POPDEF([B])dnl
|
||||
|
||||
dnl # Execute ACTION-IF-TRUE / ACTION-IF-FALSE.
|
||||
if test "$ax_compare_version" = "true" ; then
|
||||
m4_ifvaln([$4],[$4],[:])dnl
|
||||
m4_ifvaln([$5],[else $5])dnl
|
||||
fi
|
||||
]) dnl AX_COMPARE_VERSION
|
66
m4/ax_gsl.m4
66
m4/ax_gsl.m4
|
@ -1,66 +0,0 @@
|
|||
dnl Detect GSL.
|
||||
dnl We don't use the official M4 macro since it relies on the script gsl-config,
|
||||
dnl which does not work when cross-compiling.
|
||||
dnl
|
||||
dnl Copyright © 2010-2021 Dynare Team
|
||||
dnl
|
||||
dnl This file is part of Dynare.
|
||||
dnl
|
||||
dnl Dynare is free software: you can redistribute it and/or modify
|
||||
dnl it under the terms of the GNU General Public License as published by
|
||||
dnl the Free Software Foundation, either version 3 of the License, or
|
||||
dnl (at your option) any later version.
|
||||
dnl
|
||||
dnl Dynare is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with Dynare. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_DEFUN([AX_GSL],
|
||||
[
|
||||
AC_ARG_WITH(gsl, AS_HELP_STRING([--with-gsl=DIR], [prefix to GSL installation]),
|
||||
gsl_prefix="$withval", gsl_prefix="")
|
||||
|
||||
has_gsl=yes
|
||||
|
||||
if test -n "$gsl_prefix"; then
|
||||
GSL_CPPFLAGS="-I$withval/include"
|
||||
GSL_LDFLAGS="-L$withval/lib"
|
||||
else
|
||||
GSL_CPPFLAGS=""
|
||||
GSL_LDFLAGS=""
|
||||
fi
|
||||
|
||||
ac_save_CPPFLAGS="$CPPFLAGS"
|
||||
ac_save_LDFLAGS="$LDFLAGS"
|
||||
ac_save_LIBS="$LIBS"
|
||||
|
||||
LIBS=""
|
||||
CPPFLAGS="$CPPFLAGS $GSL_CPPFLAGS"
|
||||
LDFLAGS="$LDFLAGS $GSL_LDFLAGS"
|
||||
|
||||
AC_LANG_PUSH(C)
|
||||
AC_CHECK_HEADER([gsl/gsl_cdf.h], [], [has_gsl=no])
|
||||
AC_LANG_POP(C)
|
||||
|
||||
AC_CHECK_LIB([m], [cos])
|
||||
AC_CHECK_LIB([gslcblas], [cblas_dgemm], [LIBS="-lgslcblas $LIBS"], [has_gsl=no])
|
||||
AC_CHECK_LIB([gsl], [gsl_cdf_ugaussian_P], [LIBS="-lgsl $LIBS"], [has_gsl=no])
|
||||
|
||||
if test "$has_gsl" = yes; then
|
||||
GSL_LIBS="$LIBS"
|
||||
else
|
||||
GSL_LIBS=""
|
||||
fi
|
||||
|
||||
CPPFLAGS="$ac_save_CPPFLAGS"
|
||||
LDFLAGS="$ac_save_LDFLAGS"
|
||||
LIBS="$ac_save_LIBS"
|
||||
|
||||
AC_SUBST(GSL_CPPFLAGS)
|
||||
AC_SUBST(GSL_LDFLAGS)
|
||||
AC_SUBST(GSL_LIBS)
|
||||
])
|
|
@ -1,68 +0,0 @@
|
|||
# ===========================================================================
|
||||
# http://www.nongnu.org/autoconf-archive/ax_latex_class.html
|
||||
# ===========================================================================
|
||||
#
|
||||
# OBSOLETE MACRO
|
||||
#
|
||||
# Deprecated because of licensing issues. The Lesser GPL imposes licensing
|
||||
# restrictions on the generated configure script unless it is augmented
|
||||
# with an Autoconf Exception clause.
|
||||
#
|
||||
# SYNOPSIS
|
||||
#
|
||||
# AX_LATEX_CLASS(CLASSNAME,VARIABLETOSET[,ACTION-IF-FOUND[,ACTION-IF-NOT-FOUND]])
|
||||
#
|
||||
# DESCRIPTION
|
||||
#
|
||||
# This macros test is class CLASSNAME exists and work and set
|
||||
# VARIABLETOSET to yes or no If ACTION-IF-FOUND (and ACTION-IF-NOT-FOUND)
|
||||
# are set, do the correct action
|
||||
#
|
||||
# LICENSE
|
||||
#
|
||||
# Copyright © 2008 Boretti Mathieu <boretti@eig.unige.ch>
|
||||
# Copyright © 2009 Dynare Team
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or (at
|
||||
# your option) any later version.
|
||||
#
|
||||
# This library is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
|
||||
# General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this library. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_DEFUN([AX_LATEX_CLASS],[
|
||||
AC_CACHE_CHECK([for usability of class $1],[ac_cv_latex_class_]translit($1,[-],[_]),[
|
||||
AX_LATEX_TEST([\documentclass{$1}
|
||||
\begin{document}
|
||||
\end{document}],[ac_cv_latex_class_]translit($1,[-],[_]))
|
||||
])
|
||||
$2=$[ac_cv_latex_class_]translit($1,[-],[_]) ; export $2;
|
||||
AC_SUBST($2)
|
||||
ifelse($#,2,[],$#,3,[
|
||||
if test "[$]$2" = "yes" ;
|
||||
then
|
||||
$3
|
||||
fi
|
||||
],$#,4,[
|
||||
ifelse($3,[],[
|
||||
if test "[$]$2" = "no" ;
|
||||
then
|
||||
$4
|
||||
fi
|
||||
],[
|
||||
if test "[$]$2" = "yes" ;
|
||||
then
|
||||
$3
|
||||
else
|
||||
$4
|
||||
fi
|
||||
])
|
||||
])
|
||||
|
||||
])
|
|
@ -1,56 +0,0 @@
|
|||
# ===========================================================================
|
||||
# http://www.nongnu.org/autoconf-archive/ax_latex_test.html
|
||||
# ===========================================================================
|
||||
#
|
||||
# OBSOLETE MACRO
|
||||
#
|
||||
# Deprecated because of licensing issues. The Lesser GPL imposes licensing
|
||||
# restrictions on the generated configure script unless it is augmented
|
||||
# with an Autoconf Exception clause.
|
||||
#
|
||||
# SYNOPSIS
|
||||
#
|
||||
# AX_LATEX_TEST(FILEDATA,VARIABLETOSET,[NOCLEAN])
|
||||
#
|
||||
# DESCRIPTION
|
||||
#
|
||||
# This macros execute the latex application with FILEDATA as input and set
|
||||
# VARIABLETOSET the yes or no depending of the result if NOCLEAN is set,
|
||||
# the folder used for the test is not delete after testing.
|
||||
#
|
||||
# The macro assumes that the variable PDFLATEX is set.
|
||||
#
|
||||
# LICENSE
|
||||
#
|
||||
# Copyright © 2008 Boretti Mathieu <boretti@eig.unige.ch>
|
||||
# Copyright © 2009 Dynare Team
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or (at
|
||||
# your option) any later version.
|
||||
#
|
||||
# This library is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
|
||||
# General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public License
|
||||
# along with this library. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_DEFUN([AX_LATEX_TEST],[
|
||||
rm -rf conftest.dir/.acltx
|
||||
AS_MKDIR_P([conftest.dir/.acltx])
|
||||
cd conftest.dir/.acltx
|
||||
m4_ifval([$2],[$2="no"; export $2;])
|
||||
cat > conftest.tex << ACLEOF
|
||||
$1
|
||||
ACLEOF
|
||||
cat conftest.tex | $PDFLATEX 2>&1 1>output m4_ifval([$2],[&& $2=yes])
|
||||
cd ..
|
||||
cd ..
|
||||
sed 's/^/| /' conftest.dir/.acltx/conftest.tex >&5
|
||||
echo "$as_me:$LINENO: executing cat conftest.tex | $PDFLATEX" >&5
|
||||
sed 's/^/| /' conftest.dir/.acltx/output >&5
|
||||
m4_ifval([$3],,[rm -rf conftest.dir/.acltx])
|
||||
])
|
|
@ -1,69 +0,0 @@
|
|||
dnl Detect the MATIO Library.
|
||||
dnl
|
||||
dnl Copyright © 2012-2023 Dynare Team
|
||||
dnl
|
||||
dnl This file is part of Dynare.
|
||||
dnl
|
||||
dnl Dynare is free software: you can redistribute it and/or modify
|
||||
dnl it under the terms of the GNU General Public License as published by
|
||||
dnl the Free Software Foundation, either version 3 of the License, or
|
||||
dnl (at your option) any later version.
|
||||
dnl
|
||||
dnl Dynare is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with Dynare. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_DEFUN([AX_MATIO],
|
||||
[
|
||||
AC_ARG_WITH(matio, AS_HELP_STRING([--with-matio=DIR], [prefix to MATIO installation]),
|
||||
matio_prefix="$withval", matio_prefix="")
|
||||
|
||||
AC_REQUIRE([AC_CANONICAL_HOST])
|
||||
|
||||
has_matio=yes
|
||||
|
||||
if test -n "$matio_prefix"; then
|
||||
CPPFLAGS_MATIO="-I$withval/include"
|
||||
LDFLAGS_MATIO="-L$withval/lib"
|
||||
else
|
||||
CPPFLAGS_MATIO=""
|
||||
LDFLAGS_MATIO=""
|
||||
fi
|
||||
|
||||
ac_save_CPPFLAGS="$CPPFLAGS"
|
||||
ac_save_LDFLAGS="$LDFLAGS"
|
||||
ac_save_LIBS="$LIBS"
|
||||
|
||||
LIBADD_MATIO=""
|
||||
CPPFLAGS="$CPPFLAGS_MATIO $CPPFLAGS"
|
||||
LDFLAGS="$LDFLAGS_MATIO $LDFLAGS"
|
||||
|
||||
dnl Under Windows and macOS, add hdf5 and its dependencies since we are linking statically
|
||||
case ${host_os} in
|
||||
*mingw32*)
|
||||
dnl Partly inspired by /mingw64/lib/pkgconfig/{hdf5,libcurl}.pc (in particular for the system libraries)
|
||||
LIBS="-lhdf5 -lcurl -lnghttp2 -lidn2 -lssh2 -lpsl -lunistring -liconv -lbcrypt -ladvapi32 -lcrypt32 -lbcrypt -lgdi32 -lwldap32 -lzstd -lbrotlidec -lbrotlicommon -lssl -lcrypto -lws2_32 -lz -lsz"
|
||||
;;
|
||||
*darwin*)
|
||||
LIBS="-lhdf5 -lz -lsz"
|
||||
;;
|
||||
*)
|
||||
LIBS=""
|
||||
;;
|
||||
esac
|
||||
|
||||
AC_CHECK_HEADER([matio.h], [], [has_matio=no])
|
||||
AC_CHECK_LIB([matio], [Mat_Open], [LIBADD_MATIO="-lmatio $LIBS"], [has_matio=no])
|
||||
|
||||
CPPFLAGS="$ac_save_CPPFLAGS"
|
||||
LDFLAGS="$ac_save_LDFLAGS"
|
||||
LIBS="$ac_save_LIBS"
|
||||
|
||||
AC_SUBST(CPPFLAGS_MATIO)
|
||||
AC_SUBST(LIBADD_MATIO)
|
||||
AC_SUBST(LDFLAGS_MATIO)
|
||||
])
|
126
m4/ax_matlab.m4
126
m4/ax_matlab.m4
|
@ -1,126 +0,0 @@
|
|||
dnl ax_matlab.m4 --- check for MATLAB.
|
||||
dnl
|
||||
dnl Copyright © 2000-2003 Ralph Schleicher
|
||||
dnl Copyright © 2009-2021 Dynare Team
|
||||
dnl
|
||||
dnl This program is free software; you can redistribute it and/or
|
||||
dnl modify it under the terms of the GNU General Public License as
|
||||
dnl published by the Free Software Foundation; either version 2,
|
||||
dnl or (at your option) any later version.
|
||||
dnl
|
||||
dnl This program is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License along
|
||||
dnl with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
dnl
|
||||
dnl As a special exception to the GNU General Public License, if
|
||||
dnl you distribute this file as part of a program that contains a
|
||||
dnl configuration script generated by GNU Autoconf, you may include
|
||||
dnl it under the same distribution terms that you use for the rest
|
||||
dnl of that program.
|
||||
dnl
|
||||
dnl Code:
|
||||
|
||||
# AX_MATLAB
|
||||
# ---------
|
||||
# Check for MATLAB.
|
||||
AC_DEFUN([AX_MATLAB],
|
||||
[dnl
|
||||
AC_PREREQ([2.50])
|
||||
ax_enable_matlab=
|
||||
AC_ARG_WITH([matlab], AS_HELP_STRING([--with-matlab=ARG], [check for MATLAB [[yes]]]),
|
||||
[case $withval in
|
||||
yes | no)
|
||||
# Explicitly enable or disable MATLAB but determine
|
||||
# MATLAB prefix automatically.
|
||||
ax_enable_matlab=$withval
|
||||
;;
|
||||
*)
|
||||
# Enable MATLAB and use ARG as the MATLAB prefix.
|
||||
# ARG must be an existing directory.
|
||||
ax_enable_matlab=yes
|
||||
MATLAB=$(cd "${withval-/}" > /dev/null 2>&1 && pwd)
|
||||
if test -z "$MATLAB" ; then
|
||||
AC_MSG_ERROR([invalid value '$withval' for --with-matlab])
|
||||
fi
|
||||
;;
|
||||
esac])
|
||||
AC_CACHE_CHECK([for MATLAB prefix], [ax_cv_matlab],
|
||||
[if test "${MATLAB+set}" = set ; then
|
||||
ax_cv_matlab=$(cd "${MATLAB-/}" > /dev/null 2>&1 && pwd)
|
||||
else
|
||||
ax_cv_matlab=
|
||||
IFS=${IFS= } ; ax_ifs=$IFS ; IFS=:
|
||||
for ax_dir in ${PATH-/opt/bin:/usr/local/bin:/usr/bin:/bin} ; do
|
||||
if test -z "$ax_dir" ; then
|
||||
ax_dir=.
|
||||
fi
|
||||
if test -x "$ax_dir/matlab" ; then
|
||||
ax_dir=$(echo "$ax_dir" | sed 's,/bin$,,')
|
||||
# Directory sanity check.
|
||||
ax_cv_matlab=$(cd "${ax_dir-/}" > /dev/null 2>&1 && pwd)
|
||||
if test -n "$ax_cv_matlab" ; then
|
||||
break
|
||||
fi
|
||||
fi
|
||||
done
|
||||
IFS=$ax_ifs
|
||||
fi
|
||||
if test -z "$ax_cv_matlab" ; then
|
||||
ax_cv_matlab="not found"
|
||||
fi])
|
||||
if test "$ax_cv_matlab" = "not found" ; then
|
||||
unset MATLAB
|
||||
else
|
||||
# Strip trailing dashes.
|
||||
MATLAB=$(echo "$ax_cv_matlab" | sed 's,/*$,,')
|
||||
fi
|
||||
AC_MSG_CHECKING([whether to enable MATLAB support])
|
||||
if test "$ax_enable_matlab" != no; then
|
||||
if test "${MATLAB+set}" = set && test -d "$MATLAB/extern/include" ; then
|
||||
ax_enable_matlab=yes
|
||||
elif test -z "$ax_enable_matlab"; then
|
||||
ax_enable_matlab=no
|
||||
else
|
||||
# Fail if MATLAB was explicitly enabled.
|
||||
AC_MSG_RESULT([failure])
|
||||
AC_MSG_ERROR([check your MATLAB setup])
|
||||
fi
|
||||
fi
|
||||
AC_MSG_RESULT([$ax_enable_matlab])
|
||||
if test "$ax_enable_matlab" = yes; then
|
||||
AC_DEFINE([HAVE_MATLAB], [1], [Define if you have MATLAB.])
|
||||
fi
|
||||
AC_SUBST([MATLAB])
|
||||
])
|
||||
|
||||
# AX_REQUIRE_MATLAB
|
||||
# -----------------
|
||||
# Like AX_MATLAB but fail if MATLAB support is disabled.
|
||||
AC_DEFUN([AX_REQUIRE_MATLAB],
|
||||
[dnl
|
||||
AC_PREREQ([2.50])
|
||||
AC_REQUIRE([AX_MATLAB])
|
||||
if test "$ax_enable_matlab" = no; then
|
||||
AC_MSG_ERROR([can not enable MATLAB support])
|
||||
fi
|
||||
])
|
||||
|
||||
# AX_MATLAB_CONDITIONAL
|
||||
# ---------------------
|
||||
# Define MATLAB conditional for GNU Automake.
|
||||
AC_DEFUN([AX_MATLAB_CONDITIONAL],
|
||||
[dnl
|
||||
AC_PREREQ([2.50])
|
||||
AC_REQUIRE([AX_MATLAB])
|
||||
AM_CONDITIONAL([MATLAB], [test "$ax_enable_matlab" = yes])
|
||||
])
|
||||
|
||||
dnl ax_matlab.m4 ends here
|
||||
|
||||
dnl Local variables:
|
||||
dnl tab-width: 8
|
||||
dnl End:
|
|
@ -1,76 +0,0 @@
|
|||
dnl matlabarch.m4 --- check for MATLAB machine architecture.
|
||||
dnl
|
||||
dnl Copyright © 2002, 2003 Ralph Schleicher
|
||||
dnl Copyright © 2009-2023 Dynare Team
|
||||
dnl
|
||||
dnl This program is free software; you can redistribute it and/or
|
||||
dnl modify it under the terms of the GNU General Public License as
|
||||
dnl published by the Free Software Foundation; either version 2,
|
||||
dnl or (at your option) any later version.
|
||||
dnl
|
||||
dnl This program is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License along
|
||||
dnl with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
dnl
|
||||
dnl As a special exception to the GNU General Public License, if
|
||||
dnl you distribute this file as part of a program that contains a
|
||||
dnl configuration script generated by GNU Autoconf, you may include
|
||||
dnl it under the same distribution terms that you use for the rest
|
||||
dnl of that program.
|
||||
dnl
|
||||
dnl Code:
|
||||
|
||||
# AX_MATLAB_ARCH
|
||||
# --------------
|
||||
# Check for MATLAB machine architecture.
|
||||
AC_DEFUN([AX_MATLAB_ARCH],
|
||||
[dnl
|
||||
AC_PREREQ([2.50])
|
||||
AC_REQUIRE([AX_MEXEXT])
|
||||
AC_CACHE_CHECK([for MATLAB machine architecture], [ax_cv_matlab_arch],
|
||||
[if test "${MATLAB_ARCH+set}" = set ; then
|
||||
ax_cv_matlab_arch="$MATLAB_ARCH"
|
||||
else
|
||||
case $MEXEXT in
|
||||
*dll | *mexw32)
|
||||
ax_cv_matlab_arch=win32
|
||||
;;
|
||||
*mexw64)
|
||||
ax_cv_matlab_arch=win64
|
||||
;;
|
||||
*mexglx)
|
||||
ax_cv_matlab_arch=glnx86
|
||||
;;
|
||||
*mexa64)
|
||||
ax_cv_matlab_arch=glnxa64
|
||||
;;
|
||||
*mexs64)
|
||||
ax_cv_matlab_arch=sol64
|
||||
;;
|
||||
*mexmaci)
|
||||
ax_cv_matlab_arch=maci
|
||||
;;
|
||||
*mexmaci64)
|
||||
ax_cv_matlab_arch=maci64
|
||||
;;
|
||||
*mexmaca64)
|
||||
ax_cv_matlab_arch=maca64
|
||||
;;
|
||||
*)
|
||||
ax_cv_matlab_arch=unknown
|
||||
;;
|
||||
esac
|
||||
fi])
|
||||
MATLAB_ARCH="$ax_cv_matlab_arch"
|
||||
AC_SUBST([MATLAB_ARCH])
|
||||
])
|
||||
|
||||
dnl matlabarch.m4 ends here
|
||||
|
||||
dnl Local variables:
|
||||
dnl tab-width: 8
|
||||
dnl End:
|
|
@ -1,41 +0,0 @@
|
|||
dnl Copyright © 2019 Dynare Team
|
||||
dnl
|
||||
dnl This file is part of Dynare.
|
||||
dnl
|
||||
dnl Dynare is free software: you can redistribute it and/or modify
|
||||
dnl it under the terms of the GNU General Public License as published by
|
||||
dnl the Free Software Foundation, either version 3 of the License, or
|
||||
dnl (at your option) any later version.
|
||||
dnl
|
||||
dnl Dynare is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with Dynare. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_DEFUN([AX_MATLAB_BATCH_OPTIONS],
|
||||
[dnl
|
||||
AC_REQUIRE([AX_MATLAB])
|
||||
AC_REQUIRE([AX_MATLAB_ARCH])
|
||||
AC_REQUIRE([AX_MATLAB_VERSION])
|
||||
|
||||
AX_COMPARE_VERSION([$MATLAB_VERSION], [ge], [9.6],
|
||||
[
|
||||
if test "${MATLAB_ARCH}" = win32 -o "${MATLAB_ARCH}" = win64; then
|
||||
MATLAB_BATCH_OPTIONS='-noFigureWindows -batch'
|
||||
else
|
||||
MATLAB_BATCH_OPTIONS='-nodisplay -batch'
|
||||
fi
|
||||
],
|
||||
[
|
||||
if test "${MATLAB_ARCH}" = win32 -o "${MATLAB_ARCH}" = win64; then
|
||||
MATLAB_BATCH_OPTIONS='-nosplash -automation -wait -sd "$(CURDIR)" -r'
|
||||
else
|
||||
MATLAB_BATCH_OPTIONS='-nosplash -nodisplay -r'
|
||||
fi
|
||||
])
|
||||
|
||||
AC_SUBST([MATLAB_BATCH_OPTIONS])
|
||||
])
|
|
@ -1,176 +0,0 @@
|
|||
dnl Copyright © 2009-2023 Dynare Team
|
||||
dnl
|
||||
dnl This file is part of Dynare.
|
||||
dnl
|
||||
dnl Dynare is free software: you can redistribute it and/or modify
|
||||
dnl it under the terms of the GNU General Public License as published by
|
||||
dnl the Free Software Foundation, either version 3 of the License, or
|
||||
dnl (at your option) any later version.
|
||||
dnl
|
||||
dnl Dynare is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with Dynare. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_DEFUN([AX_MATLAB_VERSION],
|
||||
[dnl
|
||||
AC_REQUIRE([AX_MATLAB])
|
||||
|
||||
AC_MSG_CHECKING([for MATLAB version])
|
||||
|
||||
if test -n "$MATLAB"; then
|
||||
dnl Try to autodetect MATLAB version
|
||||
if test -f "${MATLAB}/VersionInfo.xml"; then
|
||||
dnl The VersionInfo.xml file is present on all versions since R2017a, on all platforms.
|
||||
dnl Extract the version number as x.y, since it is our preferred form, and is
|
||||
dnl more robust to future versions.
|
||||
dnl NB: brackets in regular expressions are enclosed in other brackets, because this is m4
|
||||
MATLAB_VERSION=$(sed -En '/<version>/s/.*>([[0-9]]+\.[[0-9]]+).*/\1/p' "${MATLAB}/VersionInfo.xml")
|
||||
elif test -f "${MATLAB}/bin/util/mex/version.txt"; then
|
||||
dnl The bin/util/mex/version.txt file is present on Windows and macOS, at least
|
||||
dnl since R2009b. It contains the release number (Rnnnnx).
|
||||
MATLAB_VERSION=$(cat "${MATLAB}/bin/util/mex/version.txt")
|
||||
elif test -f "${MATLAB}/bin/mex" || test -f "${MATLAB}/bin/mexsh"; then
|
||||
dnl Works on Linux and macOS until R2018a included. Returns the release number (Rnnnnx).
|
||||
dnl Older MATLABs have the version in bin/mex, more recent in bin/mexsh
|
||||
dnl NB: brackets in regular expressions are enclosed in other brackets, because this is m4
|
||||
MATLAB_VERSION=$(sed -En "/^.*full_ver=/s/^.*full_ver='(R[[^']]+)'.*/\1/p" "${MATLAB}"/bin/mex*)
|
||||
fi
|
||||
fi
|
||||
|
||||
if test -n "$MATLAB_VERSION"; then
|
||||
dnl Convert a release number (Rnnnnx) into a version number (x.y)
|
||||
case $MATLAB_VERSION in
|
||||
*2023a | *2023A)
|
||||
MATLAB_VERSION="9.14"
|
||||
;;
|
||||
*2022b | *2022B)
|
||||
MATLAB_VERSION="9.13"
|
||||
;;
|
||||
*2022a | *2022A)
|
||||
MATLAB_VERSION="9.12"
|
||||
;;
|
||||
*2021b | *2021B)
|
||||
MATLAB_VERSION="9.11"
|
||||
;;
|
||||
*2021a | *2021A)
|
||||
MATLAB_VERSION="9.10"
|
||||
;;
|
||||
*2020b | *2020B)
|
||||
MATLAB_VERSION="9.9"
|
||||
;;
|
||||
*2020a | *2020A)
|
||||
MATLAB_VERSION="9.8"
|
||||
;;
|
||||
*2019b | *2019B)
|
||||
MATLAB_VERSION="9.7"
|
||||
;;
|
||||
*2019a | *2019A)
|
||||
MATLAB_VERSION="9.6"
|
||||
;;
|
||||
*2018b | *2018B)
|
||||
MATLAB_VERSION="9.5"
|
||||
;;
|
||||
*2018a | *2018A)
|
||||
MATLAB_VERSION="9.4"
|
||||
;;
|
||||
*2017b | *2017B)
|
||||
MATLAB_VERSION="9.3"
|
||||
;;
|
||||
*2017a | *2017A)
|
||||
MATLAB_VERSION="9.2"
|
||||
;;
|
||||
*2016b | *2016B)
|
||||
MATLAB_VERSION="9.1"
|
||||
;;
|
||||
*2016a | *2016A)
|
||||
MATLAB_VERSION="9.0"
|
||||
;;
|
||||
*2015b | *2015B)
|
||||
MATLAB_VERSION="8.6"
|
||||
;;
|
||||
*2015a | *2015A)
|
||||
MATLAB_VERSION="8.5"
|
||||
;;
|
||||
*2014b | *2014B)
|
||||
MATLAB_VERSION="8.4"
|
||||
;;
|
||||
*2014a | *2014A)
|
||||
MATLAB_VERSION="8.3"
|
||||
;;
|
||||
*2013b | *2013B)
|
||||
MATLAB_VERSION="8.2"
|
||||
;;
|
||||
*2013a | *2013A)
|
||||
MATLAB_VERSION="8.1"
|
||||
;;
|
||||
*2012b | *2012B)
|
||||
MATLAB_VERSION="8.0"
|
||||
;;
|
||||
*2012a | *2012A)
|
||||
MATLAB_VERSION="7.14"
|
||||
;;
|
||||
*2011b | *2011B)
|
||||
MATLAB_VERSION="7.13"
|
||||
;;
|
||||
*2011a | *2011A)
|
||||
MATLAB_VERSION="7.12"
|
||||
;;
|
||||
*2010b | *2010B)
|
||||
MATLAB_VERSION="7.11"
|
||||
;;
|
||||
*2010a | *2010A)
|
||||
MATLAB_VERSION="7.10"
|
||||
;;
|
||||
*2009b | *2009B)
|
||||
MATLAB_VERSION="7.9"
|
||||
;;
|
||||
*2009a | *2009A)
|
||||
MATLAB_VERSION="7.8"
|
||||
;;
|
||||
*2008b | *2008B)
|
||||
MATLAB_VERSION="7.7"
|
||||
;;
|
||||
*2008a | *2008A)
|
||||
MATLAB_VERSION="7.6"
|
||||
;;
|
||||
*2007b | *2007B)
|
||||
MATLAB_VERSION="7.5"
|
||||
;;
|
||||
*2007a | *2007A)
|
||||
MATLAB_VERSION="7.4"
|
||||
;;
|
||||
*2006b | *2006B)
|
||||
MATLAB_VERSION="7.3"
|
||||
;;
|
||||
*2006a | *2006A)
|
||||
MATLAB_VERSION="7.2"
|
||||
;;
|
||||
*14SP3 | *14sp3)
|
||||
MATLAB_VERSION="7.1"
|
||||
;;
|
||||
*14SP2 | *14sp2)
|
||||
MATLAB_VERSION="7.0.4"
|
||||
;;
|
||||
*14SP1 | *14sp1)
|
||||
MATLAB_VERSION="7.0.1"
|
||||
;;
|
||||
R14 | r14)
|
||||
MATLAB_VERSION="7.0.0"
|
||||
;;
|
||||
esac
|
||||
dnl Check that we have an x.y version number
|
||||
if ! echo "${MATLAB_VERSION}" | grep -qE '^[[0-9.]]+$'; then
|
||||
AC_MSG_ERROR([unknown MATLAB version ${MATLAB_VERSION}])
|
||||
fi
|
||||
AC_MSG_RESULT([${MATLAB_VERSION}])
|
||||
ax_matlab_version_ok="yes"
|
||||
else
|
||||
AC_MSG_RESULT([unknown])
|
||||
ax_matlab_version_ok="no"
|
||||
fi
|
||||
AC_SUBST([MATLAB_VERSION])
|
||||
])
|
|
@ -1,75 +0,0 @@
|
|||
dnl ax_mexext.m4 --- check for MEX-file suffix.
|
||||
dnl
|
||||
dnl Copyright © 2000-2003 Ralph Schleicher
|
||||
dnl Copyright © 2009-2019 Dynare Team
|
||||
dnl
|
||||
dnl This program is free software; you can redistribute it and/or
|
||||
dnl modify it under the terms of the GNU General Public License as
|
||||
dnl published by the Free Software Foundation; either version 2,
|
||||
dnl or (at your option) any later version.
|
||||
dnl
|
||||
dnl This program is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License along
|
||||
dnl with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
dnl
|
||||
dnl As a special exception to the GNU General Public License, if
|
||||
dnl you distribute this file as part of a program that contains a
|
||||
dnl configuration script generated by GNU Autoconf, you may include
|
||||
dnl it under the same distribution terms that you use for the rest
|
||||
dnl of that program.
|
||||
dnl
|
||||
dnl Code:
|
||||
|
||||
# AX_MEXEXT
|
||||
# ---------
|
||||
# Check for MEX-file suffix.
|
||||
AC_DEFUN([AX_MEXEXT],
|
||||
[dnl
|
||||
AC_PREREQ([2.50])
|
||||
AC_REQUIRE([AX_MATLAB])
|
||||
AC_REQUIRE([AC_CANONICAL_BUILD])
|
||||
AC_CACHE_CHECK([for MEX-file suffix], [ax_cv_mexext],
|
||||
[if test "${MEXEXT+set}" = set ; then
|
||||
ax_cv_mexext="$MEXEXT"
|
||||
else
|
||||
case $build_os in
|
||||
*cygwin*|*mingw*)
|
||||
ax_cv_mexext=$("$MATLAB"/bin/mexext.bat | sed 's/\r//')
|
||||
;;
|
||||
*)
|
||||
ax_cv_mexext=$("$MATLAB"/bin/mexext)
|
||||
;;
|
||||
esac
|
||||
fi])
|
||||
MEXEXT="$ax_cv_mexext"
|
||||
AC_SUBST([MEXEXT])
|
||||
])
|
||||
|
||||
# AX_DOT_MEXEXT
|
||||
# -------------
|
||||
# Check for MEX-file suffix with leading dot.
|
||||
AC_DEFUN([AX_DOT_MEXEXT],
|
||||
[dnl
|
||||
AC_REQUIRE([AX_MEXEXT])
|
||||
case $MEXEXT in
|
||||
.*)
|
||||
;;
|
||||
*)
|
||||
if test -n "$MEXEXT" ; then
|
||||
MEXEXT=.$MEXEXT
|
||||
AC_MSG_RESULT([setting MEX-file suffix to $MEXEXT])
|
||||
AC_SUBST([MEXEXT])
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
])
|
||||
|
||||
dnl ax_mexext.m4 ends here
|
||||
|
||||
dnl Local variables:
|
||||
dnl tab-width: 8
|
||||
dnl End:
|
139
m4/ax_mexopts.m4
139
m4/ax_mexopts.m4
|
@ -1,139 +0,0 @@
|
|||
dnl Copyright © 2009-2023 Dynare Team
|
||||
dnl
|
||||
dnl This file is part of Dynare.
|
||||
dnl
|
||||
dnl Dynare is free software: you can redistribute it and/or modify
|
||||
dnl it under the terms of the GNU General Public License as published by
|
||||
dnl the Free Software Foundation, either version 3 of the License, or
|
||||
dnl (at your option) any later version.
|
||||
dnl
|
||||
dnl Dynare is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with Dynare. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_DEFUN([AX_MEXOPTS],
|
||||
[dnl
|
||||
AC_REQUIRE([AX_MEXEXT])
|
||||
AC_REQUIRE([AX_MATLAB_ARCH])
|
||||
AC_REQUIRE([AX_MATLAB_VERSION])
|
||||
AC_REQUIRE([AC_PROG_SED])
|
||||
|
||||
AX_COMPARE_VERSION([$MATLAB_VERSION], [lt], [8.3], [AC_MSG_ERROR([Your MATLAB is too old, please upgrade to 8.3 (R2014a) at least.])])
|
||||
|
||||
AC_MSG_CHECKING([for options to compile MEX for MATLAB])
|
||||
|
||||
MATLAB_CPPFLAGS="-I$MATLAB/extern/include"
|
||||
|
||||
case ${MATLAB_ARCH} in
|
||||
glnxa64)
|
||||
MATLAB_DEFS="-D_GNU_SOURCE -DNDEBUG"
|
||||
MATLAB_CFLAGS="-fexceptions -fPIC -pthread"
|
||||
MATLAB_CXXFLAGS="-fPIC -pthread"
|
||||
MATLAB_FCFLAGS="-fPIC -fexceptions"
|
||||
MATLAB_LDFLAGS_NOMAP="-shared -Wl,--no-undefined -Wl,-rpath-link,$MATLAB/bin/glnxa64 -L$MATLAB/bin/glnxa64"
|
||||
MATLAB_LDFLAGS="$MATLAB_LDFLAGS_NOMAP -Wl,--version-script,$MATLAB/extern/lib/glnxa64/mexFunction.map"
|
||||
MATLAB_LIBS="-lmx -lmex -lmat -lm -lmwlapack -lmwblas"
|
||||
FORTRAN_LIBS_FOR_CXXLINK="-lgfortran -lquadmath"
|
||||
ax_mexopts_ok="yes"
|
||||
;;
|
||||
win64)
|
||||
MATLAB_CFLAGS="-fexceptions"
|
||||
MATLAB_CXXFLAGS=""
|
||||
MATLAB_FCFLAGS="-fexceptions -fno-underscoring"
|
||||
MATLAB_DEFS="-DNDEBUG"
|
||||
# The hack for libquadmath is needed because -static-libgfortran
|
||||
# unfortunately does not imply the static linking of the former.
|
||||
# The last part about winpthread is a hack to avoid dynamically linking
|
||||
# against libwinpthread DLL (which is pulled in by libstdc++, even without
|
||||
# using threads, since we are using the POSIX threads version of MinGW)
|
||||
MATLAB_LDFLAGS_NOMAP="-static-libgcc -static-libstdc++ -static-libgfortran -Wl,-Bstatic,--whole-archive -lquadmath -Wl,-Bdynamic,--no-whole-archive -shared -L$MATLAB/bin/win64 -Wl,-Bstatic,--whole-archive -lwinpthread -Wl,-Bdynamic,--no-whole-archive"
|
||||
MATLAB_LDFLAGS="$MATLAB_LDFLAGS_NOMAP \$(abs_top_srcdir)/mex.def"
|
||||
# Hack for libssp, which is pulled in by -fstack-protector
|
||||
# (curiously only on some MEX files), see windows/build.sh.
|
||||
# Note that the link against libssp should not happen with compilers
|
||||
# from MSYS2, see:
|
||||
# https://www.msys2.org/news/#2022-10-10-libssp-is-no-longer-required
|
||||
# But it happens with Debian’s cross compilers (as of Debian “bookworm” 12).
|
||||
# Also note that the -lssp must come by the end of the link command
|
||||
# (otherwise it will have to be enclosed within --whole-archive).
|
||||
MATLAB_LIBS="-lmex -lmx -lmat -lmwlapack -lmwblas -Wl,-Bstatic -lssp -Wl,-Bdynamic"
|
||||
# Hack for static linking of libgomp, needed for OpenMP.
|
||||
# Should come by the end of the link command
|
||||
# (otherwise it will have to be enclosed within --whole-archive).
|
||||
OPENMP_LIBS="-Wl,-Bstatic -lgomp -Wl,-Bdynamic"
|
||||
FORTRAN_LIBS_FOR_CXXLINK="-Wl,-Bstatic -lgfortran -Wl,-Bdynamic" # libquadmath is already in MATLAB_LDFLAGS_NOMAP
|
||||
ax_mexopts_ok="yes"
|
||||
;;
|
||||
mac[[ai]]64)
|
||||
MATLAB_DEFS="-DNDEBUG"
|
||||
MATLAB_CFLAGS="-fno-common -fexceptions"
|
||||
MATLAB_CXXFLAGS="-fno-common -fexceptions"
|
||||
MATLAB_FCFLAGS="-fexceptions -fbackslash"
|
||||
MATLAB_LDFLAGS_NOMAP="-Wl,-twolevel_namespace -undefined error -bundle"
|
||||
MATLAB_LDFLAGS="$MATLAB_LDFLAGS_NOMAP -Wl,-exported_symbols_list,\$(abs_top_srcdir)/mexFunction-MacOSX.map"
|
||||
# This -L flag is put here, hence later on the linker command line, so as
|
||||
# to avoid linking against the HDF5 shipped by MATLAB (which would
|
||||
# otherwise override the HDF5 from Homebrew)
|
||||
MATLAB_LIBS="-L$MATLAB/bin/${MATLAB_ARCH} -lmx -lmex -lmat -lmwlapack -lmwblas"
|
||||
FORTRAN_LIBS_FOR_CXXLINK="-lgfortran -lquadmath"
|
||||
ax_mexopts_ok="yes"
|
||||
;;
|
||||
*)
|
||||
ax_mexopts_ok="no"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Converts the MATLAB version number into comparable integers with only major and minor version numbers
|
||||
# For example, 7.4.2 will become 0704
|
||||
ax_matlab_ver=$(echo "$MATLAB_VERSION" | $SED -e 's/\([[0-9]]*\)\.\([[0-9]]*\).*/Z\1ZZ\2Z/' \
|
||||
-e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \
|
||||
-e 's/[[^0-9]]//g')
|
||||
|
||||
MATLAB_DEFS="$MATLAB_DEFS -DMATLAB_VERSION=0x${ax_matlab_ver}"
|
||||
|
||||
if test "$ax_mexopts_ok" = "yes"; then
|
||||
AC_MSG_RESULT([ok])
|
||||
else
|
||||
AC_MSG_RESULT([unknown])
|
||||
fi
|
||||
|
||||
# Allow user to override default Matlab compilation flags
|
||||
# Github ticket #1121
|
||||
if test -n "$MATLAB_MEX_CPPFLAGS"; then
|
||||
MATLAB_CPPFLAGS="$MATLAB_CPPFLAGS $MATLAB_MEX_CPPFLAGS"
|
||||
fi
|
||||
|
||||
if test -n "$MATLAB_MEX_DEFS"; then
|
||||
MATLAB_DEFS="$MATLAB_DEFS $MATLAB_MEX_DEFS"
|
||||
fi
|
||||
|
||||
if test -n "$MATLAB_MEX_CFLAGS"; then
|
||||
MATLAB_CFLAGS="$MATLAB_CFLAGS $MATLAB_MEX_CFLAGS"
|
||||
fi
|
||||
|
||||
if test -n "$MATLAB_MEX_CXXFLAGS"; then
|
||||
MATLAB_CXXFLAGS="$MATLAB_CXXFLAGS $MATLAB_MEX_CXXFLAGS"
|
||||
fi
|
||||
|
||||
if test -n "$MATLAB_MEX_LDFLAGS"; then
|
||||
MATLAB_LDFLAGS="$MATLAB_LDFLAGS $MATLAB_MEX_LDFLAGS"
|
||||
fi
|
||||
|
||||
if test -n "$MATLAB_MEX_LIBS"; then
|
||||
MATLAB_LIBS="$MATLAB_LIBS $MATLAB_MEX_LIBS"
|
||||
fi
|
||||
|
||||
AC_SUBST([MATLAB_CPPFLAGS])
|
||||
AC_SUBST([MATLAB_DEFS])
|
||||
AC_SUBST([MATLAB_CFLAGS])
|
||||
AC_SUBST([MATLAB_CXXFLAGS])
|
||||
AC_SUBST([MATLAB_FCFLAGS])
|
||||
AC_SUBST([MATLAB_LDFLAGS])
|
||||
AC_SUBST([MATLAB_LIBS])
|
||||
AC_SUBST([OPENMP_LIBS])
|
||||
AC_SUBST([FORTRAN_LIBS_FOR_CXXLINK])
|
||||
])
|
|
@ -1,56 +0,0 @@
|
|||
dnl ax_octave.m4 --- check for Octave
|
||||
dnl
|
||||
dnl Copyright © 2020-2021 Dynare Team
|
||||
dnl
|
||||
dnl This program is free software; you can redistribute it and/or
|
||||
dnl modify it under the terms of the GNU General Public License as
|
||||
dnl published by the Free Software Foundation; either version 2,
|
||||
dnl or (at your option) any later version.
|
||||
dnl
|
||||
dnl This program is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License along
|
||||
dnl with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
dnl
|
||||
dnl As a special exception to the GNU General Public License, if
|
||||
dnl you distribute this file as part of a program that contains a
|
||||
dnl configuration script generated by GNU Autoconf, you may include
|
||||
dnl it under the same distribution terms that you use for the rest
|
||||
dnl of that program.
|
||||
|
||||
# AX_OCTAVE
|
||||
# ---------
|
||||
# Checks for Octave.
|
||||
# Search in the argument given to --with-octave if any.
|
||||
# Otherwise, search in PATH.
|
||||
# Sets OCTAVE and MKOCTFILE variables and calls AC_SUBST on them.
|
||||
# Sets ax_enable_octave=yes if successful, ax_enable_octave=no otherwise
|
||||
AC_DEFUN([AX_OCTAVE],
|
||||
[dnl
|
||||
AC_ARG_WITH([octave], AS_HELP_STRING([--with-octave=PATH], [Path to search for Octave installation]),
|
||||
[
|
||||
if test -n "$withval"; then
|
||||
if test -x "$withval/bin/octave" && test -x "$withval/bin/mkoctfile"; then
|
||||
OCTAVE="$withval/bin/octave"
|
||||
MKOCTFILE="$withval/bin/mkoctfile"
|
||||
else
|
||||
AC_MSG_ERROR([invalid value '$withval' for --with-octave])
|
||||
fi
|
||||
fi
|
||||
])
|
||||
|
||||
AC_CHECK_PROG([OCTAVE], [octave], [octave])
|
||||
AC_CHECK_PROG([MKOCTFILE], [mkoctfile], [mkoctfile])
|
||||
|
||||
if test -n "$OCTAVE" && test -n "$MKOCTFILE"; then
|
||||
ax_enable_octave=yes
|
||||
else
|
||||
ax_enable_octave=no
|
||||
fi
|
||||
|
||||
AC_SUBST([OCTAVE])
|
||||
AC_SUBST([MKOCTFILE])
|
||||
])
|
|
@ -1,27 +0,0 @@
|
|||
dnl Copyright © 2009-2010 Dynare Team
|
||||
dnl
|
||||
dnl This file is part of Dynare.
|
||||
dnl
|
||||
dnl Dynare is free software: you can redistribute it and/or modify
|
||||
dnl it under the terms of the GNU General Public License as published by
|
||||
dnl the Free Software Foundation, either version 3 of the License, or
|
||||
dnl (at your option) any later version.
|
||||
dnl
|
||||
dnl Dynare is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with Dynare. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_DEFUN([AX_PROG_LN_S],
|
||||
[
|
||||
AC_REQUIRE([AC_CANONICAL_HOST])
|
||||
AC_REQUIRE([AC_PROG_LN_S])
|
||||
case ${host_os} in
|
||||
*cygwin*|*mingw32*)
|
||||
LN_S="cp -p" # Symbolic links are not understood by MATLAB under Windows
|
||||
;;
|
||||
esac
|
||||
])
|
|
@ -1,68 +0,0 @@
|
|||
dnl Detect the SLICOT Library.
|
||||
dnl Called with an argument of either 'matlab' or 'octave', depending
|
||||
dnl on the configure script from which we're calling it
|
||||
dnl
|
||||
dnl AX_SLICOT([matlab])
|
||||
dnl AX_SLICOT([octave])
|
||||
dnl
|
||||
dnl Copyright © 2012-2021 Dynare Team
|
||||
dnl
|
||||
dnl This file is part of Dynare.
|
||||
dnl
|
||||
dnl Dynare is free software: you can redistribute it and/or modify
|
||||
dnl it under the terms of the GNU General Public License as published by
|
||||
dnl the Free Software Foundation, either version 3 of the License, or
|
||||
dnl (at your option) any later version.
|
||||
dnl
|
||||
dnl Dynare is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with Dynare. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_DEFUN([AX_SLICOT],
|
||||
[
|
||||
if test "$1" != matlab && test "$1" != octave; then
|
||||
AC_MSG_ERROR([Argument to autoconf slicot macro must be either 'matlab' or 'octave'])
|
||||
fi
|
||||
|
||||
AC_ARG_WITH(slicot, AS_HELP_STRING([--with-slicot=DIR], [prefix to SLICOT installation]),
|
||||
slicot_prefix="$withval", slicot_prefix="")
|
||||
has_slicot=yes
|
||||
|
||||
if test -n "$slicot_prefix"; then
|
||||
LDFLAGS_SLICOT="-L$withval/lib"
|
||||
else
|
||||
LDFLAGS_SLICOT=""
|
||||
fi
|
||||
my_save_LDFLAGS=$LDFLAGS
|
||||
|
||||
# At this point we should add MATLAB_FCFLAGS to FCFLAGS for Windows (which has -fno-underscoring),
|
||||
# but that does not work. The actual underscore test seems to happen at the very beginning of the
|
||||
# macro. Hence the modification of FCFLAGS was moved higher (in mex/build/matlab/configure.ac).
|
||||
AC_FC_FUNC(sb02od)
|
||||
|
||||
if test "$1" = matlab; then
|
||||
LDFLAGS="$LDFLAGS $MATLAB_LDFLAGS_NOMAP $LDFLAGS_SLICOT"
|
||||
|
||||
# Add MATLAB_CFLAGS to get the -fPIC on Linux/x86_64 (otherwise linking fails)
|
||||
my_save_CFLAGS=$CFLAGS
|
||||
CFLAGS="$CFLAGS $MATLAB_CFLAGS"
|
||||
AC_CHECK_LIB([slicot64_pic], [$sb02od], [LIBADD_SLICOT="-lslicot64_pic"], [has_slicot=no], [$MATLAB_LIBS])
|
||||
CFLAGS=$my_save_CFLAGS
|
||||
else
|
||||
LDFLAGS="$LDFLAGS $LDFLAGS_SLICOT"
|
||||
# Fallback on libslicot_pic if dynamic libslicot not found
|
||||
AC_CHECK_LIB([slicot], [$sb02od], [LIBADD_SLICOT="-lslicot"],
|
||||
[
|
||||
AC_CHECK_LIB([slicot_pic], [$sb02od], [LIBADD_SLICOT="-lslicot_pic"], [has_slicot=no], [$($MKOCTFILE -p BLAS_LIBS) $($MKOCTFILE -p LAPACK_LIBS)])
|
||||
],
|
||||
[$($MKOCTFILE -p BLAS_LIBS) $($MKOCTFILE -p LAPACK_LIBS)])
|
||||
fi
|
||||
|
||||
LDFLAGS=$my_save_LDFLAGS
|
||||
AC_SUBST(LDFLAGS_SLICOT)
|
||||
AC_SUBST(LIBADD_SLICOT)
|
||||
])
|
|
@ -87,7 +87,7 @@ if get_option('build_for') == 'matlab'
|
|||
elif host_machine.system() == 'windows' and host_machine.cpu_family() == 'x86_64'
|
||||
mexext = 'mexw64'
|
||||
matlab_arch = 'win64'
|
||||
export_file = meson.current_source_dir() / 'mex/build/matlab/mex.def'
|
||||
export_file = meson.current_source_dir() / 'windows/mex.def'
|
||||
export_link_arg = export_file
|
||||
if get_option('build_for') == 'matlab'
|
||||
arch_fortran_args = [ '-fno-underscoring' ]
|
||||
|
@ -102,7 +102,7 @@ if get_option('build_for') == 'matlab'
|
|||
else
|
||||
error('Unsupported platform')
|
||||
endif
|
||||
export_file = meson.current_source_dir() / 'mex/build/matlab/mexFunction-MacOSX.map'
|
||||
export_file = meson.current_source_dir() / 'macOS/mexFunction-MacOSX.map'
|
||||
export_link_arg = '-Wl,-exported_symbols_list,' + export_file
|
||||
else
|
||||
error('Unsupported platform')
|
||||
|
|
|
@ -1,29 +0,0 @@
|
|||
mex_PROGRAMS = block_trust_region
|
||||
|
||||
nodist_block_trust_region_SOURCES = \
|
||||
dulmage_mendelsohn.f08 \
|
||||
matlab_fcn_closure.F08 \
|
||||
trust_region.f08 \
|
||||
mexFunction.f08 \
|
||||
matlab_mex.F08 \
|
||||
blas_lapack.F08
|
||||
|
||||
BUILT_SOURCES = $(nodist_block_trust_region_SOURCES)
|
||||
CLEANFILES = $(nodist_block_trust_region_SOURCES)
|
||||
|
||||
dulmage_mendelsohn.o: matlab_mex.mod
|
||||
dulmage_mendelsohn.mod: dulmage_mendelsohn.o
|
||||
|
||||
matlab_fcn_closure.mod: matlab_fcn_closure.o
|
||||
matlab_fcn_closure.o: matlab_mex.mod
|
||||
|
||||
trust_region.mod: trust_region.o
|
||||
trust_region.o: lapack.mod
|
||||
|
||||
mexFunction.o: matlab_mex.mod dulmage_mendelsohn.mod matlab_fcn_closure.mod trust_region.mod
|
||||
|
||||
%.f08: $(top_srcdir)/../../sources/block_trust_region/%.f08
|
||||
$(LN_S) -f $< $@
|
||||
|
||||
%.F08: $(top_srcdir)/../../sources/block_trust_region/%.F08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,19 +0,0 @@
|
|||
mex_PROGRAMS = bytecode
|
||||
|
||||
TOPDIR = $(top_srcdir)/../../sources/bytecode
|
||||
|
||||
bytecode_CPPFLAGS = $(AM_CPPFLAGS) -I$(TOPDIR) -I$(top_srcdir)/../../../preprocessor/src
|
||||
|
||||
nodist_bytecode_SOURCES = \
|
||||
bytecode.cc \
|
||||
Interpreter.cc \
|
||||
Mem_Mngr.cc \
|
||||
SparseMatrix.cc \
|
||||
Evaluate.cc \
|
||||
BasicSymbolTable.cc
|
||||
|
||||
BUILT_SOURCES = $(nodist_bytecode_SOURCES)
|
||||
CLEANFILES = $(nodist_bytecode_SOURCES)
|
||||
|
||||
%.cc: $(TOPDIR)/%.cc
|
||||
$(LN_S) -f $< $@
|
|
@ -1,18 +0,0 @@
|
|||
mex_PROGRAMS = cycle_reduction
|
||||
|
||||
nodist_cycle_reduction_SOURCES = \
|
||||
matlab_mex.F08 \
|
||||
blas_lapack.F08 \
|
||||
mexFunction.f08
|
||||
|
||||
BUILT_SOURCES = $(nodist_cycle_reduction_SOURCES)
|
||||
CLEANFILES = $(nodist_cycle_reduction_SOURCES)
|
||||
|
||||
mexFunction.o: matlab_mex.mod blas.mod lapack.mod
|
||||
|
||||
mexFunction.mod: mexFunction.o
|
||||
|
||||
%.f08: $(top_srcdir)/../../sources/cycle_reduction/%.f08
|
||||
$(LN_S) -f $< $@
|
||||
%.F08: $(top_srcdir)/../../sources/cycle_reduction/%.F08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,11 +0,0 @@
|
|||
mex_PROGRAMS = disclyap_fast
|
||||
|
||||
nodist_disclyap_fast_SOURCES = disclyap_fast.f08 matlab_mex.F08 blas_lapack.F08
|
||||
|
||||
BUILT_SOURCES = $(nodist_disclyap_fast_SOURCES)
|
||||
CLEANFILES = $(nodist_disclyap_fast_SOURCES)
|
||||
|
||||
disclyap_fast.o : matlab_mex.mod lapack.mod
|
||||
|
||||
%.f08: $(top_srcdir)/../../sources/disclyap_fast/%.f08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,14 +0,0 @@
|
|||
mex_PROGRAMS = folded_to_unfolded_dr
|
||||
|
||||
folded_to_unfolded_dr_FCFLAGS = $(AM_FCFLAGS) -I../libkordersim
|
||||
|
||||
nodist_folded_to_unfolded_dr_SOURCES = \
|
||||
mexFunction.f08
|
||||
|
||||
folded_to_unfolded_dr_LDADD = ../libkordersim/libkordersim.a
|
||||
|
||||
BUILT_SOURCES = $(nodist_folded_to_unfolded_dr_SOURCES)
|
||||
CLEANFILES = $(nodist_folded_to_unfolded_dr_SOURCES)
|
||||
|
||||
%.f08: $(top_srcdir)/../../sources/folded_to_unfolded_dr/%.f08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,15 +0,0 @@
|
|||
mex_PROGRAMS = gensylv
|
||||
|
||||
LIBKORDER_DIR = $(top_srcdir)/../../sources/libkorder
|
||||
|
||||
gensylv_CPPFLAGS = $(AM_CPPFLAGS) -I$(LIBKORDER_DIR)/sylv -I$(LIBKORDER_DIR)/utils
|
||||
|
||||
gensylv_LDADD = ../libkorder/libkorder.a
|
||||
|
||||
nodist_gensylv_SOURCES = gensylv.cc
|
||||
|
||||
BUILT_SOURCES = $(nodist_gensylv_SOURCES)
|
||||
CLEANFILES = $(nodist_gensylv_SOURCES)
|
||||
|
||||
%.cc: $(top_srcdir)/../../sources/gensylv/%.cc
|
||||
$(LN_S) -f $< $@
|
|
@ -1,14 +0,0 @@
|
|||
mex_PROGRAMS = k_order_mean
|
||||
|
||||
k_order_mean_FCFLAGS = $(AM_FCFLAGS) -I../libkordersim
|
||||
|
||||
nodist_k_order_mean_SOURCES = \
|
||||
mexFunction.f08
|
||||
|
||||
k_order_mean_LDADD = ../libkordersim/libkordersim.a
|
||||
|
||||
BUILT_SOURCES = $(nodist_k_order_mean_SOURCES)
|
||||
CLEANFILES = $(nodist_k_order_mean_SOURCES)
|
||||
|
||||
%.f08: $(top_srcdir)/../../sources/k_order_mean/%.f08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,16 +0,0 @@
|
|||
mex_PROGRAMS = k_order_perturbation
|
||||
|
||||
TOPDIR = $(top_srcdir)/../../sources/k_order_perturbation
|
||||
LIBKORDER_DIR = $(top_srcdir)/../../sources/libkorder
|
||||
|
||||
k_order_perturbation_CPPFLAGS = $(AM_CPPFLAGS) -I$(LIBKORDER_DIR) -I$(LIBKORDER_DIR)/kord -I$(LIBKORDER_DIR)/tl -I$(LIBKORDER_DIR)/utils -I$(LIBKORDER_DIR)/sylv -I$(LIBKORDER_DIR)/integ -I$(TOPDIR)
|
||||
|
||||
k_order_perturbation_LDADD = ../libkorder/libkorder.a $(LIBADD_DLOPEN)
|
||||
|
||||
nodist_k_order_perturbation_SOURCES = k_order_perturbation.cc
|
||||
|
||||
BUILT_SOURCES = $(nodist_k_order_perturbation_SOURCES)
|
||||
CLEANFILES = $(nodist_k_order_perturbation_SOURCES)
|
||||
|
||||
%.cc: $(TOPDIR)/%.cc
|
||||
$(LN_S) -f $< $@
|
|
@ -1,14 +0,0 @@
|
|||
mex_PROGRAMS = k_order_simul
|
||||
|
||||
k_order_simul_FCFLAGS = $(AM_FCFLAGS) -I../libkordersim
|
||||
|
||||
nodist_k_order_simul_SOURCES = \
|
||||
mexFunction.f08
|
||||
|
||||
k_order_simul_LDADD = ../libkordersim/libkordersim.a
|
||||
|
||||
BUILT_SOURCES = $(nodist_k_order_simul_SOURCES)
|
||||
CLEANFILES = $(nodist_k_order_simul_SOURCES)
|
||||
|
||||
%.f08: $(top_srcdir)/../../sources/k_order_simul/%.f08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,20 +0,0 @@
|
|||
mex_PROGRAMS = k_order_welfare
|
||||
|
||||
TOPDIR = $(top_srcdir)/../../sources/k_order_welfare
|
||||
LIBKORDER_DIR = $(top_srcdir)/../../sources/libkorder
|
||||
|
||||
k_order_welfare_CPPFLAGS = $(AM_CPPFLAGS) -I$(TOPDIR) -I$(LIBKORDER_DIR) -I$(LIBKORDER_DIR)/tl -I$(LIBKORDER_DIR)/kord -I$(LIBKORDER_DIR)/sylv -I$(LIBKORDER_DIR)/utils
|
||||
|
||||
k_order_welfare_LDADD = ../libkorder/libkorder.a $(LIBADD_DLOPEN)
|
||||
|
||||
nodist_k_order_welfare_SOURCES = \
|
||||
k_order_welfare.cc \
|
||||
approximation_welfare.cc \
|
||||
k_ord_objective.cc \
|
||||
objective_m.cc
|
||||
|
||||
BUILT_SOURCES = $(nodist_k_order_welfare_SOURCES)
|
||||
CLEANFILES = $(nodist_k_order_welfare_SOURCES)
|
||||
|
||||
%.cc: $(TOPDIR)/%.cc
|
||||
$(LN_S) -f $< $@
|
|
@ -1,12 +0,0 @@
|
|||
mex_PROGRAMS = kalman_steady_state
|
||||
|
||||
kalman_steady_state_LDADD = $(LIBADD_SLICOT)
|
||||
kalman_steady_state_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_SLICOT)
|
||||
|
||||
nodist_kalman_steady_state_SOURCES = kalman_steady_state.cc
|
||||
|
||||
BUILT_SOURCES = $(nodist_kalman_steady_state_SOURCES)
|
||||
CLEANFILES = $(nodist_kalman_steady_state_SOURCES)
|
||||
|
||||
%.cc: $(top_srcdir)/../../sources/kalman_steady_state/%.cc
|
||||
$(LN_S) -f $< $@
|
|
@ -1,18 +0,0 @@
|
|||
mex_PROGRAMS = sparse_hessian_times_B_kronecker_C A_times_B_kronecker_C
|
||||
|
||||
nodist_sparse_hessian_times_B_kronecker_C_SOURCES = sparse_hessian_times_B_kronecker_C.cc
|
||||
nodist_A_times_B_kronecker_C_SOURCES = A_times_B_kronecker_C.f08 matlab_mex.F08 blas_lapack.F08
|
||||
|
||||
sparse_hessian_times_B_kronecker_C_CXXFLAGS = $(AM_CXXFLAGS) -fopenmp
|
||||
sparse_hessian_times_B_kronecker_C_LDADD = $(OPENMP_LIBS)
|
||||
|
||||
BUILT_SOURCES = $(nodist_sparse_hessian_times_B_kronecker_C_SOURCES) $(nodist_A_times_B_kronecker_C_SOURCES)
|
||||
CLEANFILES = $(nodist_sparse_hessian_times_B_kronecker_C_SOURCES) $(nodist_A_times_B_kronecker_C_SOURCES)
|
||||
|
||||
%.cc: $(top_srcdir)/../../sources/kronecker/%.cc
|
||||
$(LN_S) -f $< $@
|
||||
|
||||
A_times_B_kronecker_C.o : matlab_mex.mod lapack.mod
|
||||
|
||||
%.f08: $(top_srcdir)/../../sources/kronecker/%.f08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,90 +0,0 @@
|
|||
noinst_LIBRARIES = libkorder.a
|
||||
|
||||
TOPDIR = $(top_srcdir)/../../sources/libkorder
|
||||
|
||||
libkorder_a_CPPFLAGS = $(AM_CPPFLAGS) -I$(TOPDIR) -I$(TOPDIR)/tl -I$(TOPDIR)/sylv -I$(TOPDIR)/kord -I$(TOPDIR)/utils
|
||||
|
||||
# TODO: fix the codebase so that the following line is no longer needed
|
||||
libkorder_a_CXXFLAGS = $(AM_CXXFLAGS) -Wno-unused-parameter
|
||||
|
||||
KORD_SRCS = \
|
||||
approximation.cc \
|
||||
decision_rule.cc \
|
||||
dynamic_model.cc \
|
||||
faa_di_bruno.cc \
|
||||
first_order.cc \
|
||||
korder.cc \
|
||||
korder_stoch.cc \
|
||||
journal.cc
|
||||
|
||||
SYLV_SRCS = \
|
||||
BlockDiagonal.cc \
|
||||
GeneralMatrix.cc \
|
||||
GeneralSylvester.cc \
|
||||
IterativeSylvester.cc \
|
||||
KronUtils.cc \
|
||||
KronVector.cc \
|
||||
QuasiTriangular.cc \
|
||||
QuasiTriangularZero.cc \
|
||||
SchurDecomp.cc \
|
||||
SchurDecompEig.cc \
|
||||
SimilarityDecomp.cc \
|
||||
SylvException.cc \
|
||||
SylvMatrix.cc \
|
||||
SylvParams.cc \
|
||||
SymSchurDecomp.cc \
|
||||
TriangularSylvester.cc \
|
||||
Vector.cc
|
||||
|
||||
TL_SRCS = \
|
||||
equivalence.cc \
|
||||
fine_container.cc \
|
||||
fs_tensor.cc \
|
||||
gs_tensor.cc \
|
||||
int_sequence.cc \
|
||||
kron_prod.cc \
|
||||
normal_moments.cc \
|
||||
permutation.cc \
|
||||
ps_tensor.cc \
|
||||
pyramid_prod.cc \
|
||||
pyramid_prod2.cc \
|
||||
rfs_tensor.cc \
|
||||
sparse_tensor.cc \
|
||||
stack_container.cc \
|
||||
symmetry.cc \
|
||||
t_container.cc \
|
||||
t_polynomial.cc \
|
||||
tensor.cc \
|
||||
tl_static.cc \
|
||||
twod_matrix.cc
|
||||
|
||||
UTILS_SRCS = \
|
||||
pascal_triangle.cc \
|
||||
int_power.cc \
|
||||
sthread.cc
|
||||
|
||||
TOPDIR_SRCS = \
|
||||
k_ord_dynare.cc \
|
||||
dynamic_dll.cc \
|
||||
dynamic_m.cc
|
||||
|
||||
nodist_libkorder_a_SOURCES = \
|
||||
$(KORD_SRCS) \
|
||||
$(TL_SRCS) \
|
||||
$(SYLV_SRCS) \
|
||||
$(UTILS_SRCS) \
|
||||
$(TOPDIR_SRCS)
|
||||
|
||||
BUILT_SOURCES = $(nodist_libkorder_a_SOURCES)
|
||||
CLEANFILES = $(nodist_libkorder_a_SOURCES)
|
||||
|
||||
$(TOPDIR_SRCS): %.cc: $(TOPDIR)/%.cc
|
||||
$(LN_S) -f $< $@
|
||||
$(KORD_SRCS): %.cc: $(TOPDIR)/kord/%.cc
|
||||
$(LN_S) -f $< $@
|
||||
$(TL_SRCS): %.cc: $(TOPDIR)/tl/%.cc
|
||||
$(LN_S) -f $< $@
|
||||
$(SYLV_SRCS): %.cc: $(TOPDIR)/sylv/%.cc
|
||||
$(LN_S) -f $< $@
|
||||
$(UTILS_SRCS): %.cc: $(TOPDIR)/utils/%.cc
|
||||
$(LN_S) -f $< $@
|
|
@ -1,35 +0,0 @@
|
|||
noinst_LIBRARIES = libkordersim.a
|
||||
|
||||
nodist_libkordersim_a_SOURCES = \
|
||||
blas_lapack.F08 \
|
||||
matlab_mex.F08 \
|
||||
pascal.f08 \
|
||||
sort.f08 \
|
||||
partitions.f08 \
|
||||
tensors.f08 \
|
||||
simulation.f08 \
|
||||
struct.f08 \
|
||||
pthread.F08
|
||||
|
||||
|
||||
BUILT_SOURCES = $(nodist_libkordersim_a_SOURCES)
|
||||
CLEANFILES = $(nodist_libkordersim_a_SOURCES)
|
||||
|
||||
struct.o: matlab_mex.mod
|
||||
struct.mod: struct.o
|
||||
|
||||
pascal.mod: pascal.o
|
||||
|
||||
sort.mod: sort.o
|
||||
|
||||
partitions.o: sort.mod pascal.mod
|
||||
partitions.mod: partitions.o
|
||||
|
||||
tensors.o: partitions.mod
|
||||
tensors.mod: tensors.o
|
||||
|
||||
simulation.o: tensors.mod lapack.mod matlab_mex.mod
|
||||
simulation.mod: simulation.o
|
||||
|
||||
%.f08: $(top_srcdir)/../../sources/libkordersim/%.f08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,27 +0,0 @@
|
|||
mex_PROGRAMS = local_state_space_iteration_2 local_state_space_iteration_3 local_state_space_iteration_k
|
||||
|
||||
nodist_local_state_space_iteration_2_SOURCES = local_state_space_iteration_2.cc
|
||||
nodist_local_state_space_iteration_3_SOURCES = local_state_space_iteration_3.f08
|
||||
nodist_local_state_space_iteration_k_SOURCES = local_state_space_iteration_k.f08
|
||||
|
||||
local_state_space_iteration_2_CXXFLAGS = $(AM_CXXFLAGS) -fopenmp
|
||||
local_state_space_iteration_2_LDADD = $(OPENMP_LIBS)
|
||||
|
||||
local_state_space_iteration_3_FCFLAGS = $(AM_FCFLAGS) -I../libkordersim -pthread
|
||||
local_state_space_iteration_3_LDADD = ../libkordersim/libkordersim.a
|
||||
|
||||
local_state_space_iteration_k_FCFLAGS = $(AM_FCFLAGS) -I../libkordersim -pthread
|
||||
local_state_space_iteration_k_LDADD = ../libkordersim/libkordersim.a
|
||||
|
||||
BUILT_SOURCES = $(nodist_local_state_space_iteration_2_SOURCES) \
|
||||
$(nodist_local_state_space_iteration_3_SOURCES) \
|
||||
$(nodist_local_state_space_iteration_k_SOURCES)
|
||||
CLEANFILES = $(nodist_local_state_space_iteration_2_SOURCES) \
|
||||
$(nodist_local_state_space_iteration_3_SOURCES) \
|
||||
$(nodist_local_state_space_iteration_k_SOURCES)
|
||||
|
||||
%.f08: $(top_srcdir)/../../sources/local_state_space_iterations/%.f08
|
||||
$(LN_S) -f $< $@
|
||||
|
||||
%.cc: $(top_srcdir)/../../sources/local_state_space_iterations/%.cc
|
||||
$(LN_S) -f $< $@
|
|
@ -1,19 +0,0 @@
|
|||
mex_PROGRAMS = logarithmic_reduction
|
||||
|
||||
nodist_logarithmic_reduction_SOURCES = \
|
||||
matlab_mex.F08 \
|
||||
blas_lapack.F08 \
|
||||
mexFunction.f08
|
||||
|
||||
BUILT_SOURCES = $(nodist_logarithmic_reduction_SOURCES)
|
||||
CLEANFILES = $(nodist_logarithmic_reduction_SOURCES)
|
||||
|
||||
mexFunction.o: matlab_mex.mod blas.mod lapack.mod
|
||||
|
||||
mexFunction.mod: mexFunction.o
|
||||
|
||||
|
||||
%.f08: $(top_srcdir)/../../sources/logarithmic_reduction/%.f08
|
||||
$(LN_S) -f $< $@
|
||||
%.F08: $(top_srcdir)/../../sources/logarithmic_reduction/%.F08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,29 +0,0 @@
|
|||
ACLOCAL_AMFLAGS = -I ../../../m4
|
||||
|
||||
SUBDIRS = mjdgges kronecker bytecode sobol perfect_foresight_problem num_procs block_trust_region disclyap_fast libkordersim local_state_space_iterations folded_to_unfolded_dr k_order_simul k_order_mean cycle_reduction logarithmic_reduction riccati_update libkorder gensylv k_order_perturbation k_order_welfare
|
||||
|
||||
if ENABLE_MEX_MS_SBVAR
|
||||
SUBDIRS += ms_sbvar
|
||||
endif
|
||||
|
||||
if ENABLE_MEX_KALMAN_STEADY_STATE
|
||||
SUBDIRS += kalman_steady_state
|
||||
endif
|
||||
|
||||
if HAVE_M2HTML
|
||||
html-local:
|
||||
echo "addpath ${M2HTML}" > run_m2html.m
|
||||
echo "cd ../../.." >> run_m2html.m
|
||||
echo "m2html('mFiles', 'matlab', 'htmlDir', 'doc/m2html', 'recursive', 'on', 'globalHypertextLinks', 'on')" >> run_m2html.m
|
||||
echo "quit" >> run_m2html.m
|
||||
$(MATLAB)/bin/matlab -r run_m2html # Not using the -nodisplay option, because with m2html it confuses the terminal (need to do a "reset")
|
||||
|
||||
clean-local:
|
||||
rm -f run_m2html.m
|
||||
rm -rf ../../../doc/m2html
|
||||
endif
|
||||
|
||||
install-exec-local:
|
||||
$(MKDIR_P) $(DESTDIR)$(pkglibdir)/mex/matlab
|
||||
|
||||
EXTRA_DIST = mex.def mexFunction-MacOSX.map
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../block_trust_region.am
|
|
@ -1,4 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../bytecode.am
|
||||
|
||||
bytecode_LDADD = -lmwumfpack -lut
|
|
@ -1,156 +0,0 @@
|
|||
dnl Process this file with autoconf to produce a configure script.
|
||||
|
||||
dnl Copyright © 2009-2023 Dynare Team
|
||||
dnl
|
||||
dnl This file is part of Dynare.
|
||||
dnl
|
||||
dnl Dynare is free software: you can redistribute it and/or modify
|
||||
dnl it under the terms of the GNU General Public License as published by
|
||||
dnl the Free Software Foundation, either version 3 of the License, or
|
||||
dnl (at your option) any later version.
|
||||
dnl
|
||||
dnl Dynare is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with Dynare. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_PREREQ([2.62])
|
||||
AC_INIT([dynare], [6-unstable])
|
||||
AC_CONFIG_SRCDIR([configure.ac])
|
||||
AM_INIT_AUTOMAKE([-Wall -Wno-portability foreign])
|
||||
|
||||
dnl The following must occur before we modify CFLAGS/CXXFLAGS
|
||||
AC_CANONICAL_HOST
|
||||
|
||||
AX_MATLAB
|
||||
AX_MATLAB_VERSION
|
||||
AX_DOT_MEXEXT
|
||||
AX_MATLAB_ARCH
|
||||
AX_MEXOPTS
|
||||
|
||||
if test "$ax_enable_matlab" != yes -o "$ax_matlab_version_ok" != yes -o "$ax_mexopts_ok" != yes; then
|
||||
AC_MSG_ERROR([MATLAB cannot be found])
|
||||
fi
|
||||
|
||||
AX_COMPARE_VERSION([$MATLAB_VERSION], [lt], [8.3], [AC_MSG_ERROR([Your MATLAB is too old, please upgrade to version 8.3 (R2014a) at least (or disable MATLAB support with --disable-matlab).])])
|
||||
|
||||
case ${host_os} in
|
||||
*cygwin*)
|
||||
AC_MSG_WARN([You are compiling for the Cygwin target. This means that the MEX files will])
|
||||
AC_MSG_WARN([not run from MATLAB, because it cannot load the Cygwin DLL.])
|
||||
AC_MSG_WARN([This is probably not what you want. Consider using a MinGW cross-compiler.])
|
||||
;;
|
||||
esac
|
||||
|
||||
AC_PROG_FC
|
||||
AC_PROG_CC
|
||||
AC_PROG_CXX
|
||||
AC_PROG_RANLIB
|
||||
AX_PROG_LN_S
|
||||
AC_PROG_MKDIR_P
|
||||
AM_PROG_AR
|
||||
|
||||
# Get the size of a pthread_t instance, needed by pthread.F08
|
||||
AC_CHECK_SIZEOF([pthread_t], [], [#include <pthread.h>])
|
||||
|
||||
# Check for dlopen(), needed by k_order_perturbation DLL
|
||||
AC_CHECK_LIB([dl], [dlopen], [LIBADD_DLOPEN="-ldl"], [])
|
||||
AC_SUBST([LIBADD_DLOPEN])
|
||||
|
||||
# Define optional components and their corresponding flags and Automake conditionals
|
||||
AC_ARG_ENABLE([mex-ms-sbvar], AS_HELP_STRING([--disable-mex-ms-sbvar], [disable compilation of the MS-SBVAR MEX]), [], [enable_mex_ms_sbvar=yes])
|
||||
AM_CONDITIONAL([ENABLE_MEX_MS_SBVAR], [test "$enable_mex_ms_sbvar" = yes])
|
||||
|
||||
AC_ARG_ENABLE([mex-kalman-steady-state], AS_HELP_STRING([--disable-mex-kalman-steady-state], [disable compilation of the kalman_steady_state MEX]), [], [enable_mex_kalman_steady_state=yes])
|
||||
AM_CONDITIONAL([ENABLE_MEX_KALMAN_STEADY_STATE], [test "$enable_mex_kalman_steady_state" = yes])
|
||||
|
||||
# Check for GSL, needed by MS-SBVAR MEX
|
||||
if test "$enable_mex_ms_sbvar" = yes; then
|
||||
AX_GSL
|
||||
test "$has_gsl" != yes && AC_MSG_ERROR([GSL cannot be found. If you want to skip the compilation of the MS-SBVAR MEX, pass the --disable-mex-ms-sbvar flag.])
|
||||
fi
|
||||
|
||||
# Check for libslicot, needed by kalman_steady_state
|
||||
if test "$enable_mex_kalman_steady_state" = yes; then
|
||||
# FCFLAGS must be temporarily modified, because otherwise -fno-underscoring is not
|
||||
# taken into account by AC_FC_FUNC in the AX_SLICOT macro.
|
||||
# For some obscure reason, it is necessary to do it at this level and not within the macro.
|
||||
my_save_FCFLAGS=$FCFLAGS
|
||||
FCFLAGS="$FCFLAGS $MATLAB_FCFLAGS"
|
||||
AX_SLICOT([matlab])
|
||||
FCFLAGS=$my_save_FCFLAGS
|
||||
test "$has_slicot" != yes && AC_MSG_ERROR([slicot cannot be found. If you want to skip the compilation of the kalman_steady_state MEX, pass the --disable-mex-kalman-steady-state flag.])
|
||||
fi
|
||||
|
||||
# On Windows, we want static linking of the external libraries
|
||||
case ${host_os} in
|
||||
*mingw32*)
|
||||
GSL_LIBS="-Wl,-Bstatic $GSL_LIBS -Wl,-Bdynamic"
|
||||
LIBADD_SLICOT="-Wl,-Bstatic $LIBADD_SLICOT -Wl,-Bdynamic"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Support for M2HTML
|
||||
AC_ARG_WITH([m2html], AS_HELP_STRING([--with-m2html=DIR], [specify installation directory of M2HTML]), [
|
||||
M2HTML=$withval
|
||||
BUILD_M2HTML=yes
|
||||
], [
|
||||
M2HTML=
|
||||
BUILD_M2HTML=no
|
||||
])
|
||||
AC_SUBST([M2HTML])
|
||||
AM_CONDITIONAL([HAVE_M2HTML], [test "x$M2HTML" != "x"])
|
||||
|
||||
# Construct final output message
|
||||
if test "$enable_mex_kalman_steady_state" = yes; then
|
||||
BUILD_KALMAN_STEADY_STATE_MATLAB="yes"
|
||||
else
|
||||
BUILD_KALMAN_STEADY_STATE_MATLAB="no"
|
||||
fi
|
||||
|
||||
if test "$enable_mex_ms_sbvar" = yes; then
|
||||
BUILD_MS_SBVAR_MEX_MATLAB="yes"
|
||||
else
|
||||
BUILD_MS_SBVAR_MEX_MATLAB="no"
|
||||
fi
|
||||
|
||||
AC_MSG_NOTICE([
|
||||
|
||||
Dynare is now configured for building the following components...
|
||||
|
||||
Binaries (with "make"):
|
||||
MEX files for MATLAB (except those listed below): yes
|
||||
MS-SBVAR MEX files for MATLAB: $BUILD_MS_SBVAR_MEX_MATLAB
|
||||
Kalman Steady State MEX file for MATLAB: $BUILD_KALMAN_STEADY_STATE_MATLAB
|
||||
M2HTML documentation: $BUILD_M2HTML
|
||||
|
||||
])
|
||||
|
||||
AC_CONFIG_FILES([Makefile
|
||||
mjdgges/Makefile
|
||||
kronecker/Makefile
|
||||
bytecode/Makefile
|
||||
gensylv/Makefile
|
||||
libkorder/Makefile
|
||||
k_order_perturbation/Makefile
|
||||
k_order_welfare/Makefile
|
||||
kalman_steady_state/Makefile
|
||||
ms_sbvar/Makefile
|
||||
sobol/Makefile
|
||||
local_state_space_iterations/Makefile
|
||||
libkordersim/Makefile
|
||||
folded_to_unfolded_dr/Makefile
|
||||
k_order_simul/Makefile
|
||||
k_order_mean/Makefile
|
||||
perfect_foresight_problem/Makefile
|
||||
num_procs/Makefile
|
||||
block_trust_region/Makefile
|
||||
disclyap_fast/Makefile
|
||||
cycle_reduction/Makefile
|
||||
logarithmic_reduction/Makefile
|
||||
riccati_update/Makefile])
|
||||
|
||||
AC_OUTPUT
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../cycle_reduction.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../disclyap_fast.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../folded_to_unfolded_dr.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../gensylv.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../k_order_mean.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../k_order_perturbation.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../k_order_simul.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../k_order_welfare.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../kalman_steady_state.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../kronecker.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../libkorder.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../libkordersim.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../local_state_space_iterations.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../logarithmic_reduction.am
|
|
@ -1,51 +0,0 @@
|
|||
EXEEXT = $(MEXEXT)
|
||||
|
||||
AM_CPPFLAGS = $(MATLAB_CPPFLAGS)
|
||||
AM_CPPFLAGS += -I$(top_srcdir)/../../sources
|
||||
|
||||
DEFS += $(MATLAB_DEFS)
|
||||
DEFS += -DMATLAB_MEX_FILE
|
||||
DEFS += -DMEXEXT=\"$(MEXEXT)\"
|
||||
|
||||
AM_CFLAGS = $(MATLAB_CFLAGS) -Wall -Wno-parentheses # TODO: use same warnings as C++
|
||||
AM_FCFLAGS = $(MATLAB_FCFLAGS) -Wall -Wimplicit-interface
|
||||
AM_CXXFLAGS = -std=gnu++20 $(MATLAB_CXXFLAGS) -Wall -Wextra -Wold-style-cast
|
||||
AM_LDFLAGS = $(MATLAB_LDFLAGS)
|
||||
LIBS += $(MATLAB_LIBS)
|
||||
|
||||
mexdir = $(libdir)/dynare/mex/matlab
|
||||
|
||||
all-local: $(PROGRAMS)
|
||||
## Create symlinks in mex/matlab/, but only if the build is not
|
||||
## out-of-tree (because of the Windows installer)
|
||||
if [ "$(abs_srcdir)" = "$(abs_builddir)" ]; then \
|
||||
$(MKDIR_P) $(top_srcdir)/../../matlab && \
|
||||
cd $(top_srcdir)/../../matlab && \
|
||||
for p in $(PROGRAMS); do \
|
||||
$(LN_S) -f $(abs_builddir)/$$p $$p; \
|
||||
done; \
|
||||
fi
|
||||
|
||||
clean-local:
|
||||
rm -f *.mod # Fortran modules
|
||||
if test -d $(top_srcdir)/../../matlab; then \
|
||||
cd $(top_srcdir)/../../matlab && rm -f $(PROGRAMS); \
|
||||
fi
|
||||
|
||||
# Rules for the Fortran 2008 interface to MEX, BLAS/LAPACK and pthread functions
|
||||
matlab_mat.mod: matlab_mex.o
|
||||
matlab_mex.mod: matlab_mex.o
|
||||
|
||||
matlab_mex.F08: $(top_srcdir)/../../sources/matlab_mex.F08
|
||||
$(LN_S) -f $< $@
|
||||
|
||||
blas.mod: blas_lapack.o
|
||||
lapack.mod: blas_lapack.o
|
||||
|
||||
blas_lapack.F08: $(top_srcdir)/../../sources/blas_lapack.F08
|
||||
$(LN_S) -f $< $@
|
||||
|
||||
pthread.mod: pthread.o
|
||||
|
||||
pthread.F08: $(top_srcdir)/../../sources/pthread.F08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../mjdgges.am
|
|
@ -1,5 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../ms_sbvar.am
|
||||
|
||||
ms_sbvar_create_init_file_LDADD = -lut
|
||||
ms_sbvar_command_line_LDADD = -lut
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../num_procs.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../perfect_foresight_problem.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../riccati_update.am
|
|
@ -1,2 +0,0 @@
|
|||
include ../mex.am
|
||||
include ../../qmc_sequence.am
|
|
@ -1,11 +0,0 @@
|
|||
mex_PROGRAMS = mjdgges
|
||||
|
||||
nodist_mjdgges_SOURCES = mjdgges.F08 matlab_mex.F08 blas_lapack.F08
|
||||
|
||||
BUILT_SOURCES = $(nodist_mjdgges_SOURCES)
|
||||
CLEANFILES = $(nodist_mjdgges_SOURCES)
|
||||
|
||||
mjdgges.o : matlab_mex.mod lapack.mod
|
||||
|
||||
%.F08: $(top_srcdir)/../../sources/mjdgges/%.F08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,92 +0,0 @@
|
|||
mex_PROGRAMS = ms_sbvar_create_init_file ms_sbvar_command_line
|
||||
|
||||
DWSWITCHDIR = $(top_srcdir)/../../../contrib/ms-sbvar/switch_dw
|
||||
DWUTILITIESDIR = $(top_srcdir)/../../../contrib/ms-sbvar/utilities_dw
|
||||
|
||||
DYNMEXSRCDIR = $(top_srcdir)/../../sources
|
||||
MSMEXSRCDIR = $(DYNMEXSRCDIR)/ms-sbvar
|
||||
|
||||
AM_CPPFLAGS += $(GSL_CPPFLAGS) -DSTRUCTURED_COLUMN_MAJOR -I$(MSMEXSRCDIR) -I$(DWUTILITIESDIR)/include -I$(DWSWITCHDIR)/switching -I$(DWSWITCHDIR)/state_space -I$(DWSWITCHDIR)/state_space/sbvar
|
||||
|
||||
LIBS += $(GSL_LIBS)
|
||||
AM_LDFLAGS += $(GSL_LDFLAGS)
|
||||
|
||||
DWUTILS = \
|
||||
dw_array.c \
|
||||
dw_matrix_array.c \
|
||||
dw_ascii.c \
|
||||
dw_parse_cmd.c \
|
||||
dw_elliptical.c \
|
||||
dw_error.c \
|
||||
dw_histogram.c \
|
||||
dw_math.c \
|
||||
dw_matrix.c \
|
||||
bmatrix.c \
|
||||
dw_matrix_sort.c \
|
||||
dw_rand_gsl.c \
|
||||
dw_matrix_rand.c
|
||||
|
||||
MSMEXSRC = \
|
||||
mex_top_level.cc \
|
||||
modify_for_mex.cc
|
||||
|
||||
nodist_ms_sbvar_create_init_file_SOURCES = \
|
||||
dw_switch.c \
|
||||
dw_switchio.c \
|
||||
dw_dirichlet_restrictions.c \
|
||||
dw_metropolis_theta.c \
|
||||
create_init_file.c \
|
||||
VARbase.c \
|
||||
VARio.c \
|
||||
VARio_matlab.c \
|
||||
$(DWUTILS) \
|
||||
$(MSMEXSRC)
|
||||
|
||||
nodist_ms_sbvar_command_line_SOURCES = \
|
||||
dw_switch.c \
|
||||
dw_switchio.c \
|
||||
dw_dirichlet_restrictions.c \
|
||||
dw_metropolis_theta.c \
|
||||
dw_switch_opt.c \
|
||||
dw_mdd_switch.c \
|
||||
VARbase.c \
|
||||
VARio.c \
|
||||
dw_sbvar_command_line.c \
|
||||
sbvar_estimate.c \
|
||||
sbvar_simulate.c \
|
||||
sbvar_probabilities.c \
|
||||
sbvar_mdd.c \
|
||||
sbvar_forecast.c \
|
||||
sbvar_variance_decomposition.c \
|
||||
sbvar_impulse_responses.c \
|
||||
dw_csminwel.c \
|
||||
$(DWUTILS) \
|
||||
$(MSMEXSRC)
|
||||
|
||||
BUILT_SOURCES = $(nodist_ms_sbvar_create_init_file_SOURCES) $(nodist_ms_sbvar_command_line_SOURCES)
|
||||
CLEANFILES = $(nodist_ms_sbvar_create_init_file_SOURCES) $(nodist_ms_sbvar_command_line_SOURCES)
|
||||
|
||||
dw_array.c dw_matrix_array.c: %.c: $(DWUTILITIESDIR)/arrays/%.c
|
||||
$(LN_S) -f $< $@
|
||||
dw_ascii.c dw_parse_cmd.c: %.c: $(DWUTILITIESDIR)/ascii/%.c
|
||||
$(LN_S) -f $< $@
|
||||
dw_elliptical.c: %.c: $(DWUTILITIESDIR)/elliptical/%.c
|
||||
$(LN_S) -f $< $@
|
||||
dw_error.c: %.c: $(DWUTILITIESDIR)/error/%.c
|
||||
$(LN_S) -f $< $@
|
||||
dw_histogram.c: %.c: $(DWUTILITIESDIR)/histogram/%.c
|
||||
$(LN_S) -f $< $@
|
||||
dw_math.c: %.c: $(DWUTILITIESDIR)/math/%.c
|
||||
$(LN_S) -f $< $@
|
||||
dw_matrix.c bmatrix.c: %.c: $(DWUTILITIESDIR)/matrix/%.c
|
||||
$(LN_S) -f $< $@
|
||||
dw_matrix_sort.c: %.c: $(DWUTILITIESDIR)/sort/%.c
|
||||
$(LN_S) -f $< $@
|
||||
dw_rand_gsl.c dw_matrix_rand.c: %.c: $(DWUTILITIESDIR)/stat/%.c
|
||||
$(LN_S) -f $< $@
|
||||
$(MSMEXSRC): %.cc: $(MSMEXSRCDIR)/%.cc
|
||||
$(LN_S) -f $< $@
|
||||
dw_switch.c dw_switchio.c dw_dirichlet_restrictions.c dw_metropolis_theta.c dw_switch_opt.c dw_mdd_switch.c: %.c: $(DWSWITCHDIR)/switching/%.c
|
||||
$(LN_S) -f $< $@
|
||||
create_init_file.c VARbase.c VARio.c VARio_matlab.c dw_sbvar_command_line.c sbvar_estimate.c sbvar_simulate.c sbvar_probabilities.c sbvar_mdd.c sbvar_forecast.c sbvar_variance_decomposition.c sbvar_impulse_responses.c dw_csminwel.c: %.c: $(DWSWITCHDIR)/state_space/sbvar/%.c
|
||||
$(LN_S) -f $< $@
|
|
@ -1,9 +0,0 @@
|
|||
mex_PROGRAMS = num_procs
|
||||
|
||||
nodist_num_procs_SOURCES = num_procs.cc
|
||||
|
||||
BUILT_SOURCES = $(nodist_num_procs_SOURCES)
|
||||
CLEANFILES = $(nodist_num_procs_SOURCES)
|
||||
|
||||
%.cc: $(top_srcdir)/../../sources/num_procs/%.cc
|
||||
$(LN_S) -f $< $@
|
|
@ -1,14 +0,0 @@
|
|||
ACLOCAL_AMFLAGS = -I ../../../m4
|
||||
|
||||
SUBDIRS = mjdgges kronecker bytecode sobol perfect_foresight_problem num_procs block_trust_region disclyap_fast libkordersim local_state_space_iterations folded_to_unfolded_dr k_order_simul k_order_mean cycle_reduction logarithmic_reduction riccati_update libkorder gensylv k_order_perturbation k_order_welfare
|
||||
|
||||
if ENABLE_MEX_MS_SBVAR
|
||||
SUBDIRS += ms_sbvar
|
||||
endif
|
||||
|
||||
if ENABLE_MEX_KALMAN_STEADY_STATE
|
||||
SUBDIRS += kalman_steady_state
|
||||
endif
|
||||
|
||||
install-exec-local:
|
||||
$(MKDIR_P) $(DESTDIR)$(pkglibdir)/mex/octave
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../block_trust_region.am
|
|
@ -1,5 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../bytecode.am
|
||||
|
||||
bytecode_LDADD = $(LIBADD_UMFPACK)
|
|
@ -1,174 +0,0 @@
|
|||
dnl Process this file with autoconf to produce a configure script.
|
||||
|
||||
dnl Copyright © 2009-2023 Dynare Team
|
||||
dnl
|
||||
dnl This file is part of Dynare.
|
||||
dnl
|
||||
dnl Dynare is free software: you can redistribute it and/or modify
|
||||
dnl it under the terms of the GNU General Public License as published by
|
||||
dnl the Free Software Foundation, either version 3 of the License, or
|
||||
dnl (at your option) any later version.
|
||||
dnl
|
||||
dnl Dynare is distributed in the hope that it will be useful,
|
||||
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
dnl GNU General Public License for more details.
|
||||
dnl
|
||||
dnl You should have received a copy of the GNU General Public License
|
||||
dnl along with Dynare. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
AC_PREREQ([2.62])
|
||||
AC_INIT([dynare], [6-unstable])
|
||||
AC_CONFIG_SRCDIR([configure.ac])
|
||||
AM_INIT_AUTOMAKE([-Wall -Wno-portability foreign])
|
||||
|
||||
AX_OCTAVE
|
||||
|
||||
test "$ax_enable_octave" != yes && AC_MSG_ERROR([Octave cannot be found])
|
||||
|
||||
# Let mkoctfile set the default compilers and flags (except for FC and FCFLAGS which are not supported)
|
||||
# NB: mkoctfile honors overrides via environment variables
|
||||
CC=$($MKOCTFILE -p CC)
|
||||
CXX=$($MKOCTFILE -p CXX)
|
||||
AR=$($MKOCTFILE -p AR)
|
||||
RANLIB=$($MKOCTFILE -p RANLIB)
|
||||
CPPFLAGS="$($MKOCTFILE -p CPPFLAGS) $($MKOCTFILE -p INCFLAGS)"
|
||||
CFLAGS=$($MKOCTFILE -p CFLAGS)
|
||||
CXXFLAGS=$($MKOCTFILE -p CXXFLAGS)
|
||||
# The --link-stand-alone is needed since Octave 7 to avoid inserting -shared, which
|
||||
# is undesirable for generic LDFLAGS.
|
||||
LDFLAGS=$($MKOCTFILE --link-stand-alone -p LDFLAGS)
|
||||
|
||||
FORTRAN_LIBS_FOR_CXXLINK="-lgfortran -lquadmath"
|
||||
AC_SUBST([FORTRAN_LIBS_FOR_CXXLINK])
|
||||
|
||||
AC_CANONICAL_HOST
|
||||
|
||||
OCTAVE_VERSION=$($MKOCTFILE -v 2>&1 | sed 's/mkoctfile, version //')
|
||||
AX_COMPARE_VERSION([$OCTAVE_VERSION], [lt], [6.2.0], [AC_MSG_ERROR([Your Octave is too old, please upgrade to version 6.2.0 at least (or disable Octave support with --disable-octave).])])
|
||||
|
||||
AC_PROG_FC
|
||||
AC_PROG_CC
|
||||
AC_PROG_CXX
|
||||
AC_PROG_RANLIB
|
||||
AX_PROG_LN_S
|
||||
AC_PROG_MKDIR_P
|
||||
AM_PROG_AR
|
||||
|
||||
# Get the size of a pthread_t instance, needed by pthread.F08
|
||||
AC_CHECK_SIZEOF([pthread_t], [], [#include <pthread.h>])
|
||||
|
||||
# Check for dlopen(), needed by k_order_perturbation DLL
|
||||
AC_CHECK_LIB([dl], [dlopen], [LIBADD_DLOPEN="-ldl"], [])
|
||||
AC_SUBST([LIBADD_DLOPEN])
|
||||
|
||||
# Define optional components and their corresponding flags and Automake conditionals
|
||||
AC_ARG_ENABLE([mex-ms-sbvar], AS_HELP_STRING([--disable-mex-ms-sbvar], [disable compilation of the MS-SBVAR MEX]), [], [enable_mex_ms_sbvar=yes])
|
||||
AM_CONDITIONAL([ENABLE_MEX_MS_SBVAR], [test "$enable_mex_ms_sbvar" = yes])
|
||||
|
||||
AC_ARG_ENABLE([mex-kalman-steady-state], AS_HELP_STRING([--disable-mex-kalman-steady-state], [disable compilation of the kalman_steady_state MEX]), [], [enable_mex_kalman_steady_state=yes])
|
||||
AM_CONDITIONAL([ENABLE_MEX_KALMAN_STEADY_STATE], [test "$enable_mex_kalman_steady_state" = yes])
|
||||
|
||||
# Check for GSL, needed by MS-SBVAR
|
||||
if test "$enable_mex_ms_sbvar" = yes; then
|
||||
AX_GSL
|
||||
test "$has_gsl" != yes && AC_MSG_ERROR([GSL cannot be found. If you want to skip the compilation of the MS-SBVAR MEX, pass the --disable-mex-ms-sbvar flag.])
|
||||
fi
|
||||
|
||||
# Check for libmatio, needed by ms-sbvar (the latter only under Octave, as an alternative to MATLAB's libmat)
|
||||
if test "$enable_mex_ms_sbvar" = yes; then
|
||||
AX_MATIO
|
||||
test "$has_matio" != yes && AC_MSG_ERROR([libmatio cannot be found. If you want to skip the compilation of MS-SBVAR, pass the --disable-mex-ms-sbvar flags.])
|
||||
fi
|
||||
|
||||
# Check for libslicot, needed by kalman_steady_state
|
||||
if test "$enable_mex_kalman_steady_state" = yes; then
|
||||
AX_SLICOT([octave])
|
||||
test "$has_slicot" != yes && AC_MSG_ERROR([slicot cannot be found. If you want to skip the compilation of the kalman_steady_state MEX, pass the --disable-mex-kalman-steady-state flag.])
|
||||
fi
|
||||
|
||||
# Check for UMFPACK, needed by bytecode
|
||||
AC_CHECK_HEADERS([suitesparse/umfpack.h umfpack.h], [have_umfpack_h=yes])
|
||||
if test "$have_umfpack_h" != yes; then
|
||||
AC_MSG_ERROR([Can't find umfpack.h])
|
||||
fi
|
||||
AC_CHECK_LIB([umfpack], [umfpack_dl_defaults], [LIBADD_UMFPACK="-lumfpack"], [AC_MSG_ERROR([Can't find UMFPACK])])
|
||||
AC_SUBST([LIBADD_UMFPACK])
|
||||
|
||||
# On Windows, we want static linking of the external libraries
|
||||
case ${host_os} in
|
||||
*mingw32*)
|
||||
GSL_LIBS="-Wl,-Bstatic $GSL_LIBS -Wl,-Bdynamic"
|
||||
LIBADD_MATIO="-Wl,-Bstatic $LIBADD_MATIO -Wl,-Bdynamic"
|
||||
LIBADD_SLICOT="-Wl,-Bstatic $LIBADD_SLICOT -Wl,-Bdynamic"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Determine whether to link MEX files against the Octave libraries.
|
||||
# mkoctfile no longer does this by default but in practice it is needed
|
||||
# for Windows and macOS.
|
||||
case ${host_os} in
|
||||
*mingw32*)
|
||||
# This is hardcoded in src/mkoctfile.cc.in.
|
||||
link_octave_libs=yes
|
||||
;;
|
||||
*darwin*)
|
||||
# Under macOS, the Homebrew formula passes --enable-link-all-dependencies
|
||||
# to the configure script.
|
||||
link_octave_libs=yes
|
||||
;;
|
||||
*)
|
||||
link_octave_libs=no
|
||||
;;
|
||||
esac
|
||||
AM_CONDITIONAL([LINK_OCTAVE_LIBS], [test ${link_octave_libs} = yes])
|
||||
|
||||
# Construct final output message
|
||||
if test "$enable_mex_kalman_steady_state" = yes; then
|
||||
BUILD_KALMAN_STEADY_STATE_OCTAVE="yes"
|
||||
else
|
||||
BUILD_KALMAN_STEADY_STATE_OCTAVE="no"
|
||||
fi
|
||||
|
||||
if test "$enable_mex_ms_sbvar" = yes; then
|
||||
BUILD_MS_SBVAR_MEX_OCTAVE="yes"
|
||||
else
|
||||
BUILD_MS_SBVAR_MEX_OCTAVE="no"
|
||||
fi
|
||||
|
||||
AC_MSG_NOTICE([
|
||||
|
||||
Dynare is now configured for building the following components...
|
||||
|
||||
Binaries (with "make"):
|
||||
MEX files for Octave (except those listed below): yes
|
||||
MS-SBVAR MEX files for Octave: $BUILD_MS_SBVAR_MEX_OCTAVE
|
||||
Kalman Steady State MEX file for Octave: $BUILD_KALMAN_STEADY_STATE_OCTAVE
|
||||
|
||||
])
|
||||
|
||||
AC_CONFIG_FILES([Makefile
|
||||
mjdgges/Makefile
|
||||
kronecker/Makefile
|
||||
bytecode/Makefile
|
||||
gensylv/Makefile
|
||||
libkorder/Makefile
|
||||
k_order_perturbation/Makefile
|
||||
k_order_welfare/Makefile
|
||||
kalman_steady_state/Makefile
|
||||
ms_sbvar/Makefile
|
||||
sobol/Makefile
|
||||
local_state_space_iterations/Makefile
|
||||
libkordersim/Makefile
|
||||
folded_to_unfolded_dr/Makefile
|
||||
k_order_simul/Makefile
|
||||
k_order_mean/Makefile
|
||||
perfect_foresight_problem/Makefile
|
||||
num_procs/Makefile
|
||||
block_trust_region/Makefile
|
||||
disclyap_fast/Makefile
|
||||
cycle_reduction/Makefile
|
||||
logarithmic_reduction/Makefile
|
||||
riccati_update/Makefile])
|
||||
|
||||
AC_OUTPUT
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../cycle_reduction.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../disclyap_fast.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../folded_to_unfolded_dr.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../gensylv.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../k_order_mean.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../k_order_perturbation.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../k_order_simul.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../k_order_welfare.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../kalman_steady_state.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../kronecker.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../libkorder.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../libkordersim.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../local_state_space_iterations.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../logarithmic_reduction.am
|
|
@ -1,57 +0,0 @@
|
|||
AM_CPPFLAGS = -I$(top_srcdir)/../../sources
|
||||
|
||||
DEFS += -DOCTAVE_MEX_FILE
|
||||
DEFS += -DMEXEXT=\".mex\"
|
||||
|
||||
AM_CFLAGS = $(shell $(MKOCTFILE) -p CPICFLAG) -Wall -Wno-parentheses # TODO: use same warnings as C++
|
||||
AM_FCFLAGS = $(shell $(MKOCTFILE) -p FPICFLAG) -Wall -Wimplicit-interface
|
||||
AM_CXXFLAGS = -std=gnu++20 $(shell $(MKOCTFILE) -p CXXPICFLAG) -Wall -Wextra -Wold-style-cast
|
||||
AM_LDFLAGS = $(shell $(MKOCTFILE) -p DL_LDFLAGS)
|
||||
|
||||
# See the comments in configure.ac
|
||||
if LINK_OCTAVE_LIBS
|
||||
AM_LDFLAGS += -L"$(shell $(MKOCTFILE) -p OCTLIBDIR)"
|
||||
LIBS += $(shell $(MKOCTFILE) -p OCTAVE_LIBS)
|
||||
endif
|
||||
|
||||
# Unconditionally link against BLAS/LAPACK, since we tend to use them in
|
||||
# many MEX files
|
||||
LIBS += $(shell $(MKOCTFILE) -p BLAS_LIBS)
|
||||
LIBS += $(shell $(MKOCTFILE) -p LAPACK_LIBS)
|
||||
|
||||
mexdir = $(libdir)/dynare/mex/octave
|
||||
|
||||
all-local: $(PROGRAMS)
|
||||
## Create symlinks in mex/octave/, but only if the build is not
|
||||
## out-of-tree (because of the Windows installer)
|
||||
if [ "$(abs_srcdir)" = "$(abs_builddir)" ]; then \
|
||||
$(MKDIR_P) $(top_srcdir)/../../octave && \
|
||||
cd $(top_srcdir)/../../octave && \
|
||||
for p in $(PROGRAMS); do \
|
||||
$(LN_S) -f $(abs_builddir)/$$p $$p; \
|
||||
done; \
|
||||
fi
|
||||
|
||||
clean-local:
|
||||
rm -f *.mod # Fortran modules
|
||||
if test -d $(top_srcdir)/../../octave; then \
|
||||
cd $(top_srcdir)/../../octave && rm -f $(PROGRAMS); \
|
||||
fi
|
||||
|
||||
# Rules for the Fortran 2008 interface to MEX, BLAS/LAPACK and pthread functions
|
||||
matlab_mat.mod: matlab_mex.o
|
||||
matlab_mex.mod: matlab_mex.o
|
||||
|
||||
matlab_mex.F08: $(top_srcdir)/../../sources/matlab_mex.F08
|
||||
$(LN_S) -f $< $@
|
||||
|
||||
blas.mod: blas_lapack.o
|
||||
lapack.mod: blas_lapack.o
|
||||
|
||||
blas_lapack.F08: $(top_srcdir)/../../sources/blas_lapack.F08
|
||||
$(LN_S) -f $< $@
|
||||
|
||||
pthread.mod: pthread.o
|
||||
|
||||
pthread.F08: $(top_srcdir)/../../sources/pthread.F08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../mjdgges.am
|
|
@ -1,12 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../ms_sbvar.am
|
||||
|
||||
ms_sbvar_command_line_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MATIO)
|
||||
ms_sbvar_create_init_file_CPPFLAGS = $(AM_CPPFLAGS) $(CPPFLAGS_MATIO)
|
||||
|
||||
ms_sbvar_command_line_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MATIO)
|
||||
ms_sbvar_create_init_file_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MATIO)
|
||||
|
||||
ms_sbvar_command_line_LDADD = $(LIBADD_MATIO)
|
||||
ms_sbvar_create_init_file_LDADD = $(LIBADD_MATIO)
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../num_procs.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../perfect_foresight_problem.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../riccati_update.am
|
|
@ -1,3 +0,0 @@
|
|||
EXEEXT = .mex
|
||||
include ../mex.am
|
||||
include ../../qmc_sequence.am
|
|
@ -1,15 +0,0 @@
|
|||
mex_PROGRAMS = perfect_foresight_problem
|
||||
|
||||
TOPDIR = $(top_srcdir)/../../sources/perfect_foresight_problem
|
||||
|
||||
nodist_perfect_foresight_problem_SOURCES = perfect_foresight_problem.cc DynamicModelCaller.cc
|
||||
|
||||
perfect_foresight_problem_CPPFLAGS = $(AM_CPPFLAGS) -I$(TOPDIR)
|
||||
perfect_foresight_problem_CXXFLAGS = $(AM_CXXFLAGS) -fopenmp
|
||||
perfect_foresight_problem_LDADD = $(LIBADD_DLOPEN) $(OPENMP_LIBS)
|
||||
|
||||
BUILT_SOURCES = $(nodist_perfect_foresight_problem_SOURCES)
|
||||
CLEANFILES = $(nodist_perfect_foresight_problem_SOURCES)
|
||||
|
||||
%.cc: $(TOPDIR)/%.cc
|
||||
$(LN_S) -f $< $@
|
|
@ -1,18 +0,0 @@
|
|||
mex_PROGRAMS = qmc_sequence
|
||||
|
||||
TOPDIR = $(top_srcdir)/../../sources/sobol
|
||||
|
||||
qmc_sequence_CPPFLAGS = $(AM_CPPFLAGS) -I$(TOPDIR)
|
||||
qmc_sequence_CXXFLAGS = $(AM_CXXFLAGS) -fopenmp
|
||||
qmc_sequence_LDADD = $(OPENMP_LIBS) $(FORTRAN_LIBS_FOR_CXXLINK)
|
||||
|
||||
nodist_qmc_sequence_SOURCES = qmc_sequence.cc sobol.f08
|
||||
|
||||
BUILT_SOURCES = $(nodist_qmc_sequence_SOURCES)
|
||||
CLEANFILES = $(nodist_qmc_sequence_SOURCES)
|
||||
|
||||
%.cc: $(TOPDIR)/%.cc
|
||||
$(LN_S) -f $< $@
|
||||
|
||||
%.f08: $(TOPDIR)/%.f08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,18 +0,0 @@
|
|||
mex_PROGRAMS = riccati_update
|
||||
|
||||
nodist_riccati_update_SOURCES = \
|
||||
matlab_mex.F08 \
|
||||
blas_lapack.F08 \
|
||||
mexFunction.f08
|
||||
|
||||
BUILT_SOURCES = $(nodist_riccati_update_SOURCES)
|
||||
CLEANFILES = $(nodist_riccati_update_SOURCES)
|
||||
|
||||
mexFunction.o: matlab_mex.mod blas.mod lapack.mod
|
||||
|
||||
mexFunction.mod: mexFunction.o
|
||||
|
||||
%.f08: $(top_srcdir)/../../sources/riccati_update/%.f08
|
||||
$(LN_S) -f $< $@
|
||||
%.F08: $(top_srcdir)/../../sources/riccati_update/%.F08
|
||||
$(LN_S) -f $< $@
|
|
@ -1,36 +0,0 @@
|
|||
EXTRA_DIST = \
|
||||
dynblas.h \
|
||||
dynlapack.h \
|
||||
dynumfpack.h \
|
||||
dynmex.h \
|
||||
blas_lapack.F08 \
|
||||
defines.F08 \
|
||||
matlab_mex.F08 \
|
||||
pthread.F08 \
|
||||
mjdgges \
|
||||
kronecker \
|
||||
bytecode \
|
||||
k_order_perturbation \
|
||||
k_order_welfare \
|
||||
kalman_steady_state \
|
||||
ms-sbvar \
|
||||
sobol \
|
||||
local_state_space_iterations \
|
||||
libkordersim \
|
||||
folded_to_unfolded_dr \
|
||||
k_order_simul \
|
||||
k_order_mean \
|
||||
gensylv \
|
||||
perfect_foresight_problem \
|
||||
num_procs \
|
||||
block_trust_region \
|
||||
disclyap_fast \
|
||||
cycle_reduction \
|
||||
logarithmic_reduction \
|
||||
riccati_update
|
||||
|
||||
clean-local:
|
||||
rm -rf `find mex/sources -name *.o`
|
||||
|
||||
dist-hook:
|
||||
rm -rf `find $(distdir)/mex/sources -name *.o -or -name *~`
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue