Author: dreimer
Date: Wed Sep 17 09:03:48 2008
New Revision: 36286
URL:
http://svn.reactos.org/svn/reactos?rev=36286&view=rev
Log:
Start of a seperate Installer for 32 bit only and 32 bit plus the other arches.
Added:
trunk/tools/RosBE/RosBE-Windows/RosBE64.nsi (with props)
Modified:
trunk/tools/RosBE/RosBE-Windows/RosBE.nsi
Modified: trunk/tools/RosBE/RosBE-Windows/RosBE.nsi
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/RosBE.ns…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/RosBE.nsi [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/RosBE.nsi [iso-8859-1] Wed Sep 17 09:03:48 2008
@@ -33,7 +33,6 @@
!include "MUI2.nsh"
!include "InstallOptions.nsh"
!include "RosSourceDir.nsh"
-!include "RosSourceDir64.nsh"
!include "LogicLib.nsh"
!include "x64.nsh"
@@ -54,7 +53,6 @@
${Endif}
Call UninstallPrevious
!insertmacro INSTALLOPTIONS_EXTRACT "RosSourceDir.ini"
- !insertmacro INSTALLOPTIONS_EXTRACT "RosSourceDir64.ini"
FunctionEnd
;;
@@ -75,8 +73,6 @@
;;
var REACTOS_SOURCE_DIRECTORY
!insertmacro CUSTOM_PAGE_ROSDIRECTORY
-var REACTOS_SOURCE_DIRECTORY64
-!insertmacro CUSTOM_PAGE_ROSDIRECTORY64
;;
;; Start menu page
@@ -120,7 +116,6 @@
File /r Root\changelog.txt
File /r Root\LICENSE.txt
File /r Root\MinGW.cmd
- File /r Root\charch.cmd
File /r Root\MinGW.mac
File /r Root\Build.cmd
File /r Root\chdefgcc.cmd
@@ -273,8 +268,6 @@
CreateDirectory "$SMPROGRAMS\$ICONS_GROUP"
SetOutPath $REACTOS_SOURCE_DIRECTORY
CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\ReactOS Build Environment.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd"'
"$INSTDIR\rosbe.ico"
- SetOutPath $REACTOS_SOURCE_DIRECTORY64
- CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\ReactOS Build Environment
64-bit.lnk" "$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd"
amd64' "$INSTDIR\rosbe.ico"
SetOutPath $PROFILE
CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Standard MinGW Build
Environment.lnk" "$SYSDIR\cmd.exe" '/k
"$INSTDIR\MinGW.cmd"' "$INSTDIR\mingw.ico"
SetOutPath $INSTDIR
@@ -293,8 +286,6 @@
;;
SetOutPath $REACTOS_SOURCE_DIRECTORY
CreateShortCut "$DESKTOP\ReactOS Build Environment.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd"'
"$INSTDIR\rosbe.ico"
- SetOutPath $REACTOS_SOURCE_DIRECTORY64
- CreateShortCut "$DESKTOP\ReactOS Build Environment 64-bit.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd" amd64'
"$INSTDIR\rosbe.ico"
SetOutPath $PROFILE
CreateShortCut "$DESKTOP\Standard MinGW Build Environment.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\MinGW.cmd"'
"$INSTDIR\mingw.ico"
SectionEnd
@@ -307,8 +298,6 @@
;;
SetOutPath $REACTOS_SOURCE_DIRECTORY
CreateShortCut "$QUICKLAUNCH\ReactOS Build Environment.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd"'
"$INSTDIR\rosbe.ico"
- SetOutPath $REACTOS_SOURCE_DIRECTORY64
- CreateShortCut "$QUICKLAUNCH\ReactOS Build Environment 64-bit.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd" amd64'
"$INSTDIR\rosbe.ico"
SetOutPath $PROFILE
CreateShortCut "$QUICKLAUNCH\Standard MinGW Build Environment.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\MinGW.cmd"'
"$INSTDIR\mingw.ico"
SectionEnd
@@ -385,12 +374,8 @@
RMDir /REBOOTOK "$INSTDIR"
IfFileExists "$DESKTOP\ReactOS Build Environment.lnk" 0 +2
Delete /REBOOTOK "$DESKTOP\ReactOS Build Environment.lnk"
- IfFileExists "$DESKTOP\ReactOS Build Environment 64-bit.lnk" 0 +2
- Delete /REBOOTOK "$DESKTOP\ReactOS Build Environment 64-bit.lnk"
IfFileExists "$QUICKLAUNCH\ReactOS Build Environment.lnk" 0 +2
Delete /REBOOTOK "$QUICKLAUNCH\ReactOS Build Environment.lnk"
- IfFileExists "$QUICKLAUNCH\ReactOS Build Environment 64-bit.lnk" 0 +2
- Delete /REBOOTOK "$QUICKLAUNCH\ReactOS Build Environment 64-bit.lnk"
IfFileExists "$DESKTOP\Standard MinGW Build Environment.lnk" 0 +2
Delete /REBOOTOK "$DESKTOP\Standard MinGW Build Environment.lnk"
IfFileExists "$QUICKLAUNCH\Standard MinGW Build Environment.lnk" 0 +2
Added: trunk/tools/RosBE/RosBE-Windows/RosBE64.nsi
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/RosBE64.…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/RosBE64.nsi (added)
+++ trunk/tools/RosBE/RosBE-Windows/RosBE64.nsi [iso-8859-1] Wed Sep 17 09:03:48 2008
@@ -1,0 +1,468 @@
+!define PRODUCT_NAME "ReactOS Build Environment for Windows"
+!define PRODUCT_VERSION "1.3"
+!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App
Paths\RosBE.cmd"
+!define PRODUCT_UNINST_KEY
"Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
+!define PRODUCT_UNINST_ROOT_KEY "HKCU"
+!define PRODUCT_STARTMENU_REGVAL "NSIS:StartMenuDir"
+
+;;
+;; Basic installer options
+;;
+Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
+OutFile "RosBE-${PRODUCT_VERSION}.exe"
+InstallDirRegKey HKCU "${PRODUCT_DIR_REGKEY}" ""
+ShowInstDetails show
+ShowUnInstDetails show
+
+;;
+;; Add version/product information metadata to the installation file.
+;;
+VIAddVersionKey /LANG=1033 "FileVersion" "1.3.0.0"
+VIAddVersionKey /LANG=1033 "ProductVersion" "${PRODUCT_VERSION}"
+VIAddVersionKey /LANG=1033 "ProductName" "${PRODUCT_NAME}"
+VIAddVersionKey /LANG=1033 "Comments" "This installer was written by Peter
Ward and Daniel Reimer using Nullsoft Scriptable Install System
(
http://nsis.sourceforge.net/)"
+VIAddVersionKey /LANG=1033 "CompanyName" "ReactOS Team"
+VIAddVersionKey /LANG=1033 "LegalTrademarks" "Copyright © 2008 ReactOS
Team"
+VIAddVersionKey /LANG=1033 "LegalCopyright" "Copyright © 2008 ReactOS
Team"
+VIAddVersionKey /LANG=1033 "FileDescription" "${PRODUCT_NAME} Setup"
+VIProductVersion "1.2.0.0"
+
+CRCCheck force
+SetCompressor /FINAL /SOLID lzma
+
+!include "MUI2.nsh"
+!include "InstallOptions.nsh"
+!include "RosSourceDir.nsh"
+!include "RosSourceDir64.nsh"
+!include "LogicLib.nsh"
+!include "x64.nsh"
+
+;;
+;; Read our custom page ini, remove previous version and make sure only
+;; one instance of the installer is running.
+;;
+Function .onInit
+ System::Call 'kernel32::CreateMutexA(i 0, i 0, t
"RosBE-v${PRODUCT_VERSION}-Installer") i .r1 ?e'
+ Pop $R0
+ StrCmp $R0 0 +3
+ MessageBox MB_OK|MB_ICONEXCLAMATION "The ${PRODUCT_NAME} v${PRODUCT_VERSION}
installer is already running."
+ Abort
+ ${If} ${RunningX64}
+ StrCpy $INSTDIR "$PROGRAMFILES64\RosBE"
+ ${Else}
+ StrCpy $INSTDIR "$PROGRAMFILES\RosBE"
+ ${Endif}
+ Call UninstallPrevious
+ !insertmacro INSTALLOPTIONS_EXTRACT "RosSourceDir.ini"
+ !insertmacro INSTALLOPTIONS_EXTRACT "RosSourceDir64.ini"
+FunctionEnd
+
+;;
+;; MUI Settings
+;;
+!define MUI_ABORTWARNING
+!define MUI_ICON "Icons\rosbe.ico"
+!define MUI_UNICON "Icons\uninstall.ico"
+!define MUI_COMPONENTSPAGE_NODESC
+
+!define MUI_WELCOMEPAGE_TITLE_3LINES
+!insertmacro MUI_PAGE_WELCOME
+;!insertmacro MUI_PAGE_LICENSE "Root\License.txt"
+!insertmacro MUI_PAGE_DIRECTORY
+
+;;
+;; ReactOS Source Directory Pages
+;;
+var REACTOS_SOURCE_DIRECTORY
+!insertmacro CUSTOM_PAGE_ROSDIRECTORY
+var REACTOS_SOURCE_DIRECTORY64
+!insertmacro CUSTOM_PAGE_ROSDIRECTORY64
+
+;;
+;; Start menu page
+;;
+var ICONS_GROUP
+!define MUI_STARTMENUPAGE_NODISABLE
+!define MUI_STARTMENUPAGE_DEFAULTFOLDER "ReactOS Build Environment"
+!define MUI_STARTMENUPAGE_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}"
+!define MUI_STARTMENUPAGE_REGISTRY_KEY "${PRODUCT_UNINST_KEY}"
+!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "${PRODUCT_STARTMENU_REGVAL}"
+!insertmacro MUI_PAGE_STARTMENU Application $ICONS_GROUP
+
+!insertmacro MUI_PAGE_COMPONENTS
+
+!insertmacro MUI_PAGE_INSTFILES
+
+!define MUI_FINISHPAGE_TITLE_3LINES
+!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\README.pdf"
+!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
+!insertmacro MUI_PAGE_FINISH
+
+;;
+;; Uninstaller pages
+;;
+!insertmacro MUI_UNPAGE_INSTFILES
+
+;;
+;; Language and reserve files
+;;
+ReserveFile "${NSISDIR}\Plugins\InstallOptions.dll"
+!insertmacro MUI_LANGUAGE "English"
+
+Section -BaseFiles SEC01
+ SetShellVarContext current
+ SetOutPath "$INSTDIR"
+ SetOverwrite try
+ File /r Icons\mingw.ico
+ File /r Icons\rosbe.ico
+ File /r Root\README.pdf
+ File /r Root\RosBE.mac
+ File /r Root\changelog.txt
+ File /r Root\LICENSE.txt
+ File /r Root\MinGW.cmd
+ File /r Root\charch.cmd
+ File /r Root\MinGW.mac
+ File /r Root\Build.cmd
+ File /r Root\chdefgcc.cmd
+ File /r Root\Clean.cmd
+ File /r Root\Help.cmd
+ File /r Root\RosBE.cmd
+ File /r Root\rosbe-gcc-env.cmd
+ File /r Root\TimeDate.cmd
+ SetOutPath "$INSTDIR\Tools"
+ SetOverwrite try
+ File /r Components\Tools\buildtime.exe
+ File /r Components\Tools\chknewer.exe
+ File /r Components\Tools\cpucount.exe
+ File /r Components\Tools\flash.exe
+ File /r Components\Tools\getdate.exe
+ File /r Components\Tools\rquote.exe
+ File /r Components\Tools\tee.exe
+SectionEnd
+
+Section -MinGWGCCNASM SEC02
+ SetOutPath "$INSTDIR\4.1.3"
+ SetOverwrite try
+ File /r Components\4.1.3\*.*
+SectionEnd
+
+Section "RosBE Configurator (options)" SEC03
+ SetShellVarContext current
+ SetOutPath "$INSTDIR"
+ SetOverwrite try
+ File /r Root\options.cmd
+ SetOutPath "$INSTDIR\Tools"
+ SetOverwrite try
+ File /r Components\Tools\options.exe
+ !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
+ CreateDirectory "$SMPROGRAMS\$ICONS_GROUP"
+ SetOutPath $INSTDIR
+ CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Options.lnk" \
+ "$INSTDIR\Tools\options.exe"
+ !insertmacro MUI_STARTMENU_WRITE_END
+SectionEnd
+
+Section "Subversion Tools (svn, ssvn)" SEC04
+ SetShellVarContext current
+ SetOutPath "$INSTDIR"
+ SetOverwrite try
+ File /r Root\sSVN.cmd
+ SetOutPath "$INSTDIR\Tools"
+ SetOverwrite try
+ File /r Components\Tools\svn.exe
+ File /r Components\Tools\intl3_svn.dll
+ File /r Components\Tools\libapr.dll
+ File /r Components\Tools\libeay32.dll
+ File /r Components\Tools\ssleay32.dll
+ File /r Components\Tools\libaprutil.dll
+ File /r Components\Tools\libdb44.dll
+ File /r Components\Tools\libapriconv.dll
+ File /r Components\Tools\libsasl.dll
+ File /r Components\Tools\libsvn_client-1.dll
+ File /r Components\Tools\libsvn_delta-1.dll
+ File /r Components\Tools\libsvn_diff-1.dll
+ File /r Components\Tools\libsvn_fs-1.dll
+ File /r Components\Tools\libsvn_ra-1.dll
+ File /r Components\Tools\libsvn_repos-1.dll
+ File /r Components\Tools\libsvn_subr-1.dll
+ File /r Components\Tools\libsvn_wc-1.dll
+ SetOutPath "$INSTDIR\Tools\licenses"
+ SetOverwrite try
+ File /r Components\Tools\licenses\*.*
+SectionEnd
+
+Section "Shortcut Tool (scut)" SEC05
+ SetShellVarContext current
+ SetOutPath "$INSTDIR"
+ SetOverwrite try
+ File /r Root\scut.cmd
+ SetOutPath "$INSTDIR\Tools"
+ SetOverwrite try
+ File /r Components\Tools\scut.exe
+SectionEnd
+
+Section "ccache - Compiler Cache" SEC06
+ SetShellVarContext current
+ SetOutPath "$INSTDIR\4.1.3\bin"
+ SetOverwrite try
+ File /r Components\Tools\ccache.exe
+SectionEnd
+
+Section "GDB - The GNU Project Debugger" SEC07
+ SetShellVarContext current
+ SetOutPath "$INSTDIR\4.1.3\bin"
+ SetOverwrite try
+ File /r Components\Tools\gdb.exe
+ File /r Components\Tools\gdbserver.exe
+SectionEnd
+
+Section "relAddr2Line Tool" SEC08
+ SetShellVarContext current
+ SetOutPath "$INSTDIR"
+ SetOverwrite try
+ File /r Root\reladdr2line.cmd
+ SetOutPath "$INSTDIR\Tools"
+ SetOverwrite try
+ File /r Components\Tools\echoh.exe
+ File /r Components\Tools\raddr2line.exe
+ File /r Components\Tools\chkslash.exe
+SectionEnd
+
+Section "Other Tools (chdefdir and config)" SEC09
+ SetShellVarContext current
+ SetOutPath "$INSTDIR"
+ SetOverwrite try
+ File /r Root\chdefdir.cmd
+ File /r Root\Config.cmd
+SectionEnd
+
+Section "PowerShell RosBE Version" SEC10
+ SetShellVarContext current
+ SetOutPath "$INSTDIR"
+ SetOverwrite try
+ File /r Root\sSVN.cmd
+ File /r Components\Powershell\Build.ps1
+ File /r Components\Powershell\Clean.ps1
+ File /r Components\Powershell\Help.ps1
+ File /r Components\Powershell\MinGW.ps1
+ File /r Components\Powershell\RosBE.ps1
+ File /r Components\Powershell\rosbe-gcc-env.ps1
+SectionEnd
+
+Section "Update Script" SEC11
+ SetShellVarContext current
+ SetOutPath "$INSTDIR\Tools"
+ SetOverwrite try
+ File /r Components\Tools\wget.exe
+ File /r Components\Tools\libintl3.dll
+ File /r Components\Tools\libeay32.dll
+ File /r Components\Tools\ssleay32.dll
+ File /r Components\Tools\libiconv2.dll
+ SetOutPath "$INSTDIR"
+ SetOverwrite try
+ File /r Root\update.cmd
+SectionEnd
+
+Section -StartMenuShortcuts SEC12
+ SetShellVarContext current
+
+ ;;
+ ;; Add our start menu shortcuts.
+ ;;
+ !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
+ CreateDirectory "$SMPROGRAMS\$ICONS_GROUP"
+ SetOutPath $REACTOS_SOURCE_DIRECTORY
+ CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\ReactOS Build Environment.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd"'
"$INSTDIR\rosbe.ico"
+ SetOutPath $REACTOS_SOURCE_DIRECTORY64
+ CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\ReactOS Build Environment
64-bit.lnk" "$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd"
amd64' "$INSTDIR\rosbe.ico"
+ SetOutPath $PROFILE
+ CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Standard MinGW Build
Environment.lnk" "$SYSDIR\cmd.exe" '/k
"$INSTDIR\MinGW.cmd"' "$INSTDIR\mingw.ico"
+ SetOutPath $INSTDIR
+ CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Uninstall RosBE.lnk" \
+ "$INSTDIR\Uninstall-${PRODUCT_VERSION}.exe"
+ CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Readme.lnk" \
+ "$INSTDIR\README.pdf"
+ !insertmacro MUI_STARTMENU_WRITE_END
+SectionEnd
+
+Section /o "Desktop Shortcuts" SEC13
+ SetShellVarContext current
+
+ ;;
+ ;; Add our desktop shortcuts.
+ ;;
+ SetOutPath $REACTOS_SOURCE_DIRECTORY
+ CreateShortCut "$DESKTOP\ReactOS Build Environment.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd"'
"$INSTDIR\rosbe.ico"
+ SetOutPath $REACTOS_SOURCE_DIRECTORY64
+ CreateShortCut "$DESKTOP\ReactOS Build Environment 64-bit.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd" amd64'
"$INSTDIR\rosbe.ico"
+ SetOutPath $PROFILE
+ CreateShortCut "$DESKTOP\Standard MinGW Build Environment.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\MinGW.cmd"'
"$INSTDIR\mingw.ico"
+SectionEnd
+
+Section /o "Quick Launch Shortcuts" SEC14
+ SetShellVarContext current
+
+ ;;
+ ;; Add our quick launch shortcuts.
+ ;;
+ SetOutPath $REACTOS_SOURCE_DIRECTORY
+ CreateShortCut "$QUICKLAUNCH\ReactOS Build Environment.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd"'
"$INSTDIR\rosbe.ico"
+ SetOutPath $REACTOS_SOURCE_DIRECTORY64
+ CreateShortCut "$QUICKLAUNCH\ReactOS Build Environment 64-bit.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\RosBE.cmd" amd64'
"$INSTDIR\rosbe.ico"
+ SetOutPath $PROFILE
+ CreateShortCut "$QUICKLAUNCH\Standard MinGW Build Environment.lnk"
"$SYSDIR\cmd.exe" '/k "$INSTDIR\MinGW.cmd"'
"$INSTDIR\mingw.ico"
+SectionEnd
+
+Section -Post SEC15
+ WriteUninstaller "$INSTDIR\Uninstall-${PRODUCT_VERSION}.exe"
+ WriteRegStr HKCU "${PRODUCT_DIR_REGKEY}" ""
"$INSTDIR\RosBE.cmd"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
"DisplayName" "$(^Name)"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
"UninstallString" "$INSTDIR\Uninstall-${PRODUCT_VERSION}.exe"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
"DisplayVersion" "${PRODUCT_VERSION}"
+SectionEnd
+
+Function un.onUninstSuccess
+ HideWindow
+ MessageBox MB_ICONINFORMATION|MB_OK \
+ "ReactOS Build Environment was successfully removed from your
computer."
+FunctionEnd
+
+Function un.onInit
+ MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 \
+ "Are you sure you want to completely remove ReactOS Build Environment
and all of its components?" \
+ IDYES +2
+ Abort
+FunctionEnd
+
+Section Uninstall
+ !insertmacro MUI_STARTMENU_GETFOLDER "Application" $ICONS_GROUP
+ SetShellVarContext current
+
+ ;;
+ ;; Clean up installed files.
+ ;;
+ RMDir /r /REBOOTOK "$INSTDIR\4.1.3"
+ RMDir /r /REBOOTOK "$INSTDIR\Tools"
+ RMDir /r /REBOOTOK "$SMPROGRAMS\$ICONS_GROUP"
+ IfFileExists "$PROFILE\RosBE\." 0 +2
+ RMDir /r /REBOOTOK "$PROFILE\RosBE"
+ IfFileExists "$APPDATA\RosBE\." 0 +2
+ RMDir /r /REBOOTOK "$APPDATA\RosBE"
+ Delete /REBOOTOK "$INSTDIR\Build.cmd"
+ Delete /REBOOTOK "$INSTDIR\Build.ps1"
+ Delete /REBOOTOK "$INSTDIR\charch.cmd"
+ Delete /REBOOTOK "$INSTDIR\chdefdir.cmd"
+ Delete /REBOOTOK "$INSTDIR\chdefgcc.cmd"
+ Delete /REBOOTOK "$INSTDIR\Clean.cmd"
+ Delete /REBOOTOK "$INSTDIR\Clean.ps1"
+ Delete /REBOOTOK "$INSTDIR\Config.cmd"
+ Delete /REBOOTOK "$INSTDIR\Help.cmd"
+ Delete /REBOOTOK "$INSTDIR\Help.ps1"
+ Delete /REBOOTOK "$INSTDIR\MinGW.cmd"
+ Delete /REBOOTOK "$INSTDIR\MinGW.ps1"
+ Delete /REBOOTOK "$INSTDIR\options.cmd"
+ Delete /REBOOTOK "$INSTDIR\reladdr2line.cmd"
+ Delete /REBOOTOK "$INSTDIR\RosBE.cmd"
+ Delete /REBOOTOK "$INSTDIR\RosBE.ps1"
+ Delete /REBOOTOK "$INSTDIR\rosbe-gcc-env.cmd"
+ Delete /REBOOTOK "$INSTDIR\rosbe-gcc-env.ps1"
+ Delete /REBOOTOK "$INSTDIR\scut.cmd"
+ Delete /REBOOTOK "$INSTDIR\sSVN.cmd"
+ Delete /REBOOTOK "$INSTDIR\TimeDate.cmd"
+ Delete /REBOOTOK "$INSTDIR\update.cmd"
+ Delete /REBOOTOK "$INSTDIR\README.pdf"
+ Delete /REBOOTOK "$INSTDIR\rosbe.ico"
+ Delete /REBOOTOK "$INSTDIR\mingw.ico"
+ Delete /REBOOTOK "$INSTDIR\uninstall.ico"
+ Delete /REBOOTOK "$INSTDIR\MinGW.mac"
+ Delete /REBOOTOK "$INSTDIR\RosBE.mac"
+ Delete /REBOOTOK "$INSTDIR\ChangeLog.txt"
+ Delete /REBOOTOK "$INSTDIR\LICENSE.txt"
+ Delete /REBOOTOK "$INSTDIR\srclist.txt"
+ Delete /REBOOTOK "$INSTDIR\config.rbuild"
+ Delete /REBOOTOK "$INSTDIR\Uninstall-${PRODUCT_VERSION}.exe"
+ ;; Whoever dares to change this back into: RMDir /r /REBOOTOK "$INSTDIR"
will be KILLED!!!
+ RMDir /REBOOTOK "$INSTDIR"
+ IfFileExists "$DESKTOP\ReactOS Build Environment.lnk" 0 +2
+ Delete /REBOOTOK "$DESKTOP\ReactOS Build Environment.lnk"
+ IfFileExists "$DESKTOP\ReactOS Build Environment 64-bit.lnk" 0 +2
+ Delete /REBOOTOK "$DESKTOP\ReactOS Build Environment 64-bit.lnk"
+ IfFileExists "$QUICKLAUNCH\ReactOS Build Environment.lnk" 0 +2
+ Delete /REBOOTOK "$QUICKLAUNCH\ReactOS Build Environment.lnk"
+ IfFileExists "$QUICKLAUNCH\ReactOS Build Environment 64-bit.lnk" 0 +2
+ Delete /REBOOTOK "$QUICKLAUNCH\ReactOS Build Environment 64-bit.lnk"
+ IfFileExists "$DESKTOP\Standard MinGW Build Environment.lnk" 0 +2
+ Delete /REBOOTOK "$DESKTOP\Standard MinGW Build Environment.lnk"
+ IfFileExists "$QUICKLAUNCH\Standard MinGW Build Environment.lnk" 0 +2
+ Delete /REBOOTOK "$QUICKLAUNCH\Standard MinGW Build Environment.lnk"
+
+ ;;
+ ;; Clean up the registry.
+ ;;
+ DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
+ DeleteRegKey HKCU "${PRODUCT_DIR_REGKEY}"
+ SetAutoClose true
+SectionEnd
+
+Function UninstallPrevious
+ ReadRegStr $R0 HKCU \
+
"Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" \
+ "UninstallString"
+ ReadRegStr $R1 HKCU \
+
"Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" \
+ "DisplayVersion"
+ ${If} $R1 == "${PRODUCT_VERSION}"
+ messageBox MB_OK|MB_ICONEXCLAMATION \
+ "You already have the ${PRODUCT_NAME} v${PRODUCT_VERSION} installed.
Please manually uninstall the ${PRODUCT_NAME} v${PRODUCT_VERSION} if you want to
reinstall."
+ Quit
+ ${EndIf}
+ ${If} $R0 == ""
+ ReadRegStr $R0 HKLM \
+ "Software\Microsoft\Windows\CurrentVersion\Uninstall\ReactOS
Build Environment" \
+ "UninstallString"
+ ReadRegStr $R1 HKLM \
+ "Software\Microsoft\Windows\CurrentVersion\Uninstall\ReactOS
Build Environment" \
+ "DisplayVersion"
+ ${If} $R0 == ""
+ Return
+ ${EndIf}
+ ${EndIf}
+ MessageBox MB_YESNO|MB_ICONQUESTION \
+ "A previous version of the ${PRODUCT_NAME} was found. You must
uninstall it before installing this version.$\n$\nDo you want to do that now?" \
+ IDNO UninstallPrevious_no \
+ IDYES UninstallPrevious_yes
+ Abort
+ UninstallPrevious_no:
+ Quit
+ UninstallPrevious_yes:
+ Var /global PREVIOUSINSTDIR
+ Push $R0
+ Call GetParent
+ Pop $PREVIOUSINSTDIR
+ ExecWait '$R0 _?=$PREVIOUSINSTDIR'
+FunctionEnd
+
+Function GetParent
+ Exch $R0
+ Push $R1
+ Push $R2
+ Push $R3
+
+ StrCpy $R1 0
+ StrLen $R2 $R0
+
+ loop:
+ IntOp $R1 $R1 + 1
+ IntCmp $R1 $R2 get 0 get
+ StrCpy $R3 $R0 1 -$R1
+ StrCmp $R3 "\" get
+ Goto loop
+
+ get:
+ StrCpy $R0 $R0 -$R1
+
+ Pop $R3
+ Pop $R2
+ Pop $R1
+ Exch $R0
+FunctionEnd
Propchange: trunk/tools/RosBE/RosBE-Windows/RosBE64.nsi
------------------------------------------------------------------------------
svn:eol-style = native