Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add a README and examples/platforms.
[simgrid.git] / buildtools / Cmake / simgrid.nsi.in
1 # define installer name\r
2 outFile "SimGrid@SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@_@CMAKE_SYSTEM_PROCESSOR@@BIN_EXE@"\r
3 \r
4 # set the default installation directory\r
5 InstallDir $PROGRAMFILES\SimGrid\r
6 \r
7 # The text to prompt the user to enter a directory\r
8 DirText "This will install Simgrid on your computer. Choose a directory"\r
9 \r
10 # default section start\r
11 section\r
12 \r
13         # install lib\r
14         CreateDirectory $INSTDIR\lib\r
15         setOutPath $INSTDIR\lib\r
16         file lib\libgras.@LIB_EXE@\r
17         file lib\libsimgrid.@LIB_EXE@\r
18         \r
19         #install headers\r
20         CreateDirectory  $INSTDIR\include\r
21         setOutPath $INSTDIR\include\r
22         file @CMAKE_HOME_DIRECTORY@\include\gras.h \r
23         file @CMAKE_HOME_DIRECTORY@\include\xbt.h\r
24         file include\simgrid_config.h\r
25         \r
26         CreateDirectory  $INSTDIR\include\xbt\r
27         setOutPath $INSTDIR\include\xbt\r
28         file @CMAKE_HOME_DIRECTORY@\include\xbt\misc.h\r
29         file @CMAKE_HOME_DIRECTORY@\include\xbt\sysdep.h\r
30         file @CMAKE_HOME_DIRECTORY@\include\xbt\virtu.h\r
31         file @CMAKE_HOME_DIRECTORY@\include\xbt\str.h\r
32         file @CMAKE_HOME_DIRECTORY@\include\xbt\strbuff.h\r
33         file @CMAKE_HOME_DIRECTORY@\include\xbt\hash.h\r
34         file @CMAKE_HOME_DIRECTORY@\include\xbt\function_types.h\r
35         file @CMAKE_HOME_DIRECTORY@\include\xbt\asserts.h \r
36         file @CMAKE_HOME_DIRECTORY@\include\xbt\ex.h\r
37         file @CMAKE_HOME_DIRECTORY@\include\xbt\log.h\r
38         file @CMAKE_HOME_DIRECTORY@\include\xbt\module.h\r
39         file @CMAKE_HOME_DIRECTORY@\include\xbt\mallocator.h\r
40         file @CMAKE_HOME_DIRECTORY@\include\xbt\dynar.h\r
41         file @CMAKE_HOME_DIRECTORY@\include\xbt\dict.h\r
42         file @CMAKE_HOME_DIRECTORY@\include\xbt\set.h\r
43         file @CMAKE_HOME_DIRECTORY@\include\xbt\heap.h\r
44         file @CMAKE_HOME_DIRECTORY@\include\xbt\graph.h\r
45         file @CMAKE_HOME_DIRECTORY@\include\xbt\fifo.h\r
46         file @CMAKE_HOME_DIRECTORY@\include\xbt\swag.h\r
47         file @CMAKE_HOME_DIRECTORY@\include\xbt\lib.h\r
48         file @CMAKE_HOME_DIRECTORY@\include\xbt\matrix.h\r
49         file @CMAKE_HOME_DIRECTORY@\include\xbt\peer.h\r
50         file @CMAKE_HOME_DIRECTORY@\include\xbt\config.h\r
51         file @CMAKE_HOME_DIRECTORY@\include\xbt\cunit.h\r
52         file @CMAKE_HOME_DIRECTORY@\include\xbt\graphxml_parse.h\r
53         file @CMAKE_HOME_DIRECTORY@\include\xbt\graphxml.h\r
54         file @CMAKE_HOME_DIRECTORY@\include\xbt\time.h\r
55         file @CMAKE_HOME_DIRECTORY@\include\xbt\synchro.h\r
56         file @CMAKE_HOME_DIRECTORY@\include\xbt\synchro_core.h\r
57         file @CMAKE_HOME_DIRECTORY@\include\xbt\queue.h\r
58         file @CMAKE_HOME_DIRECTORY@\include\xbt\setset.h\r
59         file @CMAKE_HOME_DIRECTORY@\include\xbt\mmalloc.h\r
60         file @CMAKE_HOME_DIRECTORY@\include\xbt\replay_trace_reader.h\r
61         file @CMAKE_HOME_DIRECTORY@\include\xbt\parmap.h\r
62         \r
63         CreateDirectory  $INSTDIR\include\mc\r
64         setOutPath $INSTDIR\include\mc\r
65         file @CMAKE_HOME_DIRECTORY@\include\mc\modelchecker.h\r
66         \r
67         CreateDirectory  $INSTDIR\include\msg\r
68         setOutPath $INSTDIR\include\msg\r
69         file @CMAKE_HOME_DIRECTORY@\include\msg\msg.h\r
70         file @CMAKE_HOME_DIRECTORY@\include\msg\datatypes.h\r
71         \r
72         CreateDirectory  $INSTDIR\include\simdag\r
73         setOutPath $INSTDIR\include\simdag\r
74         file @CMAKE_HOME_DIRECTORY@\include\simdag\simdag.h\r
75         file @CMAKE_HOME_DIRECTORY@\include\simdag\datatypes.h\r
76         \r
77         CreateDirectory  $INSTDIR\include\smpi\r
78         setOutPath $INSTDIR\include\smpi\r
79         file @CMAKE_HOME_DIRECTORY@\include\smpi\smpi.h\r
80         file @CMAKE_HOME_DIRECTORY@\include\smpi\mpi.h\r
81         file @CMAKE_HOME_DIRECTORY@\include\smpi\mpif.h\r
82         file @CMAKE_HOME_DIRECTORY@\include\smpi\smpi_cocci.h\r
83         file include\smpi\smpif.h\r
84         \r
85         CreateDirectory  $INSTDIR\include\surf\r
86         setOutPath $INSTDIR\include\surf\r
87         file @CMAKE_HOME_DIRECTORY@\include\surf\surfxml_parse.h\r
88         file @CMAKE_HOME_DIRECTORY@\include\surf\simgrid_dtd.h\r
89         file @CMAKE_HOME_DIRECTORY@\include\surf\surf_routing.h\r
90         \r
91         CreateDirectory  $INSTDIR\include\gras\r
92         setOutPath $INSTDIR\include\gras\r
93         file @CMAKE_HOME_DIRECTORY@\include\gras\datadesc.h\r
94         file @CMAKE_HOME_DIRECTORY@\include\gras\transport.h\r
95         file @CMAKE_HOME_DIRECTORY@\include\gras\virtu.h\r
96         file @CMAKE_HOME_DIRECTORY@\include\gras\emul.h\r
97         file @CMAKE_HOME_DIRECTORY@\include\gras\process.h\r
98         file @CMAKE_HOME_DIRECTORY@\include\gras\module.h\r
99         file @CMAKE_HOME_DIRECTORY@\include\gras\messages.h\r
100         file @CMAKE_HOME_DIRECTORY@\include\gras\timer.h\r
101         \r
102         CreateDirectory  $INSTDIR\include\amok\r
103         setOutPath $INSTDIR\include\amok\r
104         file @CMAKE_HOME_DIRECTORY@\include\amok\peermanagement.h\r
105         file @CMAKE_HOME_DIRECTORY@\include\amok\bandwidth.h\r
106         \r
107         CreateDirectory  $INSTDIR\include\instr\r
108         setOutPath $INSTDIR\include\instr\r
109         file @CMAKE_HOME_DIRECTORY@\include\instr\instr.h\r
110         \r
111         CreateDirectory  $INSTDIR\include\simix\r
112         setOutPath $INSTDIR\include\simix\r
113         file @CMAKE_HOME_DIRECTORY@\include\simix\simix.h\r
114         file @CMAKE_HOME_DIRECTORY@\include\simix\datatypes.h\r
115         file @CMAKE_HOME_DIRECTORY@\include\simix\context.h\r
116         \r
117         # insatll bin\r
118         CreateDirectory $INSTDIR\bin\r
119         setOutPath $INSTDIR\bin\r
120         file bin\colorize\r
121         file bin\graphicator@BIN_EXE@\r
122         file bin\gras_stub_generator@BIN_EXE@\r
123         file bin\simgrid_update_xml\r
124         file bin\smpicc\r
125         file bin\smpif2c\r
126         file bin\smpiff\r
127         file bin\smpirun\r
128         file bin\tesh\r
129         \r
130         # install doc\r
131         CreateDirectory $INSTDIR\doc\r
132         setOutPath $INSTDIR\doc\r
133         file /nonfatal /r @CMAKE_HOME_DIRECTORY@\doc\html\r
134         file /r @CMAKE_HOME_DIRECTORY@\doc\HelloWorld\r
135         \r
136         # install examples\r
137         CreateDirectory $INSTDIR\examples\r
138         setOutPath $INSTDIR\examples\r
139         file /r @CMAKE_HOME_DIRECTORY@\examples\platforms       \r
140         \r
141         # define uninstaller name\r
142         writeUninstaller $INSTDIR\uninstaller@BIN_EXE@\r
143 \r
144         # create a shortcut in the start menu programs directory\r
145         CreateDirectory "$SMPROGRAMS\SimGrid"\r
146         createShortCut  "$SMPROGRAMS\SimGrid\Uninstall simgrid.lnk" "$INSTDIR\uninstaller@BIN_EXE@"\r
147         createShortCut  "$SMPROGRAMS\SimGrid\Documentation.lnk" "$INSTDIR\doc\index.html"\r
148         \r
149         # Include for some of the windows message defines\r
150         !include "winmessages.nsh"\r
151         # HKLM (all users) vs HKCU (current user) defines\r
152         !define env_hklm 'HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"'\r
153         !define env_hkcu 'HKCU "Environment"'\r
154         # Set Variables\r
155         WriteRegExpandStr ${env_hklm} SIMGRID_ROOT $INSTDIR\r
156         WriteRegExpandStr ${env_hklm} GRAS_ROOT $INSTDIR\r
157         WriteRegExpandStr ${env_hklm} SIMGRID_VERSION @SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@\r
158 \r
159         MessageBox MB_OK "Installation was successful."\r
160 \r
161 # default section end\r
162 sectionEnd\r
163 \r
164 # create a section to define what the uninstaller does.\r
165 # the section will always be named "Uninstall"\r
166 section "Uninstall"\r
167 \r
168         # always delete uninstaller first\r
169         delete $INSTDIR\uninstaller@BIN_EXE@\r
170 \r
171         # delete installed libs\r
172         delete $INSTDIR\lib\libgras.@LIB_EXE@\r
173         delete $INSTDIR\lib\libsimgrid.@LIB_EXE@\r
174 \r
175         # delete installed bin\r
176         delete $INSTDIR\bin\colorize\r
177         delete $INSTDIR\bin\graphicator@BIN_EXE@\r
178         delete $INSTDIR\bin\gras_stub_generator@BIN_EXE@\r
179         delete $INSTDIR\bin\simgrid_update_xml\r
180         delete $INSTDIR\bin\smpicc\r
181         delete $INSTDIR\bin\smpif2c\r
182         delete $INSTDIR\bin\smpiff\r
183         delete $INSTDIR\bin\smpirun\r
184         delete $INSTDIR\bin\tesh\r
185         \r
186         # delete installed headers\r
187         delete $INSTDIR\include\gras.h \r
188         delete $INSTDIR\include\xbt.h\r
189         delete $INSTDIR\include\simgrid_config.h\r
190         delete $INSTDIR\include\xbt\misc.h\r
191         delete $INSTDIR\include\xbt\sysdep.h\r
192         delete $INSTDIR\include\xbt\virtu.h\r
193         delete $INSTDIR\include\xbt\str.h\r
194         delete $INSTDIR\include\xbt\strbuff.h\r
195         delete $INSTDIR\include\xbt\hash.h\r
196         delete $INSTDIR\include\xbt\function_types.h\r
197         delete $INSTDIR\include\xbt\asserts.h \r
198         delete $INSTDIR\include\xbt\ex.h\r
199         delete $INSTDIR\include\xbt\log.h\r
200         delete $INSTDIR\include\xbt\module.h\r
201         delete $INSTDIR\include\xbt\mallocator.h\r
202         delete $INSTDIR\include\xbt\dynar.h\r
203         delete $INSTDIR\include\xbt\dict.h\r
204         delete $INSTDIR\include\xbt\set.h\r
205         delete $INSTDIR\include\xbt\heap.h\r
206         delete $INSTDIR\include\xbt\graph.h\r
207         delete $INSTDIR\include\xbt\fifo.h\r
208         delete $INSTDIR\include\xbt\swag.h\r
209         delete $INSTDIR\include\xbt\lib.h\r
210         delete $INSTDIR\include\xbt\matrix.h\r
211         delete $INSTDIR\include\xbt\peer.h\r
212         delete $INSTDIR\include\xbt\config.h\r
213         delete $INSTDIR\include\xbt\cunit.h\r
214         delete $INSTDIR\include\xbt\graphxml_parse.h\r
215         delete $INSTDIR\include\xbt\graphxml.h\r
216         delete $INSTDIR\include\xbt\time.h\r
217         delete $INSTDIR\include\xbt\synchro.h\r
218         delete $INSTDIR\include\xbt\synchro_core.h\r
219         delete $INSTDIR\include\xbt\queue.h\r
220         delete $INSTDIR\include\xbt\setset.h\r
221         delete $INSTDIR\include\xbt\mmalloc.h\r
222         delete $INSTDIR\include\xbt\replay_trace_reader.h\r
223         delete $INSTDIR\include\xbt\parmap.h\r
224         delete $INSTDIR\include\mc\modelchecker.h\r
225         delete $INSTDIR\include\msg\msg.h\r
226         delete $INSTDIR\include\msg\datatypes.h \r
227         delete $INSTDIR\include\simdag\simdag.h\r
228         delete $INSTDIR\include\simdag\datatypes.h\r
229         delete $INSTDIR\include\smpi\smpi.h\r
230         delete $INSTDIR\include\smpi\mpi.h\r
231         delete $INSTDIR\include\smpi\mpif.h\r
232         delete $INSTDIR\include\smpi\smpi_cocci.h\r
233         delete $INSTDIR\include\smpi\smpif.h\r
234         delete $INSTDIR\include\surf\surfxml_parse.h\r
235         delete $INSTDIR\include\surf\simgrid_dtd.h\r
236         delete $INSTDIR\include\surf\surf_routing.h\r
237         delete $INSTDIR\include\gras\datadesc.h\r
238         delete $INSTDIR\include\gras\transport.h\r
239         delete $INSTDIR\include\gras\virtu.h\r
240         delete $INSTDIR\include\gras\emul.h\r
241         delete $INSTDIR\include\gras\process.h\r
242         delete $INSTDIR\include\gras\module.h\r
243         delete $INSTDIR\include\gras\messages.h\r
244         delete $INSTDIR\include\gras\timer.h\r
245         delete $INSTDIR\include\amok\peermanagement.h\r
246         delete $INSTDIR\include\amok\bandwidth.h\r
247         delete $INSTDIR\include\instr\instr.h\r
248         delete $INSTDIR\include\simix\simix.h\r
249         delete $INSTDIR\include\simix\datatypes.h\r
250         delete $INSTDIR\include\simix\context.h\r
251                 \r
252         # delete link\r
253         delete "$SMPROGRAMS\SimGrid\Uninstall simgrid.lnk"\r
254         delete "$SMPROGRAMS\SimGrid\Documentation.lnk"\r
255         \r
256         # now delete directories\r
257         RMDir  "$INSTDIR\bin"\r
258         RMDir  "$INSTDIR\lib"\r
259         RMDir  "$INSTDIR\include\simix"\r
260         RMDir  "$INSTDIR\include\instr"\r
261         RMDir  "$INSTDIR\include\amok"\r
262         RMDir  "$INSTDIR\include\gras"\r
263         RMDir  "$INSTDIR\include\surf"\r
264         RMDir  "$INSTDIR\include\smpi"\r
265         RMDir  "$INSTDIR\include\simdag"\r
266         RMDir  "$INSTDIR\include\msg"\r
267         RMDir  "$INSTDIR\include\mc"\r
268         RMDir  "$INSTDIR\include\xbt"\r
269         RMDir  "$INSTDIR\include"\r
270         RMDir  /r "$INSTDIR\doc"\r
271         RMDir  /r "$INSTDIR\examples"\r
272         RMDir  "$SMPROGRAMS\SimGrid"\r
273         \r
274         # Delete variable\r
275         DeleteRegValue ${env_hklm} SIMGRID_ROOT\r
276         DeleteRegValue ${env_hklm} GRAS_ROOT\r
277         DeleteRegValue ${env_hklm} SIMGRID_VERSION\r
278 \r
279 # uninstall section end\r
280 sectionEnd