[GRASS-SVN] r70128 - grass/branches/releasebranch_7_0/mswindows

svn_grass at osgeo.org svn_grass at osgeo.org
Sat Dec 24 09:19:12 PST 2016


Author: martinl
Date: 2016-12-24 09:19:12 -0800 (Sat, 24 Dec 2016)
New Revision: 70128

Modified:
   grass/branches/releasebranch_7_0/mswindows/GRASS-Installer.nsi.tmpl
Log:
wingrass: attempt to fix standalone installer to download and execute vcredist (fix #2996)
    (relbr70: merge 70106, 70110, 70113, 70114, 70123 from trunk)


Modified: grass/branches/releasebranch_7_0/mswindows/GRASS-Installer.nsi.tmpl
===================================================================
--- grass/branches/releasebranch_7_0/mswindows/GRASS-Installer.nsi.tmpl	2016-12-23 14:53:32 UTC (rev 70127)
+++ grass/branches/releasebranch_7_0/mswindows/GRASS-Installer.nsi.tmpl	2016-12-24 17:19:12 UTC (rev 70128)
@@ -490,6 +490,13 @@
 ;Declares the variables for optional Sample Data Sections
 Var /GLOBAL HTTP_PATH
 Var /GLOBAL ARCHIVE_NAME
+;Var /GLOBAL ARCHIVE_NAME2005
+Var /GLOBAL ARCHIVE_NAME2008
+Var /GLOBAL ARCHIVE_NAME2010
+!if ${PLATFORM} == "x86_64"
+    Var /GLOBAL ARCHIVE_NAME2012
+!endif
+Var /GLOBAL ARCHIVE_NAME2013
 Var /GLOBAL EXTENDED_ARCHIVE_NAME
 Var /GLOBAL ORIGINAL_UNTAR_FOLDER
 Var /GLOBAL CUSTOM_UNTAR_FOLDER
@@ -802,12 +809,31 @@
 	SetShellVarContext current	
 	InitPluginsDir
 	NSISdl::download "$HTTP_PATH/$ARCHIVE_NAME" "$TEMP\$ARCHIVE_NAME"
+        ;!if ${PLATFORM} == "x86"
+        ;    NSISdl::download "$HTTP_PATH/msvcrt2005/$ARCHIVE_NAME2005" "$TEMP\$ARCHIVE_NAME2005"
+        ;!endif
+	NSISdl::download "$HTTP_PATH/msvcrt2008/$ARCHIVE_NAME2008" "$TEMP\$ARCHIVE_NAME2008"
+	NSISdl::download "$HTTP_PATH/msvcrt2010/$ARCHIVE_NAME2010" "$TEMP\$ARCHIVE_NAME2010"
+        !if ${PLATFORM} == "x86_64"
+            NSISdl::download "$HTTP_PATH/msvcrt2012/$ARCHIVE_NAME2012" "$TEMP\$ARCHIVE_NAME2012"
+        !endif
+	NSISdl::download "$HTTP_PATH/msvcrt2013/$ARCHIVE_NAME2013" "$TEMP\$ARCHIVE_NAME2013"
+
 	Pop $0
 	StrCmp $0 "success" download_ok download_failed
 		
 	download_ok:	
 	InitPluginsDir
 	untgz::extract "-d" "$TEMP\$ORIGINAL_UNTAR_FOLDER" "-zbz2" "$TEMP\$ARCHIVE_NAME"
+        ;!if ${PLATFORM} == "x86"
+        ;    untgz::extract "-d" "$TEMP\$ORIGINAL_UNTAR_FOLDER" "-zbz2" "$TEMP\$ARCHIVE_NAME2005"
+        ;!endif
+        untgz::extract "-d" "$TEMP\$ORIGINAL_UNTAR_FOLDER" "-zbz2" "$TEMP\$ARCHIVE_NAME2008"
+        untgz::extract "-d" "$TEMP\$ORIGINAL_UNTAR_FOLDER" "-zbz2" "$TEMP\$ARCHIVE_NAME2010"
+        !if ${PLATFORM} == "x86_64"
+            untgz::extract "-d" "$TEMP\$ORIGINAL_UNTAR_FOLDER" "-zbz2" "$TEMP\$ARCHIVE_NAME2012"
+        !endif
+        untgz::extract "-d" "$TEMP\$ORIGINAL_UNTAR_FOLDER" "-zbz2" "$TEMP\$ARCHIVE_NAME2013"
 	Pop $0
 	StrCmp $0 "success" untar_ok untar_failed
 	
@@ -825,12 +851,27 @@
 
 	untar_ok:
 	DetailPrint "Archive successfully unzipped."
-	DetailPrint "Installing vcredist_2005_x86.exe ..."
-	ExecWait '"$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\vcredist_2005_x86.exe" /q'
-	DetailPrint "Installing vcredist_2008_x86.exe ..."
-	ExecWait '"$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\vcredist_2008_x86.exe" /q'	
-	DetailPrint "Installing vcredist_2010_x86.exe ..."
-	ExecWait '"$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\vcredist_2010_x86.exe" /q'
+        !if ${PLATFORM} == "x86"     
+            ; seems to be not needed, see #2996
+            ;DetailPrint "Installing vcredist_2005_x86.exe ..."
+	    ;ExecWait '"$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\vcredist_2005_x86.exe" /q'
+            DetailPrint "Installing vcredist_2008_x86.exe ..."
+	    ExecWait '"$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\vcredist_2008_x86.exe" /q'	
+	    DetailPrint "Installing vcredist_2010_x86.exe ..."
+	    ExecWait '"$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\vcredist_2010_x86.exe" /q' 
+	    DetailPrint "Installing vcredist_2013_x86.exe ..."
+	    ExecWait '"$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\vcredist_2013_x86.exe" /q'
+        !else
+            DetailPrint "Installing vcredist_2008_x64.exe ..."
+	    ExecWait '"$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\vcredist-2008-sp1-x64.exe" /q'
+	    DetailPrint "Installing vcredist_2010_x64.exe ..."
+	    ExecWait '"$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\vcredist-2010-x64.exe" /q' 
+            ; msvcrt2012 package contains dll files
+	    ;DetailPrint "Installing vcredist_2012_x64.exe ..."
+	    ;ExecWait '"$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\vcredist-2012-x64.exe" /q' 
+	    DetailPrint "Installing vcredist_2013_x64.exe ..."
+	    ExecWait '"$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\vcredist-2013-x64.exe" /q'
+        !endif
 	DetailPrint "Copying runtime files ..."
 	CopyFiles "$TEMP\$ORIGINAL_UNTAR_FOLDER\bin\*.dll" "$INSTALL_DIR\extrabin"
 	DetailPrint "MS runtime files installed."
@@ -843,7 +884,7 @@
 Section "Important Microsoft Runtime DLLs" SecMSRuntime
 
 	;Set the size (in KB)  of the archive file
-	StrCpy $ARCHIVE_SIZE_KB 12521
+	StrCpy $ARCHIVE_SIZE_KB 18512
 	
 	;Set the size (in KB) of the unpacked archive file
 	AddSize 13500
@@ -851,8 +892,16 @@
 	StrCpy $HTTP_PATH "http://download.osgeo.org/osgeo4w/${PLATFORM}/release/msvcrt/"
         !if ${PLATFORM} == "x86_64"
             StrCpy $ARCHIVE_NAME "msvcrt-1.0.1-8.tar.bz2"
+            StrCpy $ARCHIVE_NAME2008 "msvcrt2008-1.0.0-1.tar.bz2"
+            StrCpy $ARCHIVE_NAME2010 "msvcrt2010-1.0.0-1.tar.bz2"
+            StrCpy $ARCHIVE_NAME2012 "msvcrt2012-1.0.0-1.tar.bz2"
+            StrCpy $ARCHIVE_NAME2013 "msvcrt2013-1.0.0-1.tar.bz2"
         !else
-            StrCpy $ARCHIVE_NAME "msvcrt-1.0.1-12.tar.bz2"
+            StrCpy $ARCHIVE_NAME "msvcrt-1.0.1-13.tar.bz2"
+            ;StrCpy $ARCHIVE_NAME2005 "msvcrt2005-1.0-1.tar.bz2"
+            StrCpy $ARCHIVE_NAME2008 "msvcrt2008-1.0-1.tar.bz2"
+            StrCpy $ARCHIVE_NAME2010 "msvcrt2010-1.0-1.tar.bz2"
+            StrCpy $ARCHIVE_NAME2013 "msvcrt2013-1.0-1.tar.bz2"
         !endif
 	StrCpy $EXTENDED_ARCHIVE_NAME "Microsoft Visual C++ Redistributable Packages"
 	StrCpy $ORIGINAL_UNTAR_FOLDER "install_msruntime"
@@ -882,6 +931,7 @@
 	SetShellVarContext current	
 	InitPluginsDir
 	NSISdl::download "$HTTP_PATH/$ARCHIVE_NAME" "$TEMP\$ARCHIVE_NAME"
+
 	Pop $0
 	StrCmp $0 "success" download_ok download_failed
 		



More information about the grass-commit mailing list