update windows installer
[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
22     i := 0;
23
24     setArrayLength(ModulesXmlFileLines, 256);
25     for d := 0 to GetArrayLength(ModulesXmlFileLines)-1 do
26       begin
27         ModulesXmlFileLines[d] := '';
28       end;
29
30     ModuleFileName := ExpandConstant('{app}') +'\etc\modules.xml';
31
32     ModulesXmlFileLines[i] := '<?xml version="1.0" encoding="UTF-8" standalone="no"?>'; i := i + 1;
33     ModulesXmlFileLines[i] := '<!DOCTYPE modules SYSTEM "../modules/core/xml/modules.dtd">'; i := i + 1;
34     ModulesXmlFileLines[i] := '<!-- =================== -->'; i := i + 1;
35     ModulesXmlFileLines[i] := '<!--'; i := i + 1;
36     ModulesXmlFileLines[i] := ' Modules list for Scilab'; i := i + 1;
37     ModulesXmlFileLines[i] := ' @author Scilab Enterprises'; i := i + 1;
38     ModulesXmlFileLines[i] := ' @date 2013'; i := i + 1;
39     ModulesXmlFileLines[i] := ' ==================='; i := i + 1;
40     ModulesXmlFileLines[i] := ' Do not touch if you do not know what you are doing'; i := i + 1;
41     ModulesXmlFileLines[i] := ' Warning "core" module must be always the first module'; i := i + 1;
42     ModulesXmlFileLines[i] := ' activate="yes" module will be launched ( or not "no")'; i := i + 1;
43     ModulesXmlFileLines[i] := ' -->'; i := i + 1;
44     ModulesXmlFileLines[i] := '<!-- =================== -->'; i := i + 1;
45     ModulesXmlFileLines[i] := '<modules>'; i := i + 1;
46
47     ModulesXmlFileLines[i] := '<module name="core" activate="yes"/>'; i := i + 1;
48     ModulesXmlFileLines[i] := '<module name="double" activate="yes"/>'; i := i + 1;
49     ModulesXmlFileLines[i] := '<module name="api_scilab" activate="yes"/>'; i := i + 1;
50     ModulesXmlFileLines[i] := '<module name="differential_equations" activate="yes"/>'; i := i + 1;
51     ModulesXmlFileLines[i] := '<module name="elementary_functions" activate="yes"/>'; i := i + 1;
52     ModulesXmlFileLines[i] := '<module name="functions" activate="yes"/>'; i := i + 1;
53     ModulesXmlFileLines[i] := '<module name="fileio" activate="yes"/>'; i := i + 1;
54     ModulesXmlFileLines[i] := '<module name="boolean" activate="yes"/>'; i := i + 1;
55     ModulesXmlFileLines[i] := '<module name="cacsd" activate="yes"/>'; i := i + 1;
56     ModulesXmlFileLines[i] := '<module name="data_structures" activate="yes"/>'; i := i + 1;
57     ModulesXmlFileLines[i] := '<module name="console" activate="yes"/>'; i := i + 1;
58     ModulesXmlFileLines[i] := '<module name="completion" activate="yes"/>'; i := i + 1;
59     ModulesXmlFileLines[i] := '<module name="history_manager" activate="yes"/>'; i := i + 1;
60     ModulesXmlFileLines[i] := '<module name="dynamic_link" activate="yes"/>'; i := i + 1;
61     ModulesXmlFileLines[i] := '<module name="integer" activate="yes"/>'; i := i + 1;
62     ModulesXmlFileLines[i] := '<module name="io" activate="yes"/>'; i := i + 1;
63     ModulesXmlFileLines[i] := '<module name="output_stream" activate="yes"/>'; i := i + 1;
64     ModulesXmlFileLines[i] := '<module name="intersci" activate="yes"/>'; i := i + 1;
65     ModulesXmlFileLines[i] := '<module name="linear_algebra" activate="yes"/>'; i := i + 1;
66     ModulesXmlFileLines[i] := '<module name="localization" activate="yes"/>'; i := i + 1;
67     ModulesXmlFileLines[i] := '<module name="interpolation" activate="yes"/>'; i := i + 1;
68     ModulesXmlFileLines[i] := '<module name="optimization" activate="yes"/>'; i := i + 1;
69     ModulesXmlFileLines[i] := '<module name="overloading" activate="yes"/>'; i := i + 1;
70     ModulesXmlFileLines[i] := '<module name="polynomials" activate="yes"/>'; i := i + 1;
71     ModulesXmlFileLines[i] := '<module name="signal_processing" activate="yes"/>'; i := i + 1;
72     ModulesXmlFileLines[i] := '<module name="sparse" activate="yes"/>'; i := i + 1;
73     ModulesXmlFileLines[i] := '<module name="special_functions" activate="yes"/>'; i := i + 1;
74     ModulesXmlFileLines[i] := '<module name="string" activate="yes"/>'; i := i + 1;
75     ModulesXmlFileLines[i] := '<module name="symbolic" activate="yes"/>'; i := i + 1;
76     ModulesXmlFileLines[i] := '<module name="time" activate="yes"/>'; i := i + 1;
77     ModulesXmlFileLines[i] := '<module name="windows_tools" activate="yes"/>'; i := i + 1;
78     ModulesXmlFileLines[i] := '<module name="statistics" activate="yes"/>'; i := i + 1;
79     ModulesXmlFileLines[i] := '<module name="arnoldi" activate="yes"/>'; i := i + 1;
80     ModulesXmlFileLines[i] := '<module name="compatibility_functions" activate="yes"/>'; i := i + 1;
81     ModulesXmlFileLines[i] := '<module name="m2sci" activate="yes"/>'; i := i + 1;
82     ModulesXmlFileLines[i] := '<module name="mexlib" activate="yes"/>'; i := i + 1;
83     ModulesXmlFileLines[i] := '<module name="sound" activate="yes"/>'; i := i + 1;
84     ModulesXmlFileLines[i] := '<module name="external_objects" activate="yes"/>'; i := i + 1;
85     ModulesXmlFileLines[i] := '<module name="randlib" activate="yes"/>'; i := i + 1;
86     ModulesXmlFileLines[i] := '<module name="demo_tools" activate="yes"/>'; i := i + 1;
87     ModulesXmlFileLines[i] := '<module name="spreadsheet" activate="yes"/>'; i := i + 1;
88     ModulesXmlFileLines[i] := '<module name="call_scilab" activate="yes"/>'; i := i + 1;
89     ModulesXmlFileLines[i] := '<module name="umfpack" activate="yes"/>'; i := i + 1;
90     ModulesXmlFileLines[i] := '<module name="genetic_algorithms" activate="yes"/>'; i := i + 1;
91     ModulesXmlFileLines[i] := '<module name="simulated_annealing" activate="yes"/>'; i := i + 1;
92     ModulesXmlFileLines[i] := '<module name="parameters" activate="yes"/>'; i := i + 1;
93     ModulesXmlFileLines[i] := '<module name="matio" activate="yes"/>'; i := i + 1;
94     ModulesXmlFileLines[i] := '<module name="atoms" activate="yes"/>'; i := i + 1;
95     ModulesXmlFileLines[i] := '<module name="xml" activate="yes"/>'; i := i + 1;
96     ModulesXmlFileLines[i] := '<module name="tclsci" activate="yes"/>'; i := i + 1;
97     ModulesXmlFileLines[i] := '<module name="hdf5" activate="yes"/>'; i := i + 1;
98     ModulesXmlFileLines[i] := '<module name="fftw" activate="yes"/>'; i := i + 1;
99
100 #ifndef SCILAB_F2C
101     ModulesXmlFileLines[i] := '<module name="parallel" activate="yes"/>'; i := i + 1;
102 #endif
103
104
105
106     ModulesXmlFileLines[i] := '<!-- JMV dependencies -->'; i := i + 1;
107     if (IsComponentSelected( ExpandConstant('{#COMPN_JVM_MODULE}') )) then
108     begin
109         ModulesXmlFileLines[i] := '<module name="helptools" activate="yes"/>'; i := i + 1;
110         ModulesXmlFileLines[i] := '<module name="action_binding" activate="yes"/>'; i := i + 1;
111         ModulesXmlFileLines[i] := '<module name="preferences" activate="yes"/>'; i := i + 1;
112         ModulesXmlFileLines[i] := '<module name="jvm" activate="yes"/>'; i := i + 1;
113         ModulesXmlFileLines[i] := '<module name="commons" activate="yes"/>'; i := i + 1;
114         ModulesXmlFileLines[i] := '<module name="history_browser" activate="yes"/>'; i := i + 1;
115         ModulesXmlFileLines[i] := '<module name="graph" activate="yes"/>'; i := i + 1;
116         ModulesXmlFileLines[i] := '<module name="javasci" activate="yes"/>'; i := i + 1;
117         ModulesXmlFileLines[i] := '<module name="types" activate="yes"/>'; i := i + 1;
118     end;
119
120     ModulesXmlFileLines[i] := '<!-- Scinotes dependencies -->'; i := i + 1;
121     if IsComponentSelected( ExpandConstant('{#COMPN_SCINOTES}') ) then
122     begin
123         ModulesXmlFileLines[i] := '<module name="scinotes" activate="yes"/>'; i := i + 1;
124     end;
125
126     ModulesXmlFileLines[i] := '<!-- Graphics dependencies -->'; i := i + 1;
127     if IsComponentSelected( ExpandConstant('{#COMPN_GRAPHICS}') ) then
128     begin
129         ModulesXmlFileLines[i] := '<module name="gui" activate="yes"/>'; i := i + 1;
130         ModulesXmlFileLines[i] := '<module name="graphics" activate="yes"/>'; i := i + 1;
131         ModulesXmlFileLines[i] := '<module name="renderer" activate="yes"/>'; i := i + 1;
132         ModulesXmlFileLines[i] := '<module name="graphic_objects" activate="yes"/>'; i := i + 1;
133         ModulesXmlFileLines[i] := '<module name="graphic_export" activate="yes"/>'; i := i + 1;
134         ModulesXmlFileLines[i] := '<module name="ui_data" activate="yes"/>'; i := i + 1;
135     end;
136
137     ModulesXmlFileLines[i] := '<!-- Xcos dependencies -->'; i := i + 1;
138     if IsComponentSelected( ExpandConstant('{#COMPN_XCOS}') ) then
139     begin
140         ModulesXmlFileLines[i] := '<module name="xcos" activate="yes"/>'; i := i + 1;
141         ModulesXmlFileLines[i] := '<module name="scicos" activate="yes"/>'; i := i + 1;
142         ModulesXmlFileLines[i] := '<module name="scicos_blocks" activate="yes"/>'; i := i + 1;
143     end;
144
145     ModulesXmlFileLines[i] := '<!-- Dev tools dependencies -->'; i := i + 1;
146     if IsComponentSelected( ExpandConstant('{#COMPN_DEVTOOLS}') ) then
147     begin
148         ModulesXmlFileLines[i] := '<module name="development_tools" activate="yes"/>'; i := i + 1;
149         ModulesXmlFileLines[i] := '<module name="modules_manager" activate="yes"/>'; i := i + 1;
150     end;
151
152     ModulesXmlFileLines[i] := '</modules>'; i := i + 1;
153
154     Result := SaveStringsToFile(ModuleFileName, ModulesXmlFileLines, False);
155
156 end;
157 //------------------------------------------------------------------------------