Skip to content

Commit 3c9ed3a

Browse files
update v0.2.6
1 parent a3ec3c9 commit 3c9ed3a

28 files changed

Lines changed: 1022 additions & 9 deletions

en/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
![banner](banner_homepage.png)
22

3-
### Nelson 0.2.5.0
3+
### Nelson 0.2.6.0
44

55
This is an pre-release of Nelson.
66

en/SUMMARY.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,26 +91,41 @@
9191

9292
* [dynamic_link](./dynamic_link/README.md)
9393
* [addgateway](./dynamic_link/addgateway.md)
94+
* [cmake](./dynamic_link/cmake.md)
95+
* [configuremingw](./dynamic_link/configuremingw.md)
96+
* [configuremsvc](./dynamic_link/configuremsvc.md)
9497
* [libpointer datatype](./dynamic_link/C_datatype.md)
9598
* [dlcall](./dynamic_link/dlcall.md)
9699
* [dlclose](./dynamic_link/dlclose.md)
100+
* [dlgeneratecleaner](./dynamic_link/dlgeneratecleaner.md)
101+
* [dlgenerategateway](./dynamic_link/dlgenerategateway.md)
102+
* [dlgenerateloader](./dynamic_link/dlgenerateloader.md)
103+
* [dlgeneratemake](./dynamic_link/dlgeneratemake.md)
104+
* [dlgenerateunloader](./dynamic_link/dlgenerateunloader.md)
97105
* [dllibinfo](./dynamic_link/dllibinfo.md)
98106
* [dllibisloaded](./dynamic_link/dllibisloaded.md)
99107
* [dllib_used](./dynamic_link/dllib_used.md)
108+
* [dlmake](./dynamic_link/dlmake.md)
100109
* [dlopen](./dynamic_link/dlopen.md)
101110
* [dlsym](./dynamic_link/dlsym.md)
102111
* [dlsym_delete](./dynamic_link/dlsym_delete.md)
103112
* [dlsym_used](./dynamic_link/dlsym_used.md)
113+
* [findcmake](./dynamic_link/findcmake.md)
104114
* [gatewayinfo](./dynamic_link/gatewayinfo.md)
105115
* [getdynlibext](./dynamic_link/getdynlibext.md)
116+
* [havecompiler](./dynamic_link/havecompiler.md)
106117
* [libpointer](./dynamic_link/libpointer.md)
107118
* [libpointer_delete](./dynamic_link/libpointer_delete.md)
108119
* [libpointer_isNull](./dynamic_link/libpointer_isNull.md)
109120
* [libpointer_plus](./dynamic_link/libpointer_plus.md)
110121
* [libpointer_reshape](./dynamic_link/libpointer_reshape.md)
111122
* [libpointer_setdatatype](./dynamic_link/libpointer_setdatatype.md)
112123
* [libpointer_used](./dynamic_link/libpointer_used.md)
124+
* [loadcompilerconf](./dynamic_link/loadcompiler.md)
125+
* [removecompilerconf](./dynamic_link/removecompilerconf.md)
113126
* [removegateway](./dynamic_link/removegateway.md)
127+
* [Supported C/C++ compilers](./dynamic_link/supported_compilers.md)
128+
* [vswhere](./dynamic_link/vswhere.md)
114129

115130

116131
* [f2c](./f2c/README.md)
@@ -212,6 +227,7 @@
212227
* [mtimes](./elementary_functions/mtimes.md)
213228
* [ndims](./elementary_functions/ndims.md)
214229
* [ne](./elementary_functions/ne.md)
230+
* [norm](./elementary_functions/norm.md)
215231
* [not](./elementary_functions/not.md)
216232
* [numel](./elementary_functions/numel.md)
217233
* [or](./elementary_functions/or.md)
@@ -282,6 +298,7 @@
282298
* [mat2str](./string/mat2str.md)
283299
* [newline](./string/newline.md)
284300
* [replace](./string/replace.md)
301+
* [sprintf](./string/sprintf.md)
285302
* [startsWith](./string/startsWith.md)
286303
* [str2double](./string/str2double.md)
287304
* [strcmp](./string/strcmp.md)

