Fix nonreg test bug_614 (mexlib), update ref (windows), create ref (linux)
[scilab.git] / scilab / modules / mexlib / tests / nonreg_tests / bug_614.win.dia.ref
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2006-2008 - INRIA - Serge STEER <serge.steer@inria.fr>
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7 // <-- Non-regression test for bug 614 -->
8 //
9 // <-- Bugzilla URL -->
10 // http://bugzilla.scilab.org/show_bug.cgi?id=614
11 //
12 // <-- Short Description -->
13 //    mxGetDimensions() from mex.h and mexlib.c do not work
14 //    properly. The reason is that it returns a pointer to int
15 //    like Matlab, but in fact, the dimensions in scilab are in
16 //    double format.
17 //
18 //    Also occur in other OS's.
19 my_current_directory = pwd();
20 cd(TMPDIR);
21 mputl('ilib_mex_build(''libmex'',[''mexf16'',''mexfunction16'',''cmex''],[''mexfunction16.c''],[],''Makelib'','''','''','''')','builder.sce');
22 mputl([
23 '#include ""mex.h""'
24 'void mexFunction(nlhs, plhs, nrhs, prhs)'
25 '     int nlhs, nrhs;'
26 '     mxArray *plhs[]; mxArray *prhs[];'
27 '{'
28 '  int *dims = mxGetDimensions(prhs[0]);'
29 '  sciprint(""%d %d %d\n"",dims[0],dims[1],dims[2]);'
30 '}'
31 ],'mexfunction16.c');
32    Generate a gateway file
33    Generate a loader file
34    Generate a Makefile: Makelib
35    Running the makefile
36    Building shared library (be patient)
37 Shared archive loaded.
38 Link done.
39 mexf16(rand(2,3,2))
40 2 3 2
41 cd(my_current_directory);