0bdca9348915816eb03f2d6a668321b95b1399c3
[scilab.git] / scilab / tools / innosetup / code_modules.iss
1 //
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) DIGITEO - 2010 - Allan CORNET
4 //
5 // This file must be used under the terms of the CeCILL.
6 // This source file is licensed as described in the file COPYING, which
7 // you should have received as part of this distribution.  The terms
8 // are also available at
9 // http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
10 //
11 //------------------------------------------------------------------------------
12 // Inno Setup Script (5.3 and more) for Scilab (UNICODE version required)
13 //
14 //------------------------------------------------------------------------------
15 function CreateModulesFile: Boolean;
16     Var ModuleFileName : String;
17     i : Integer;
18     d : Integer;
19     ModulesXmlFileLines: TArrayOfString;
20     begin
21         i := 0;
22
23         setArrayLength(ModulesXmlFileLines, 256);
24         for d := 0 to GetArrayLength(ModulesXmlFileLines)-1 do
25           begin
26             ModulesXmlFileLines[d] := '';
27           end;
28
29         ModuleFileName := ExpandConstant('{app}') +'\etc\modules.xml';
30
31         ModulesXmlFileLines[i] := '<?xml version="1.0" encoding="UTF-8" standalone="no"?>'; i := i + 1;
32         ModulesXmlFileLines[i] := '<!DOCTYPE modules SYSTEM "../modules/core/xml/modules.dtd">'; i := i + 1;
33         ModulesXmlFileLines[i] := '<!-- =================== -->'; i := i + 1;
34         ModulesXmlFileLines[i] := '<!--'; i := i + 1;
35         ModulesXmlFileLines[i] := ' Modules list for Scilab'; i := i + 1;
36         ModulesXmlFileLines[i] := ' @author Scilab Enterprises'; i := i + 1;
37         ModulesXmlFileLines[i] := ' @date 2013'; i := i + 1;
38         ModulesXmlFileLines[i] := ' ==================='; i := i + 1;
39         ModulesXmlFileLines[i] := ' Do not touch if you do not know what you are doing'; i := i + 1;
40         ModulesXmlFileLines[i] := ' Warning "core" module must be always the first module'; i := i + 1;
41         ModulesXmlFileLines[i] := ' activate="yes" module will be launched ( or not "no")'; i := i + 1;
42         ModulesXmlFileLines[i] := ' -->'; i := i + 1;
43         ModulesXmlFileLines[i] := '<!-- =================== -->'; i := i + 1;
44         ModulesXmlFileLines[i] := '<modules>'; i := i + 1;
45
46         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
47             begin
48                 ModulesXmlFileLines[i] := '<module name="core" activate="yes"/>'; i := i + 1;
49                 ModulesXmlFileLines[i] := '<module name="api_scilab" activate="yes"/>'; i := i + 1;
50             end;
51
52         if (IsComponentSelected( ExpandConstant('{#COMPN_JVM_MODULE}') )) then
53             begin
54                 ModulesXmlFileLines[i] := '<module name="helptools" activate="yes"/>'; i := i + 1;
55             end;
56
57         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
58             begin
59                 ModulesXmlFileLines[i] := '<module name="differential_equations" activate="yes"/>'; i := i + 1;
60                 ModulesXmlFileLines[i] := '<module name="double" activate="yes"/>'; i := i + 1;
61                 ModulesXmlFileLines[i] := '<module name="elementary_functions" activate="yes"/>'; i := i + 1;
62                 ModulesXmlFileLines[i] := '<module name="functions" activate="yes"/>'; i := i + 1;
63                 ModulesXmlFileLines[i] := '<module name="fileio" activate="yes"/>'; i := i + 1;
64             end;
65
66         if IsComponentSelected( ExpandConstant('{#COMPN_GRAPHICS}') ) then
67             begin
68                 ModulesXmlFileLines[i] := '<module name="graphics" activate="yes"/>'; i := i + 1;
69                 ModulesXmlFileLines[i] := '<module name="renderer" activate="yes"/>'; i := i + 1;
70                 ModulesXmlFileLines[i] := '<module name="graphic_objects" activate="yes"/>'; i := i + 1;
71                 ModulesXmlFileLines[i] := '<module name="graphic_export" activate="yes"/>'; i := i + 1;
72             end;
73
74         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
75             begin
76                 ModulesXmlFileLines[i] := '<module name="boolean" activate="yes"/>'; i := i + 1;
77                 ModulesXmlFileLines[i] := '<module name="cacsd" activate="yes"/>'; i := i + 1;
78                 ModulesXmlFileLines[i] := '<module name="data_structures" activate="yes"/>'; i := i + 1;
79                 ModulesXmlFileLines[i] := '<module name="console" activate="yes"/>'; i := i + 1;
80             end;
81
82         if (IsComponentSelected( ExpandConstant('{#COMPN_JVM_MODULE}') )) then
83             begin
84                 ModulesXmlFileLines[i] := '<module name="action_binding" activate="yes"/>'; i := i + 1;
85             end;
86
87         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
88             begin
89                 ModulesXmlFileLines[i] := '<module name="completion" activate="yes"/>'; i := i + 1;
90                 ModulesXmlFileLines[i] := '<module name="history_manager" activate="yes"/>'; i := i + 1;
91             end;
92
93         if (IsComponentSelected( ExpandConstant('{#COMPN_JVM_MODULE}') )) then
94             begin
95                 ModulesXmlFileLines[i] := '<module name="gui" activate="yes"/>'; i := i + 1;
96                 ModulesXmlFileLines[i] := '<module name="preferences" activate="yes"/>'; i := i + 1;
97             end;
98
99         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
100             begin
101                 ModulesXmlFileLines[i] := '<module name="dynamic_link" activate="yes"/>'; i := i + 1;
102                 ModulesXmlFileLines[i] := '<module name="integer" activate="yes"/>'; i := i + 1;
103                 ModulesXmlFileLines[i] := '<module name="io" activate="yes"/>'; i := i + 1;
104                 ModulesXmlFileLines[i] := '<module name="output_stream" activate="yes"/>'; i := i + 1;
105             end;
106
107         if (IsComponentSelected( ExpandConstant('{#COMPN_JVM_MODULE}') )) then
108             begin
109                 ModulesXmlFileLines[i] := '<module name="jvm" activate="yes"/>'; i := i + 1;
110                 ModulesXmlFileLines[i] := '<module name="commons" activate="yes"/>'; i := i + 1;
111             end;
112
113         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
114             begin
115                 ModulesXmlFileLines[i] := '<module name="linear_algebra" activate="yes"/>'; i := i + 1;
116                 ModulesXmlFileLines[i] := '<module name="localization" activate="yes"/>'; i := i + 1;
117             end;
118
119         if (IsComponentSelected( ExpandConstant('{#COMPN_JVM_MODULE}') )) then
120             begin
121                 ModulesXmlFileLines[i] := '<module name="graph" activate="yes"/>'; i := i + 1;
122                 ModulesXmlFileLines[i] := '<module name="ui_data" activate="yes"/>'; i := i + 1;
123                 ModulesXmlFileLines[i] := '<module name="history_browser" activate="yes"/>'; i := i + 1;
124             end;
125
126         ModulesXmlFileLines[i] := '<module name="intersci" activate="yes"/>'; i := i + 1;
127         ModulesXmlFileLines[i] := '<module name="interpolation" activate="yes"/>'; i := i + 1;
128
129         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
130             begin
131                 ModulesXmlFileLines[i] := '<module name="optimization" activate="yes"/>'; i := i + 1;
132             end;
133
134         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
135             begin
136                 ModulesXmlFileLines[i] := '<module name="overloading" activate="yes"/>'; i := i + 1;
137             end;
138
139         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
140             begin
141                 ModulesXmlFileLines[i] := '<module name="polynomials" activate="yes"/>'; i := i + 1;
142             end;
143
144         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
145             begin
146                 ModulesXmlFileLines[i] := '<module name="signal_processing" activate="yes"/>'; i := i + 1;
147             end;
148
149         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
150             begin
151                 ModulesXmlFileLines[i] := '<module name="sparse" activate="yes"/>'; i := i + 1;
152             end;
153
154         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
155             begin
156                 ModulesXmlFileLines[i] := '<module name="special_functions" activate="yes"/>'; i := i + 1;
157                 ModulesXmlFileLines[i] := '<module name="string" activate="yes"/>'; i := i + 1;
158             end;
159
160         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
161             begin
162                 ModulesXmlFileLines[i] := '<module name="symbolic" activate="yes"/>'; i := i + 1;
163             end;
164
165         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
166             begin
167                 ModulesXmlFileLines[i] := '<module name="time" activate="yes"/>'; i := i + 1;
168                 ModulesXmlFileLines[i] := '<module name="windows_tools" activate="yes"/>'; i := i + 1;
169             end;
170
171         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
172             begin
173                 ModulesXmlFileLines[i] := '<module name="statistics" activate="yes"/>'; i := i + 1;
174             end;
175
176         ModulesXmlFileLines[i] := '<!-- comments -->'; i := i + 1;
177
178         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
179             begin
180                 ModulesXmlFileLines[i] := '<module name="arnoldi" activate="yes"/>'; i := i + 1;
181             end;
182
183         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
184             begin
185                 ModulesXmlFileLines[i] := '<module name="compatibility_functions" activate="yes"/>'; i := i + 1;
186             end;
187
188         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) and IsComponentSelected( ExpandConstant('{#COMPN_JVM_MODULE}') ) then
189             begin
190                 ModulesXmlFileLines[i] := '<module name="javasci" activate="yes"/>'; i := i + 1;
191             end;
192
193         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
194             begin
195                 ModulesXmlFileLines[i] := '<module name="m2sci" activate="yes"/>'; i := i + 1;
196             end;
197
198         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
199             begin
200                 ModulesXmlFileLines[i] := '<module name="mexlib" activate="yes"/>'; i := i + 1;
201             end;
202
203         if IsComponentSelected( ExpandConstant('{#COMPN_TCLSCI}') ) then
204             begin
205                 ModulesXmlFileLines[i] := '<module name="tclsci" activate="yes"/>'; i := i + 1;
206             end;
207
208         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
209             begin
210                 ModulesXmlFileLines[i] := '<module name="sound" activate="yes"/>'; i := i + 1;
211             end;
212
213         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
214             begin
215                 ModulesXmlFileLines[i] := '<module name="external_objects" activate="yes"/>'; i := i + 1;
216             end;
217
218         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
219             begin
220                 ModulesXmlFileLines[i] := '<module name="randlib" activate="yes"/>'; i := i + 1;
221             end;
222
223         if IsComponentSelected( ExpandConstant('{#COMPN_DEVTOOLS}') ) then
224             begin
225                 ModulesXmlFileLines[i] := '<module name="development_tools" activate="yes"/>'; i := i + 1;
226             end;
227
228         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
229             begin
230                 ModulesXmlFileLines[i] := '<module name="demo_tools" activate="yes"/>'; i := i + 1;
231             end;
232
233         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
234             begin
235                 ModulesXmlFileLines[i] := '<module name="spreadsheet" activate="yes"/>'; i := i + 1;
236             end;
237
238         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
239             begin
240                 ModulesXmlFileLines[i] := '<module name="call_scilab" activate="yes"/>'; i := i + 1;
241             end;
242
243         ModulesXmlFileLines[i] := '<!-- comments -->'; i := i + 1;
244
245         if IsComponentSelected( ExpandConstant('{#COMPN_XCOS}') ) then
246             begin
247                 ModulesXmlFileLines[i] := '<module name="xcos" activate="yes"/>'; i := i + 1;
248                 ModulesXmlFileLines[i] := '<module name="scicos" activate="yes"/>'; i := i + 1;
249                 ModulesXmlFileLines[i] := '<module name="scicos_blocks" activate="yes"/>'; i := i + 1;
250             end;
251
252         ModulesXmlFileLines[i] := '<!-- comments -->'; i := i + 1;
253
254         if IsComponentSelected( ExpandConstant('{#COMPN_FFTW}') ) then
255             begin
256                 ModulesXmlFileLines[i] := '<module name="fftw" activate="yes"/>'; i := i + 1;
257             end;
258
259         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
260             begin
261                 ModulesXmlFileLines[i] := '<module name="umfpack" activate="yes"/>'; i := i + 1;
262             end;
263
264         ModulesXmlFileLines[i] := '<!-- comments -->'; i := i + 1;
265
266         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
267             begin
268                 ModulesXmlFileLines[i] := '<module name="genetic_algorithms" activate="yes"/>'; i := i + 1;
269                 ModulesXmlFileLines[i] := '<module name="simulated_annealing" activate="yes"/>'; i := i + 1;
270                 ModulesXmlFileLines[i] := '<module name="parameters" activate="yes"/>'; i := i + 1;
271             end;
272
273         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
274             begin
275                 ModulesXmlFileLines[i] := '<module name="matio" activate="yes"/>'; i := i + 1;
276             end;
277
278         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
279             begin
280                 ModulesXmlFileLines[i] := '<module name="atoms" activate="yes"/>'; i := i + 1;
281             end;
282
283         if IsComponentSelected( ExpandConstant('{#COMPN_MODULES_MANAGER}') ) then
284             begin
285                 ModulesXmlFileLines[i] := '<module name="modules_manager" activate="yes"/>'; i := i + 1;
286             end;
287
288         if (IsComponentSelected( ExpandConstant('{#COMPN_JVM_MODULE}') )) then
289             begin
290                 ModulesXmlFileLines[i] := '<module name="types" activate="yes"/>'; i := i + 1;
291             end;
292
293         ModulesXmlFileLines[i] := '<module name="hdf5" activate="yes"/>'; i := i + 1;
294
295         if IsComponentSelected( ExpandConstant('{#COMPN_SCINOTES}') ) then
296             begin
297                 ModulesXmlFileLines[i] := '<module name="scinotes" activate="yes"/>'; i := i + 1;
298             end;
299             
300 #ifndef SCILAB_F2C
301         if IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') ) then
302             begin
303                 ModulesXmlFileLines[i] := '<module name="parallel" activate="yes"/>'; i := i + 1;
304             end;
305 #endif
306         if (IsComponentSelected( ExpandConstant('{#COMPN_SCILAB}') )) then
307             begin
308                 ModulesXmlFileLines[i] := '<module name="xml" activate="yes"/>'; i := i + 1;
309             end;
310
311
312         ModulesXmlFileLines[i] := '</modules>'; i := i + 1;
313
314     Result := SaveStringsToFile(ModuleFileName, ModulesXmlFileLines, False);
315
316     end;
317 //------------------------------------------------------------------------------