remm 01/12/19 10:00:35
Modified: . Tag: tomcat_40_branch build.xml tomcat.nsi
Log:
- Port enhancements to the installer script, including:
- installer file size reduction, without any change to what is actually in the
archive (from 6.4M to 3.9M)
- use of JAVA_HOME, if present, to find the JDK path
- update to NSIS 1.91
Revision Changes Path
No revision
No revision
1.38.2.10 +2 -2 jakarta-tomcat-4.0/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/jakarta-tomcat-4.0/build.xml,v
retrieving revision 1.38.2.9
retrieving revision 1.38.2.10
diff -u -r1.38.2.9 -r1.38.2.10
--- build.xml 2001/10/27 01:13:00 1.38.2.9
+++ build.xml 2001/12/19 18:00:35 1.38.2.10
@@ -221,7 +221,7 @@
<copy file="${javaservice.home}/bin/JavaService.exe"
tofile="${tomcat.dist}/bin/tomcat.exe" />
<copy file="tomcat.nsi" tofile="${tomcat.dist}/tomcat.nsi" />
- <exec dir="${tomcat.dist}" executable="${nsis.home}\makensis.exe">
+ <exec dir="${tomcat.dist}" executable="${nsis.home}\makensis-bz2.exe">
<arg value="tomcat.nsi" />
</exec>
<move file="${tomcat.dist}/tomcat4.exe"
@@ -269,9 +269,9 @@
<target name="prepare-release">
<condition property="execute.installer">
<and>
- <equals arg1="${full.dist}" arg2="on" />
<os family="windows" />
<available file="${javaservice.home}/bin/JavaService.exe" />
+ <available file="${nsis.home}\makensis-bz2.exe" />
</and>
</condition>
</target>
1.16.2.3 +76 -50 jakarta-tomcat-4.0/tomcat.nsi
Index: tomcat.nsi
===================================================================
RCS file: /home/cvs/jakarta-tomcat-4.0/tomcat.nsi,v
retrieving revision 1.16.2.2
retrieving revision 1.16.2.3
diff -u -r1.16.2.2 -r1.16.2.3
--- tomcat.nsi 2001/10/05 00:26:01 1.16.2.2
+++ tomcat.nsi 2001/12/19 18:00:35 1.16.2.3
@@ -1,6 +1,6 @@
; Tomcat 4 script for Nullsoft Installer
-; $Id: tomcat.nsi,v 1.16.2.2 2001/10/05 00:26:01 remm Exp $
+; $Id: tomcat.nsi,v 1.16.2.3 2001/12/19 18:00:35 remm Exp $
Name "apache-tomcat-4.0"
Caption "Apache Tomcat 4.0"
@@ -50,19 +50,21 @@
File /r webapps\manager
File /r webapps\ROOT
- ReadRegStr $1 HKLM "SOFTWARE\JavaSoft\Java Development Kit" "CurrentVersion"
- ReadRegStr $2 HKLM "SOFTWARE\JavaSoft\Java Development Kit\$1" "JavaHome"
+ Call findJavaPath
+ Pop $2
CopyFiles "$2\lib\tools.jar" "$INSTDIR\common\lib" 4500
+ WriteUninstaller "$INSTDIR\uninst-tomcat4.exe"
+
SectionEnd
Section "NT Service (NT/2k/XP only)"
SectionIn 3
- ReadRegStr $1 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" "CurrentVersion"
- ReadRegStr $2 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment\$1" "RuntimeLib"
+ Call findJVMPath
+ Pop $2
SetOutPath $INSTDIR\bin
File /oname=tomcat.exe bin\tomcat.exe
@@ -96,8 +98,8 @@
SectionIn 1 2 3
- ReadRegStr $1 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" "CurrentVersion"
- ReadRegStr $2 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment\$1" "JavaHome"
+ Call findJavaPath
+ Pop $2
SetOutPath "$SMPROGRAMS\Apache Tomcat 4.0"
@@ -186,10 +188,6 @@
SetOverwrite on
- ; since the installer is now created last (in 1.2+), this makes sure
- ; that any old installer that is readonly is overwritten.
- Delete $INSTDIR\uninst-tomcat4.exe
-
WriteRegStr HKLM "SOFTWARE\Apache\Apache Tomcat 4.0" "" $INSTDIR
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Apache
Tomcat 4.0" \
"DisplayName" "Apache Tomcat 4.0 (remove only)"
@@ -205,71 +203,99 @@
Function .onInit
ClearErrors
+
+ Call findJavaPath
+ Pop $1
+ MessageBox MB_OK "Using Java Development Kit found in $1"
+
+FunctionEnd
+
+
+Function .onInstSuccess
- Call doUpdate
+ ExecShell open '$SMPROGRAMS\Apache Tomcat 4.0'
+
+FunctionEnd
- ReadRegStr $1 HKLM "SOFTWARE\JavaSoft\Java Development Kit" "CurrentVersion"
- ReadRegStr $2 HKLM "SOFTWARE\JavaSoft\Java Development Kit\$1" "JavaHome"
+
+; =====================
+; FindJavaPath Function
+; =====================
+;
+; Find the JAVA_HOME used on the system, and put the result on the top of the
+; stack
+; Will exit if the path cannot be determined
+;
+Function findJavaPath
+
+ ClearErrors
+
+ ReadEnvStr $1 JAVA_HOME
+
+ IfErrors 0 FoundJDK
+
+ ClearErrors
+
+ ReadRegStr $2 HKLM "SOFTWARE\JavaSoft\Java Development Kit" "CurrentVersion"
+ ReadRegStr $1 HKLM "SOFTWARE\JavaSoft\Java Development Kit\$2" "JavaHome"
ReadRegStr $3 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" "CurrentVersion"
ReadRegStr $4 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment\$3" "RuntimeLib"
+ FoundJDK:
+
IfErrors 0 NoAbort
MessageBox MB_OK "Couldn't find a Java Development Kit installed on this \
computer. Please download one from http://java.sun.com."
Abort
NoAbort:
- MessageBox MB_OK "Using Java Development Kit version $1 found in $2$\r$\nUsing
Java Runtime Environment version $3 found in $4"
-
-FunctionEnd
-
-
-Function .onInstSuccess
- ExecShell open '$SMPROGRAMS\Apache Tomcat 4.0'
+ ; Put the result in the stack
+ Push $1
FunctionEnd
-
-Function doUpdate
-
- ; This function will be called if a previous Tomcat 4.0 installation has been
- ; found
- ReadRegStr $1 HKLM "SOFTWARE\Apache\Apache Tomcat 4.0" ""
- IfErrors NoUpdate
+; ====================
+; FindJVMPath Function
+; ====================
+;
+; Find the full JVM path, and put the result on top of the stack
+; Will exit if the path cannot be determined
+;
+Function findJVMPath
+
+ ReadEnvStr $1 JAVA_HOME
+ IfFileExists $1\jre\bin\hotspot\jvm.dll 0 TryJDK14
+ StrCpy $2 $1\jre\bin\hotspot\jvm.dll
+ Goto EndIfFileExists
+ TryJDK14:
+ StrCpy $2 $1\jre\bin\server\jvm.dll
+ EndIfFileExists:
- MessageBox MB_YESNO|MB_ICONQUESTION \
- "A previous installation of Jakarata Tomcat 4.0 has been found in $1.\
- Do you want to upgrade it to the latest version ?" IDNO NoUpdate
+ IfErrors 0 FoundJVMPath
- SetOverwrite ifnewer
- SetOutPath $INSTDIR
- File tomcat.ico
- File LICENSE
- File /r bin
- File /r common
- File /r lib
- File /r classes
- File /r logs
- File /r server
- File /r work
- SetOutPath $INSTDIR\webapps
- File /r webapps\manager
- File /r webapps\ROOT
+ ClearErrors
- MessageBox MB_OK "Update was successful."
+ ReadRegStr $1 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" "CurrentVersion"
+ ReadRegStr $2 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment\$1" "RuntimeLib"
+
+ FoundJVMPath:
+
+ IfErrors 0 NoAbort
+ MessageBox MB_OK "Couldn't find a Java Development Kit installed on this \
+computer. Please download one from http://java.sun.com."
+ Abort
- ; Installation over
- Abort
+ NoAbort:
-NoUpdate:
+ ; Put the result in the stack
+ Push $2
FunctionEnd
UninstallText "This will uninstall Apache Tomcat 4.0 from your system:"
-UninstallExeName uninst-tomcat4.exe
Section Uninstall
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>