File bin\tomcat@VERSION_MAJOR@w.exe
; Get the current platform x86 / AMD64 / IA64
- ExpandEnvStrings $0 "%PROCESSOR_ARCHITEW6432%"
- StrCmp $0 "%PROCESSOR_ARCHITEW6432%" 0 +2
- ExpandEnvStrings $0 "%PROCESSOR_ARCHITECTURE%"
+ Call FindCpuType
+ Pop $0
StrCmp $0 "x86" 0 +2
File /oname=tomcat@VERSION_MAJOR@.exe bin\tomcat@VERSION_MAJOR@.exe
- StrCmp $0 "AMD64" 0 +2
+ StrCmp $0 "x86_64" 0 +2
File /oname=tomcat@VERSION_MAJOR@.exe bin\x86_64\tomcat@VERSION_MAJOR@.exe
- StrCmp $0 "IA64" 0 +2
+ StrCmp $0 "ia64" 0 +2
File /oname=tomcat@VERSION_MAJOR@.exe bin\ia64\tomcat@VERSION_MAJOR@.exe
InstallRetry:
SectionIn 3
SetOutPath $INSTDIR\bin
- ExpandEnvStrings $0 "%PROCESSOR_ARCHITEW6432%"
- StrCmp $0 "%PROCESSOR_ARCHITEW6432%" 0 +2
- ExpandEnvStrings $0 "%PROCESSOR_ARCHITECTURE%"
+ Call FindCpuType
+ Pop $0
+
StrCmp $0 "x86" 0 +2
File bin\tcnative-1.dll
- StrCmp $0 "AMD64" 0 +2
+ StrCmp $0 "x86_64" 0 +2
File /oname=tcnative-1.dll bin\x86_64\tcnative-1.dll
- StrCmp $0 "IA64" 0 +2
+ StrCmp $0 "ia64" 0 +2
File /oname=tcnative-1.dll bin\ia64\tcnative-1.dll
ClearErrors
; !insertmacro MUI_DESCRIPTION_TEXT ${SecWebapps} $(DESC_SecWebapps)
!insertmacro MUI_FUNCTION_DESCRIPTION_END
+; =====================
+; FindCpuType Function
+; =====================
+;
+; Find the CPU used on the system, and put the result on the top of the
+; stack
+;
+Function FindCpuType
+
+ ClearErrors
+ ; Default CPU is always x86
+ StrCpy $1 "x86"
+ ExpandEnvStrings $0 "%PROCESSOR_ARCHITEW6432%"
+ StrCmp $0 "%PROCESSOR_ARCHITEW6432%" 0 +5
+ StrCmp $0 "IA64" 0 +3
+ StrCpy $1 "ia64"
+ Goto FoundCpu
+ StrCpy $1 "x86_64"
+
+FoundCpu:
+ ; Put the result in the stack
+ Push $1
+
+FunctionEnd
+
; =====================
; CheckUserType Function