aboutsummaryrefslogtreecommitdiff
path: root/dists/win32
diff options
context:
space:
mode:
Diffstat (limited to 'dists/win32')
-rw-r--r--dists/win32/plugins/Games.dllbin0 -> 105472 bytes
-rw-r--r--dists/win32/scummvm.gdf.xml44
-rw-r--r--dists/win32/scummvm.nsi39
-rw-r--r--dists/win32/scummvm.nsi.in39
4 files changed, 120 insertions, 2 deletions
diff --git a/dists/win32/plugins/Games.dll b/dists/win32/plugins/Games.dll
new file mode 100644
index 0000000000..3a378b7064
--- /dev/null
+++ b/dists/win32/plugins/Games.dll
Binary files differ
diff --git a/dists/win32/scummvm.gdf.xml b/dists/win32/scummvm.gdf.xml
new file mode 100644
index 0000000000..1c50924e15
--- /dev/null
+++ b/dists/win32/scummvm.gdf.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<GameDefinitionFile xmlns:baseTypes="urn:schemas-microsoft-com:GamesExplorerBaseTypes.v1" xmlns="urn:schemas-microsoft-com:GameDescription.v1">
+ <GameDefinition gameID="{F2475C5C-EA7C-41F0-A56D-1ABF7CFEA389}">
+ <Name>ScummVM</Name>
+ <Description>ScummVM is a program which allows you to run certain classic graphical point-and-click adventure games, provided you already have their data files. The clever part about this: ScummVM just replaces the executables shipped with the games, allowing you to play them on systems for which they were never designed!</Description>
+ <ReleaseDate>2011-09-30</ReleaseDate>
+ <Genres>
+ <Genre>Adventure</Genre>
+ </Genres>
+ <Version>
+ <VersionFile path="scummvm.exe" />
+ </Version>
+ <WindowsSystemPerformanceRating minimum="1.0" recommended="2.0" />
+ <Developers>
+ <Developer URI="http://www.scummvm.org">The ScummVM Team</Developer>
+ </Developers>
+ <Publishers>
+ <Publisher URI="http://www.scummvm.org">The ScummVM Team</Publisher>
+ </Publishers>
+ <GameExecutables>
+ <GameExecutable path="scummvm.exe" />
+ </GameExecutables>
+ <ExtendedProperties>
+ <GameTasks>
+ <Play>
+ <Primary>
+ <FileTask path="scummvm.exe" arguments="--no-console" />
+ </Primary>
+ <Task index="1" name="Play (console)">
+ <FileTask path="scummvm.exe" arguments="" />
+ </Task>
+ </Play>
+ <Support>
+ <Task index="0" name="View README">
+ <FileTask path="README.txt" arguments="" />
+ </Task>
+ <Task index="1" name="ScummVM Website">
+ <URLTask Link="http://www.scummvm.org" />
+ </Task>
+ </Support>
+ </GameTasks>
+ </ExtendedProperties>
+ </GameDefinition>
+</GameDefinitionFile> \ No newline at end of file
diff --git a/dists/win32/scummvm.nsi b/dists/win32/scummvm.nsi
index 480f8f47ee..01a7e72afe 100644
--- a/dists/win32/scummvm.nsi
+++ b/dists/win32/scummvm.nsi
@@ -20,12 +20,20 @@
#!define _DEBUG
#!define _INCLUDE_DATA_FILES
+!define _ENABLE_GAME_EXPLORER
+#!define _LOG_BUILD
+!define _CONVERT_TEXT
Name ScummVM
# Included files
!include MUI2.nsh
+# Plugins
+!ifdef _ENABLE_GAME_EXPLORER
+!AddPluginDir "./plugins"
+!endif
+
#########################################################################################
# Command line options
#########################################################################################
@@ -221,6 +229,9 @@ Var StartMenuGroup
# Installer sections
#########################################################################################
Section "ScummVM" SecMain
+!ifdef _LOG_BUILD
+ LogSet on
+!endif
SetOutPath $INSTDIR
SetOverwrite on
@@ -232,6 +243,7 @@ Section "ScummVM" SecMain
File /oname=NEWS.txt "${top_srcdir}\NEWS"
File /oname=README.txt "${top_srcdir}\README"
+!ifdef _CONVERT_TEXT
# Convert line endings
Push "$INSTDIR\AUTHORS.txt"
Call unix2dos
@@ -245,6 +257,7 @@ Section "ScummVM" SecMain
Call unix2dos
Push "$INSTDIR\README.txt"
Call unix2dos
+!endif
!ifdef _INCLUDE_DATA_FILES
# Engine data
@@ -271,6 +284,23 @@ Section "ScummVM" SecMain
File "${staging_dir}\SDL.dll"
WriteRegStr HKCU "${REGKEY}" InstallPath "$INSTDIR" ; Store installation folder
+
+ #Register with game explorer
+!ifdef _ENABLE_GAME_EXPLORER
+ Games::registerGame "$INSTDIR\scummvm.exe"
+ pop $0
+ # This is for Vista only, for 7 the tasks are defined in the gdf xml
+ ${If} $0 != "0"
+ ${AndIf} $0 != ""
+ ${AndIf} $0 != "$INSTDIR\scummvm.exe"
+ CreateDirectory "$0\PlayTasks\0"
+ CreateShortcut "$0\PlayTasks\0\Play.lnk" "$INSTDIR\scummvm.exe" "--no-console"
+ CreateDirectory "$0\PlayTasks\1"
+ CreateShortcut "$0\PlayTasks\1\Play (console).lnk" "$INSTDIR\scummvm.exe"
+ CreateDirectory "$0\SupportTasks\0"
+ CreateShortcut "$0\SupportTasks\0\Home Page.lnk" "${URL}"
+ ${EndIf}
+!endif
SectionEnd
# Write Start menu entries and uninstaller
@@ -280,7 +310,8 @@ Section -post SecMainPost
!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\$(^Name).lnk" $INSTDIR\$(^Name).exe "" "$INSTDIR\$(^Name).exe" 0 ; Create shortcut with icon
+ CreateShortCut "$SMPROGRAMS\$StartMenuGroup\$(^Name) (No console).lnk" $INSTDIR\$(^Name).exe "--no-console" "$INSTDIR\$(^Name).exe" 0
CreateShortcut "$SMPROGRAMS\$StartMenuGroup\Readme.lnk" $INSTDIR\README.txt
CreateShortcut "$SMPROGRAMS\$StartMenuGroup\Uninstall $(^Name).lnk" $INSTDIR\uninstall.exe
!insertmacro MUI_STARTMENU_WRITE_END
@@ -334,6 +365,10 @@ Section -un.Main SecUninstall
Delete /REBOOTOK $INSTDIR\translations.dat
!endif
+!ifdef _ENABLE_GAME_EXPLORER
+ Games::unregisterGame "$INSTDIR\scummvm.exe"
+!endif
+
Delete /REBOOTOK $INSTDIR\scummvm.exe
Delete /REBOOTOK $INSTDIR\SDL.dll
SectionEnd
@@ -374,6 +409,7 @@ FunctionEnd
# Helper functions
#########################################################################################
+!ifdef _CONVERT_TEXT
;-------------------------------------------------------------------------------
; strips all CRs and then converts all LFs into CRLFs
; (this is roughly equivalent to "cat file | dos2unix | unix2dos")
@@ -426,3 +462,4 @@ unix2dos_done:
Pop $0
Delete $0.U2D
FunctionEnd
+!endif
diff --git a/dists/win32/scummvm.nsi.in b/dists/win32/scummvm.nsi.in
index a87f5d6244..cba1e81e33 100644
--- a/dists/win32/scummvm.nsi.in
+++ b/dists/win32/scummvm.nsi.in
@@ -20,12 +20,20 @@
#!define _DEBUG
#!define _INCLUDE_DATA_FILES
+!define _ENABLE_GAME_EXPLORER
+#!define _LOG_BUILD
+!define _CONVERT_TEXT
Name ScummVM
# Included files
!include MUI2.nsh
+# Plugins
+!ifdef _ENABLE_GAME_EXPLORER
+!AddPluginDir "./plugins"
+!endif
+
#########################################################################################
# Command line options
#########################################################################################
@@ -221,6 +229,9 @@ Var StartMenuGroup
# Installer sections
#########################################################################################
Section "ScummVM" SecMain
+!ifdef _LOG_BUILD
+ LogSet on
+!endif
SetOutPath $INSTDIR
SetOverwrite on
@@ -232,6 +243,7 @@ Section "ScummVM" SecMain
File /oname=NEWS.txt "${top_srcdir}\NEWS"
File /oname=README.txt "${top_srcdir}\README"
+!ifdef _CONVERT_TEXT
# Convert line endings
Push "$INSTDIR\AUTHORS.txt"
Call unix2dos
@@ -245,6 +257,7 @@ Section "ScummVM" SecMain
Call unix2dos
Push "$INSTDIR\README.txt"
Call unix2dos
+!endif
!ifdef _INCLUDE_DATA_FILES
# Engine data
@@ -271,6 +284,23 @@ Section "ScummVM" SecMain
File "${staging_dir}\SDL.dll"
WriteRegStr HKCU "${REGKEY}" InstallPath "$INSTDIR" ; Store installation folder
+
+ #Register with game explorer
+!ifdef _ENABLE_GAME_EXPLORER
+ Games::registerGame "$INSTDIR\scummvm.exe"
+ pop $0
+ # This is for Vista only, for 7 the tasks are defined in the gdf xml
+ ${If} $0 != "0"
+ ${AndIf} $0 != ""
+ ${AndIf} $0 != "$INSTDIR\scummvm.exe"
+ CreateDirectory "$0\PlayTasks\0"
+ CreateShortcut "$0\PlayTasks\0\Play.lnk" "$INSTDIR\scummvm.exe" "--no-console"
+ CreateDirectory "$0\PlayTasks\1"
+ CreateShortcut "$0\PlayTasks\1\Play (console).lnk" "$INSTDIR\scummvm.exe"
+ CreateDirectory "$0\SupportTasks\0"
+ CreateShortcut "$0\SupportTasks\0\Home Page.lnk" "${URL}"
+ ${EndIf}
+!endif
SectionEnd
# Write Start menu entries and uninstaller
@@ -280,7 +310,8 @@ Section -post SecMainPost
!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\$(^Name).lnk" $INSTDIR\$(^Name).exe "" "$INSTDIR\$(^Name).exe" 0 ; Create shortcut with icon
+ CreateShortCut "$SMPROGRAMS\$StartMenuGroup\$(^Name) (No console).lnk" $INSTDIR\$(^Name).exe "--no-console" "$INSTDIR\$(^Name).exe" 0
CreateShortcut "$SMPROGRAMS\$StartMenuGroup\Readme.lnk" $INSTDIR\README.txt
CreateShortcut "$SMPROGRAMS\$StartMenuGroup\Uninstall $(^Name).lnk" $INSTDIR\uninstall.exe
!insertmacro MUI_STARTMENU_WRITE_END
@@ -334,6 +365,10 @@ Section -un.Main SecUninstall
Delete /REBOOTOK $INSTDIR\translations.dat
!endif
+!ifdef _ENABLE_GAME_EXPLORER
+ Games::unregisterGame "$INSTDIR\scummvm.exe"
+!endif
+
Delete /REBOOTOK $INSTDIR\scummvm.exe
Delete /REBOOTOK $INSTDIR\SDL.dll
SectionEnd
@@ -374,6 +409,7 @@ FunctionEnd
# Helper functions
#########################################################################################
+!ifdef _CONVERT_TEXT
;-------------------------------------------------------------------------------
; strips all CRs and then converts all LFs into CRLFs
; (this is roughly equivalent to "cat file | dos2unix | unix2dos")
@@ -426,3 +462,4 @@ unix2dos_done:
Pop $0
Delete $0.U2D
FunctionEnd
+!endif