wireshark/packaging/nsis/Makefile.nmake

198 lines
5.2 KiB
Makefile

#
# $Id$
#
# NSIS is a free packager/installer/uninstaller program for Win32.
# It was originally written for the Winamp package, but various
# freeware and non-freeware packages are using it, too.
#
# http://www.nullsoft.com/free/nsis/
include ../../config.nmake
# Contains a list of custom plugins(default empty)
include Custom.nmake
EXE=../../tshark.exe ../../editcap.exe \
!IFDEF GTK_DIR
../../wireshark.exe \
!ENDIF
../../text2pcap.exe ../../mergecap.exe ../../capinfos.exe WinPcap_4_1_1.exe
DLL=../../wiretap/wiretap-$(WTAP_VERSION).dll ../../wsutil/libwsutil.dll
DOC=../../doc/ws.css \
../../doc/capinfos.html \
../../doc/dumpcap.html \
../../doc/editcap.html \
../../doc/idl2wrs.html \
../../doc/mergecap.html \
../../doc/rawshark.html \
../../doc/text2pcap.html \
../../doc/rawshark.html \
../../doc/tshark.html \
../../doc/wireshark-filter.html \
../../doc/wireshark.html \
../../$(INSTALL_DIR)/COPYING.txt \
../../$(INSTALL_DIR)/NEWS.txt \
../../$(INSTALL_DIR)/README.txt \
../../$(INSTALL_DIR)/README.windows.txt
GPL=../../COPYING
HELP=../../$(INSTALL_DIR)/help/capture_filters.txt \
../../$(INSTALL_DIR)/help/capturing.txt \
../../$(INSTALL_DIR)/help/display_filters.txt \
../../$(INSTALL_DIR)/help/faq.txt \
../../$(INSTALL_DIR)/help/getting_started.txt \
../../$(INSTALL_DIR)/help/overview.txt \
../../$(INSTALL_DIR)/help/toc
PLUGINS= \
../../plugins/asn1/asn1.dll \
../../plugins/docsis/docsis.dll \
../../plugins/ethercat/ethercat.dll \
../../plugins/giop/coseventcomm.dll \
../../plugins/giop/cosnaming.dll \
../../plugins/giop/parlay.dll \
../../plugins/giop/tango.dll \
../../plugins/gryphon/gryphon.dll \
../../plugins/interlink/interlink.dll \
../../plugins/irda/irda.dll \
../../plugins/m2m/m2m.dll \
../../plugins/mate/mate.dll \
../../plugins/opcua/opcua.dll \
../../plugins/profinet/profinet.dll \
../../plugins/sercosiii/sercosiii.dll \
../../plugins/stats_tree/stats_tree.dll \
../../plugins/unistim/unistim.dll \
../../plugins/wimax/wimax.dll \
../../plugins/wimaxasncp/wimaxasncp.dll \
$(CUSTOM_PLUGINS)
NSI=wireshark.nsi \
GetWindowsVersion.nsh \
servicelib.nsh \
AdditionalTasksPage.ini \
WinPcapPage.ini
DELIVERABLES=$(EXE) $(DLL) $(DOC) $(DOC_dos) $(GPL) $(HELP) $(PLUGINS)
!IFDEF MAKENSIS
all: wireshark-$(WIRESHARK_TARGET_PLATFORM)-$(VERSION).exe
!ELSE
all: _FORCE_
@echo ? NSIS not available (MAKENSIS not defined in config.nmake)
@echo.
@exit 1
!ENDIF
# fetch the latest available user-guide.chm version
user-guide.chm::
if exist ..\..\docbook\user-guide.chm xcopy ..\..\docbook\user-guide.chm . /Y /D
if exist $(WIRESHARK_LIBS)\user-guide\user-guide.chm xcopy $(WIRESHARK_LIBS)\user-guide\user-guide.chm . /Y /D
wireshark-$(WIRESHARK_TARGET_PLATFORM)-$(VERSION).exe : user-guide.chm $(NSI) $(DELIVERABLES) Makefile.nmake
$(MAKENSIS) \
/DWIRESHARK_TARGET_PLATFORM=$(WIRESHARK_TARGET_PLATFORM) \
/DMSVC_VARIANT=$(MSVC_VARIANT) \
/DWIRESHARK_LIBS=$(WIRESHARK_LIBS) \
/DBUILD_DIR=..\..\$(INSTALL_DIR) \
!IFDEF MSVCR_DLL
/DMSVCR_DLL="$(MSVCR_DLL)" \
!ENDIF
!IFDEF VCREDIST_EXE
/DVCREDIST_EXE="$(VCREDIST_EXE)" \
!ENDIF
!IF "$(ENABLE_LIBWIRESHARK)" != ""
/DENABLE_LIBWIRESHARK=$(ENABLE_LIBWIRESHARK) \
!ENDIF
!IFDEF GTK_DIR
/DGTK_DIR=$(GTK_DIR) \
/DGTK_LIB_DIR=$(GTK_LIB_DIR) \
/DPANGO_LIB_DIR=$(PANGO_LIB_DIR) \
!IFDEF NEED_LIBPNG_DLL
/DNEED_LIBPNG_DLL=$(NEED_LIBPNG_DLL) \
/DPNG_DLL=$(PNG_DLL) \
!ENDIF
!IFDEF NEED_LIBJPEG_DLL
/DNEED_LIBJPEG_DLL=$(NEED_LIBJPEG_DLL) \
/DJPEG_DLL=$(JPEG_DLL) \
!ENDIF
!IFDEF NEED_LIBTIFF_DLL
/DNEED_LIBTIFF_DLL=$(NEED_LIBTIFF_DLL) \
/DTIFF_DLL=$(TIFF_DLL) \
!ENDIF
!IFDEF NEED_FREETYPE_DLL
/DNEED_FREETYPE_DLL=$(NEED_FREETYPE_DLL) \
/DFREETYPE_DLL=$(FREETYPE_DLL) \
!ENDIF
!IFDEF NEED_FONTCONFIG_DLL
/DNEED_FONTCONFIG_DLL=$(NEED_FONTCONFIG_DLL) \
/DFONTCONFIG_DLL=$(FONTCONFIG_DLL) \
!ENDIF
!IFDEF NEED_EXPAT_DLL
/DNEED_EXPAT_DLL=$(NEED_EXPAT_DLL) \
/DEXPAT_DLL=$(EXPAT_DLL) \
!ENDIF
!IFDEF NEED_CAIRO_DLL
/DNEED_CAIRO_DLL=$(NEED_CAIRO_DLL) \
!ENDIF
!ENDIF
/DGTK_WIMP_DLLDST_DIR=$(GTK_WIMP_DLLDST_DIR) \
/DGTK_WIMP_DLLSRC_DIR=$(GTK_WIMP_DLLSRC_DIR) \
/DGTK_WIMP_RCDST_DIR=$(GTK_WIMP_RCDST_DIR) \
/DGTK_WIMP_RCSRC_DIR=$(GTK_WIMP_RCSRC_DIR) \
/DINTL_DLL=$(INTL_DLL) \
/DVERSION=$(VERSION) \
/DWTAP_VERSION=$(WTAP_VERSION) \
!IF "$(C_ARES_DIR)" != ""
/DC_ARES_DIR=$(C_ARES_DIR) \
!ENDIF
!IF "$(ADNS_DIR)" != ""
/DADNS_DIR=$(ADNS_DIR) \
!ENDIF
!IF "$(KFW_DIR)" != ""
/DKFW_DIR=$(KFW_DIR) \
/DKFW_PATH=$(KFW_PATH) \
!ENDIF
!IF "$(GNUTLS_DIR)" != ""
/DGNUTLS_DIR=$(GNUTLS_DIR) \
!ENDIF
!IF "$(PCRE_DIR)" != ""
/DPCRE_DIR=$(PCRE_DIR) \
!ENDIF
!IF "$(ZLIB_DIR)" != ""
/DZLIB_DIR=$(ZLIB_DIR) \
!ENDIF
!IFDEF LUA_DIR
/DLUA_DIR=$(LUA_DIR) \
!ENDIF
!IFDEF SMI_DIR
/DSMI_DIR=$(SMI_DIR) \
!ENDIF
!IFDEF HHC_DIR
/DHHC_DIR="$(HHC_DIR)" \
!ENDIF
wireshark.nsi
clean:
rm -f wireshark-$(WIRESHARK_TARGET_PLATFORM)-$(VERSION).exe
rm -f NEWS.txt
rm -f user-guide.chm
distclean: clean
rm -f wireshark-$(WIRESHARK_TARGET_PLATFORM)-*.exe
maintainer-clean: distclean
$(DOC):
cd ../../doc
$(MAKE) /$(MAKEFLAGS) -f makefile.nmake
cd ../packaging/nsis
$(EXE) $(DLL):
cd ../..
$(MAKE) /$(MAKEFLAGS) -f makefile.nmake
cd packaging/nsis
####
_FORCE_: ## Assumption: no file named _FORCE_ exists in the current directory