NSIS/Examples/cvsdata.nsi

139 lines
3.7 KiB
NSIS
Raw Normal View History

;Install CVS Data for anonymous access to the NSIS CVS server
;Silent installer executed by NSIS Update
;Written by Joost Verburg
;--------------------------------
;Configuration
Name "CVS Data"
OutFile "..\Bin\InstallCVSData.exe"
SetCompressor bzip2
SilentInstall silent
Var NSISPATH
;--------------------------------
;Macro
!macro CVSDATA DIR
SetOutPath "$NSISPATH\${DIR}\CVS"
File "/oname=$NSISPATH\${DIR}\CVS\Entries" "..\${DIR}\CVS\Entries"
;CVS sometimes uses Entries.log files. Ignore warnings about not existing Entries.log files.
File /nonfatal "/oname=$NSISPATH\${DIR}\CVS\Entries.log" "..\${DIR}\CVS\Entries.log"
File "/oname=$NSISPATH\${DIR}\CVS\Repository" "..\${DIR}\CVS\Repository"
File "/oname=$NSISPATH\${DIR}\CVS\Root" "..\${DIR}\CVS\Root"
!macroend
;--------------------------------
;Functions
Function .onInit
StrCpy $NSISPATH "$EXEDIR\.."
IfFileExists "$NSISPATH\CVS\Root" "" +6
Call GetParameters
Pop $R0
StrCmp $R0 "nooverwrite" +2
MessageBox MB_YESNO|MB_ICONEXCLAMATION \
"Your NSIS folder already contains CVS data. Do you want to overwrite your current data?" IDYES +2
Quit
FunctionEnd
Function GetParameters
Push $R0
Push $R1
Push $R2
Push $R3
StrCpy $R2 1
StrLen $R3 $CMDLINE
;Check for quote or space
StrCpy $R0 $CMDLINE $R2
StrCmp $R0 '"' 0 +3
StrCpy $R1 '"'
Goto loop
StrCpy $R1 " "
loop:
IntOp $R2 $R2 + 1
StrCpy $R0 $CMDLINE 1 $R2
StrCmp $R0 $R1 get
StrCmp $R2 $R3 get
Goto loop
get:
IntOp $R2 $R2 + 1
StrCpy $R0 $CMDLINE 1 $R2
StrCmp $R0 " " get
StrCpy $R0 $CMDLINE "" $R2
Pop $R3
Pop $R2
Pop $R1
Exch $R0
FunctionEnd
;--------------------------------
;Installer Section
Section
!insertmacro CVSDATA "."
!insertmacro CVSDATA "Bin"
!insertmacro CVSDATA "Contrib"
!insertmacro CVSDATA "Contrib\AdvSplash"
!insertmacro CVSDATA "Contrib\Banner"
!insertmacro CVSDATA "Contrib\BgImage"
!insertmacro CVSDATA "Contrib\Dialer"
!insertmacro CVSDATA "Contrib\ExDLL"
!insertmacro CVSDATA "Contrib\Graphics"
!insertmacro CVSDATA "Contrib\Graphics\Checks"
!insertmacro CVSDATA "Contrib\Graphics\Icons"
!insertmacro CVSDATA "Contrib\Graphics\Header"
!insertmacro CVSDATA "Contrib\Graphics\Wizard"
!insertmacro CVSDATA "Contrib\InstallOptions"
!insertmacro CVSDATA "Contrib\LangDLL"
!insertmacro CVSDATA "Contrib\Language files"
!insertmacro CVSDATA "Contrib\Makensisw"
!insertmacro CVSDATA "Contrib\Math"
!insertmacro CVSDATA "Contrib\Math\Source"
!insertmacro CVSDATA "Contrib\Modern UI"
!insertmacro CVSDATA "Contrib\Modern UI\Language files"
!insertmacro CVSDATA "Contrib\nsExec"
!insertmacro CVSDATA "Contrib\NSISdl"
!insertmacro CVSDATA "Contrib\Splash"
!insertmacro CVSDATA "Contrib\StartMenu"
!insertmacro CVSDATA "Contrib\System"
!insertmacro CVSDATA "Contrib\System\Source"
!insertmacro CVSDATA "Contrib\UIs"
!insertmacro CVSDATA "Contrib\UIs\UI Holder"
!insertmacro CVSDATA "Contrib\UserInfo"
!insertmacro CVSDATA "Contrib\VPatch"
!insertmacro CVSDATA "Contrib\VPatch\Source"
!insertmacro CVSDATA "Contrib\VPatch\Source\GenPat"
!insertmacro CVSDATA "Contrib\VPatch\Source\GUI"
!insertmacro CVSDATA "Contrib\VPatch\Source\Plugin"
!insertmacro CVSDATA "Contrib\zip2exe"
!insertmacro CVSDATA "Contrib\zip2exe\zlib"
!insertmacro CVSDATA "Docs"
!insertmacro CVSDATA "Examples"
!insertmacro CVSDATA "Examples\Modern UI"
!insertmacro CVSDATA "Include"
!insertmacro CVSDATA "Menu"
!insertmacro CVSDATA "Menu\images"
!insertmacro CVSDATA "Plugins"
!insertmacro CVSDATA "Source"
!insertmacro CVSDATA "Source\bzip2"
!insertmacro CVSDATA "Source\exehead"
!insertmacro CVSDATA "Source\zlib"
SectionEnd