Build system: added k_order_perturbation to the build_matlab script

git-svn-id: https://www.dynare.org/svn/dynare/trunk@3106 ac1d8469-bf42-47a9-8791-bf33cf982152
time-shift
sebastien 2009-10-30 17:29:50 +00:00
parent 31ed196c44
commit 11230eec3f
5 changed files with 77 additions and 5 deletions

View File

@ -1,4 +1,4 @@
include ../mex.am
include ../../k_order_perturbation.am
CPPFLAGS += -DMEXEXT=\"$(MEXEXT)\"
CPPFLAGS += -DMEXEXT=$(MEXEXT)

View File

@ -1,4 +1,4 @@
include ../mex.am
include ../../k_order_perturbation.am
CPPFLAGS += -DMEXEXT=\"mex\"
CPPFLAGS += -DMEXEXT=mex

View File

@ -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]);

View File

@ -1,4 +1,7 @@
% Build file for Dynare MEX Librairies for Octave
%
% This script is now obsolete and is no longer maintained.
% Please use the autoconf/automake build system instead.
% Copyright (C) 2008-2009 Dynare Team
%

View File

@ -90,8 +90,9 @@ DynamicModelDLL::DynamicModelDLL(const char *modName, const int y_length, const
try
{
#define QUOTEME(x) #x
if (sExt == NULL)
sExt = MEXEXT;
sExt = QUOTEME(MEXEXT);
#ifdef _WIN32
HINSTANCE dynamicHinstance;
// dynamicHinstance=::LoadLibraryEx(strcat(fNname,"_.dll"),NULL,DONT_RESOLVE_DLL_REFERENCES);//sExt); //"_.dll");