updates-to-NSIS-to-support-debug-crt-20031205

Updates to NSIS installer scripts to conditionally build with
debug or non-debug CRT libraries; also, now supports conditional
library usage based upon the MS Compiler version used
This commit is contained in:
Jeffrey Altman 2003-12-05 23:10:04 +00:00 committed by Jeffrey Altman
parent c6c8034322
commit 492387b8d2
3 changed files with 97 additions and 3 deletions

View File

@ -8,4 +8,5 @@ echo !define MUI_VERSION %1 >> nsi-includes.nsi
echo !define MUI_MAJORVERSION 1 >>nsi-includes.nsi
echo !define MUI_MINORVERSION 2 >>nsi-includes.nsi
echo !define MUI_PATCHLEVEL 1100 >>nsi-includes.nsi
if "%AFSDEV_CL% == "1310" echo !define CL1310 1 >> nsi-includes.nsi
if "%AFSDEV_BUILDTYPE%" == "CHECKED" echo !define DEBUG 1 >>nsi-includes.nsi

View File

@ -17,13 +17,42 @@ $(EXEDIR)\Killer.exe: $(OUT)\Killer.obj
$(EXECONLINK) $(OUT)\Killer.obj
prebuild:
!IF ("$(AFSDEV_BUILDTYPE)" == "FREE")
!IF ("$(AFSVER_CL)"=="1310")
$(COPY) %SystemRoot%\System32\Msvcr71.dll $(EXEDIR)
!ELSE IF ("$(AFSVER_CL)"=="1300")
$(COPY) %SystemRoot%\System32\Msvcp70.dll $(EXEDIR)
!ELSE IF ("$(AFSVER_CL)"=="1200")
$(COPY) %SystemRoot%\System32\MSVCRT.DLL $(EXEDIR)
!ELSE
!ERROR Unknown Compiler Version
!ENDIF
$(COPY) %SystemRoot%\System32\MFC42.DLL $(EXEDIR)
!ELSE
!IF ("$(AFSVER_CL)"=="1310")
$(COPY) %SystemRoot%\System32\Msvcr71d.dll $(EXEDIR)
$(COPY) %SystemRoot%\System32\Msvcr71d.pdb $(EXEDIR)
!ELSE IF ("$(AFSVER_CL)"=="1300")
$(COPY) %SystemRoot%\System32\Msvcp70d.dll $(EXEDIR)
$(COPY) %SystemRoot%\System32\Msvcp70d.pdb $(EXEDIR)
!ELSE IF ("$(AFSVER_CL)"=="1200")
$(COPY) %SystemRoot%\System32\MSVCRTD.DLL $(EXEDIR)
$(COPY) %SystemRoot%\System32\MSVCRTD.pdb $(EXEDIR)
!ELSE
!ERROR Unknown Compiler Version
!ENDIF
$(COPY) %SystemRoot%\System32\MFC42D.DLL $(EXEDIR)
$(COPY) %SystemRoot%\System32\MFC42D.pdb $(EXEDIR)
!ENDIF
MakeCommon.bat "$(AFSPRODUCT_VERSION)"
build: prebuild
"C:\Program Files\NSIS\makensis.exe" OpenAFS.nsi
!IF ("$(AFSDEV_BUILDTYPE)" == "FREE")
$(COPY) OpenAFSforWindows.exe $(DESTDIR)\Wininstall\
!ELSE
$(COPY) OpenAFSforWindows-Debug.exe $(DESTDIR)\Wininstall\
!ENDIf
install: $(OUT)\Service.obj $(EXEDIR)\Service.exe $(OUT)\Killer.obj $(EXEDIR)\Killer.exe build

View File

