- Merge my OpenAL installer NSIS script with Giels (Installed into INSTDIR instead of TEMP)

- Simplify Windows NSIS Makefile. Since 2.25 -options are supported
- Add updater rule to AutoMakefile
- Remove unnecessary aclocal flags from icons/


git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@1925 4a71c877-e1ca-e34f-864e-861f7616d084
master
Dennis Schridde 2007-06-22 16:01:46 +00:00
parent 614554e997
commit 813c5db69c
5 changed files with 53 additions and 49 deletions

View File

@ -1,8 +1,6 @@
# Remove this line when Automake 1.10 becomes standard
MKDIR_P=$(mkdir_p)
ACLOCAL_AMFLAGS = -I m4
install-data-local:
$(MKDIR_P) $(DESTDIR)$(icondir)
$(MKDIR_P) $(DESTDIR)$(applicationdir)

View File

@ -1,4 +1,5 @@
INSTALLERFILE=warzone2100-$(VERSION).exe
INSTALLERFILE=$(PACKAGE)-$(VERSION).exe
UPDATERFILE=$(PACKAGE)-$(VERSION).update.exe
CLEANFILES=$(INSTALLERFILE)
@ -6,5 +7,11 @@ if INSTALLER
all: $(INSTALLERFILE)
endif
$(INSTALLERFILE): warzone2100.nsi ../src/warzone2100.exe ../data/warzone.wz ../data/mp.wz ../data/grim.wz
$(MAKENSIS) -DVERSION="$(VERSION)" -DVERSIONNUM="$(INSTALLER_VERSION)" -DLIBDIR="$(INSTALLER_LIBDIR)" $<
data:
$(MAKE) -C ../data/ data
$(INSTALLERFILE): warzone2100.nsi ../src/warzone2100.exe data
$(MAKENSIS) -DVERSION="$(VERSION)" -DVERSIONNUM="$(INSTALLER_VERSION)" -DEXTDIR="$(INSTALLER_EXTDIR)" $<
$(UPDATERFILE): warzone2100.update.nsi
$(MAKENSIS) -DVERSION="$(VERSION)" -DVERSIONNUM="$(INSTALLER_VERSION)" -DEXTDIR="$(INSTALLER_EXTDIR)" $<

View File

@ -10,15 +10,8 @@ all: $(SETUPFILE)
endif
endif
# This is necessary to make sure "/Dvar=val" is used on Windows systems and -Dvar="val" on GNU/Linux buildsystems.
# Which is a direct result from inconsistencies in commandline parsing between the Windows and GNU/Linux versions.
ifeq ($(strip $(PLATFORM)),windows)
$(SETUPFILE): warzone2100.nsi ../src/warzone2100.exe ../data/warzone.wz ../data/mp.wz ../data/grim.wz
$(MAKENSIS) "/DVERSION=$(VERSION)" "/DVERSIONNUM=$(INSTALLER_VERSION)" "/DLIBDIR=$(DEVDIR)\lib" $<
else
$(SETUPFILE): warzone2100.nsi ../src/warzone2100.exe ../data/warzone.wz ../data/mp.wz ../data/grim.wz
$(MAKENSIS) -DVERSION="$(VERSION)" -DVERSIONNUM="$(INSTALLER_VERSION)" -DLIBDIR="$(DEVDIR)\lib" $<
endif
$(MAKENSIS) -DVERSION="$(VERSION)" -DVERSIONNUM="$(INSTALLER_VERSION)" -DEXTDIR="$(DEVDIR)\bin" $<
clean:
$(RM) $(SETUPFILE)

View File