en/dynamic_link/README.md

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,30 +5,45 @@
55
dynamic link
66

77
## Description
8-
dynamic link functions
8+
By default, Nelson does not try to detect a C/C++ compiler on Windows. Do not forget to run 'configuremsvc' or 'configuremingw' once.
99

1010

1111
* [addgateway](addgateway.md) - Adds dynamically builtin at runtime.
12+
* [cmake](cmake.md) - call CMake tool
13+
* [configuremingw](configuremingw.md) - Configure Nelson to use MinGW as default C compiler
14+
* [configuremsvc](configuremsvc.md) - Configure Nelson to use visual studio as default compiler
1215
* [libpointer datatype](C_datatype.md) - C/Nelson equivalent data types
1316
* [dlcall](dlcall.md) - C or Fortran Foreign function call.
1417
* [dlclose](dlclose.md) - Removes dllib object.
18+
* [dlgeneratecleaner](dlgeneratecleaner.md) - Generates cleaner.nls file for C++ gateway.
19+
* [dlgenerategateway](dlgenerategateway.md) - Generates C++ gateway.
20+
* [dlgenerateloader](dlgenerateloader.md) - Generates loader.nls file for C++ gateway.
21+
* [dlgeneratemake](dlgeneratemake.md) - Generates a makefile for building a dynamic library.
22+
* [dlgenerateunloader](dlgenerateunloader.md) - Generates unloader.nls file for C++ gateway.
1523
* [dllibinfo](dllibinfo.md) - Returns list of available symbols in an shared library.
1624
* [dllibisloaded](dllibisloaded.md) - Checks if shared library is loaded.
1725
* [dllib_used](dllib_used.md) - Returns list of current used dllib handle.
26+
* [dlmake](dlmake.md) - call make or nmake tool
1827
* [dlopen](dlopen.md) - Loads an dynamic library.
1928
* [dlsym](dlsym.md) - Loads a C/Fortran symbol for an dynamic library.
2029
* [dlsym_delete](dlsym_delete.md) - Removes dlsym object.
2130
* [dlsym_used](dlsym_used.md) - Returns list of current used dlsym handle.
31+
* [findcmake](findcmake.md) - find CMake path.
2232
* [gatewayinfo](gatewayinfo.md) - Returns information about an gateway.
2333
* [getdynlibext](getdynlibext.md) - Returns the extension of dynamic libraries.
34+
* [havecompiler](havecompiler.md) - Detect if a C/C++ compiler is configured.
2435
* [libpointer](libpointer.md) - Creates an C pointer object usuable in Nelson.
2536
* [libpointer_delete](libpointer_delete.md) - Removes libpointer object.
2637
* [libpointer_isNull](libpointer_isNull.md) - Checks if libpointer handle points on NULL pointer.
2738
* [libpointer_plus](libpointer_plus.md) - plus operator on libpointer handle.
2839
* [libpointer_reshape](libpointer_reshape.md) - Reshapes libpointer dimensions.
2940
* [libpointer_setdatatype](libpointer_setdatatype.md) - Set type of an libpointer handle.
3041
* [libpointer_used](libpointer_used.md) - Returns list of current used libpointer handle.
42+
* [loadcompilerconf](loadcompiler.md) - load compiler configuration.
43+
* [removecompilerconf](removecompilerconf.md) - Remove used compiler configuration (on Windows).
3144
* [removegateway](removegateway.md) - Removes dynamically builtin at runtime.
45+
supported_compilers.md Supported C/C++ compilers
46+
* [vswhere](vswhere.md) - Locate Visual Studio 2017 and newer installations
3247

3348

3449

