Make MEX build system forward-compatible with Automake 2.0

We now use a symbolic link farm to make source file accessible from build
directories.

Closes #466
time-shift
Sébastien Villemot 2019-04-05 16:53:59 +02:00
parent 26f0fb1104
commit bdc95f23aa
No known key found for this signature in database
GPG Key ID: 2CECE9350ECEBE4A
13 changed files with 246 additions and 201 deletions

6
.gitignore vendored
View File

@ -88,6 +88,12 @@ doc/internals/ltxpng
/mex/matlab/ /mex/matlab/
/mex/octave/ /mex/octave/
# Symbolic links created for building MEX files
/mex/build/matlab/*/*.c
/mex/build/matlab/*/*.cc
/mex/build/octave/*/*.c
/mex/build/octave/*/*.cc
# Dynare++ # Dynare++
/dynare++/integ/src/quadrature-points.dSYM/ /dynare++/integ/src/quadrature-points.dSYM/
/dynare++/src/dynare++.dSYM/ /dynare++/src/dynare++.dSYM/

View File

@ -1,3 +1,13 @@
mex_PROGRAMS = block_kalman_filter mex_PROGRAMS = block_kalman_filter
nodist_block_kalman_filter_SOURCES = $(top_srcdir)/../../sources/block_kalman_filter/block_kalman_filter.cc TOPDIR = $(top_srcdir)/../../sources/block_kalman_filter
block_kalman_filter_CPPFLAGS = $(AM_CPPFLAGS) -I$(TOPDIR)
nodist_block_kalman_filter_SOURCES = block_kalman_filter.cc
BUILT_SOURCES = $(nodist_block_kalman_filter_SOURCES)
CLEANFILES = $(nodist_block_kalman_filter_SOURCES)
%.cc: $(TOPDIR)/%.cc
$(LN_S) -f $< $@

View File

@ -1,18 +1,18 @@
mex_PROGRAMS = bytecode mex_PROGRAMS = bytecode
bytecode_CPPFLAGS = -Wno-maybe-uninitialized $(AM_CPPFLAGS) -I$(top_srcdir)/../../sources -I$(top_srcdir)/../../sources/bytecode -I$(top_srcdir)/../../../preprocessor/src
TOPDIR = $(top_srcdir)/../../sources/bytecode TOPDIR = $(top_srcdir)/../../sources/bytecode
nodist_bytecode_SOURCES = \ bytecode_CPPFLAGS = -Wno-maybe-uninitialized $(AM_CPPFLAGS) -I$(TOPDIR) -I$(top_srcdir)/../../../preprocessor/src
$(TOPDIR)/bytecode.cc \
$(TOPDIR)/Interpreter.cc \
$(TOPDIR)/Mem_Mngr.cc \
$(TOPDIR)/SparseMatrix.cc \
$(TOPDIR)/Evaluate.cc \
$(TOPDIR)/Interpreter.hh \
$(TOPDIR)/Mem_Mngr.hh \
$(TOPDIR)/SparseMatrix.hh \
$(TOPDIR)/Evaluate.hh \
$(TOPDIR)/ErrorHandling.hh
nodist_bytecode_SOURCES = \
bytecode.cc \
Interpreter.cc \
Mem_Mngr.cc \
SparseMatrix.cc \
Evaluate.cc
BUILT_SOURCES = $(nodist_bytecode_SOURCES)
CLEANFILES = $(nodist_bytecode_SOURCES)
%.cc: $(TOPDIR)/%.cc
$(LN_S) -f $< $@

View File

