From d8b3fe58870ced80c9ec5cc30379083c3928cc81 Mon Sep 17 00:00:00 2001 From: Travis Howell Date: Thu, 30 Jun 2011 11:42:19 +1000 Subject: BUILD: Store the Windows installer scripts in a single directory, and share the graphics files. --- dists/nsis/scummvm.nsi.in | 356 ---------------------------------------------- 1 file changed, 356 deletions(-) delete mode 100644 dists/nsis/scummvm.nsi.in (limited to 'dists/nsis/scummvm.nsi.in') diff --git a/dists/nsis/scummvm.nsi.in b/dists/nsis/scummvm.nsi.in deleted file mode 100644 index c94e5943f7..0000000000 --- a/dists/nsis/scummvm.nsi.in +++ /dev/null @@ -1,356 +0,0 @@ -# ScummVM - Graphic Adventure Engine -# -# ScummVM is the legal property of its developers, whose names -# are too numerous to list here. Please refer to the COPYRIGHT -# file distributed with this source distribution. -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -#!define _DEBUG -#!define _INCLUDE_DATA_FILES - -Name ScummVM - -# Included files -!include MUI2.nsh - -######################################################################################### -# Command line options -######################################################################################### - -#!define top_srcdir "" -#!define build_dir "" -#!define text_dir "" -#!define ARCH "" ;(optional, defaults to win32) - -# Check parameters -!ifndef top_srcdir - !error "Top source folder has not been passed to command line!" -!endif - -!ifndef build_dir - !error "Build folder has not been passed to command line (this folder should contain the executable and linked DLLs)!" -!endif - -!ifndef text_dir - !error "Text folder has not been passed to command line (this folder should contain all the text files used by the installer)!" -!endif - -!ifndef ARCH - !warning "ARCH has not been defined, defaulting to 'win32'" - !define ARCH "win32" -!endif - -######################################################################################### -# Folders -######################################################################################### -!define engine_data "${top_srcdir}\dists\engine-data" -!define theme_data "${top_srcdir}\gui\themes" - -######################################################################################### -# General Symbol Definitions -######################################################################################### -!define REGKEY "Software\$(^Name)\$(^Name)" -!define VERSION "@VERSION@" -!define COMPANY "ScummVM Team" -!define URL "http://scummvm.org/" -!define DESCRIPTION "ScummVM Installer. Look! A three headed monkey (TM)!" -!define COPYRIGHT "Copyright © 2001-2011 The ScummVM Team" - -######################################################################################### -# Installer configuration -######################################################################################### -OutFile ${build_dir}\scummvm-${VERSION}-${ARCH}.exe -InstallDir $PROGRAMFILES\ScummVM ; Default installation folder -InstallDirRegKey HKCU "Software\ScummVM\ScummVM" "InstallPath" ; Get installation folder from registry if available - ; The application name needs to be refered directly instead of through ${REGKEY} - ; because lang strings aren't initialized at the point InstallDirRegKey is called - -CRCCheck on -XPStyle on -#TargetMinimalOS 5.0 ; Minimal version of windows for installer: Windows 2000 or more recent - ; (will build unicode installer with NSIS 2.50+) - -VIProductVersion @VER_MAJOR@.@VER_MINOR@.@VER_PATCH@.0 -VIAddVersionKey ProductName $(^Name) -VIAddVersionKey ProductVersion "${VERSION}" -VIAddVersionKey CompanyName "${COMPANY}" -VIAddVersionKey CompanyWebsite "${URL}" -VIAddVersionKey FileVersion "${VERSION}" -VIAddVersionKey FileDescription "${DESCRIPTION}" -VIAddVersionKey LegalCopyright "${COPYRIGHT}" - -BrandingText "$(^Name) ${VERSION}" ; Change branding text on the installer to show our name and version instead of NSIS's - -# Show Details when installing/uninstalling files -ShowInstDetails show -ShowUninstDetails show - -!ifdef _DEBUG - SetCompress off ; for debugging the installer, lzma takes forever - RequestExecutionLevel user -!else - SetCompressor /FINAL /SOLID lzma - SetCompressorDictSize 64 - RequestExecutionLevel admin ; for installation into program files folders -!endif - -######################################################################################### -# MUI Symbol Definitions -######################################################################################### -!define MUI_WELCOMEFINISHPAGE_BITMAP "graphics\left.bmp" -!define MUI_ICON "graphics\scummvm-install.ico" -!define MUI_UNICON "graphics\scummvm-install.ico" - -#Start menu -!define MUI_STARTMENUPAGE_REGISTRY_ROOT HKCU -!define MUI_STARTMENUPAGE_REGISTRY_KEY ${REGKEY} -!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME StartMenuGroup -!define MUI_STARTMENUPAGE_DEFAULTFOLDER $(^Name) - -# Finish page -!define MUI_FINISHPAGE_RUN "$INSTDIR\scummvm.exe" -!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\README.txt" -!define MUI_FINISHPAGE_RUN_NOTCHECKED -!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED - -!define MUI_LICENSEPAGE_RADIOBUTTONS - -!define MUI_FINISHPAGE_NOAUTOCLOSE -!define MUI_UNFINISHPAGE_NOAUTOCLOSE - -######################################################################################### -# Installer pages -######################################################################################### -# Variables -Var StartMenuGroup - -;Remember the installer language -!define MUI_LANGDLL_REGISTRY_ROOT HKCU -!define MUI_LANGDLL_REGISTRY_KEY ${REGKEY} -!define MUI_LANGDLL_REGISTRY_VALUENAME "InstallerLanguage" - -!insertmacro MUI_PAGE_WELCOME -!insertmacro MUI_PAGE_LICENSE ${top_srcdir}\COPYING -!insertmacro MUI_PAGE_DIRECTORY -!insertmacro MUI_PAGE_STARTMENU Application $StartMenuGroup -!insertmacro MUI_PAGE_INSTFILES -!insertmacro MUI_PAGE_FINISH -!insertmacro MUI_UNPAGE_CONFIRM -!insertmacro MUI_UNPAGE_INSTFILES - -# Installer languages -!insertmacro MUI_LANGUAGE "English" ;first language is the default language - -!ifndef _DEBUG ; Skip other languages when building debug builds -;!insertmacro MUI_LANGUAGE "Afrikaans" -;!insertmacro MUI_LANGUAGE "Albanian" -;!insertmacro MUI_LANGUAGE "Arabic" -;!insertmacro MUI_LANGUAGE "Belarusian" -;!insertmacro MUI_LANGUAGE "Bosnian" -;!insertmacro MUI_LANGUAGE "Breton" -;!insertmacro MUI_LANGUAGE "Bulgarian" -!insertmacro MUI_LANGUAGE "Catalan" -;!insertmacro MUI_LANGUAGE "Croatian" -!insertmacro MUI_LANGUAGE "Czech" -!insertmacro MUI_LANGUAGE "Danish" -;!insertmacro MUI_LANGUAGE "Dutch" -;!insertmacro MUI_LANGUAGE "Esperanto" -;!insertmacro MUI_LANGUAGE "Estonian" -;!insertmacro MUI_LANGUAGE "Farsi" -;!insertmacro MUI_LANGUAGE "Finnish" -!insertmacro MUI_LANGUAGE "French" -;!insertmacro MUI_LANGUAGE "Galician" -!insertmacro MUI_LANGUAGE "German" -;!insertmacro MUI_LANGUAGE "Greek" -;!insertmacro MUI_LANGUAGE "Hebrew" -!insertmacro MUI_LANGUAGE "Hungarian" -;!insertmacro MUI_LANGUAGE "Icelandic" -;!insertmacro MUI_LANGUAGE "Indonesian" -;!insertmacro MUI_LANGUAGE "Irish" -!insertmacro MUI_LANGUAGE "Italian" -;!insertmacro MUI_LANGUAGE "Japanese" -;!insertmacro MUI_LANGUAGE "Korean" -;!insertmacro MUI_LANGUAGE "Kurdish" -;!insertmacro MUI_LANGUAGE "Latvian" -;!insertmacro MUI_LANGUAGE "Lithuanian" -;!insertmacro MUI_LANGUAGE "Luxembourgish" -;!insertmacro MUI_LANGUAGE "Macedonian" -;!insertmacro MUI_LANGUAGE "Malay" -;!insertmacro MUI_LANGUAGE "Mongolian" -!insertmacro MUI_LANGUAGE "Norwegian" -!insertmacro MUI_LANGUAGE "NorwegianNynorsk" -!insertmacro MUI_LANGUAGE "Polish" -;!insertmacro MUI_LANGUAGE "Portuguese" -!insertmacro MUI_LANGUAGE "PortugueseBR" -;!insertmacro MUI_LANGUAGE "Romanian" -!insertmacro MUI_LANGUAGE "Russian" -;!insertmacro MUI_LANGUAGE "Serbian" -;!insertmacro MUI_LANGUAGE "SerbianLatin" -;!insertmacro MUI_LANGUAGE "SimpChinese" -;!insertmacro MUI_LANGUAGE "Slovak" -;!insertmacro MUI_LANGUAGE "Slovenian" -!insertmacro MUI_LANGUAGE "Spanish" -;!insertmacro MUI_LANGUAGE "SpanishInternational" -!insertmacro MUI_LANGUAGE "Swedish" -;!insertmacro MUI_LANGUAGE "Thai" -;!insertmacro MUI_LANGUAGE "TradChinese" -;!insertmacro MUI_LANGUAGE "Turkish" -!insertmacro MUI_LANGUAGE "Ukrainian" -;!insertmacro MUI_LANGUAGE "Uzbek" -!endif - -;Reserve Files (will make sure the file will be stored first in the data block -; making the installer start faster when compressing in solid mode) -!insertmacro MUI_RESERVEFILE_LANGDLL - -######################################################################################### -# Installer sections -######################################################################################### -Section "ScummVM" SecMain - SetOutPath $INSTDIR - SetOverwrite on - - # Text files - File /oname=AUTHORS.txt "${text_dir}\AUTHORS" - File /oname=COPYING.LGPL.txt "${text_dir}\COPYING.LGPL" - File /oname=COPYING.txt "${text_dir}\COPYING" - File /oname=COPYRIGHT.txt "${text_dir}\COPYRIGHT" - File /oname=NEWS.txt "${text_dir}\NEWS" - File /oname=README.txt "${text_dir}\README" - File /oname=README-SDL.txt "${build_dir}\README-SDL" - -!ifdef _INCLUDE_DATA_FILES - # Engine data - File "${engine_data}\drascula.dat" - File "${engine_data}\hugo.dat" - File "${engine_data}\kyra.dat" - File "${engine_data}\lure.dat" - File "${engine_data}\m4.dat" - File "${engine_data}\queen.tbl" - File "${engine_data}\sky.cpt" - File "${engine_data}\teenagent.dat" - File "${engine_data}\toon.dat" - - File "${top_srcdir}\dists\pred.dic" - - # Themes - File "${theme_data}\scummclassic.zip" - File "${theme_data}\scummmodern.zip" - File "${theme_data}\translations.dat" -!endif - - # Main exe and dlls - File "${build_dir}\scummvm.exe" - File "${build_dir}\SDL.dll" - - WriteRegStr HKCU "${REGKEY}" InstallPath "$INSTDIR" ; Store installation folder -SectionEnd - -# Write Start menu entries and uninstaller -Section -post SecMainPost - SetOutPath $INSTDIR - WriteUninstaller $INSTDIR\uninstall.exe - !insertmacro MUI_STARTMENU_WRITE_BEGIN Application - SetShellVarContext all ; Create shortcuts in the all-users folder - CreateDirectory "$SMPROGRAMS\$StartMenuGroup" - CreateShortCut "$SMPROGRAMS\$StartMenuGroup\$(^Name).lnk" $INSTDIR\$(^Name).exe "" "$INSTDIR\$(^Name).exe" 0 ; Create shortcut with icon - CreateShortcut "$SMPROGRAMS\$StartMenuGroup\Readme.lnk" $INSTDIR\README.txt - CreateShortcut "$SMPROGRAMS\$StartMenuGroup\Uninstall $(^Name).lnk" $INSTDIR\uninstall.exe - !insertmacro MUI_STARTMENU_WRITE_END - WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayName "$(^Name)" - WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayVersion "${VERSION}" - WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" Publisher "${COMPANY}" - WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" URLInfoAbout "${URL}" - WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayIcon $INSTDIR\uninstall.exe - WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" UninstallString $INSTDIR\uninstall.exe - WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" InstallLocation $INSTDIR - WriteRegDWORD HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" NoModify 1 - WriteRegDWORD HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" NoRepair 1 -SectionEnd - -# Installer functions -Function .onInit - !insertmacro MUI_LANGDLL_DISPLAY - -!ifdef _DEBUG && NSIS_CONFIG_LOG - LogSet on ; Will write a log file to the install folder (when using the special NSIS logging build) -!endif -FunctionEnd - -######################################################################################### -# Uninstaller sections -######################################################################################### -Section -un.Main SecUninstall - Delete /REBOOTOK $INSTDIR\AUTHORS.txt - Delete /REBOOTOK $INSTDIR\COPYING.txt - Delete /REBOOTOK $INSTDIR\COPYING.LGPL.txt - Delete /REBOOTOK $INSTDIR\COPYRIGHT.txt - Delete /REBOOTOK $INSTDIR\NEWS.txt - Delete /REBOOTOK $INSTDIR\README.txt - Delete /REBOOTOK $INSTDIR\README-SDL.txt - -!ifdef _INCLUDE_DATA_FILES - Delete /REBOOTOK $INSTDIR\drascula.dat - Delete /REBOOTOK $INSTDIR\hugo.dat - Delete /REBOOTOK $INSTDIR\kyra.dat - Delete /REBOOTOK $INSTDIR\lure.dat - Delete /REBOOTOK $INSTDIR\m4.dat - Delete /REBOOTOK $INSTDIR\queen.tbl - Delete /REBOOTOK $INSTDIR\sky.cpt - Delete /REBOOTOK $INSTDIR\teenagent.dat - Delete /REBOOTOK $INSTDIR\toon.dat - - Delete /REBOOTOK $INSTDIR\pred.dic - - Delete /REBOOTOK $INSTDIR\scummclassic.zip - Delete /REBOOTOK $INSTDIR\scummmodern.zip - Delete /REBOOTOK $INSTDIR\translations.dat -!endif - - Delete /REBOOTOK $INSTDIR\scummvm.exe - Delete /REBOOTOK $INSTDIR\SDL.dll -SectionEnd - -Section -un.post SecUninstallPost - # Remove start menu entries - SetShellVarContext all - Delete /REBOOTOK "$SMPROGRAMS\$StartMenuGroup\$(^Name).lnk" - Delete /REBOOTOK "$SMPROGRAMS\$StartMenuGroup\Readme.lnk" - Delete /REBOOTOK "$SMPROGRAMS\$StartMenuGroup\Uninstall $(^Name).lnk" - RmDir /REBOOTOK $SMPROGRAMS\$StartMenuGroup - - Delete /REBOOTOK $INSTDIR\uninstall.exe - - DeleteRegKey HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" - DeleteRegValue HKCU "${REGKEY}" StartMenuGroup - DeleteRegValue HKCU "${REGKEY}" InstallPath - DeleteRegValue HKCU "${REGKEY}" InstallerLanguage - DeleteRegKey /IfEmpty HKCU "${REGKEY}" - - RmDir $INSTDIR ; will only remove if empty (pass /r flag for recursive behavior) - Push $R0 - StrCpy $R0 $StartMenuGroup 1 - StrCmp $R0 ">" no_smgroup -no_smgroup: - Pop $R0 -SectionEnd - -# Uninstaller functions -Function un.onInit - !insertmacro MUI_UNGETLANGUAGE - ReadRegStr $INSTDIR HKCU "${REGKEY}" InstallPath - !insertmacro MUI_STARTMENU_GETFOLDER Application $StartMenuGroup -FunctionEnd -- cgit v1.2.3