en/dynamic_link/SUMMARY.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,38 @@
11
* [dynamic_link](README.md)
22
* [addgateway](addgateway.md)
3+
* [cmake](cmake.md)
4+
* [configuremingw](configuremingw.md)
5+
* [configuremsvc](configuremsvc.md)
36
* [libpointer datatype](C_datatype.md)
47
* [dlcall](dlcall.md)
58
* [dlclose](dlclose.md)
9+
* [dlgeneratecleaner](dlgeneratecleaner.md)
10+
* [dlgenerategateway](dlgenerategateway.md)
11+
* [dlgenerateloader](dlgenerateloader.md)
12+
* [dlgeneratemake](dlgeneratemake.md)
13+
* [dlgenerateunloader](dlgenerateunloader.md)
614
* [dllibinfo](dllibinfo.md)
715
* [dllibisloaded](dllibisloaded.md)
816
* [dllib_used](dllib_used.md)
17+
* [dlmake](dlmake.md)
918
* [dlopen](dlopen.md)
1019
* [dlsym](dlsym.md)
1120
* [dlsym_delete](dlsym_delete.md)
1221
* [dlsym_used](dlsym_used.md)
22+
* [findcmake](findcmake.md)
1323
* [gatewayinfo](gatewayinfo.md)
1424
* [getdynlibext](getdynlibext.md)
25+
* [havecompiler](havecompiler.md)
1526
* [libpointer](libpointer.md)
1627
* [libpointer_delete](libpointer_delete.md)
1728
* [libpointer_isNull](libpointer_isNull.md)
1829
* [libpointer_plus](libpointer_plus.md)
1930
* [libpointer_reshape](libpointer_reshape.md)
2031
* [libpointer_setdatatype](libpointer_setdatatype.md)
2132
* [libpointer_used](libpointer_used.md)
33+
* [loadcompilerconf](loadcompiler.md)
34+
* [removecompilerconf](removecompilerconf.md)
2235
* [removegateway](removegateway.md)
36+
* [Supported C/C++ compilers](supported_compilers.md)
37+
* [vswhere](vswhere.md)
2338

en/dynamic_link/cmake.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
2+
3+
# cmake
4+
5+
call CMake tool
6+
7+
## Syntax
8+
9+
- [status, message] = cmake(varargin)
10+
11+
## Input argument
12+
13+
- varargin - command to send to CMake
14+
15+
## Output argument
16+
17+
- res - a logical: true if cmake command is successfully
18+
- message - a string: message generated by cmake command.
19+
20+
## Description
21+
22+
23+
<p><b>cmake</b> used internally to generate makefile used to build C/C++ code.</p>
24+
<p><b>cmake</b> used by <b>dlgeneratemake</b>.</p>
25+
26+
27+
## See also
28+
29+
[dlgeneratemake](dlgeneratemake.md), [dlmake](dlmake.md).
30+
## History
31+
32+
|Version|Description|
33+
|------|------|
34+
|1.0.0|initial version|
35+
36+
37+
## Author
38+
39+
Allan CORNET
40+
41+
42+

en/dynamic_link/configuremingw.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
2+
3+
# configuremingw
4+
5+
Configure Nelson to use MinGW as default C compiler
6+
7+
## Syntax
8+
9+
- [res, message] = configuremingw(mingw_path)
10+
11+
## Input argument
12+
13+
- mingw_path - a string: mingw root path.
14+
15+
## Output argument
16+
17+
- res - a logical: true if MinGW was found
18+
- message - a string: empty if MinGW was found or an error message.
19+
20+
## Description
21+
22+
23+
<p>By default, Nelson has no C/C++ compiler defined as default on Windows.</p>
24+
<p>On others platforms, we will suppose that a C/C++ compiler is always available and it is not required to call this function.</p>
25+
<p>On Windows, you need to call once <b>configuremingw</b> if you want to use MinGW as default C compiler.</p>
26+
27+
28+
## Example
29+
30+
```matlab
31+
configuremingw('c:/mingw')
32+
```
33+
34+
## See also
35+
36+
[havecompiler](havecompiler.md), [configuremsvc](configuremsvc.md).
37+
## History
38+
39+
|Version|Description|
40+
|------|------|
41+
|1.0.0|initial version|
42+
43+
44+
## Author
45+
46+
Allan CORNET
47+
48+
49+