@ -1,10 +1,16 @@
mex_PROGRAMS = dynare_simul_ mex_PROGRAMS = dynare_simul_
dynare_simul__CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/../../../dynare++/sylv/cc -I$(top_srcdir)/../../../dynare++/tl/cc -I$(top_srcdir)/../../../dynare++/kord -I$(top_srcdir)/../../../dynare++/utils/cc -I$(top_srcdir)/../../sources $(CPPFLAGS_MATIO) dynare_simul__CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/../../../dynare++/sylv/cc -I$(top_srcdir)/../../../dynare++/tl/cc -I$(top_srcdir)/../../../dynare++/kord -I$(top_srcdir)/../../../dynare++/utils/cc $(CPPFLAGS_MATIO)
dynare_simul__CXXFLAGS = $(AM_CXXFLAGS) $(THREAD_CXXFLAGS) dynare_simul__CXXFLAGS = $(AM_CXXFLAGS) $(THREAD_CXXFLAGS)
dynare_simul__LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MATIO) dynare_simul__LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MATIO)
dynare_simul__LDADD = ../libdynare++/libdynare++.a $(LIBADD_MATIO) dynare_simul__LDADD = ../libdynare++/libdynare++.a $(LIBADD_MATIO)
nodist_dynare_simul__SOURCES = $(top_srcdir)/../../../dynare++/extern/matlab/dynare_simul.cc nodist_dynare_simul__SOURCES = dynare_simul.cc
BUILT_SOURCES = $(nodist_dynare_simul__SOURCES)
CLEANFILES = $(nodist_dynare_simul__SOURCES)
%.cc: $(top_srcdir)/../../../dynare++/extern/matlab/%.cc
$(LN_S) -f $< $@

View File

@ -1,7 +1,13 @@
mex_PROGRAMS = gensylv mex_PROGRAMS = gensylv
gensylv_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/../../../dynare++/sylv/cc -I$(top_srcdir)/../../../dynare++/utils/cc -I$(top_srcdir)/../../sources gensylv_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/../../../dynare++/sylv/cc -I$(top_srcdir)/../../../dynare++/utils/cc
gensylv_LDADD = ../libdynare++/libdynare++.a gensylv_LDADD = ../libdynare++/libdynare++.a
nodist_gensylv_SOURCES = $(top_srcdir)/../../../dynare++/sylv/matlab/gensylv.cc nodist_gensylv_SOURCES = gensylv.cc
BUILT_SOURCES = $(nodist_gensylv_SOURCES)
CLEANFILES = $(nodist_gensylv_SOURCES)
%.cc: $(top_srcdir)/../../../dynare++/sylv/matlab/%.cc
$(LN_S) -f $< $@

View File

@ -1,20 +1,22 @@
mex_PROGRAMS = k_order_perturbation mex_PROGRAMS = k_order_perturbation
k_order_perturbation_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/../../../dynare++/src -I$(top_srcdir)/../../../dynare++/kord -I$(top_srcdir)/../../../dynare++/tl/cc -I$(top_srcdir)/../../../dynare++/utils/cc -I$(top_srcdir)/../../../dynare++/sylv/cc -I$(top_srcdir)/../../../dynare++/integ/cc -I$(top_srcdir)/../../sources $(CPPFLAGS_MATIO) TOPDIR = $(top_srcdir)/../../sources/k_order_perturbation
k_order_perturbation_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/../../../dynare++/src -I$(top_srcdir)/../../../dynare++/kord -I$(top_srcdir)/../../../dynare++/tl/cc -I$(top_srcdir)/../../../dynare++/utils/cc -I$(top_srcdir)/../../../dynare++/sylv/cc -I$(top_srcdir)/../../../dynare++/integ/cc -I$(TOPDIR) $(CPPFLAGS_MATIO)
k_order_perturbation_CXXFLAGS = $(AM_CXXFLAGS) $(THREAD_CXXFLAGS) k_order_perturbation_CXXFLAGS = $(AM_CXXFLAGS) $(THREAD_CXXFLAGS)
k_order_perturbation_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MATIO) k_order_perturbation_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_MATIO)
k_order_perturbation_LDADD = ../libdynare++/libdynare++.a $(LIBADD_DLOPEN) $(LIBADD_MATIO) k_order_perturbation_LDADD = ../libdynare++/libdynare++.a $(LIBADD_DLOPEN) $(LIBADD_MATIO)
TOPDIR = $(top_srcdir)/../../sources/k_order_perturbation
nodist_k_order_perturbation_SOURCES = \ nodist_k_order_perturbation_SOURCES = \
$(TOPDIR)/k_order_perturbation.cc \ k_order_perturbation.cc \
$(TOPDIR)/k_ord_dynare.cc \ k_ord_dynare.cc \
$(TOPDIR)/k_ord_dynare.hh \ dynamic_dll.cc \
$(TOPDIR)/dynamic_dll.cc \ dynamic_m.cc
$(TOPDIR)/dynamic_dll.hh \
$(TOPDIR)/dynamic_abstract_class.hh \ BUILT_SOURCES = $(nodist_k_order_perturbation_SOURCES)
$(TOPDIR)/dynamic_m.cc \ CLEANFILES = $(nodist_k_order_perturbation_SOURCES)
$(TOPDIR)/dynamic_m.hh
%.cc: $(TOPDIR)/%.cc
$(LN_S) -f $< $@

View File

@ -3,4 +3,10 @@ mex_PROGRAMS = kalman_steady_state
kalman_steady_state_LDADD = $(LIBADD_SLICOT) kalman_steady_state_LDADD = $(LIBADD_SLICOT)
kalman_steady_state_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_SLICOT) kalman_steady_state_LDFLAGS = $(AM_LDFLAGS) $(LDFLAGS_SLICOT)
nodist_kalman_steady_state_SOURCES = $(top_srcdir)/../../sources/kalman_steady_state/kalman_steady_state.cc 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 $< $@

View File

@ -1,4 +1,10 @@
mex_PROGRAMS = sparse_hessian_times_B_kronecker_C A_times_B_kronecker_C mex_PROGRAMS = sparse_hessian_times_B_kronecker_C A_times_B_kronecker_C
nodist_sparse_hessian_times_B_kronecker_C_SOURCES = $(top_srcdir)/../../sources/kronecker/sparse_hessian_times_B_kronecker_C.cc nodist_sparse_hessian_times_B_kronecker_C_SOURCES = sparse_hessian_times_B_kronecker_C.cc
nodist_A_times_B_kronecker_C_SOURCES = $(top_srcdir)/../../sources/kronecker/A_times_B_kronecker_C.cc nodist_A_times_B_kronecker_C_SOURCES = A_times_B_kronecker_C.cc
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 $< $@

View File

@ -1,137 +1,79 @@
noinst_LIBRARIES = libdynare++.a noinst_LIBRARIES = libdynare++.a
libdynare___a_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/../../../dynare++/src -I$(top_srcdir)/../../../dynare++/kord -I$(top_srcdir)/../../../dynare++/tl/cc -I$(top_srcdir)/../../../dynare++/utils/cc -I$(top_srcdir)/../../../dynare++/sylv/cc -I$(top_srcdir)/../../../dynare++/integ/cc -I$(top_srcdir)/../../sources $(CPPFLAGS_MATIO)
libdynare___a_CXXFLAGS = $(AM_CXXFLAGS) $(THREAD_CXXFLAGS)
TOPDIR = $(top_srcdir)/../../../dynare++ TOPDIR = $(top_srcdir)/../../../dynare++
libdynare___a_CPPFLAGS = $(AM_CPPFLAGS) -I$(TOPDIR)/src -I$(TOPDIR)/kord -I$(TOPDIR)/tl/cc -I$(TOPDIR)/utils/cc -I$(TOPDIR)/sylv/cc -I$(TOPDIR)/integ/cc $(CPPFLAGS_MATIO)
libdynare___a_CXXFLAGS = $(AM_CXXFLAGS) $(THREAD_CXXFLAGS)
KORD_SRCS = \ KORD_SRCS = \
$(TOPDIR)/kord/approximation.cc \ approximation.cc \
$(TOPDIR)/kord/approximation.hh \ decision_rule.cc \
$(TOPDIR)/kord/decision_rule.cc \ dynamic_model.cc \
$(TOPDIR)/kord/decision_rule.hh \ faa_di_bruno.cc \
$(TOPDIR)/kord/dynamic_model.cc \ first_order.cc \
$(TOPDIR)/kord/dynamic_model.hh \ global_check.cc \
$(TOPDIR)/kord/faa_di_bruno.cc \ korder.cc \
$(TOPDIR)/kord/faa_di_bruno.hh \ korder_stoch.cc \
$(TOPDIR)/kord/first_order.cc \ journal.cc \
$(TOPDIR)/kord/first_order.hh \ normal_conjugate.cc \
$(TOPDIR)/kord/global_check.cc \ seed_generator.cc
$(TOPDIR)/kord/global_check.hh \
$(TOPDIR)/kord/kord_exception.hh \
$(TOPDIR)/kord/korder.cc \
$(TOPDIR)/kord/korder.hh \
$(TOPDIR)/kord/korder_stoch.cc \
$(TOPDIR)/kord/korder_stoch.hh \
$(TOPDIR)/kord/journal.cc \
$(TOPDIR)/kord/journal.hh \
$(TOPDIR)/kord/normal_conjugate.cc \
$(TOPDIR)/kord/normal_conjugate.hh \
$(TOPDIR)/kord/seed_generator.cc \
$(TOPDIR)/kord/seed_generator.hh
SYLV_SRCS = \ SYLV_SRCS = \
$(TOPDIR)/sylv/cc/BlockDiagonal.cc \ BlockDiagonal.cc \
$(TOPDIR)/sylv/cc/BlockDiagonal.hh \ GeneralMatrix.cc \
$(TOPDIR)/sylv/cc/GeneralMatrix.cc \ GeneralSylvester.cc \
$(TOPDIR)/sylv/cc/GeneralMatrix.hh \ IterativeSylvester.cc \
$(TOPDIR)/sylv/cc/GeneralSylvester.cc \ KronUtils.cc \
$(TOPDIR)/sylv/cc/GeneralSylvester.hh \ KronVector.cc \
$(TOPDIR)/sylv/cc/IterativeSylvester.cc \ QuasiTriangular.cc \
$(TOPDIR)/sylv/cc/IterativeSylvester.hh \ QuasiTriangularZero.cc \
$(TOPDIR)/sylv/cc/KronUtils.cc \ SchurDecomp.cc \
$(TOPDIR)/sylv/cc/KronUtils.hh \ SchurDecompEig.cc \
$(TOPDIR)/sylv/cc/KronVector.cc \ SimilarityDecomp.cc \
$(TOPDIR)/sylv/cc/KronVector.hh \ SylvException.cc \
$(TOPDIR)/sylv/cc/QuasiTriangular.cc \ SylvMatrix.cc \
$(TOPDIR)/sylv/cc/QuasiTriangular.hh \ SylvParams.cc \
$(TOPDIR)/sylv/cc/QuasiTriangularZero.cc \ SymSchurDecomp.cc \
$(TOPDIR)/sylv/cc/QuasiTriangularZero.hh \ TriangularSylvester.cc \
$(TOPDIR)/sylv/cc/SchurDecomp.cc \ Vector.cc
$(TOPDIR)/sylv/cc/SchurDecomp.hh \
$(TOPDIR)/sylv/cc/SchurDecompEig.cc \
$(TOPDIR)/sylv/cc/SchurDecompEig.hh \
$(TOPDIR)/sylv/cc/SimilarityDecomp.cc \
$(TOPDIR)/sylv/cc/SimilarityDecomp.hh \
$(TOPDIR)/sylv/cc/SylvException.cc \
$(TOPDIR)/sylv/cc/SylvException.hh \
$(TOPDIR)/sylv/cc/SylvMatrix.cc \
$(TOPDIR)/sylv/cc/SylvMatrix.hh \
$(TOPDIR)/sylv/cc/SylvParams.cc \
$(TOPDIR)/sylv/cc/SylvParams.hh \
$(TOPDIR)/sylv/cc/SylvesterSolver.hh \
$(TOPDIR)/sylv/cc/SymSchurDecomp.cc \
$(TOPDIR)/sylv/cc/SymSchurDecomp.hh \
$(TOPDIR)/sylv/cc/TriangularSylvester.cc \
$(TOPDIR)/sylv/cc/TriangularSylvester.hh \
$(TOPDIR)/sylv/cc/Vector.cc \
$(TOPDIR)/sylv/cc/Vector.hh
TL_SRCS = \ TL_SRCS = \
$(TOPDIR)/tl/cc/equivalence.cc \ equivalence.cc \
$(TOPDIR)/tl/cc/equivalence.hh \ fine_container.cc \
$(TOPDIR)/tl/cc/fine_container.cc \ fs_tensor.cc \
$(TOPDIR)/tl/cc/fine_container.hh \ gs_tensor.cc \
$(TOPDIR)/tl/cc/fs_tensor.cc \ int_sequence.cc \
$(TOPDIR)/tl/cc/fs_tensor.hh \ kron_prod.cc \
$(TOPDIR)/tl/cc/gs_tensor.cc \ normal_moments.cc \
$(TOPDIR)/tl/cc/gs_tensor.hh \ permutation.cc \
$(TOPDIR)/tl/cc/int_sequence.cc \ ps_tensor.cc \
$(TOPDIR)/tl/cc/int_sequence.hh \ pyramid_prod.cc \
$(TOPDIR)/tl/cc/kron_prod.cc \ pyramid_prod2.cc \
$(TOPDIR)/tl/cc/kron_prod.hh \ rfs_tensor.cc \
$(TOPDIR)/tl/cc/normal_moments.cc \ sparse_tensor.cc \
$(TOPDIR)/tl/cc/normal_moments.hh \ stack_container.cc \
$(TOPDIR)/tl/cc/permutation.cc \ sthread.cc \
$(TOPDIR)/tl/cc/permutation.hh \ symmetry.cc \
$(TOPDIR)/tl/cc/ps_tensor.cc \ t_container.cc \
$(TOPDIR)/tl/cc/ps_tensor.hh \ t_polynomial.cc \
$(TOPDIR)/tl/cc/pyramid_prod.cc \ tensor.cc \
$(TOPDIR)/tl/cc/pyramid_prod.hh \ tl_static.cc \
$(TOPDIR)/tl/cc/pyramid_prod2.cc \ twod_matrix.cc
$(TOPDIR)/tl/cc/pyramid_prod2.hh \
$(TOPDIR)/tl/cc/rfs_tensor.cc \
$(TOPDIR)/tl/cc/rfs_tensor.hh \
$(TOPDIR)/tl/cc/sparse_tensor.cc \
$(TOPDIR)/tl/cc/sparse_tensor.hh \
$(TOPDIR)/tl/cc/stack_container.cc \
$(TOPDIR)/tl/cc/stack_container.hh \
$(TOPDIR)/tl/cc/sthread.cc \
$(TOPDIR)/tl/cc/sthread.hh \
$(TOPDIR)/tl/cc/symmetry.cc \
$(TOPDIR)/tl/cc/symmetry.hh \
$(TOPDIR)/tl/cc/t_container.cc \
$(TOPDIR)/tl/cc/t_container.hh \
$(TOPDIR)/tl/cc/t_polynomial.cc \
$(TOPDIR)/tl/cc/t_polynomial.hh \
$(TOPDIR)/tl/cc/tensor.cc \
$(TOPDIR)/tl/cc/tensor.hh \
$(TOPDIR)/tl/cc/tl_exception.hh \
$(TOPDIR)/tl/cc/tl_static.cc \
$(TOPDIR)/tl/cc/tl_static.hh \
$(TOPDIR)/tl/cc/twod_matrix.cc \
$(TOPDIR)/tl/cc/twod_matrix.hh
INTEG_SRCS = \ INTEG_SRCS = \
$(TOPDIR)/integ/cc/quadrature.cc \ quadrature.cc \
$(TOPDIR)/integ/cc/quadrature.hh \ quasi_mcarlo.cc \
$(TOPDIR)/integ/cc/quasi_mcarlo.cc \ product.cc \
$(TOPDIR)/integ/cc/quasi_mcarlo.hh \ smolyak.cc \
$(TOPDIR)/integ/cc/product.cc \ vector_function.cc
$(TOPDIR)/integ/cc/product.hh \
$(TOPDIR)/integ/cc/smolyak.cc \
$(TOPDIR)/integ/cc/smolyak.hh \
$(TOPDIR)/integ/cc/vector_function.cc \
$(TOPDIR)/integ/cc/vector_function.hh \
$(TOPDIR)/integ/cc/precalc_quadrature.hh
UTILS_SRCS = \ UTILS_SRCS = \
$(TOPDIR)/utils/cc/exception.hh \ pascal_triangle.cc \
$(TOPDIR)/utils/cc/pascal_triangle.cc \ int_power.cc
$(TOPDIR)/utils/cc/pascal_triangle.hh \
$(TOPDIR)/utils/cc/int_power.cc \ OTHER_SRCS = \
$(TOPDIR)/utils/cc/int_power.hh nlsolve.cc
nodist_libdynare___a_SOURCES = \ nodist_libdynare___a_SOURCES = \
$(KORD_SRCS) \ $(KORD_SRCS) \
@ -139,5 +81,20 @@ nodist_libdynare___a_SOURCES = \
$(SYLV_SRCS) \ $(SYLV_SRCS) \
$(INTEG_SRCS) \ $(INTEG_SRCS) \
$(UTILS_SRCS) \ $(UTILS_SRCS) \
$(TOPDIR)/src/nlsolve.cc \ $(OTHER_SRCS)
$(TOPDIR)/src/nlsolve.hh
BUILT_SOURCES = $(nodist_libdynare___a_SOURCES)
CLEANFILES = $(nodist_libdynare___a_SOURCES)
$(KORD_SRCS): %.cc: $(TOPDIR)/kord/%.cc
$(LN_S) -f $< $@
$(TL_SRCS): %.cc: $(TOPDIR)/tl/cc/%.cc
$(LN_S) -f $< $@
$(SYLV_SRCS): %.cc: $(TOPDIR)/sylv/cc/%.cc
$(LN_S) -f $< $@
$(INTEG_SRCS): %.cc: $(TOPDIR)/integ/cc/%.cc
$(LN_S) -f $< $@
$(UTILS_SRCS): %.cc: $(TOPDIR)/utils/cc/%.cc
$(LN_S) -f $< $@
$(OTHER_SRCS): %.cc: $(TOPDIR)/src/%.cc
$(LN_S) -f $< $@