@ -79,7 +79,7 @@ VIAddVersionKey "ProductVersion" "${VERSION}"
!define MUI_FINISHPAGE_RUN_TEXT $(TEXT_RunWarzone)
!define MUI_FINISHPAGE_RUN_FUNCTION "LaunchLink"
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
!define MUI_FINISHPAGE_SHOWREADME $INSTDIR\Readme.txt
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\Readme.txt"
;--------------------------------
;Pages
@ -137,8 +137,8 @@ Section $(TEXT_SecBase) SecBase
File "..\src\warzone2100.exe"
; Windows dbghelp library
File "${LIBDIR}\dbghelp.dll.license.txt"
File "${LIBDIR}\dbghelp.dll"
File "${EXTDIR}\dbghelp.dll.license.txt"
File "${EXTDIR}\dbghelp.dll"
; Data files
File "..\data\mp.wz"
@ -179,22 +179,17 @@ Section $(TEXT_SecBase) SecBase
SectionEnd
; Installs OpenAL runtime libraries, using Creative's installer
; Found here: http://developer.creative.com/articles/article.asp?cat=1&sbcat=31&top=38&aid=46
Section $(TEXT_SecOpenAL) SecOpenAL
SetOutPath "$TEMP"
File "${EXTDIR}\oalinst.exe"
File "${LIBDIR}\oalinst.exe"
ExecWait "$TEMP\oalinst.exe"
Delete "$TEMP\oalinst.exe"
SetOutPath "$INSTDIR"
ExecWait "$INSTDIR\oalinst.exe"
SectionEnd
SectionGroup /e $(TEXT_SecMods) secMods
Section $(TEXT_SecGrimMod) SecGrimMod
@ -236,7 +231,7 @@ FunctionEnd
LangString DESC_SecBase ${LANG_ENGLISH} "Standard installation."
LangString TEXT_SecOpenAL ${LANG_ENGLISH} "OpenAL libraries"
LangString DESC_SecOpenAL ${LANG_ENGLISH} "Required runtime libraries for OpenAL, an opensource/free Audio Library."
LangString DESC_SecOpenAL ${LANG_ENGLISH} "Runtime libraries for OpenAL, a free Audio interface. Implementation by Creative Labs."
LangString TEXT_SecMods ${LANG_ENGLISH} "Mods"
LangString DESC_SecMods ${LANG_ENGLISH} "Various mods."
@ -264,7 +259,7 @@ FunctionEnd
LangString DESC_SecBase ${LANG_GERMAN} "Standardinstallation."
LangString TEXT_SecOpenAL ${LANG_GERMAN} "OpenAL Bibliotheken"
LangString DESC_SecOpenAL ${LANG_GERMAN} "Benötigte Bibliotheken für OpenAL, eine opensource/freie Audio Bibliothek."
LangString DESC_SecOpenAL ${LANG_GERMAN} "Bibliotheken für OpenAL, ein freies Audio Interface. Implementation von Creative Labs."
LangString TEXT_SecMods ${LANG_GERMAN} "Mods"
LangString DESC_SecMods ${LANG_GERMAN} "Verschiedene Mods."
@ -301,6 +296,8 @@ Section "Uninstall"
Delete "$INSTDIR\warzone2100.exe"
Delete "$INSTDIR\oalinst.exe"
Delete "$INSTDIR\dbghelp.dll.license.txt"
Delete "$INSTDIR\dbghelp.dll"
@ -320,13 +317,12 @@ Section "Uninstall"
RMDir "$INSTDIR\mods"
RMDir "$INSTDIR"
!insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
Delete "$SMPROGRAMS\$MUI_TEMP\Uninstall.lnk"
Delete "$SMPROGRAMS\$MUI_TEMP\Warzone 2100.lnk"
Delete "$SMPROGRAMS\$MUI_TEMP\Warzone 2100 - Grim's GFX.lnk"
Delete "$SMPROGRAMS\$STARTMENU_FOLDER\Uninstall.lnk"
Delete "$SMPROGRAMS\$STARTMENU_FOLDER\Warzone 2100.lnk"
Delete "$SMPROGRAMS\$STARTMENU_FOLDER\Warzone 2100 - Grim's GFX.lnk"
;Delete empty start menu parent diretories
!insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
StrCpy $MUI_TEMP "$SMPROGRAMS\$MUI_TEMP"
startMenuDeleteLoop:

View File