en/dynamic_link/configuremsvc.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
2+
3+
# configuremsvc
4+
5+
Configure Nelson to use visual studio as default compiler
6+
7+
## Syntax
8+
9+
- [res, message] = configuremsvc()
10+
11+
## Output argument
12+
13+
- res - a logical: true if visual studio was found
14+
- message - a string: empty if visual studio was found or an error message.
15+
16+
## Description
17+
18+
19+
<p>By default, Nelson has no C/C++ compiler defined as default on Windows.</p>
20+
<p>On others platforms, we will suppose that a C/C++ compiler is always available and it is not required to call this function.</p>
21+
<p>On Windows, you need to call once <b>configuremsvc</b> if you want to use visual studio as default compiler.</p>
22+
<p>After each update of Visual studio, it will be required to call again <b>configuremsvc</b>.</p>
23+
24+
25+
## Example
26+
27+
```matlab
28+
configuremsvc()
29+
```
30+
31+
## See also
32+
33+
[havecompiler](havecompiler.md).
34+
## History
35+
36+
|Version|Description|
37+
|------|------|
38+
|1.0.0|initial version|
39+
40+
41+
## Author
42+
43+
Allan CORNET
44+
45+
46+
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
2+
3+
# dlgeneratecleaner
4+
5+
Generates cleaner.nls file for C++ gateway.
6+
7+
## Syntax
8+
9+
- dlgeneratecleaner(destinationdir)
10+
- dlgeneratecleaner(destinationdir, files)
11+
12+
## Input argument
13+
14+
- destinationdir - a string: destination directory where is generated the cleaner.nls file.
15+
- files - a string or a cell of string: list of files to delete.
16+
17+
## Description
18+
19+
20+
<p><b>dlgeneratecleaner</b> generates a 'cleaner.nls' to remove files.</p>
21+
22+
23+
## Example
24+
25+
See module skeleton for example
26+
```matlab
27+
dlgeneratecleaner(tempdir());
28+
text = fileread([tempdir(), '/cleaner.nls'])
29+
```
30+
31+
## See also
32+
33+
[dlgenerateunloader](dlgenerateunloader.md), [dlgenerategateway](dlgenerategateway.md).
34+
## History
35+
36+
|Version|Description|
37+
|------|------|
38+
|1.0.0|initial version|
39+
40+
41+
## Author
42+
43+
Allan CORNET
44+
45+
46+
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
2+
3+
# dlgenerategateway
4+
5+
Generates C++ gateway.
6+
7+
## Syntax
8+
9+
- dlgenerategateway(destinationdir, module_name, builtin_table)
10+
11+
## Input argument
12+
13+
- destinationdir - a string: destination directory where is generated the gateway file.
14+
- module_name - a string: module name exposed in Nelson.
15+
- builtin_table - a cell composed of cell with {name exposed in Nelson, nb output arguments, nb input arguments}
16+
17+
## Description
18+
19+
20+
<p><b>dlgenerategateway</b> generates a C++ gateway used by <b>addmodule</b>.</p>
21+
22+
23+
## Example
24+
25+
See module skeleton for example
26+
```matlab
27+
dlgenerategateway(tempdir(), 'module_skeleton', {{'cpp_sum', 1, 2}; {'cpp_sub', 2, 3}});
28+
text = fileread([tempdir(), '/Gateway.cpp'])
29+
```
30+
31+
## See also
32+
33+
[addmodule](../modules_manager/addmodule.md).
34+
## History
35+
36+
|Version|Description|
37+
|------|------|
38+
|1.0.0|initial version|
39+
40+
41+
## Author
42+
43+
Allan CORNET
44+
45+
46+

0 commit comments

Comments
 (0)