|
|
|
@ -32,6 +32,7 @@ if strcmpi('GLNX86', computer) || strcmpi('GLNXA64', computer) ...
|
|
|
|
|
else
|
|
|
|
|
BLAS_PATH = '-lmwblas';
|
|
|
|
|
end
|
|
|
|
|
DL_PATH = '-ldl';
|
|
|
|
|
elseif strcmpi('PCWIN', computer) || strcmpi('PCWIN64', computer)
|
|
|
|
|
% Windows (x86-32 or x86-64) with Microsoft or gcc compiler
|
|
|
|
|
if strcmpi('PCWIN', computer)
|
|
|
|
@ -45,6 +46,7 @@ elseif strcmpi('PCWIN', computer) || strcmpi('PCWIN64', computer)
|
|
|
|
|
else
|
|
|
|
|
BLAS_PATH = ['"' LIBRARY_PATH 'libmwblas.lib"'];
|
|
|
|
|
end
|
|
|
|
|
DL_PATH = '';
|
|
|
|
|
else
|
|
|
|
|
error('Unsupported platform')
|
|
|
|
|
end
|
|
|
|
@ -90,7 +92,7 @@ LDDEBUGFLAGS = ' LDDEBUGFLAGS= ';
|
|
|
|
|
COMPILE_OPTIONS = [ COMPILE_OPTIONS CDEBUGFLAGS COPTIMFLAGS CXXDEBUGFLAGS CXXOPTIMFLAGS LDDEBUGFLAGS LDOPTIMFLAGS];
|
|
|
|
|
|
|
|
|
|
% Comment next line to suppress compilation debugging info
|
|
|
|
|
% COMPILE_OPTIONS = [ COMPILE_OPTIONS ' -v' ];
|
|
|
|
|
COMPILE_OPTIONS = [ COMPILE_OPTIONS ' -v' ];
|
|
|
|
|
|
|
|
|
|
COMPILE_COMMAND = [ 'mex ' COMPILE_OPTIONS ' -outdir ' OUTPUT_DIR ];
|
|
|
|
|
|
|
|
|
@ -126,4 +128,70 @@ eval([ COMPILE_COMMAND ' -I. -I../../dynare++/sylv/cc ' ...
|
|
|
|
|
BLAS_PATH ' ' LAPACK_PATH ]);
|
|
|
|
|
|
|
|
|
|
disp('Compiling bytecode...')
|
|
|
|
|
eval([ COMPILE_COMMAND ' -Ibytecode -I../../preprocessor bytecode/bytecode.cc bytecode/Interpreter.cc bytecode/Mem_Mngr.cc bytecode/SparseMatrix.cc']);
|
|
|
|
|
eval([ COMPILE_COMMAND ' -Ibytecode -I../../preprocessor bytecode/bytecode.cc bytecode/Interpreter.cc bytecode/Mem_Mngr.cc bytecode/SparseMatrix.cc']);
|
|
|
|
|
|
|
|
|
|
disp('Compiling k_order_perturbation')
|
|
|
|
|
eval([ COMPILE_COMMAND ...
|
|
|
|
|
' -I../../dynare++/src -I../../dynare++/kord -I../../dynare++/tl/cc -I../../dynare++/utils/cc -I../../dynare++/sylv/cc -I../../dynare++/integ/cc -I. ' ...
|
|
|
|
|
' -DMEXEXT=' mexext ' ' ...
|
|
|
|
|
'-output k_order_perturbation ' ...
|
|
|
|
|
'../../dynare++/kord/faa_di_bruno.cpp ' ...
|
|
|
|
|
'../../dynare++/kord/korder_stoch.cpp ' ...
|
|
|
|
|
'../../dynare++/kord/journal.cpp ' ...
|
|
|
|
|
'../../dynare++/kord/decision_rule.cpp ' ...
|
|
|
|
|
'../../dynare++/kord/dynamic_model.cpp ' ...
|
|
|
|
|
'../../dynare++/kord/random.cpp ' ...
|
|
|
|
|
'../../dynare++/kord/first_order.cpp ' ...
|
|
|
|
|
'../../dynare++/kord/normal_conjugate.cpp ' ...
|
|
|
|
|
'../../dynare++/kord/approximation.cpp ' ...
|
|
|
|
|
'../../dynare++/kord/global_check.cpp ' ...
|
|
|
|
|
'../../dynare++/kord/korder.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/IterativeSylvester.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/QuasiTriangular.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/QuasiTriangularZero.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/GeneralMatrix.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/GeneralSylvester.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/SimilarityDecomp.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/SylvException.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/SchurDecompEig.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/Vector.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/TriangularSylvester.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/SylvParams.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/BlockDiagonal.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/KronVector.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/SylvMemory.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/SymSchurDecomp.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/SylvMatrix.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/SchurDecomp.cpp ' ...
|
|
|
|
|
'../../dynare++/sylv/cc/KronUtils.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/normal_moments.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/int_sequence.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/tensor.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/ps_tensor.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/pyramid_prod2.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/equivalence.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/fine_container.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/kron_prod.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/t_polynomial.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/symmetry.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/stack_container.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/twod_matrix.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/sparse_tensor.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/sthread.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/gs_tensor.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/pyramid_prod.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/fs_tensor.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/permutation.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/rfs_tensor.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/t_container.cpp ' ...
|
|
|
|
|
'../../dynare++/tl/cc/tl_static.cpp ' ...
|
|
|
|
|
'../../dynare++/integ/cc/product.cpp ' ...
|
|
|
|
|
'../../dynare++/integ/cc/quadrature.cpp ' ...
|
|
|
|
|
'../../dynare++/integ/cc/quasi_mcarlo.cpp ' ...
|
|
|
|
|
'../../dynare++/integ/cc/smolyak.cpp ' ...
|
|
|
|
|
'../../dynare++/integ/cc/vector_function.cpp ' ...
|
|
|
|
|
'k_order_perturbation/k_order_perturbation.cpp ' ...
|
|
|
|
|
'k_order_perturbation/k_ord_dynare.cpp ' ...
|
|
|
|
|
'k_order_perturbation/dynamic_dll.cpp ' ...
|
|
|
|
|
'../../dynare++/src/nlsolve.cpp ' ...
|
|
|
|
|
DL_PATH ' ' BLAS_PATH ' ' LAPACK_PATH]);
|
|
|
|
|