From 6d6bcbc2539955d219ce632769064ca03f8419b8 Mon Sep 17 00:00:00 2001 From: Yannick Hold-Geoffroy Date: Mon, 7 Dec 2015 11:14:03 -0500 Subject: [PATCH 1/3] Added auto-compilation of CalcMD5 --- 3rd_party/CalcMD5/CalcMD5.m | 18 +++++++++++++++++- README.md | 9 +++------ 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/3rd_party/CalcMD5/CalcMD5.m b/3rd_party/CalcMD5/CalcMD5.m index 687f113..5cea15f 100644 --- a/3rd_party/CalcMD5/CalcMD5.m +++ b/3rd_party/CalcMD5/CalcMD5.m @@ -67,5 +67,21 @@ % If the current Matlab path is the parent folder of this script, the % MEX function is not found - change the current directory! -error(['JSim:', mfilename, ':NoMex'], 'Cannot find MEX script.'); +if ~exist(['CalcMD5' mexext], 'file') + warning('CalcMD5 does not seem compiled. Compiling...'); + old_cd = pwd; + cd(fileparts(mfilename('fullpath'))); + if strcmpi(mex.getCompilerConfigurations('C').Name(1:3), 'gcc') + mex CFLAGS="\$CFLAGS -std=c99" CalcMD5.c + else + mex CalcMD5.c + end + cd(old_cd); + if (nargin < 2), MD5 = CalcMD5(Data); + elseif (nargin < 3), MD5 = CalcMD5(Data, InClass); + else MD5 = CalcMD5(Data, InClass); + end +else + error(['JSim:', mfilename, ':NoMex'], 'Cannot find MEX script.'); +end \ No newline at end of file diff --git a/README.md b/README.md index f9b06c6..fb3b723 100644 --- a/README.md +++ b/README.md @@ -7,16 +7,13 @@ throughout my other projects. Make sure you download and keep updated! Installation ------------ +Update: the CalcMD5 code should now auto-compile upon its first exectuion. + Compile the weighted histogram code: cd mycode/histogram mex whistc.c -Compile the MD5 code: - - cd 3rd_party/CalcMD5 - mex CalcMD5.c - Compile the KDE code: cd 3rd_party/@kde/mex @@ -24,4 +21,4 @@ Compile the KDE code: Get export_fig from: - https://github.com/altmany/export_fig \ No newline at end of file + https://github.com/altmany/export_fig From fb95b859c301d20a71d867413578f6c1306e90cd Mon Sep 17 00:00:00 2001 From: Yannick Hold-Geoffroy Date: Tue, 12 Apr 2016 13:30:02 -0400 Subject: [PATCH 2/3] Create slave directory if it doesn't exist. --- mycode/parallel/runFunctionOnDatabase.m | 3 +++ 1 file changed, 3 insertions(+) diff --git a/mycode/parallel/runFunctionOnDatabase.m b/mycode/parallel/runFunctionOnDatabase.m index 527c297..5a23469 100644 --- a/mycode/parallel/runFunctionOnDatabase.m +++ b/mycode/parallel/runFunctionOnDatabase.m @@ -75,6 +75,9 @@ pBar.pop_bar(); if parallel + if exist(getPathName(local, 'slaves'), 'dir') == 0 + mkdir(getPathName(local, 'slaves')); + end % start the processing! settings = struct('multicoreDir', getPathName(local, 'slaves'), ... 'nrOfEvalsAtOnce', nrOfEvalsAtOnce, 'useWaitbar', useWaitbar, ... From 92d5ab2bca5b414d9fc2edea177c2b9833bada8f Mon Sep 17 00:00:00 2001 From: Yannick Hold-Geoffroy Date: Tue, 12 Apr 2016 13:30:17 -0400 Subject: [PATCH 3/3] Added CalcMD5 binary for Linux --- 3rd_party/CalcMD5/CalcMD5.mexa64 | Bin 0 -> 17782 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 3rd_party/CalcMD5/CalcMD5.mexa64 diff --git a/3rd_party/CalcMD5/CalcMD5.mexa64 b/3rd_party/CalcMD5/CalcMD5.mexa64 new file mode 100644 index 0000000000000000000000000000000000000000..002fad8bc6159c834de5df0bf7447954e8e9688d GIT binary patch literal 17782 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 literal 0 HcmV?d00001