4 outFile "SimGrid@SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@_@CMAKE_SYSTEM_PROCESSOR@@BIN_EXE@"
\r
6 ;--------------------------------
\r
7 ;Interface Configuration
\r
9 !define MUI_HEADERIMAGE
\r
10 !define MUI_HEADERIMAGE_BITMAP "@CMAKE_HOME_DIRECTORY@\doc\webcruft\simgrid_logo_win.bmp" ; optional
\r
11 !define MUI_ABORTWARNING
\r
13 ;--------------------------------
\r
16 !insertmacro MUI_PAGE_LICENSE "@CMAKE_HOME_DIRECTORY@\LICENSE-LGPL-2.1"
\r
17 !insertmacro MUI_PAGE_COMPONENTS
\r
18 !insertmacro MUI_PAGE_DIRECTORY
\r
19 !insertmacro MUI_PAGE_INSTFILES
\r
21 !insertmacro MUI_UNPAGE_CONFIRM
\r
22 !insertmacro MUI_UNPAGE_INSTFILES
\r
24 ;--------------------------------
\r
26 !insertmacro MUI_LANGUAGE "English"
\r
27 !insertmacro MUI_LANGUAGE "French"
\r
28 ;--------------------------------
\r
30 # set the default installation directory
\r
31 InstallDir "c:\SimGrid@SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@"
\r
33 Section "Libraries and Headers" LibSection
\r
36 CreateDirectory $INSTDIR\lib
\r
37 setOutPath $INSTDIR\lib
\r
38 file lib\libgras.@LIB_EXE@
\r
39 file lib\libsimgrid.@LIB_EXE@
\r
42 CreateDirectory $INSTDIR\include
\r
43 setOutPath $INSTDIR\include
\r
44 file @CMAKE_HOME_DIRECTORY@\include\gras.h
\r
45 file @CMAKE_HOME_DIRECTORY@\include\xbt.h
\r
46 file include\simgrid_config.h
\r
48 CreateDirectory $INSTDIR\include\xbt
\r
49 setOutPath $INSTDIR\include\xbt
\r
50 file @CMAKE_HOME_DIRECTORY@\include\xbt\misc.h
\r
51 file @CMAKE_HOME_DIRECTORY@\include\xbt\sysdep.h
\r
52 file @CMAKE_HOME_DIRECTORY@\include\xbt\virtu.h
\r
53 file @CMAKE_HOME_DIRECTORY@\include\xbt\str.h
\r
54 file @CMAKE_HOME_DIRECTORY@\include\xbt\strbuff.h
\r
55 file @CMAKE_HOME_DIRECTORY@\include\xbt\hash.h
\r
56 file @CMAKE_HOME_DIRECTORY@\include\xbt\function_types.h
\r
57 file @CMAKE_HOME_DIRECTORY@\include\xbt\asserts.h
\r
58 file @CMAKE_HOME_DIRECTORY@\include\xbt\ex.h
\r
59 file @CMAKE_HOME_DIRECTORY@\include\xbt\log.h
\r
60 file @CMAKE_HOME_DIRECTORY@\include\xbt\module.h
\r
61 file @CMAKE_HOME_DIRECTORY@\include\xbt\mallocator.h
\r
62 file @CMAKE_HOME_DIRECTORY@\include\xbt\dynar.h
\r
63 file @CMAKE_HOME_DIRECTORY@\include\xbt\dict.h
\r
64 file @CMAKE_HOME_DIRECTORY@\include\xbt\set.h
\r
65 file @CMAKE_HOME_DIRECTORY@\include\xbt\heap.h
\r
66 file @CMAKE_HOME_DIRECTORY@\include\xbt\graph.h
\r
67 file @CMAKE_HOME_DIRECTORY@\include\xbt\fifo.h
\r
68 file @CMAKE_HOME_DIRECTORY@\include\xbt\swag.h
\r
69 file @CMAKE_HOME_DIRECTORY@\include\xbt\lib.h
\r
70 file @CMAKE_HOME_DIRECTORY@\include\xbt\matrix.h
\r
71 file @CMAKE_HOME_DIRECTORY@\include\xbt\peer.h
\r
72 file @CMAKE_HOME_DIRECTORY@\include\xbt\config.h
\r
73 file @CMAKE_HOME_DIRECTORY@\include\xbt\cunit.h
\r
74 file @CMAKE_HOME_DIRECTORY@\include\xbt\graphxml_parse.h
\r
75 file @CMAKE_HOME_DIRECTORY@\include\xbt\graphxml.h
\r
76 file @CMAKE_HOME_DIRECTORY@\include\xbt\time.h
\r
77 file @CMAKE_HOME_DIRECTORY@\include\xbt\synchro.h
\r
78 file @CMAKE_HOME_DIRECTORY@\include\xbt\synchro_core.h
\r
79 file @CMAKE_HOME_DIRECTORY@\include\xbt\queue.h
\r
80 file @CMAKE_HOME_DIRECTORY@\include\xbt\setset.h
\r
81 file @CMAKE_HOME_DIRECTORY@\include\xbt\mmalloc.h
\r
82 file @CMAKE_HOME_DIRECTORY@\include\xbt\replay_trace_reader.h
\r
83 file @CMAKE_HOME_DIRECTORY@\include\xbt\parmap.h
\r
85 CreateDirectory $INSTDIR\include\mc
\r
86 setOutPath $INSTDIR\include\mc
\r
87 file @CMAKE_HOME_DIRECTORY@\include\mc\modelchecker.h
\r
89 CreateDirectory $INSTDIR\include\msg
\r
90 setOutPath $INSTDIR\include\msg
\r
91 file @CMAKE_HOME_DIRECTORY@\include\msg\msg.h
\r
92 file @CMAKE_HOME_DIRECTORY@\include\msg\datatypes.h
\r
94 CreateDirectory $INSTDIR\include\simdag
\r
95 setOutPath $INSTDIR\include\simdag
\r
96 file @CMAKE_HOME_DIRECTORY@\include\simdag\simdag.h
\r
97 file @CMAKE_HOME_DIRECTORY@\include\simdag\datatypes.h
\r
99 CreateDirectory $INSTDIR\include\smpi
\r
100 setOutPath $INSTDIR\include\smpi
\r
101 file @CMAKE_HOME_DIRECTORY@\include\smpi\smpi.h
\r
102 file @CMAKE_HOME_DIRECTORY@\include\smpi\mpi.h
\r
103 file @CMAKE_HOME_DIRECTORY@\include\smpi\mpif.h
\r
104 file @CMAKE_HOME_DIRECTORY@\include\smpi\smpi_cocci.h
\r
105 file include\smpi\smpif.h
\r
107 CreateDirectory $INSTDIR\include\surf
\r
108 setOutPath $INSTDIR\include\surf
\r
109 file @CMAKE_HOME_DIRECTORY@\include\surf\surfxml_parse.h
\r
110 file @CMAKE_HOME_DIRECTORY@\include\surf\simgrid_dtd.h
\r
111 file @CMAKE_HOME_DIRECTORY@\include\surf\surf_routing.h
\r
113 CreateDirectory $INSTDIR\include\gras
\r
114 setOutPath $INSTDIR\include\gras
\r
115 file @CMAKE_HOME_DIRECTORY@\include\gras\datadesc.h
\r
116 file @CMAKE_HOME_DIRECTORY@\include\gras\transport.h
\r
117 file @CMAKE_HOME_DIRECTORY@\include\gras\virtu.h
\r
118 file @CMAKE_HOME_DIRECTORY@\include\gras\emul.h
\r
119 file @CMAKE_HOME_DIRECTORY@\include\gras\process.h
\r
120 file @CMAKE_HOME_DIRECTORY@\include\gras\module.h
\r
121 file @CMAKE_HOME_DIRECTORY@\include\gras\messages.h
\r
122 file @CMAKE_HOME_DIRECTORY@\include\gras\timer.h
\r
124 CreateDirectory $INSTDIR\include\amok
\r
125 setOutPath $INSTDIR\include\amok
\r
126 file @CMAKE_HOME_DIRECTORY@\include\amok\peermanagement.h
\r
127 file @CMAKE_HOME_DIRECTORY@\include\amok\bandwidth.h
\r
129 CreateDirectory $INSTDIR\include\instr
\r
130 setOutPath $INSTDIR\include\instr
\r
131 file @CMAKE_HOME_DIRECTORY@\include\instr\instr.h
\r
133 CreateDirectory $INSTDIR\include\simix
\r
134 setOutPath $INSTDIR\include\simix
\r
135 file @CMAKE_HOME_DIRECTORY@\include\simix\simix.h
\r
136 file @CMAKE_HOME_DIRECTORY@\include\simix\datatypes.h
\r
137 file @CMAKE_HOME_DIRECTORY@\include\simix\context.h
\r
140 Section "Binaries" BinSection
\r
143 CreateDirectory $INSTDIR\bin
\r
144 setOutPath $INSTDIR\bin
\r
146 file bin\graphicator@BIN_EXE@
\r
147 file bin\gras_stub_generator@BIN_EXE@
\r
148 file bin\simgrid_update_xml
\r
156 Section "Documentation" DocSection
\r
159 CreateDirectory $INSTDIR\doc
\r
160 setOutPath $INSTDIR\doc
\r
161 file /nonfatal /r @CMAKE_HOME_DIRECTORY@\doc\html
\r
162 # create a shortcut in the start menu programs directory
\r
163 CreateDirectory "$SMPROGRAMS\SimGrid"
\r
164 createShortCut "$SMPROGRAMS\SimGrid\Documentation.lnk" "$INSTDIR\doc\html\index.html"
\r
167 Section "Examples" ExamplesSection
\r
170 CreateDirectory $INSTDIR\examples
\r
171 setOutPath $INSTDIR\examples
\r
172 file /r @CMAKE_HOME_DIRECTORY@\examples\platforms
\r
173 file /r @CMAKE_HOME_DIRECTORY@\doc\HelloWorld
\r
174 # create a shortcut in the start menu programs directory
\r
175 createShortCut "$SMPROGRAMS\SimGrid\HelloWorld project.lnk" "$INSTDIR\examples\HelloWorld"
\r
179 # default section start
\r
181 # define uninstaller name
\r
182 writeUninstaller $INSTDIR\uninstaller@BIN_EXE@
\r
184 # create a shortcut in the start menu programs directory
\r
185 CreateDirectory "$SMPROGRAMS\SimGrid"
\r
186 createShortCut "$SMPROGRAMS\SimGrid\Uninstall simgrid.lnk" "$INSTDIR\uninstaller@BIN_EXE@"
\r
188 # Include for some of the windows message defines
\r
189 !include "winmessages.nsh"
\r
190 # HKLM (all users) vs HKCU (current user) defines
\r
191 !define env_hklm 'HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"'
\r
192 !define env_hkcu 'HKCU "Environment"'
\r
194 WriteRegExpandStr ${env_hklm} SIMGRID_ROOT $INSTDIR
\r
195 WriteRegExpandStr ${env_hklm} SIMGRID_VERSION @SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@
\r
197 # default section end
\r
200 LangString DESC_LibSection ${LANG_ENGLISH} "Install Simgrid and gras libraries with associated headers."
\r
201 LangString DESC_BinSection ${LANG_ENGLISH} "Install some useful tools for Simgrid."
\r
202 LangString DESC_DocSection ${LANG_ENGLISH} "Generated (doxygen) documentation."
\r
203 LangString DESC_ExamplesSection ${LANG_ENGLISH} "Simgrid's HelloWorld example and some classical platforms."
\r
205 LangString DESC_LibSection ${LANG_FRENCH} "Installer les librairies Simgrid et Gras et leurs EntĂȘtes."
\r
206 LangString DESC_BinSection ${LANG_FRENCH} "Installer les outils optionnels."
\r
207 LangString DESC_DocSection ${LANG_FRENCH} "Installer la documentation."
\r
208 LangString DESC_ExamplesSection ${LANG_FRENCH} "Installer un exemple 'HelloWorld' et des fichiers de plate-formes types."
\r
210 !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
\r
211 !insertmacro MUI_DESCRIPTION_TEXT ${LibSection} $(DESC_LibSection)
\r
212 !insertmacro MUI_DESCRIPTION_TEXT ${BinSection} $(DESC_BinSection)
\r
213 !insertmacro MUI_DESCRIPTION_TEXT ${DocSection} $(DESC_DocSection)
\r
214 !insertmacro MUI_DESCRIPTION_TEXT ${ExamplesSection} $(DESC_ExamplesSection)
\r
215 !insertmacro MUI_FUNCTION_DESCRIPTION_END
\r
217 # create a section to define what the uninstaller does.
\r
218 # the section will always be named "Uninstall"
\r
219 section "Uninstall"
\r
221 # always delete uninstaller first
\r
222 delete $INSTDIR\uninstaller@BIN_EXE@
\r
224 # delete installed libs
\r
225 delete $INSTDIR\lib\libgras.@LIB_EXE@
\r
226 delete $INSTDIR\lib\libsimgrid.@LIB_EXE@
\r
228 # delete installed bin
\r
229 delete $INSTDIR\bin\colorize
\r
230 delete $INSTDIR\bin\graphicator@BIN_EXE@
\r
231 delete $INSTDIR\bin\gras_stub_generator@BIN_EXE@
\r
232 delete $INSTDIR\bin\simgrid_update_xml
\r
233 delete $INSTDIR\bin\smpicc
\r
234 delete $INSTDIR\bin\smpif2c
\r
235 delete $INSTDIR\bin\smpiff
\r
236 delete $INSTDIR\bin\smpirun
\r
237 delete $INSTDIR\bin\tesh
\r
239 # delete installed headers
\r
240 delete $INSTDIR\include\gras.h
\r
241 delete $INSTDIR\include\xbt.h
\r
242 delete $INSTDIR\include\simgrid_config.h
\r
243 delete $INSTDIR\include\xbt\misc.h
\r
244 delete $INSTDIR\include\xbt\sysdep.h
\r
245 delete $INSTDIR\include\xbt\virtu.h
\r
246 delete $INSTDIR\include\xbt\str.h
\r
247 delete $INSTDIR\include\xbt\strbuff.h
\r
248 delete $INSTDIR\include\xbt\hash.h
\r
249 delete $INSTDIR\include\xbt\function_types.h
\r
250 delete $INSTDIR\include\xbt\asserts.h
\r
251 delete $INSTDIR\include\xbt\ex.h
\r
252 delete $INSTDIR\include\xbt\log.h
\r
253 delete $INSTDIR\include\xbt\module.h
\r
254 delete $INSTDIR\include\xbt\mallocator.h
\r
255 delete $INSTDIR\include\xbt\dynar.h
\r
256 delete $INSTDIR\include\xbt\dict.h
\r
257 delete $INSTDIR\include\xbt\set.h
\r
258 delete $INSTDIR\include\xbt\heap.h
\r
259 delete $INSTDIR\include\xbt\graph.h
\r
260 delete $INSTDIR\include\xbt\fifo.h
\r
261 delete $INSTDIR\include\xbt\swag.h
\r
262 delete $INSTDIR\include\xbt\lib.h
\r
263 delete $INSTDIR\include\xbt\matrix.h
\r
264 delete $INSTDIR\include\xbt\peer.h
\r
265 delete $INSTDIR\include\xbt\config.h
\r
266 delete $INSTDIR\include\xbt\cunit.h
\r
267 delete $INSTDIR\include\xbt\graphxml_parse.h
\r
268 delete $INSTDIR\include\xbt\graphxml.h
\r
269 delete $INSTDIR\include\xbt\time.h
\r
270 delete $INSTDIR\include\xbt\synchro.h
\r
271 delete $INSTDIR\include\xbt\synchro_core.h
\r
272 delete $INSTDIR\include\xbt\queue.h
\r
273 delete $INSTDIR\include\xbt\setset.h
\r
274 delete $INSTDIR\include\xbt\mmalloc.h
\r
275 delete $INSTDIR\include\xbt\replay_trace_reader.h
\r
276 delete $INSTDIR\include\xbt\parmap.h
\r
277 delete $INSTDIR\include\mc\modelchecker.h
\r
278 delete $INSTDIR\include\msg\msg.h
\r
279 delete $INSTDIR\include\msg\datatypes.h
\r
280 delete $INSTDIR\include\simdag\simdag.h
\r
281 delete $INSTDIR\include\simdag\datatypes.h
\r
282 delete $INSTDIR\include\smpi\smpi.h
\r
283 delete $INSTDIR\include\smpi\mpi.h
\r
284 delete $INSTDIR\include\smpi\mpif.h
\r
285 delete $INSTDIR\include\smpi\smpi_cocci.h
\r
286 delete $INSTDIR\include\smpi\smpif.h
\r
287 delete $INSTDIR\include\surf\surfxml_parse.h
\r
288 delete $INSTDIR\include\surf\simgrid_dtd.h
\r
289 delete $INSTDIR\include\surf\surf_routing.h
\r
290 delete $INSTDIR\include\gras\datadesc.h
\r
291 delete $INSTDIR\include\gras\transport.h
\r
292 delete $INSTDIR\include\gras\virtu.h
\r
293 delete $INSTDIR\include\gras\emul.h
\r
294 delete $INSTDIR\include\gras\process.h
\r
295 delete $INSTDIR\include\gras\module.h
\r
296 delete $INSTDIR\include\gras\messages.h
\r
297 delete $INSTDIR\include\gras\timer.h
\r
298 delete $INSTDIR\include\amok\peermanagement.h
\r
299 delete $INSTDIR\include\amok\bandwidth.h
\r
300 delete $INSTDIR\include\instr\instr.h
\r
301 delete $INSTDIR\include\simix\simix.h
\r
302 delete $INSTDIR\include\simix\datatypes.h
\r
303 delete $INSTDIR\include\simix\context.h
\r
306 delete "$SMPROGRAMS\SimGrid\Uninstall simgrid.lnk"
\r
307 delete "$SMPROGRAMS\SimGrid\Documentation.lnk"
\r
308 delete "$SMPROGRAMS\SimGrid\HelloWorld project.lnk"
\r
310 # now delete directories
\r
311 RMDir "$INSTDIR\bin"
\r
312 RMDir "$INSTDIR\lib"
\r
313 RMDir "$INSTDIR\include\simix"
\r
314 RMDir "$INSTDIR\include\instr"
\r
315 RMDir "$INSTDIR\include\amok"
\r
316 RMDir "$INSTDIR\include\gras"
\r
317 RMDir "$INSTDIR\include\surf"
\r
318 RMDir "$INSTDIR\include\smpi"
\r
319 RMDir "$INSTDIR\include\simdag"
\r
320 RMDir "$INSTDIR\include\msg"
\r
321 RMDir "$INSTDIR\include\mc"
\r
322 RMDir "$INSTDIR\include\xbt"
\r
323 RMDir "$INSTDIR\include"
\r
324 RMDir /r "$INSTDIR\doc"
\r
325 RMDir /r "$INSTDIR\examples"
\r
326 RMDir "$SMPROGRAMS\SimGrid"
\r
329 DeleteRegValue ${env_hklm} SIMGRID_ROOT
\r
330 DeleteRegValue ${env_hklm} SIMGRID_VERSION
\r
332 # uninstall section end
\r