;libCEC installer
-;Copyright (C) 2011 Pulse-Eight Ltd.
+;Copyright (C) 2012 Pulse-Eight Ltd.
;http://www.pulse-eight.com/
!include "MUI2.nsh"
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_LICENSE "..\COPYING"
+!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_DIRECTORY
!define MUI_STARTMENUPAGE_REGISTRY_ROOT "HKCU"
!insertmacro MUI_LANGUAGE "English"
-InstType "Full"
+InstType "USB-CEC driver & libCEC"
+InstType "USB-CEC driver only"
+InstType "Full installation"
-Section "libCEC" SecLibCEC
+Section "USB-CEC driver" SecDriver
SetShellVarContext current
SectionIn RO
- SectionIn 1 #section is in installtype Full
+ SectionIn 1 2 3
; Copy to the installation directory
SetOutPath "$INSTDIR"
File "..\AUTHORS"
- File /x dpinst*.exe "..\build\*.exe"
- File "..\ChangeLog"
File "..\COPYING"
- File "..\README"
- File "..\build\*.dll"
- SetOutPath "$INSTDIR\x64"
- File /nonfatal "..\build\x64\*"
-
- ; Copy to XBMC\system
- ReadRegStr $1 HKCU "Software\XBMC" ""
- ${If} $1 != ""
- SetOutPath "$1\system"
- File "..\build\libcec.dll"
- ${EndIf}
; Copy the driver installer and .inf file
SetOutPath "$INSTDIR\driver"
File "..\driver\p8usb-cec.inf"
File "..\driver\p8usb-cec.cat"
- ; Copy the headers
- SetOutPath "$INSTDIR\include"
- File /r /x *.so "..\include\cec*.*"
-
- ; Copy libcec.dll and libcec.x64.dll to the system directory
- SetOutPath "$SYSDIR"
- File "..\build\libcec.dll"
- ${If} ${RunningX64}
- File /nonfatal "..\build\x64\libcec.x64.dll"
- ${EndIf}
-
;Store installation folder
WriteRegStr HKCU "Software\libCEC" "" $INSTDIR
SetOutPath "$INSTDIR"
CreateDirectory "$SMPROGRAMS\$StartMenuFolder"
- CreateShortCut "$SMPROGRAMS\$StartMenuFolder\CEC Test client.lnk" "$INSTDIR\cec-client.exe" \
- "" "$INSTDIR\cec-client.exe" 0 SW_SHOWNORMAL \
- "" "Start the CEC Test client."
- ${If} ${RunningX64}
- CreateShortCut "$SMPROGRAMS\$StartMenuFolder\CEC Test client (x64).lnk" "$INSTDIR\x64\cec-client.x64.exe" \
- "" "$INSTDIR\cec-client.x64.exe" 0 SW_SHOWNORMAL \
- "" "Start the CEC Test client (x64)."
- ${EndIf}
CreateShortCut "$SMPROGRAMS\$StartMenuFolder\Uninstall libCEC.lnk" "$INSTDIR\Uninstall.exe" \
"" "$INSTDIR\Uninstall.exe" 0 SW_SHOWNORMAL \
"" "Uninstall libCEC."
WriteINIStr "$SMPROGRAMS\$StartMenuFolder\Visit Pulse-Eight.url" "InternetShortcut" "URL" "http://www.pulse-eight.com/"
!insertmacro MUI_STARTMENU_WRITE_END
-
-
+
;add entry to add/remove programs
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\libCEC" \
"DisplayName" "libCEC"
${EndIf}
SectionEnd
+Section "libCEC" SecLibCec
+ SetShellVarContext current
+ SectionIn 1 3
+
+ ; Copy to the installation directory
+ SetOutPath "$INSTDIR"
+ File "..\ChangeLog"
+ File "..\README"
+ File "..\build\*.dll"
+ SetOutPath "$INSTDIR\x64"
+ File /nonfatal "..\build\x64\*.dll"
+
+ ; Copy to XBMC\system
+ ReadRegStr $1 HKCU "Software\XBMC" ""
+ ${If} $1 != ""
+ SetOutPath "$1\system"
+ File "..\build\libcec.dll"
+ ${EndIf}
+
+ ; Copy the headers
+ SetOutPath "$INSTDIR\include"
+ File /r /x *.so "..\include\cec*.*"
+
+ ; Copy libcec.dll and libcec.x64.dll to the system directory
+ SetOutPath "$SYSDIR"
+ File "..\build\libcec.dll"
+ ${If} ${RunningX64}
+ File /nonfatal "..\build\x64\libcec.x64.dll"
+ ${EndIf}
+SectionEnd
+
+Section "CEC debug client" SecCecClient
+ SetShellVarContext current
+ SectionIn 3
+
+ ; Copy to the installation directory
+ SetOutPath "$INSTDIR"
+ File /x dpinst*.exe "..\build\*.exe"
+ SetOutPath "$INSTDIR\x64"
+ File /nonfatal "..\build\x64\*.exe"
+
+ !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
+ SetOutPath "$INSTDIR"
+
+ CreateDirectory "$SMPROGRAMS\$StartMenuFolder"
+ CreateShortCut "$SMPROGRAMS\$StartMenuFolder\CEC Test client.lnk" "$INSTDIR\cec-client.exe" \
+ "" "$INSTDIR\cec-client.exe" 0 SW_SHOWNORMAL \
+ "" "Start the CEC Test client."
+ ${If} ${RunningX64}
+ CreateShortCut "$SMPROGRAMS\$StartMenuFolder\CEC Test client (x64).lnk" "$INSTDIR\x64\cec-client.x64.exe" \
+ "" "$INSTDIR\cec-client.x64.exe" 0 SW_SHOWNORMAL \
+ "" "Start the CEC Test client (x64)."
+ ${EndIf}
+ !insertmacro MUI_STARTMENU_WRITE_END
+
+SectionEnd
+
;--------------------------------
;Uninstaller Section