View File

@ -1,5 +1,9 @@
vpath %.cc $(top_srcdir)/../../sources/local_state_space_iterations
mex_PROGRAMS = local_state_space_iteration_2 mex_PROGRAMS = local_state_space_iteration_2
nodist_local_state_space_iteration_2_SOURCES = local_state_space_iteration_2.cc nodist_local_state_space_iteration_2_SOURCES = local_state_space_iteration_2.cc
BUILT_SOURCES = $(nodist_local_state_space_iteration_2_SOURCES)
CLEANFILES = $(nodist_local_state_space_iteration_2_SOURCES)
%.cc: $(top_srcdir)/../../sources/local_state_space_iterations/%.cc
$(LN_S) -f $< $@

View File

@ -1,3 +1,9 @@
mex_PROGRAMS = mjdgges mex_PROGRAMS = mjdgges
nodist_mjdgges_SOURCES = $(top_srcdir)/../../sources/mjdgges/mjdgges.c nodist_mjdgges_SOURCES = mjdgges.c
BUILT_SOURCES = $(nodist_mjdgges_SOURCES)
CLEANFILES = $(nodist_mjdgges_SOURCES)
%.c: $(top_srcdir)/../../sources/mjdgges/%.c
$(LN_S) -f $< $@

View File

@ -6,59 +6,87 @@ DWUTILITIESDIR = $(top_srcdir)/../../../contrib/ms-sbvar/utilities_dw
DYNMEXSRCDIR = $(top_srcdir)/../../sources DYNMEXSRCDIR = $(top_srcdir)/../../sources
MSMEXSRCDIR = $(DYNMEXSRCDIR)/ms-sbvar MSMEXSRCDIR = $(DYNMEXSRCDIR)/ms-sbvar
AM_CPPFLAGS += $(GSL_CPPFLAGS) -DSTRUCTURED_COLUMN_MAJOR -I$(DYNMEXSRCDIR) -I$(MSMEXSRCDIR) -I$(DWUTILITIESDIR)/include -I$(DWSWITCHDIR)/switching -I$(DWSWITCHDIR)/state_space -I$(DWSWITCHDIR)/state_space/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) LIBS += $(GSL_LIBS)
AM_LDFLAGS += $(GSL_LDFLAGS) AM_LDFLAGS += $(GSL_LDFLAGS)
DWUTILS = \ DWUTILS = \
$(DWUTILITIESDIR)/arrays/dw_array.c \ dw_array.c \
$(DWUTILITIESDIR)/arrays/dw_matrix_array.c \ dw_matrix_array.c \
$(DWUTILITIESDIR)/ascii/dw_ascii.c \ dw_ascii.c \
$(DWUTILITIESDIR)/ascii/dw_parse_cmd.c \ dw_parse_cmd.c \
$(DWUTILITIESDIR)/elliptical/dw_elliptical.c \ dw_elliptical.c \
$(DWUTILITIESDIR)/error/dw_error.c \ dw_error.c \
$(DWUTILITIESDIR)/histogram/dw_histogram.c \ dw_histogram.c \
$(DWUTILITIESDIR)/math/dw_math.c \ dw_math.c \
$(DWUTILITIESDIR)/matrix/dw_matrix.c \ dw_matrix.c \
$(DWUTILITIESDIR)/matrix/bmatrix.c \ bmatrix.c \
$(DWUTILITIESDIR)/sort/dw_matrix_sort.c \ dw_matrix_sort.c \
$(DWUTILITIESDIR)/stat/dw_rand_gsl.c \ dw_rand_gsl.c \
$(DWUTILITIESDIR)/stat/dw_matrix_rand.c dw_matrix_rand.c
MSMEXSRC = \ MSMEXSRC = \
$(MSMEXSRCDIR)/mex_top_level.cc \ mex_top_level.cc \
$(MSMEXSRCDIR)/modify_for_mex.cc modify_for_mex.cc
nodist_ms_sbvar_create_init_file_SOURCES = \ nodist_ms_sbvar_create_init_file_SOURCES = \
$(DWSWITCHDIR)/switching/dw_switch.c \ dw_switch.c \
$(DWSWITCHDIR)/switching/dw_switchio.c \ dw_switchio.c \
$(DWSWITCHDIR)/switching/dw_dirichlet_restrictions.c \ dw_dirichlet_restrictions.c \
$(DWSWITCHDIR)/switching/dw_metropolis_theta.c \ dw_metropolis_theta.c \
$(DWSWITCHDIR)/state_space/sbvar/create_init_file.c \ create_init_file.c \
$(DWSWITCHDIR)/state_space/sbvar/VARbase.c \ VARbase.c \
$(DWSWITCHDIR)/state_space/sbvar/VARio.c \ VARio.c \
$(DWSWITCHDIR)/state_space/sbvar/VARio_matlab.c \ VARio_matlab.c \
$(DWUTILS) \ $(DWUTILS) \
$(MSMEXSRC) $(MSMEXSRC)
nodist_ms_sbvar_command_line_SOURCES = \ nodist_ms_sbvar_command_line_SOURCES = \
$(DWSWITCHDIR)/switching/dw_switch.c \ dw_switch.c \
$(DWSWITCHDIR)/switching/dw_switchio.c \ dw_switchio.c \
$(DWSWITCHDIR)/switching/dw_dirichlet_restrictions.c \ dw_dirichlet_restrictions.c \
$(DWSWITCHDIR)/switching/dw_metropolis_theta.c \ dw_metropolis_theta.c \
$(DWSWITCHDIR)/switching/dw_switch_opt.c \ dw_switch_opt.c \
$(DWSWITCHDIR)/switching/dw_mdd_switch.c \ dw_mdd_switch.c \
$(DWSWITCHDIR)/state_space/sbvar/VARbase.c \ VARbase.c \
$(DWSWITCHDIR)/state_space/sbvar/VARio.c \ VARio.c \
$(DWSWITCHDIR)/state_space/sbvar/dw_sbvar_command_line.c \ dw_sbvar_command_line.c \
$(DWSWITCHDIR)/state_space/sbvar/sbvar_estimate.c \ sbvar_estimate.c \
$(DWSWITCHDIR)/state_space/sbvar/sbvar_simulate.c \ sbvar_simulate.c \
$(DWSWITCHDIR)/state_space/sbvar/sbvar_probabilities.c \ sbvar_probabilities.c \
$(DWSWITCHDIR)/state_space/sbvar/sbvar_mdd.c \ sbvar_mdd.c \
$(DWSWITCHDIR)/state_space/sbvar/sbvar_forecast.c \ sbvar_forecast.c \
$(DWSWITCHDIR)/state_space/sbvar/sbvar_variance_decomposition.c \ sbvar_variance_decomposition.c \
$(DWSWITCHDIR)/state_space/sbvar/sbvar_impulse_responses.c \ sbvar_impulse_responses.c \
$(DWSWITCHDIR)/state_space/sbvar/dw_csminwel.c \ dw_csminwel.c \
$(DWUTILS) \ $(DWUTILS) \
$(MSMEXSRC) $(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 $< $@

View File

@ -1,5 +1,13 @@
vpath %.cc $(top_srcdir)/../../sources/sobol
mex_PROGRAMS = qmc_sequence mex_PROGRAMS = qmc_sequence
TOPDIR = $(top_srcdir)/../../sources/sobol
qmc_sequence_CPPFLAGS = $(AM_CPPFLAGS) -I$(TOPDIR)
nodist_qmc_sequence_SOURCES = qmc_sequence.cc nodist_qmc_sequence_SOURCES = qmc_sequence.cc
BUILT_SOURCES = $(nodist_qmc_sequence_SOURCES)
CLEANFILES = $(nodist_qmc_sequence_SOURCES)
%.cc: $(TOPDIR)/%.cc
$(LN_S) -f $< $@