@ -83,7 +83,7 @@ VIAddVersionKey "ProductVersion" "${VERSION}"
!define MUI_FINISHPAGE_RUN_TEXT $(TEXT_RunWarzone)
!define MUI_FINISHPAGE_RUN_FUNCTION "LaunchLink"
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
!define MUI_FINISHPAGE_SHOWREADME $INSTDIR\Readme.txt
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\Readme.txt"
;--------------------------------
;Pages
@ -139,15 +139,9 @@ Section $(TEXT_SecBase) SecBase
; File "..\src\warzone2100.exe"
!insertmacro VPatchFile "warzone2100.exe.vpatch" "$INSTDIR\warzone2100.exe" "$INSTDIR\warzone2100.exe.tmp"
; Required runtime libs
; File "${LIBDIR}\OpenAL32.dll"
; File "${LIBDIR}\wrap_oal.dll"
; !insertmacro VPatchFile "openal32.dll.vpatch" "$INSTDIR\OpenAL32.dll" "$INSTDIR\OpenAL32.dll.tmp"
; !insertmacro VPatchFile "wrap_oal.dll.vpatch" "$INSTDIR\wrap_oal.dll" "$INSTDIR\wrap_oal.dll.tmp"
; Windows dbghelp library
File "${LIBDIR}\dbghelp.dll.license.txt"
File "${LIBDIR}\dbghelp.dll"
File "${EXTDIR}\dbghelp.dll.license.txt"
File "${EXTDIR}\dbghelp.dll"
; !insertmacro VPatchFile "dbghelp.dll.license.txt.vpatch" "$INSTDIR\dbghelp.dll.license.txt" "$INSTDIR\dbghelp.dll.license.txt.tmp"
; !insertmacro VPatchFile "dbghelp.dll.vpatch" "$INSTDIR\dbghelp.dll" "$INSTDIR\dbghelp.dll.tmp"
@ -197,6 +191,16 @@ Section $(TEXT_SecBase) SecBase
SectionEnd
; Installs OpenAL runtime libraries, using Creative's installer
Section $(TEXT_SecOpenAL) SecOpenAL
File "${EXTDIR}\oalinst.exe"
ExecWait "$INSTDIR\oalinst.exe"
SectionEnd
SectionGroup /e $(TEXT_SecMods) secMods
Section $(TEXT_SecGrimMod) SecGrimMod
@ -204,7 +208,7 @@ Section $(TEXT_SecGrimMod) SecGrimMod
SetOutPath "$INSTDIR\mods\global"
; File "..\data\grim.wz"
!insertmacro VPatchFile "grim.wz.vpatch" "$INSTDIR\grim.wz" "$INSTDIR\grim.wz.tmp"
; !insertmacro VPatchFile "grim.wz.vpatch" "$INSTDIR\grim.wz" "$INSTDIR\grim.wz.tmp"
SetOutPath "$INSTDIR"
@ -238,6 +242,9 @@ FunctionEnd
LangString TEXT_SecBase ${LANG_ENGLISH} "Standard installation"
LangString DESC_SecBase ${LANG_ENGLISH} "Standard installation."
LangString TEXT_SecOpenAL ${LANG_ENGLISH} "OpenAL libraries"
LangString DESC_SecOpenAL ${LANG_ENGLISH} "Runtime libraries for OpenAL, a free Audio interface. Implementation by Creative Labs."
LangString TEXT_SecMods ${LANG_ENGLISH} "Mods"
LangString DESC_SecMods ${LANG_ENGLISH} "Various mods."
@ -249,6 +256,9 @@ FunctionEnd
LangString TEXT_SecBase ${LANG_GERMAN} "Standardinstallation"
LangString DESC_SecBase ${LANG_GERMAN} "Standardinstallation."
LangString TEXT_SecOpenAL ${LANG_GERMAN} "OpenAL Bibliotheken"
LangString DESC_SecOpenAL ${LANG_GERMAN} "Bibliotheken für OpenAL, ein freies Audio Interface. Implementation von Creative Labs."
LangString TEXT_SecMods ${LANG_GERMAN} "Mods"
LangString DESC_SecMods ${LANG_GERMAN} "Verschiedene Mods."
@ -266,6 +276,8 @@ FunctionEnd
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${SecBase} $(DESC_SecBase)
!insertmacro MUI_DESCRIPTION_TEXT ${SecOpenAL} $(DESC_SecOpenAL)
!insertmacro MUI_DESCRIPTION_TEXT ${SecMods} $(DESC_SecMods)
!insertmacro MUI_DESCRIPTION_TEXT ${SecGrimMod} $(DESC_SecGrimMod)
!insertmacro MUI_FUNCTION_DESCRIPTION_END
@ -281,8 +293,7 @@ Section "Uninstall"
Delete "$INSTDIR\warzone2100.exe"
Delete "$INSTDIR\OpenAL32.dll"
Delete "$INSTDIR\wrap_oal.dll"
Delete "$INSTDIR\oalinst.exe"
Delete "$INSTDIR\dbghelp.dll.license.txt"
Delete "$INSTDIR\dbghelp.dll"
@ -303,13 +314,12 @@ Section "Uninstall"
RMDir "$INSTDIR\mods"
RMDir "$INSTDIR"
!insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
Delete "$SMPROGRAMS\$MUI_TEMP\Uninstall.lnk"
Delete "$SMPROGRAMS\$MUI_TEMP\Warzone 2100.lnk"
Delete "$SMPROGRAMS\$MUI_TEMP\Warzone 2100 - Grim's GFX.lnk"
Delete "$SMPROGRAMS\$STARTMENU_FOLDER\Uninstall.lnk"
Delete "$SMPROGRAMS\$STARTMENU_FOLDER\Warzone 2100.lnk"
Delete "$SMPROGRAMS\$STARTMENU_FOLDER\Warzone 2100 - Grim's GFX.lnk"
;Delete empty start menu parent diretories
!insertmacro MUI_STARTMENU_GETFOLDER Application $MUI_TEMP
StrCpy $MUI_TEMP "$SMPROGRAMS\$MUI_TEMP"
startMenuDeleteLoop: