Files
@ ffb1f378901c
Branch filter:
Location: EI/VirtualLeaf/src/VirtualLeaf-install.nsi
ffb1f378901c
4.6 KiB
text/x-nsis
Merged one file - need to run now!
--
user: Roeland Merks <roeland.merks@cwi.nl>
branch merge
branch 'default'
changed src/ChangeLog
changed src/VirtualLeaf-install.nsi
changed src/VirtualLeaf.pro
changed src/canvas.cpp
--
user: Roeland Merks <roeland.merks@cwi.nl>
branch merge
branch 'default'
changed src/ChangeLog
changed src/VirtualLeaf-install.nsi
changed src/VirtualLeaf.pro
changed src/canvas.cpp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 | # $Id$
# appends \ to the path if missing
# example: !insertmacro GetCleanDir "c:\blabla"
# Pop $0 => "c:\blabla\"
!macro GetCleanDir INPUTDIR
; ATTENTION: USE ON YOUR OWN RISK!
; Please report bugs here: http://stefan.bertels.org/
!define Index_GetCleanDir 'GetCleanDir_Line${__LINE__}'
Push $R0
Push $R1
StrCpy $R0 "${INPUTDIR}"
StrCmp $R0 "" ${Index_GetCleanDir}-finish
StrCpy $R1 "$R0" "" -1
StrCmp "$R1" "\" ${Index_GetCleanDir}-finish
StrCpy $R0 "$R0\"
${Index_GetCleanDir}-finish:
Pop $R1
Exch $R0
!undef Index_GetCleanDir
!macroend
# similar to "RMDIR /r DIRECTORY", but does not remove DIRECTORY itself
# example: !insertmacro RemoveFilesAndSubDirs "$INSTDIR"
!macro RemoveFilesAndSubDirs DIRECTORY
# ATTENTION: USE ON YOUR OWN RISK!
# Please report bugs here: http://stefan.bertels.org/
!define Index_RemoveFilesAndSubDirs 'RemoveFilesAndSubDirs_${__LINE__}'
Push $R0
Push $R1
Push $R2
!insertmacro GetCleanDir "${DIRECTORY}"
Pop $R2
FindFirst $R0 $R1 "$R2*.*"
${Index_RemoveFilesAndSubDirs}-loop:
StrCmp $R1 "" ${Index_RemoveFilesAndSubDirs}-done
StrCmp $R1 "." ${Index_RemoveFilesAndSubDirs}-next
StrCmp $R1 ".." ${Index_RemoveFilesAndSubDirs}-next
IfFileExists "$R2$R1\*.*" ${Index_RemoveFilesAndSubDirs}-directory
; file
Delete "$R2$R1"
goto ${Index_RemoveFilesAndSubDirs}-next
${Index_RemoveFilesAndSubDirs}-directory:
; directory
RMDir /r "$R2$R1"
${Index_RemoveFilesAndSubDirs}-next:
FindNext $R0 $R1
Goto ${Index_RemoveFilesAndSubDirs}-loop
${Index_RemoveFilesAndSubDirs}-done:
FindClose $R0
Pop $R2
Pop $R1
Pop $R0
!undef Index_RemoveFilesAndSubDirs
!macroend
!define PRODUCT_NAME "The Virtual Leaf"
!define PRODUCT_VERSION "1.0"
!define PRODUCT_PUBLISHER "Center for Mathematics and Computer Science (CWI)"
!define PRODUCT_WEB_SITE "www.cwi.nl"
!define EXECUTABLE "VirtualLeaf.exe"
!define PROGICON "leaficon.ico"
!define SETUP_BITMAP "leaficon.ico"
# MUI 1.67 compatible ------
!include "MUI.nsh"
!include "EnvVarUpdate.nsh"
# MUI Settings
!define MUI_ABORTWARNING
!define MUI_ICON "leaficon.ico"
!define MUI_UNICON "leaficon.ico"
# Welcome page
!insertmacro MUI_PAGE_WELCOME
# License page
!insertmacro MUI_PAGE_LICENSE "..\doc\gpl3.txt"
# Components page
!insertmacro MUI_PAGE_COMPONENTS
# Directory page
!insertmacro MUI_PAGE_DIRECTORY
# Instfiles page
!insertmacro MUI_PAGE_INSTFILES
# Finish page
!insertmacro MUI_PAGE_FINISH
# Uninstaller pages
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH
# Language files
!insertmacro MUI_LANGUAGE "English"
# MUI end ------
# set the name of the installer
outfile "VirtualLeaf-install.exe"
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
ShowInstDetails show
ShowUnInstDetails show
# define the directory to install to
installDir C:\VirtualLeaf
# Request application privileges
RequestExecutionLevel user
section "Virtual Leaf executable"
#sectionIn RO
# define the output path for the Virtual Leaf executable
setOutPath $INSTDIR\bin
writeUninstaller $INSTDIR\bin\uninstaller.exe
file ..\bin\VirtualLeaf.exe
# Required DLLs
setOutPath $INSTDIR\bin
file ..\lib\libiconv\bin\libiconv-2.dll
file ..\lib\libxml2\lib\libxml2.dll
file ..\lib\libz\bin\zlib1.dll
# Is the pegging of these DLLs to a specific QT version a problem?
file C:\Qt\2010.02.1\mingw\bin\mingwm10.dll
file C:\Qt\2010.02.1\mingw\bin\libgcc_s_dw2-1.dll
file C:\Qt\2010.02.1\qt\bin\Qt3Support4.dll
file C:\Qt\2010.02.1\qt\bin\QtCore4.dll
file C:\Qt\2010.02.1\qt\bin\QtGui4.dll
file C:\Qt\2010.02.1\qt\bin\QtNetwork4.dll
file C:\Qt\2010.02.1\qt\bin\QtSql4.dll
file C:\Qt\2010.02.1\qt\bin\QtXml4.dll
# Prepend the Virtual Leaf bin directory to the installers PATH
${EnvVarUpdate} $0 "PATH" "P" "HKCU" "$INSTDIR\bin"
sectionEnd
section "Virtual Leaf plugins"
# define the output path for the Virtual Leaf models
setOutPath $INSTDIR\bin\models
file ..\bin\models\*
sectionEnd
section "Virtual Leaf data"
# define the output path for the Virtual Leaf models
setOutPath $INSTDIR\data\leaves
file ..\data\leaves\*
sectionEnd
section "Virtual Leaf docs"
# define the output path for the Virtual Leaf documentation
setOutPath $INSTDIR\doc
file ..\doc\*
sectionEnd
# create a section to define what the uninstaller does.
# the section will always be named "Uninstall"
section "Uninstall"
# Always delete uninstaller first
delete $INSTDIR\uninstaller.exe
# Now delete installed file
!insertmacro RemoveFilesAndSubDirs "$INSTDIR"
# Last but not least - delete the path
${un.EnvVarUpdate} $0 "PATH" "R" "HKCU" "$INSTDIR\bin"
sectionEnd
# finis
|