Dynamic-Calibration/utils/SDPT3-4.0/Solver/Oldmfiles/Installmex.m

84 lines
2.2 KiB
Mathematica
Raw Normal View History

2019-12-18 11:25:45 +00:00
%%
%% Run this script in Matlab command window
%%
function Installmex
curdir = pwd;
fprintf(' current directory is: %s\n',curdir);
%%
%% generate mex files in Mexfun
%%
if strcmp(computer,'PCWIN64') | strcmp(computer,'GLNXA64')
computer_model = 64;
else
computer_model = 32;
end
matlabversion = sscanf(version,'%f');
matlabversion = matlabversion(1);
fsp = filesep;
%%
%%
%%
src = [curdir,fsp,'Solver',fsp,'Mexfun'];
eval(['cd ','Solver',fsp,'Mexfun']);
fprintf ('\n Now compiling the mexFunctions in:\n');
fprintf (' %s\n',src);
fname{1} = 'mexProd2';
fname{2} = 'mexProd2nz';
fname{3} = 'mexinprod';
fname{4} = 'mexmat';
fname{5} = 'mexsmat';
fname{6} = 'mexsvec';
fname{7} = 'mexschur';
fname{8} = 'mexqops';
fname{9} = 'mexexpand';
fname{10} = 'mexskron';
fname{11} = 'mexnnz';
fname{12} = 'mexschurfun';
fname{13} = 'mexMatvec';
fname{14} = 'mextriang';
fname{15} = 'mextriangsp';
if (matlabversion < 7.3)
mexcmd = 'mex -O ';
else
mexcmd = 'mex -O -largeArrayDims ';
end
for k = 1:length(fname)
cmd([mexcmd,fname{k},'.c']);
end
cd ..
cd ..
%%
%% generate mex files in spchol
%%
if (matlabversion < 7.3)
clear fname
src = [curdir,fsp,'Linsysolver',fsp,'spchol'];
eval(['cd ','Linsysolver',fsp,'spchol']);
fprintf ('\n Now compiling the mexFunctions in:\n');
fprintf (' %s\n',src);
fname{1} = 'mexordmmd.c ordmmd.c';
fname{2} = 'mexsymbfct.c symbfct.c';
fname{3} = 'choltmpsiz.c';
fname{4} = 'cholsplit.c';
fname{5} = 'mexsparchol.c sparchol2.c sdmauxFill.c sdmauxScalarmul.c';
fname{6} = 'mexfwblkslv.c sdmauxScalarmul.c';
fname{7} = 'mexbwblkslv.c sdmauxFill.c sdmauxRdot.c';
mexcmd = 'mex -O ';
for k = 1:length(fname)
cmd([mexcmd,fname{k}]);
end
cd ..
cd ..
end
%%***********************************************
function cmd(s)
fprintf(' %s\n',s);
eval(s);
%%***********************************************