X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/309b581b3300040e701e459fad72b5a8bd5667f8..50486ccd16de39a3659592fab44adfaf3104a086:/buildtools/Cmake/simgrid.nsi.in diff --git a/buildtools/Cmake/simgrid.nsi.in b/buildtools/Cmake/simgrid.nsi.in index 838b8103bb..d627181d35 100644 --- a/buildtools/Cmake/simgrid.nsi.in +++ b/buildtools/Cmake/simgrid.nsi.in @@ -1,8 +1,5 @@ !include "MUI2.nsh" -Name "Simgrid" -outFile "SimGrid@SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@_@CMAKE_SYSTEM_PROCESSOR@@BIN_EXE@" - ;-------------------------------- ;Interface Configuration @@ -17,21 +14,34 @@ outFile "SimGrid@SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION !insertmacro MUI_PAGE_COMPONENTS !insertmacro MUI_PAGE_DIRECTORY !insertmacro MUI_PAGE_INSTFILES + !insertmacro MUI_PAGE_FINISH !insertmacro MUI_UNPAGE_CONFIRM !insertmacro MUI_UNPAGE_INSTFILES - + !insertmacro MUI_UNPAGE_FINISH + ;-------------------------------- ;Languages !insertmacro MUI_LANGUAGE "English" !insertmacro MUI_LANGUAGE "French" ;-------------------------------- +Name "Simgrid" +outFile "SimGrid@SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@_@NSIS_WIN_VERSION@@BIN_EXE@" +Icon "@CMAKE_HOME_DIRECTORY@\doc\webcruft\SimGrid.ico" + # set the default installation directory -InstallDir "c:\SimGrid@SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@" +InstallDir c:\SimGrid@SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@ Section "Libraries and Headers" LibSection + setOutPath $INSTDIR + file @CMAKE_HOME_DIRECTORY@\AUTHORS + file @CMAKE_HOME_DIRECTORY@\Changelog + file @CMAKE_HOME_DIRECTORY@\COPYING + file @CMAKE_HOME_DIRECTORY@\LICENSE-LGPL-2.1 + file @CMAKE_HOME_DIRECTORY@\NEWS + # install lib CreateDirectory $INSTDIR\lib setOutPath $INSTDIR\lib @@ -162,18 +172,50 @@ Section "Documentation" DocSection # create a shortcut in the start menu programs directory CreateDirectory "$SMPROGRAMS\SimGrid" createShortCut "$SMPROGRAMS\SimGrid\Documentation.lnk" "$INSTDIR\doc\html\index.html" + createShortCut "$SMPROGRAMS\SimGrid\Website.lnk" "http://simgrid.gforge.inria.fr/" SectionEnd Section "Examples" ExamplesSection - - # install examples + CreateDirectory $INSTDIR\examples setOutPath $INSTDIR\examples + + #install examples for platforms file /r @CMAKE_HOME_DIRECTORY@\examples\platforms + + # install example HelloWorld file /r @CMAKE_HOME_DIRECTORY@\doc\HelloWorld - # create a shortcut in the start menu programs directory - createShortCut "$SMPROGRAMS\SimGrid\HelloWorld project.lnk" "$INSTDIR\examples\HelloWorld" + + # install example MasterSlave + CreateDirectory $INSTDIR\examples\MasterSlave + setOutPath $INSTDIR\examples\MasterSlave + file @CMAKE_HOME_DIRECTORY@\examples\msg\masterslave\masterslave_forwarder.c + file @CMAKE_HOME_DIRECTORY@\examples\msg\masterslave\deployment_masterslave_forwarder.xml + file @CMAKE_HOME_DIRECTORY@\examples\msg\msg_platform.xml + file @CMAKE_HOME_DIRECTORY@\doc\HelloWorld\CMakeLists.txt + file @CMAKE_HOME_DIRECTORY@\doc\HelloWorld\FindPCRE.cmake + + # create shortcuts in the start menu programs directory + CreateDirectory "$SMPROGRAMS\SimGrid\Examples\" + createShortCut "$SMPROGRAMS\SimGrid\Examples\HelloWorld project.lnk" "$INSTDIR\examples\HelloWorld" + createShortCut "$SMPROGRAMS\SimGrid\Examples\MasterSlave project.lnk" "$INSTDIR\examples\MasterSlave" + +SectionEnd +Section "Pcre library" PCRESection + # install pcre library + CreateDirectory $INSTDIR\GnuWin32 + setOutPath $INSTDIR\GnuWin32 + file "@PATH_PCRE_LICENCE@\LICENCE" + + CreateDirectory $INSTDIR\GnuWin32\lib + setOutPath $INSTDIR\GnuWin32\lib + file @PATHLIBPCRE@\libpcre.a + file @PATHLIBPCRE@\libpcreposix.a + CreateDirectory $INSTDIR\GnuWin32\include + setOutPath $INSTDIR\GnuWin32\include + file @PATH_PCRE_H@\pcre.h + file @PATH_PCRE_H@\pcreposix.h SectionEnd # default section start @@ -194,6 +236,14 @@ section WriteRegExpandStr ${env_hklm} SIMGRID_ROOT $INSTDIR WriteRegExpandStr ${env_hklm} SIMGRID_VERSION @SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@ + WriteRegExpandStr ${env_hklm} SIMGRID_PCRE_LIBRARY_PATH $INSTDIR\GnuWin32 + WriteRegExpandStr ${env_hklm} SIMGRID_PCRE_LIBRARY_VERSION "8.12" + + WriteRegStr HKCU "SOFTWARE\SimGrid" "Version" "@SIMGRID_VERSION_MAJOR@.@SIMGRID_VERSION_MINOR@.@SIMGRID_VERSION_PATCH@" + WriteRegStr HKCU "SOFTWARE\SimGrid" "InstallPath" "$INSTDIR" + + SetRebootFlag true + # default section end sectionEnd @@ -201,17 +251,20 @@ LangString DESC_LibSection ${LANG_ENGLISH} "Install Simgrid and gras libraries LangString DESC_BinSection ${LANG_ENGLISH} "Install some useful tools for Simgrid." LangString DESC_DocSection ${LANG_ENGLISH} "Generated (doxygen) documentation." LangString DESC_ExamplesSection ${LANG_ENGLISH} "Simgrid's HelloWorld example and some classical platforms." +LangString DESC_PCRESection ${LANG_ENGLISH} "Install the PCRE and PCREPOSIX libraries for SimGrid." LangString DESC_LibSection ${LANG_FRENCH} "Installer les librairies Simgrid et Gras et leurs EntĂȘtes." LangString DESC_BinSection ${LANG_FRENCH} "Installer les outils optionnels." LangString DESC_DocSection ${LANG_FRENCH} "Installer la documentation." LangString DESC_ExamplesSection ${LANG_FRENCH} "Installer un exemple 'HelloWorld' et des fichiers de plate-formes types." +LangString DESC_PCRESection ${LANG_FRENCH} "Installer les librairies PCRE et PCREPOSIX for SimGrid." !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN !insertmacro MUI_DESCRIPTION_TEXT ${LibSection} $(DESC_LibSection) !insertmacro MUI_DESCRIPTION_TEXT ${BinSection} $(DESC_BinSection) !insertmacro MUI_DESCRIPTION_TEXT ${DocSection} $(DESC_DocSection) !insertmacro MUI_DESCRIPTION_TEXT ${ExamplesSection} $(DESC_ExamplesSection) + !insertmacro MUI_DESCRIPTION_TEXT ${PCRESection} $(DESC_PCRESection) !insertmacro MUI_FUNCTION_DESCRIPTION_END # create a section to define what the uninstaller does. @@ -305,7 +358,16 @@ section "Uninstall" # delete link delete "$SMPROGRAMS\SimGrid\Uninstall simgrid.lnk" delete "$SMPROGRAMS\SimGrid\Documentation.lnk" - delete "$SMPROGRAMS\SimGrid\HelloWorld project.lnk" + delete "$SMPROGRAMS\SimGrid\Website.lnk" + delete "$SMPROGRAMS\SimGrid\Examples\HelloWorld project.lnk" + delete "$SMPROGRAMS\SimGrid\Examples\MasterSlave project.lnk" + + # delete EXTRA FILES + delete $INSTDIR\AUTHORS + delete $INSTDIR\Changelog + delete $INSTDIR\COPYING + delete $INSTDIR\LICENSE-LGPL-2.1 + delete $INSTDIR\NEWS # now delete directories RMDir "$INSTDIR\bin" @@ -323,11 +385,21 @@ section "Uninstall" RMDir "$INSTDIR\include" RMDir /r "$INSTDIR\doc" RMDir /r "$INSTDIR\examples" + RMDir "$SMPROGRAMS\SimGrid\Examples" RMDir "$SMPROGRAMS\SimGrid" + # delete PCRE + RMDir /r "$INSTDIR\GnuWin32" + # Delete variable DeleteRegValue ${env_hklm} SIMGRID_ROOT DeleteRegValue ${env_hklm} SIMGRID_VERSION - + DeleteRegValue ${env_hklm} SIMGRID_PCRE_LIBRARY_PATH + DeleteRegValue ${env_hklm} SIMGRID_PCRE_LIBRARY_VERSION + DeleteRegKey HKCU "SOFTWARE\SimGrid" + + # delete INSTDIR + RMDir /r "$INSTDIR" + # uninstall section end sectionEnd \ No newline at end of file