4
4
5
5
; **** REQUIREMENTS FOR COMPILING THIS INSTALLER SCRIPT ****
6
6
; The following files must exist in the directory defined by the SourceDir paramter under the [Setup] section below:
7
- ; GDAL-1.9.2.win32-py2.7.exe (Python GDAL)
8
- ; gdal-111-1600-core.msi (C++ GDAL)
9
- ; gdal-111-1600-x64-core.msi (C++ GDAL)
10
- ; mpi_x86.msi
11
- ; mpi_x64.msi
12
- ; vcredist_x86_2010.exe
13
- ; vcredist_x64_2010.exe
14
- ; Firewall.bat
7
+ ; GDAL-2.1.0.win32-py2.7.msi (Python GDAL)
8
+ ; gdal-201-1800-core.msi (C++ GDAL for x86)
9
+ ; gdal-201-1800-x64-core.msi (C++ GDAL for x64)
10
+ ; msmpisdk.msi (Microsoft MPI v7.1)
11
+ ; MSMpiSetup.exe (Microsoft MPI v7.1)
12
+ ; vcredist_x86_2010.exe (Micosoft C++ 2010 x86 redistributable)
13
+ ; vcredist_x64_2010.exe (Micosoft C++ 2010 x64 redistributable);
15
14
; GDAL 32-bit library files must exist under the following directory (this directory should exists under the dir defined by SourceDir parameter):
16
15
; GDAL_32/
17
16
; GDAL 64-bit library files must exist under the following directory (this directory should exists under the dir defined by SourceDir parameter):
26
25
; *** SOURCE CONTROL REQUIREMENTS ****
27
26
; All the files (as listed below) under the WindowsInstaller folder are included in source control
28
27
; This script file (setup.ino).
29
- ; Firewall.bat - Any time this file is updated it should be copied to the dir specified by the SoureDir param in the [Setup] section of this script
30
28
; taudem.bmp - Any time this file is updated it should be copied to the dir specified by the SoureDir param in the [Setup] section of this script
31
29
32
30
33
31
#define MyAppName " TauDEM"
34
- #define MyAppVersion " 5.3.6 "
32
+ #define MyAppVersion " 5.3.7 "
35
33
#define MyAppPublisher " Utah State University"
36
34
#define MyAppURL " http://hydrology.usu.edu/taudem/taudem5/index.html"
37
35
@@ -75,16 +73,16 @@ Name: "C:\GDAL"
75
73
76
74
[Files]
77
75
; copy files
78
- Source : " GDAL-1.9.2. win32-py2.7.exe " ; DestDir : " {app} \setup_files" ; Flags : ignoreversion
79
- Source : " gdal-111-1600 -core.msi" ; DestDir : " {app} \setup_files" ; Flags : ignoreversion ; Check : not Is64BitInstallMode
80
- Source : " gdal-111-1600 -x64-core.msi" ; DestDir : " {app} \setup_files" ; Flags : ignoreversion ; Check : Is64BitInstallMode
76
+ Source : " GDAL-2.1.0. win32-py2.7.msi " ; DestDir : " {app} \setup_files" ; Flags : ignoreversion
77
+ Source : " gdal-201-1800 -core.msi" ; DestDir : " {app} \setup_files" ; Flags : ignoreversion ; Check : not Is64BitInstallMode
78
+ Source : " gdal-201-1800 -x64-core.msi" ; DestDir : " {app} \setup_files" ; Flags : ignoreversion ; Check : Is64BitInstallMode
81
79
82
- Source : " mpi_x86 .msi" ; DestDir : " {app} \setup_files" ; Flags : ignoreversion ; Check : not Is64BitInstallMode
83
- Source : " mpi_x64.msi " ; DestDir : " {app} \setup_files" ; Flags : ignoreversion ; Check : Is64BitInstallMode
80
+ Source : " msmpisdk .msi" ; DestDir : " {app} \setup_files" ; Flags : ignoreversion
81
+ Source : " MSMpiSetup.exe " ; DestDir : " {app} \setup_files" ; Flags : ignoreversion
84
82
85
83
; since for 64bit installtion we need both x86 and x64 redestributables no need to check OS architecture for copying files
86
- Source : " vcredist_x86_2010 .exe" ; DestDir : " {app} \setup_files" ; Flags : ignoreversion
87
- Source : " vcredist_x64_2010 .exe" ; DestDir : " {app} \setup_files" ; Flags : ignoreversion
84
+ Source : " vc_redist.x86_2015 .exe" ; DestDir : " {app} \setup_files" ; Flags : ignoreversion
85
+ Source : " vc_redist.x64_2015 .exe" ; DestDir : " {app} \setup_files" ; Flags : ignoreversion
88
86
89
87
Source : " GDAL_64\*" ; DestDir : " C:\GDAL" ; Flags : ignoreversion recursesubdirs createallsubdirs ; Check : Is64BitInstallMode
90
88
Source : " GDAL_32\*" ; DestDir : " C:\GDAL" ; Flags : ignoreversion recursesubdirs createallsubdirs ; Check : not Is64BitInstallMode
@@ -94,21 +92,19 @@ Source: "TauDEM_Exe\win_64\*"; DestDir: "{app}\TauDEM5Exe"; Flags: ignoreversion
94
92
95
93
Source : " TauDEMArcGIS\*" ; DestDir : " {app} \TauDEM5Arc" ; Flags : ignoreversion recursesubdirs createallsubdirs
96
94
97
- Source : " Firewall.bat" ; DestDir : " {app} \setup_files" ; Flags : ignoreversion
98
95
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
99
96
100
97
[Run]
101
98
; install GDAL core components
102
- Filename : " {app} \setup_files\GDAL-1.9.2.win32-py2.7.exe" ; Flags : waituntilterminated shellexec
103
- Filename : " {app} \setup_files\gdal-111-1600-core.msi" ; Flags : waituntilterminated shellexec ; Check : not Is64BitInstallMode
104
- Filename : " {app} \setup_files\gdal-111-1600-x64-core.msi" ; Flags : waituntilterminated shellexec ; Check : Is64BitInstallMode
99
+ ; TODO: Implement functions to check if GDAL needs to be installed (all got the registry keys for all these 3 installations)
100
+ Filename : " {app} \setup_files\GDAL-2.1.0.win32-py2.7.msi" ; Flags : waituntilterminated shellexec ; Check : NeedsToInstallGDAL_PY()
101
+ Filename : " {app} \setup_files\gdal-201-1800-core.msi" ; Flags : waituntilterminated shellexec ; Check : NeedsToInstallGDAL_C(False)
102
+ Filename : " {app} \setup_files\gdal-201-1800-x64-core.msi" ; Flags : waituntilterminated shellexec ; Check : NeedsToInstallGDAL_C(True)
105
103
106
- Filename : " {app} \setup_files\vcredist_x86_2010 .exe" ; Flags : waituntilterminated ; Check : NeedsToInstallRedist(False)
107
- Filename : " {app} \setup_files\vcredist_x64_2010 .exe" ; Flags : waituntilterminated ; Check : NeedsToInstallRedist(True)
104
+ Filename : " {app} \setup_files\vc_redist.x86_2015 .exe" ; Flags : waituntilterminated ; Check : NeedsToInstallRedist(False)
105
+ Filename : " {app} \setup_files\vc_redist.x64_2015 .exe" ; Flags : waituntilterminated ; Check : NeedsToInstallRedist(True)
108
106
109
- Filename : " {app} \setup_files\mpi_x86.msi" ; Flags : waituntilterminated shellexec ; Check : NeedsToInstallMPI(False)
110
- Filename : " {app} \setup_files\mpi_x64.msi" ; Flags : waituntilterminated shellexec ; Check : NeedsToInstallMPI(True)
111
- Filename : " {app} \setup_files\Firewall.bat" ; Flags : waituntilterminated shellexec ; AfterInstall : CleanUp(' {app} \setup_files' )
107
+ Filename : " {app} \setup_files\MSMpiSetup.exe" ; Flags : waituntilterminated shellexec ; Check : NeedsToInstallMPI()
112
108
113
109
114
110
[Registry]
@@ -139,21 +135,21 @@ begin
139
135
' 3. When prompted to Choose Setup Type for GDAL, choose "Typical".' #13 +
140
136
' 4. The installer will also add firewall exceptions to allow TauDEM programs to run. These allow MPI interprocess communication used in the parallel computations. This is communication within your computer and not over any external network.' #13 +
141
137
' 5. The installer will also add the following path entries:' +
142
- ' C:\Program Files\Microsoft HPC Pack 2012 \Bin\;C:\GDAL;C:\Program Files\GDAL;C:\Program Files\TauDEM\TauDEM5Exe' ;
138
+ ' C:\Program Files\Microsoft MPI \Bin\;C:\GDAL;C:\Program Files\GDAL;C:\Program Files\TauDEM\TauDEM5Exe' ;
143
139
144
140
if Is64BitInstallMode then
145
141
begin
146
142
UserPage := CreateInputQueryPage(wpWelcome,
147
143
' The following programs will be installed' , ' ' ,
148
- ' TauDEM version 5.3.5 , GDAL 1.9.2 (Python 2.7), GDAL 111 (MSVC 2010 ) for 64 bit Winodws PC, Microsoft Visual C++ 2010 SP1 Redistributable Package (x86), ' +
149
- ' Microsoft Visual C++ 2010 SP1 Redistributable Package (x64), Microsoft HPC Pack 2012 MS- MPI Redistributable Package ' #13 #13 + notes_string);
144
+ ' TauDEM version 5.3.7 , GDAL 2.1.0 (Python 2.7), GDAL 201 (MSVC 2013 ) for 64 bit Windows PC, Microsoft Visual C++ 2015 Redistributable Package (x86), ' +
145
+ ' Microsoft Visual C++ 2015 Redistributable Package (x64), Microsoft MPI' #13 #13 + notes_string);
150
146
end
151
147
else
152
148
begin
153
149
UserPage := CreateInputQueryPage(wpWelcome,
154
150
' The following programs will be installed' , ' ' ,
155
- ' TauDEM version 5.3.5 , GDAL 1.9.2 (Python 2.7), GDAL 111 (MSVC 2010 ) for 32 bit Windows PC, Microsoft Visual C++ 2010 SP1 Redistributable Package (x86), ' +
156
- ' Microsoft HPC Pack 2012 MS- MPI Redistributable Package ' #13 #13 + notes_string);
151
+ ' TauDEM version 5.3.7 , GDAL 2.1.0 (Python 2.7), GDAL 201 (MSVC 2013 ) for 32 bit Windows PC, Microsoft Visual C++ 2015 Redistributable Package (x86), ' +
152
+ ' Microsoft MPI' #13 #13 + notes_string);
157
153
end
158
154
end ;
159
155
162
158
function NeedsToInstallRedist (IsInstallAppX64: boolean): boolean;
163
159
begin
164
160
if Is64BitInstallMode and IsInstallAppX64 then
165
- begin
166
- if RegKeyExists(HKEY_LOCAL_MACHINE, ' SOFTWARE\Classes\Installer\Products\1926E8D15D0BCE53481466615F760A7F ' ) then
161
+ begin
162
+ if RegKeyExists(HKEY_LOCAL_MACHINE, ' SOFTWARE\WOW6432Node\Microsoft\VisualStudio\14.0\VC\Runtimes\x64 ' ) then
167
163
begin
168
164
Result := False;
169
165
exit;
@@ -174,9 +170,9 @@ begin
174
170
exit;
175
171
end ;
176
172
end
177
- else if Is64BitInstallMode and not IsInstallAppX64 then
178
- begin
179
- if RegKeyExists(HKEY_LOCAL_MACHINE, ' SOFTWARE\Classes\Installer\Products\1D5E3C0FEDA1E123187686FED06E995A ' ) then
173
+ else if not Is64BitInstallMode and not IsInstallAppX64 then
174
+ begin
175
+ if RegKeyExists(HKEY_LOCAL_MACHINE, ' SOFTWARE\WOW6432Node\Microsoft\VisualStudio\14.0\VC\Runtimes\x86 ' ) then
180
176
begin
181
177
Result := False;
182
178
exit;
@@ -189,26 +185,50 @@ begin
189
185
end
190
186
else
191
187
begin
192
- if RegKeyExists(HKEY_LOCAL_MACHINE, ' SOFTWARE\Classes\Installer\Products\1D5E3C0FEDA1E123187686FED06E995A' ) then
193
- begin
194
- Result := False;
195
- exit;
196
- end
197
- else
198
- begin
199
- Result := True;
200
- exit;
201
- end ;
202
- end ;
188
+ Result := False;
189
+ exit;
190
+ end ;
203
191
end ;
204
192
205
193
// Check if we need to install MPI
206
- // If either a 64 or 32 bit version of MPI is already installed, then this function returns False, otherwise True
207
- function NeedsToInstallMPI (IsInstallAppX64: boolean): boolean;
194
+ // If MPI is already installed, then this function returns False, otherwise True
195
+ function NeedsToInstallMPI (): boolean;
196
+ begin
197
+
198
+ if RegKeyExists(HKEY_LOCAL_MACHINE, ' SOFTWARE\WOW6432Node\Microsoft\MPI' ) then
199
+ begin
200
+ Result := False;
201
+ exit;
202
+ end
203
+ else
204
+ begin
205
+ Result := True;
206
+ exit;
207
+ end ;
208
+ end ;
209
+
210
+ function NeedsToInstallGDAL_PY (): boolean;
211
+ // check if we need to install GDAL Python module
212
+ begin
213
+
214
+ if RegKeyExists(HKEY_LOCAL_MACHINE, ' SOFTWARE\Classes\Installer\Products\7DB0C91EA9BCA914AAD09A56B9B9A75B' ) then
215
+ begin
216
+ Result := False;
217
+ exit;
218
+ end
219
+ else
220
+ begin
221
+ Result := True;
222
+ exit;
223
+ end ;
224
+ end ;
225
+
226
+ function NeedsToInstallGDAL_C (IsInstallAppX64: boolean): boolean;
227
+ // checks if we need to install GDAL C++ library
208
228
begin
209
229
if Is64BitInstallMode and IsInstallAppX64 then
210
- begin
211
- if RegKeyExists(HKEY_LOCAL_MACHINE, ' SOFTWARE\Classes\Installer\Products\618A082FBC0C00743A6CF9DDC808DF81 ' ) then
230
+ begin
231
+ if RegKeyExists(HKEY_LOCAL_MACHINE, ' SOFTWARE\Classes\Installer\Products\7E174159D1F9EFC4AA53953383A125AA ' ) then
212
232
begin
213
233
Result := False;
214
234
exit;
@@ -220,8 +240,8 @@ begin
220
240
end ;
221
241
end
222
242
else if not Is64BitInstallMode and not IsInstallAppX64 then
223
- begin
224
- if RegKeyExists(HKEY_LOCAL_MACHINE, ' SOFTWARE\Classes\Installer\Products\2B417A095389B814BBF02657C04C242B ' ) then
243
+ begin
244
+ if RegKeyExists(HKEY_LOCAL_MACHINE, ' SOFTWARE\Classes\Installer\Products\81785C15296278C4EB911F279D9961F5 ' ) then
225
245
begin
226
246
Result := False;
227
247
exit;
@@ -231,7 +251,12 @@ begin
231
251
Result := True;
232
252
exit;
233
253
end ;
234
- end ;
254
+ end
255
+ else
256
+ begin
257
+ Result := False;
258
+ exit;
259
+ end ;
235
260
end ;
236
261
237
262
function NeedsAddPath (NewPath: string; Win64: boolean; CheckOSArchitecture: boolean): boolean;
0 commit comments