diff options
| author | Kevin Smith <git@kismith.co.uk> | 2009-08-11 19:28:51 (GMT) | 
|---|---|---|
| committer | Kevin Smith <git@kismith.co.uk> | 2009-08-11 19:29:14 (GMT) | 
| commit | 0a2f7274a08ab5ed6e1305977d85fa02b01aaea7 (patch) | |
| tree | 512d1c55a363bc8cda6fdf79a4a0e4be693be931 /Swift/Packaging/nsis/swift.nsi | |
| parent | 8fa9a04d820f73dc00b3dcb137b417b846e6ff68 (diff) | |
| download | swift-0a2f7274a08ab5ed6e1305977d85fa02b01aaea7.zip swift-0a2f7274a08ab5ed6e1305977d85fa02b01aaea7.tar.bz2  | |
Making the nsis installer copy qt files et al.
Diffstat (limited to 'Swift/Packaging/nsis/swift.nsi')
| -rw-r--r-- | Swift/Packaging/nsis/swift.nsi | 93 | 
1 files changed, 93 insertions, 0 deletions
diff --git a/Swift/Packaging/nsis/swift.nsi b/Swift/Packaging/nsis/swift.nsi new file mode 100644 index 0000000..f62450b --- /dev/null +++ b/Swift/Packaging/nsis/swift.nsi @@ -0,0 +1,93 @@ +# set dependencies +!define buildDate "20090811" +!define swiftBuildDir "..\..\QtUI\" +!define openSSLDir "G:\usr\openssl-0.9.8a.win32\bin" +!define msvccRedistributableDir "G:\devel\vcredist" +!define msvccRedistributableExe "vcredist_x86.exe" +!define qtDLLDir "G:\Qt\4.5.2-lgpl-vs2008\bin" + + +# define installer name +outFile "Swift-installer-win32-${buildDate}.exe" +  +# set desktop as install directory +installDir "$PROGRAMFILES\Swift" + +SetCompressor lzma + +# default section start +section "Main install" +  +# define output path +setOutPath $INSTDIR +  +# Specify files to go in output path. +# If you update this list, update the uninstall list too. +file ${swiftBuildDir}\Swift.exe +file ${openSSLDir}\ssleay32.dll +file ${openSSLDir}\libeay32.dll +file ${qtDLLDir}\phonon4.dll +file ${qtDLLDir}\QtCore4.dll +file ${qtDLLDir}\QtGui4.dll +file ${qtDLLDir}\QtWebKit4.dll +file ${qtDLLDir}\QtNetwork4.dll + +# create start menu item +createShortCut "$SMPROGRAMS\Swift\Swift.lnk" "$INSTDIR\Swift.exe" +createShortCut "$SMPROGRAMS\Swift\Unistall Swift.lnk" "$INSTDIR\unistall.exe" + +# Add the information to Add/Remove +WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Swift" "DisplayName" "Swift" +WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Swift" "UninstallString" "$\"$INSTDIR\uninstall.exe$\"" +WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Swift" "QuietUninstallString" "$\"$INSTDIR\uninstall.exe$\"" + + +# define uninstaller name +writeUninstaller $INSTDIR\uninstaller.exe +  +# default section end +sectionEnd + +Section -Prerequisites +# http://nsis.sourceforge.net/Embedding_other_installers +    SetOutPath $INSTDIR\Prerequisites +    MessageBox MB_YESNO "Install C++ Runtime?" /SD IDYES IDNO endRuntime +    File ${msvccRedistributableDir}\${msvccRedistributableExe} +    ExecWait "$INSTDIR\Prerequisites\${msvccRedistributableExe}" +    delete $INSTDIR\Prerequisites\${msvccRedistributableExe} +    delete $INSTDIR\Prerequisites +    Goto endRuntime +  endRuntime: +SectionEnd + +section "autostart" +  MessageBox MB_YESNO "Would you like Swift to run at startup?" /SD IDYES IDNO endAutostart +    WriteRegStr HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Run" "Swift" "$INSTDIR\Swift.exe" +    Goto endAutostart +  endAutostart: +sectionEnd + +# create a section to define what the uninstaller does. +# the section will always be named "Uninstall" +section "Uninstall" +    MessageBox MB_YESNO "The uninstaller will remove Swift. Are you sure?" /SD IDYES IDNO endUninstall +    # Always delete uninstaller first +    delete $INSTDIR\uninstaller.exe +  +    # now delete installed files +    delete $INSTDIR\Swift.exe +    delete $INSTDIR\ssleay32.dll +    delete $INSTDIR\libeay32.dll +    delete $INSTDIR\phonon4.dll +    delete $INSTDIR\QtCore4.dll +    delete $INSTDIR\QtGui4.dll +    delete $INSTDIR\QtWebKit4.dll +    delete $INSTDIR\QtNetwork4.dll +    Goto endUninstall +  endUninstall:  +sectionEnd + + +# TODO http://nsis.sourceforge.net/Check_whether_your_application_is_running_during_uninstallation +# http://nsis.sourceforge.net/Date_and_time_in_installer_or_application_name +# http://nsis.sourceforge.net/Removing_'Nullsoft_Install_System_vX.XX'_String_from_installer  | 
 Swift