52 lines
1.4 KiB
Plaintext
52 lines
1.4 KiB
Plaintext
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 -Wno-dangling-else -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 $< $@
|