@ -551,8 +551,14 @@ Section "AFS Client" SecClient
; Do SYSTEM32 DIR
SetOutPath "$SYSDIR"
File "${AFS_CLIENT_BUILDDIR}\afs_cpa.cpl"
!IFDEF DEBUG
;File "${SDK_DIR}\REDIST\msvcrtd.dll"
;File "${SDK_DIR}\REDIST\msvcrtd.pdb"
!insertmacro UpgradeDLL "${AFS_WININSTALL_DIR}\mfc42d.dll" "$SYSDIR\mfc42d.dll"
!ELSE
;File "${SDK_DIR}\REDIST\msvcrt.dll"
!insertmacro UpgradeDLL "${AFS_WININSTALL_DIR}\mfc42.dll" "$SYSDIR\mfc42.dll"
!ENDIF
; Do WINDOWSDIR components
; Get AFS CellServDB file
@ -756,8 +762,21 @@ Section "AFS Control Center" SecControl
SetOutPath "$INSTDIR\Common"
SetOutPath "$INSTDIR\Common"
!IFDEF DEBUG
!IFDEF CL1310
File "${AFS_WININSTALL_DIR}\msvcr71d.dll"
File "${AFS_WININSTALL_DIR}\msvcr71d.pdb"
!ELSE
File "${AFS_WININSTALL_DIR}\msvcrtd.dll"
File "${AFS_WININSTALL_DIR}\msvcrtd.pdb"
!ENDIF
!ELSE
!IFDEF CL1310
File "${AFS_WININSTALL_DIR}\msvcr71.dll"
!ELSE
File "${AFS_WININSTALL_DIR}\msvcrt.dll"
!ENDIF
!ENDIF
;Store install folder
WriteRegStr HKCU "${AFS_REGKEY_ROOT}\AFS Control Center\CurrentVersion" "PathName" $INSTDIR
@ -1104,8 +1123,21 @@ Section "Uninstall"
Delete /REBOOTOK "$INSTDIR\Common\afscfgadmin.dll"
Delete /REBOOTOK "$INSTDIR\Common\afskasadmin.dll"
Delete /REBOOTOK "$INSTDIR\Common\afsptsadmin.dll"
!IFDEF DEBUG
!IFDEF CL1310
Delete /REBOOTOK "$INSTDIR\Common\msvcr71d.dll"
Delete /REBOOTOK "$INSTDIR\Common\msvcr71d.pdb"
!ELSE
Delete /REBOOTOK "$INSTDIR\Common\msvcrtd.dll"
Delete /REBOOTOK "$INSTDIR\Common\msvcrtd.pdb"
!ENDIF
!ELSE
!IFDEF CL1310
Delete /REBOOTOK "$INSTDIR\Common\msvcr71.dll"
;Delete /REBOOTOK "$INSTDIR\Common\msvcp60.dll"
!ELSE
Delete /REBOOTOK "$INSTDIR\Common\msvcrt.dll"
!ENDIF
!ENDIF
Call un.IsSilent
Pop $R1
@ -1172,7 +1204,21 @@ Section "Uninstall"
RMDir "$INSTDIR\Client\Program"
RMDir "$INSTDIR\Client"
!IFDEF DEBUG
!IFDEF CL1310
Delete /REBOOTOK "$INSTDIR\Common\msvcr71d.dll"
Delete /REBOOTOK "$INSTDIR\Common\msvcr71d.pdb"
!ELSE
Delete /REBOOTOK "$INSTDIR\Common\msvcrtd.dll"
Delete /REBOOTOK "$INSTDIR\Common\msvcrtd.pdb"
!ENDIF
!ELSE
!IFDEF CL1310
Delete /REBOOTOK "$INSTDIR\Common\msvcr71.dll"
!ELSE
Delete /REBOOTOK "$INSTDIR\Common\msvcrt.dll"
!ENDIF
!ENDIF
Delete /REBOOTOK "$INSTDIR\Common\*"
RMDir "$INSTDIR\Common"
@ -1587,8 +1633,21 @@ Function AFSLangFiles
File "${AFS_SERVER_BUILDDIR}\afscfgadmin.dll"
File "${AFS_SERVER_BUILDDIR}\afskasadmin.dll"
File "${AFS_SERVER_BUILDDIR}\afsptsadmin.dll"
!IFDEF DEBUG
!IFDEF CL1310
File "${AFS_WININSTALL_DIR}\msvcr71d.dll"
File "${AFS_WININSTALL_DIR}\msvcr71d.pdb"
!ELSE
File "${AFS_WININSTALL_DIR}\msvcrtd.dll"
File "${AFS_WININSTALL_DIR}\msvcrtd.pdb"
!ENDIF
!ELSE
!IFDEF CL1310
File "${AFS_WININSTALL_DIR}\msvcr71.dll"
;File "${AFS_WININSTALL_DIR}\msvcp60.dll"
!ELSE
File "${AFS_WININSTALL_DIR}\msvcrt.dll"
!ENDIF
!ENDIF
!ifdef DEBUG
File "${AFS_CLIENT_BUILDDIR}\afs_config.pdb"
@ -1689,8 +1748,13 @@ DoGerman:
;File "${AFS_SERVER_BUILDDIR}\TaAfsAccountManager_1033.pdb"
;File "${AFS_SERVER_BUILDDIR}\TaAfsAppLib_1033.pdb"
;File "${AFS_SERVER_BUILDDIR}\TaAfsServerManager_1033.pdb"
!IFDEF CL1310
File "${AFS_WININSTALL_DIR}\msvcr71d.dll"
File "${AFS_WININSTALL_DIR}\msvcr71d.pdb"
!ELSE
File "${AFS_WININSTALL_DIR}\msvcrtd.dll"
File "${AFS_WININSTALL_DIR}\msvcrtd.pdb"
!ENDIF
!endif
goto done