239 lines
8.9 KiB
Makefile
239 lines
8.9 KiB
Makefile
!IFNDEF MSIBUILD_OUTPUT_DIR
|
||
!ERROR Spremenljivka MSIBUILD_OUTPUT_DIR ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF MSIBUILD_ROOT
|
||
!ERROR Spremenljivka MSIBUILD_ROOT ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF MSIBUILD_TARGET
|
||
!ERROR Spremenljivka MSIBUILD_TARGET ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF MSIBUILD_VENDOR_NAME
|
||
!ERROR Spremenljivka MSIBUILD_VENDOR_NAME ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF MSIBUILD_VENDOR_URL
|
||
!ERROR Spremenljivka MSIBUILD_VENDOR_URL ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF MSIBUILD_PRODUCT_NAME
|
||
!ERROR Spremenljivka MSIBUILD_PRODUCT_NAME ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF MSIBUILD_PRODUCT_DESC
|
||
!ERROR Spremenljivka MSIBUILD_PRODUCT_DESC ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF MSIBUILD_CODEPAGE
|
||
!ERROR Spremenljivka MSIBUILD_CODEPAGE ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF PLAT
|
||
PLAT=Win32
|
||
!ENDIF
|
||
|
||
!IFNDEF MSIBUILD_LANGID
|
||
!ERROR Spremenljivka MSIBUILD_LANGID ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF MSIBUILD_MSI_VERSION_MIN
|
||
!ERROR Spremenljivka MSIBUILD_MSI_VERSION_MIN ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF MSIBUILD_LENGTH_ID
|
||
!ERROR Spremenljivka MSIBUILD_LENGTH_ID ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF MSIBUILD_LENGTH_HELP
|
||
!ERROR Spremenljivka MSIBUILD_LENGTH_HELP ni definirana!
|
||
!ENDIF
|
||
|
||
!IFNDEF MSI_FAZA
|
||
MSI_FAZA=0
|
||
!ENDIF
|
||
|
||
!IFNDEF IMENIK_ASKUPNO
|
||
IMENIK_ASKUPNO=C:\Inetpub\spletne-skripte\ASkupno
|
||
!ENDIF
|
||
|
||
!IF "$(PLAT)" == "Win32"
|
||
MSI_PLATFORMA2=Intel
|
||
!ELSE
|
||
MSI_PLATFORMA2=$(PLAT)
|
||
!ENDIF
|
||
|
||
Vse ::
|
||
|
||
Pocisti ::
|
||
|
||
!IF $(MSI_FAZA) == 0
|
||
|
||
######################################################################
|
||
# Pripravljalna faza
|
||
# - Priprava podatkov o verziji.
|
||
######################################################################
|
||
|
||
Vse :: \
|
||
"$(MSIBUILD_ROOT)\Verzija\Verzija.mak" \
|
||
"$(MSIBUILD_OUTPUT_DIR)\GUIDPaketa.mak"
|
||
$(MAKE) /f "Makefile" /$(MAKEFLAGS) MSI_FAZA=1 Vse
|
||
|
||
Pocisti ::
|
||
$(MAKE) /f "Makefile" /$(MAKEFLAGS) MSI_FAZA=100 Pocisti
|
||
|
||
"$(MSIBUILD_ROOT)\Verzija\Verzija.mak" ::
|
||
cd $(@D)
|
||
$(MAKE) /f "Makefile" /$(MAKEFLAGS) Verzija
|
||
cd "$(MAKEDIR)"
|
||
|
||
"$(MSIBUILD_OUTPUT_DIR)\GUIDPaketa.mak" ::
|
||
-if exist $@ del /f /q $@
|
||
-if exist "$(@:"=).tmp" del /f /q "$(@:"=).tmp"
|
||
novguid.exe MSI_GUID_PAKETA | sed -e "s/set //i" >> "$(@:"=).tmp"
|
||
move /y "$(@:"=).tmp" $@ > NUL
|
||
|
||
!ELSEIF $(MSI_FAZA) == 1
|
||
|
||
######################################################################
|
||
# 1. faza
|
||
# - Priprava modulov, spiskov odvisnih datotek in za<7A>etne verzije
|
||
# namestitvenega paketa.
|
||
######################################################################
|
||
|
||
!INCLUDE "$(MSIBUILD_ROOT)\Verzija\Verzija.mak"
|
||
!INCLUDE "$(MSIBUILD_OUTPUT_DIR)\GUIDPaketa.mak"
|
||
|
||
Vse :: \
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).1.msi" \
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.dep"
|
||
$(MAKE) /f "Makefile" /$(MAKEFLAGS) MSI_FAZA=2 Vse
|
||
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).1.msi" : $(MSIBUILD_MODULES) $(MSIBUILD_MODULES_PRECOMPILED)
|
||
-if exist $@ del /f /q $@
|
||
copy /y "$(MSIBUILD_ROOT)\Empty.msi" "$(@:"=).tmp" > NUL
|
||
!if not exist "$(**R:"=).msmcfg" msidb.exe -d "$(@:"=).tmp" -m $**
|
||
msiinfo.exe "$(@:"=).tmp" /nologo /C $(MSIBUILD_CODEPAGE) /T "$(MSIBUILD_PRODUCT_NAME) $(MSI_VERZIJA_STR) ($(PLAT))" /J "$(MSIBUILD_PRODUCT_DESC)" /A "$(MSIBUILD_VENDOR_NAME)" /P "$(MSI_PLATFORMA2);$(MSIBUILD_LANGID)" /G $(MSIBUILD_MSI_VERSION_MIN) /V $(MSI_GUID_PAKETA) /W 0 /O ""
|
||
!if exist "$(**R:"=).msmcfg" msimsm.exe "$(@:"=).tmp" $** /N "$(**R:"=).msmcfg" /D "$(**R:"=).log" /Sd "$(MSIBUILD_OUTPUT_DIR)" /F
|
||
move /y "$(@:"=).tmp" $@ > NUL
|
||
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.dep" : "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).1.msi"
|
||
-if exist $@ del /f /q $@
|
||
-if exist "$(@:"=).tmp" del /f /q "$(@:"=).tmp"
|
||
cscript.exe "$(IMENIK_ASKUPNO)\MSI.wsf" //Job:NarediDEP //Nologo "$(@:"=).tmp" "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.msi" $**
|
||
move /y "$(@:"=).tmp" $@ > NUL
|
||
|
||
$(MSIBUILD_MODULES) ::
|
||
cd $(@D)
|
||
$(MAKE) /f "Makefile" /$(MAKEFLAGS) MSM_IMA_VERZIJO=1
|
||
cd "$(MAKEDIR)"
|
||
|
||
!ELSEIF $(MSI_FAZA) == 2
|
||
|
||
######################################################################
|
||
# 2. faza
|
||
# - Dopolnitev namestitvenega paketa z verzijami in dol<6F>inami datotek.
|
||
######################################################################
|
||
|
||
!INCLUDE "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.dep"
|
||
!INCLUDE "$(MSIBUILD_ROOT)\Verzija\Verzija.mak"
|
||
|
||
Vse :: \
|
||
!IFDEF MSIBUILD_COMPRESS
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.dep" \
|
||
!ENDIF
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.msi"
|
||
!IFDEF MSIBUILD_COMPRESS
|
||
$(MAKE) /f "Makefile" /$(MAKEFLAGS) MSI_FAZA=3 Vse
|
||
!ENDIF
|
||
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.msi" : "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).1.msi"
|
||
-if exist $@ del /f /q $@
|
||
-if exist "$(*:"=).out" del /f /q "$(*:"=).out"
|
||
copy /y "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).1.msi" "$(@:"=).tmp" > NUL
|
||
msifiler.exe -v -h -d "$(@:"=).tmp" >> "$(*:"=).out"
|
||
move /y "$(@:"=).tmp" $@ > NUL
|
||
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.dep" : "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).1.msi"
|
||
-if exist $@ del /f /q $@
|
||
-if exist "$(@:"=).tmp" del /f /q "$(@:"=).tmp"
|
||
cscript.exe "$(IMENIK_ASKUPNO)\MSI.wsf" //Job:NarediDEP //Nologo "$(@:"=).tmp" "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).cab" $**
|
||
move /y "$(@:"=).tmp" $@ > NUL
|
||
|
||
!ELSEIF $(MSI_FAZA) == 3
|
||
|
||
######################################################################
|
||
# 3. faza
|
||
# - Kompresija namestitvenega paketa
|
||
######################################################################
|
||
|
||
!INCLUDE "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.dep"
|
||
!INCLUDE "$(MSIBUILD_ROOT)\Verzija\Verzija.mak"
|
||
|
||
Vse :: \
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.msi"
|
||
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.ddf" : "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.msi"
|
||
-if exist $@ del /f /q $@
|
||
-if exist "$(@:"=).tmp" del /f /q "$(@:"=).tmp"
|
||
cscript.exe "$(IMENIK_ASKUPNO)\MSI.wsf" //Job:NarediDDF //Nologo "$(@:"=).tmp" $** /O:"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET)" /K:LZX
|
||
move /y "$(@:"=).tmp" $@ > NUL
|
||
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).cab" \
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).inf" \
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).rpt" : "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.ddf"
|
||
makecab.exe /F "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.ddf"
|
||
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.msi" : \
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.msi" \
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).cab" \
|
||
"$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).inf"
|
||
-if exist $@ del /f /q $@
|
||
copy /y "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.msi" "$(@:"=).tmp" > NUL
|
||
cscript.exe "$(IMENIK_ASKUPNO)\MSI.wsf" //Job:NastaviCAB //Nologo "$(@:"=).tmp" "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).inf" /V
|
||
msiinfo.exe "$(@:"=).tmp" /nologo /U 4
|
||
!IFDEF MANIFESTCERTIFICATETHUMBPRINT
|
||
signcode.exe -i "$(MSIBUILD_VENDOR_URL)" -sha1 "$(MANIFESTCERTIFICATETHUMBPRINT)" -t "$(MANIFESTTIMESTAMPURL)" -n "$(MSIBUILD_PRODUCT_NAME)" "$(@:"=).tmp" > NUL
|
||
!ENDIF
|
||
attrib.exe +r "$(@:"=).tmp"
|
||
move /y "$(@:"=).tmp" $@ > NUL
|
||
|
||
!ELSE
|
||
|
||
######################################################################
|
||
# <20>istilna faza faza
|
||
# - <20>i<EFBFBD><69>enje modulov
|
||
######################################################################
|
||
|
||
Pocisti :: $(MSIBUILD_MODULES) $(MSIBUILD_MODULES_PRECOMPILED)
|
||
cd "$(MSIBUILD_ROOT)\Verzija"
|
||
$(MAKE) /f "Makefile" /$(MAKEFLAGS) Pocisti
|
||
cd "$(MAKEDIR)"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\GUIDPaketa.mak" del /f /q "$(MSIBUILD_OUTPUT_DIR)\GUIDPaketa.mak"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).1.msi" del /f /q "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).1.msi"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.dep" del /f /q "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.dep"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.msi" del /f /q "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.msi"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.out" del /f /q "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).2.out"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.dep" del /f /q "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.dep"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.ddf" del /f /q "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.ddf"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.msi" del /f /q "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.msi"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.out" del /f /q "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).3.out"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).cab" del /f /q "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).cab"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).inf" del /f /q "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).inf"
|
||
-if exist "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).rpt" del /f /q "$(MSIBUILD_OUTPUT_DIR)\$(MSIBUILD_TARGET).rpt"
|
||
|
||
$(MSIBUILD_MODULES) ::
|
||
cd $(@D)
|
||
$(MAKE) /f "Makefile" /$(MAKEFLAGS) Pocisti
|
||
cd "$(MAKEDIR)"
|
||
|
||
!IFDEF MSIBUILD_MODULES_PRECOMPILED
|
||
$(MSIBUILD_MODULES_PRECOMPILED) ::
|
||
cd $(@D)
|
||
-if exist "*.log" del /f /q "*.log"
|
||
cd "$(MAKEDIR)"
|
||
!ENDIF
|
||
|
||
!ENDIF
|