forked from osmocom/wireshark
56470cc801
Add missing androiddump stuff like: - release notes - documentation - Windows nmake support - running androiddump as a windows application instead of console on Windows - addition of androiddump to the Windows installer Change-Id: I3bc6cc70e4dc96c0cd776f3d965dd2aa0309995d Reviewed-on: https://code.wireshark.org/review/7981 Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
306 lines
9.6 KiB
Makefile
306 lines
9.6 KiB
Makefile
#
|
|
# 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
|
|
|
|
TOP_SRC_DIR=$(MAKEDIR)\..\..
|
|
# Must be absolue for uninstall.nsi
|
|
STAGING_DIR=$(MAKEDIR)\..\..\$(INSTALL_DIR)
|
|
|
|
EXE=../../tshark.exe ../../editcap.exe \
|
|
!IFDEF GTK_DIR
|
|
../../wireshark-gtk.exe \
|
|
!ENDIF
|
|
../../text2pcap.exe ../../mergecap.exe ../../capinfos.exe $(WIRESHARK_LIB_DIR)\WinPcap_$(WINPCAP_VERSION).exe
|
|
DLL=../../wiretap/wiretap-$(WTAP_VERSION).dll ../../wsutil/libwsutil.dll
|
|
DOC=../../doc/ws.css \
|
|
../../doc/androiddump.html \
|
|
../../doc/capinfos.html \
|
|
../../doc/dumpcap.html \
|
|
../../doc/editcap.html \
|
|
../../doc/extcap.html \
|
|
../../doc/mergecap.html \
|
|
../../doc/rawshark.html \
|
|
../../doc/text2pcap.html \
|
|
../../doc/tshark.html \
|
|
../../doc/wireshark-filter.html \
|
|
../../doc/wireshark.html \
|
|
$(STAGING_DIR)/COPYING.txt \
|
|
$(STAGING_DIR)/NEWS.txt \
|
|
$(STAGING_DIR)/README.txt \
|
|
$(STAGING_DIR)/README.windows.txt
|
|
|
|
GPL=../../COPYING
|
|
HELP=$(STAGING_DIR)/help/capture_filters.txt \
|
|
$(STAGING_DIR)/help/capturing.txt \
|
|
$(STAGING_DIR)/help/display_filters.txt \
|
|
$(STAGING_DIR)/help/faq.txt \
|
|
$(STAGING_DIR)/help/getting_started.txt \
|
|
$(STAGING_DIR)/help/overview.txt \
|
|
$(STAGING_DIR)/help/toc
|
|
|
|
PLUGINS= \
|
|
../../plugins/docsis/docsis.dll \
|
|
../../plugins/ethercat/ethercat.dll \
|
|
../../plugins/gryphon/gryphon.dll \
|
|
../../plugins/irda/irda.dll \
|
|
../../plugins/m2m/m2m.dll \
|
|
../../plugins/mate/mate.dll \
|
|
../../plugins/opcua/opcua.dll \
|
|
../../plugins/profinet/profinet.dll \
|
|
../../plugins/stats_tree/stats_tree.dll \
|
|
../../plugins/unistim/unistim.dll \
|
|
../../plugins/wimax/wimax.dll \
|
|
../../plugins/wimaxasncp/wimaxasncp.dll \
|
|
../../plugins/wimaxmacphy/wimaxmacphy.dll \
|
|
$(CUSTOM_PLUGINS)
|
|
|
|
NSI=\
|
|
wireshark.nsi \
|
|
uninstall.nsi \
|
|
common.nsh \
|
|
GetWindowsVersion.nsh \
|
|
servicelib.nsh \
|
|
AdditionalTasksPage.ini \
|
|
WinPcapPage.ini
|
|
|
|
UNINSTALL_INSTALLER = $(STAGING_DIR)\uninstall_installer.exe
|
|
|
|
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_LIB_DIR)\user-guide\user-guide.chm xcopy $(WIRESHARK_LIB_DIR)\user-guide\user-guide.chm . /Y /D
|
|
|
|
common.nsh: config.nsh
|
|
config.nsh: config.nsh.in ..\..\config.nmake
|
|
sed \
|
|
-e s/@PROGRAM_NAME@/$(PROGRAM_NAME)/ \
|
|
-e 's/@TOP_SRC_DIR@/$(TOP_SRC_DIR:\=\\\\)/' \
|
|
-e 's/@STAGING_DIR@/$(STAGING_DIR:\=\\\\)/' \
|
|
-e s/@USER_GUIDE_DIR@/./ \
|
|
-e s/@WIRESHARK_TARGET_PLATFORM@/$(WIRESHARK_TARGET_PLATFORM)/ \
|
|
-e s/@TARGET_MACHINE@/$(TARGET_MACHINE)/ \
|
|
-e s/@MSC_VER_REQUIRED@/$(MSC_VER_REQUIRED)/ \
|
|
-e 's/@WIRESHARK_LIB_DIR@/$(WIRESHARK_LIB_DIR:\=\\\\)/' \
|
|
-e s/@WINPCAP_PACKAGE_VERSION@/$(WINPCAP_VERSION)/ \
|
|
-e s/@PCAP_DISPLAY_VERSION@/$(WINPCAP_VERSION:_=.)/ \
|
|
-e s/@INTL_DLL@/$(INTL_DLL)/ \
|
|
-e s/@VERSION@/$(VERSION)/ \
|
|
-e s/@VERSION_MAJOR@/$(VERSION_MAJOR)/ \
|
|
-e s/@VERSION_MINOR@/$(VERSION_MINOR)/ \
|
|
-e s/@PRODUCT_VERSION@/$(PRODUCT_VERSION)/ \
|
|
-e s/@WTAP_VERSION@/$(WTAP_VERSION)/ \
|
|
-e 's/@MSVCR_DLL@/$(MSVCR_DLL:\=\\\\)/' \
|
|
!IFDEF VCREDIST_EXE
|
|
-e 's/@VCREDIST_EXE@/$(VCREDIST_EXE:\=\\\\)/' \
|
|
!ENDIF
|
|
-e s/@ENABLE_LIBWIRESHARK@/$(ENABLE_LIBWIRESHARK)/ \
|
|
-e 's/@SMI_DIR@/$(SMI_DIR:\=\\\\)/' \
|
|
!IFDEF GTK_DIR
|
|
-e 's/@GTK_DIR@/$(GTK_DIR:\=\\\\)/' \
|
|
!ENDIF
|
|
!IF EXIST("..\..\wireshark-qt-release\wireshark.exe")
|
|
-e s/@QT_DIR@/..\\..\\wireshark-qt-release/ \
|
|
!ENDIF
|
|
-e 's/\(^^!define .*\) \"*@.*@\"*/; \1/' \
|
|
< config.nsh.in > $@
|
|
|
|
wireshark.nsi: all-manifest.nsh qt-dll-manifest.nsh gtk-dll-manifest.nsh common.nsh
|
|
|
|
all-manifest.nsh: Makefile.nmake ..\..\config.nmake
|
|
@echo # Files required for all sections. Generated from Makefile.nmake > $@
|
|
@echo # GLib >> $@
|
|
@echo File "$(STAGING_DIR)\libgio-2.0-0.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\libglib-2.0-0.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\libgobject-2.0-0.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\libgmodule-2.0-0.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\$(INTL_DLL)" >> $@
|
|
@echo File "$(STAGING_DIR)\gspawn-$(WIRESHARK_TARGET_PLATFORM)-helper.exe" >> $@
|
|
@echo File "$(STAGING_DIR)\gspawn-$(WIRESHARK_TARGET_PLATFORM)-helper-console.exe" >> $@
|
|
!IF "$(C_ARES_DIR)" != ""
|
|
@echo # C-Ares >> $@
|
|
@echo File "$(STAGING_DIR)\libcares-2.dll" >> $@
|
|
!ENDIF
|
|
!IF "$(GNUTLS_DIR)" != ""
|
|
@echo # GnuTLS >> $@
|
|
@echo File "$(STAGING_DIR)\libffi-6.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\$(GCC_DLL)" >> $@
|
|
@echo File "$(STAGING_DIR)\libgcrypt-20.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\libgmp-10.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\libgnutls-28.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\$(GPGERROR_DLL)" >> $@
|
|
@echo File "$(STAGING_DIR)\libhogweed-2-4.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\libnettle-4-6.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\libp11-kit-0.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\libtasn1-6.dll" >> $@
|
|
!ENDIF
|
|
!IF "$(KFW_DIR)" != ""
|
|
@echo # Kerberos >> $@
|
|
@echo File "$(STAGING_DIR)\$(COMERR_DLL)" >> $@
|
|
@echo File "$(STAGING_DIR)\$(KRB5_DLL)" >> $@
|
|
@echo File "$(STAGING_DIR)\$(K5SPRT_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF LUA_DIR
|
|
@echo # Lua >> $@
|
|
@echo File "$(STAGING_DIR)\lua52.dll" >> $@
|
|
@echo File "..\..\epan\wslua\init.lua" >> $@
|
|
@echo File "..\..\epan\wslua\console.lua" >> $@
|
|
@echo File "..\..\epan\wslua\dtd_gen.lua" >> $@
|
|
!ENDIF
|
|
!IFDEF GEOIP_DIR
|
|
@echo File "$(STAGING_DIR)\libGeoIP-1.dll" >> $@
|
|
!ENDIF
|
|
!IFDEF SMI_DIR
|
|
@echo # SMI >> $@
|
|
@echo File "$(STAGING_DIR)\libsmi-2.dll" >> $@
|
|
!ENDIF
|
|
!IFDEF WINSPARKLE_DIR
|
|
@echo # WinSparkle >> $@
|
|
@echo File "$(STAGING_DIR)\WinSparkle.dll" >> $@
|
|
!ENDIF
|
|
!IF "$(ZLIB_DIR)" != ""
|
|
@echo # Zlib >> $@
|
|
@echo File "$(STAGING_DIR)\zlib1.dll" >> $@
|
|
!ENDIF
|
|
|
|
gtk-dll-manifest.nsh: Makefile.nmake ..\..\config.nmake
|
|
@echo # Files required for the GTK+ section. Generated from Makefile.nmake > $@
|
|
@echo # Mandatory >> $@
|
|
@echo File "$(STAGING_DIR)\$(GDK_DLL)" >> $@
|
|
@echo File "$(STAGING_DIR)\libgdk_pixbuf-2.0-0.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\$(GTK_DLL)" >> $@
|
|
@echo File "$(STAGING_DIR)\libatk-1.0-0.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\libpango-1.0-0.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\libpangowin32-1.0-0.dll" >> $@
|
|
@echo # Optional >> $@
|
|
!IFDEF NEED_CAIRO_DLL
|
|
@echo File "$(STAGING_DIR)\libcairo-2.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\libpangocairo-1.0-0.dll" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_CAIRO_GOBJECT_DLL
|
|
@echo File "$(STAGING_DIR)\libcairo-gobject-2.dll" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_EXPAT_DLL
|
|
@echo File "$(STAGING_DIR)\${EXPAT_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_FFI_DLL
|
|
@echo File "$(STAGING_DIR)\$(FFI_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_FONTCONFIG_DLL
|
|
@echo File "$(STAGING_DIR)\$(FONTCONFIG_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_FREETYPE_DLL
|
|
@echo File "$(STAGING_DIR)\libpangoft2-1.0-0.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\$(FREETYPE_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_HARFBUZZ_DLL
|
|
@echo File "$(STAGING_DIR)\$(HARFBUZZ_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_JASPER_DLL
|
|
@echo File "$(STAGING_DIR)\$(JASPER_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_JPEG_DLL
|
|
@echo File "$(STAGING_DIR)\$(JPEG_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_LZMA_DLL
|
|
@echo File "$(STAGING_DIR)\$(LZMA_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_PIXMAN_DLL
|
|
@echo File "$(STAGING_DIR)\$(PIXMAN_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_PNG_DLL
|
|
@echo File "$(STAGING_DIR)\$(PNG_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_SEH_DLL
|
|
@echo File "$(STAGING_DIR)\$(SEH_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_SJLJ_DLL
|
|
@echo File "$(STAGING_DIR)\$(SJLJ_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_TIFF_DLL
|
|
@echo File "$(STAGING_DIR)\$(TIFF_DLL)" >> $@
|
|
!ENDIF
|
|
!IFDEF NEED_XML_DLL
|
|
@echo File "$(STAGING_DIR)\$(XML_DLL)" >> $@
|
|
!ENDIF
|
|
@echo # Subdirectories >> $@
|
|
@echo SetOutPath ^$INSTDIR\$(GTK_ETC_DIR) >> $@
|
|
@echo File "$(GTK_DIR)\$(GTK_ETC_DIR)\*.*" >> $@
|
|
!IFDEF GTK_ENGINES_DIR
|
|
@echo SetOutPath ^$INSTDIR\$(GTK_ENGINES_DIR) >> $@
|
|
@echo File "$(STAGING_DIR)\$(GTK_ENGINES_DIR)\libpixmap.dll" >> $@
|
|
@echo File "$(STAGING_DIR)\$(GTK_ENGINES_DIR)\libwimp.dll" >> $@
|
|
!ENDIF
|
|
!IFDEF GTK_MODULES_DIR
|
|
@echo SetOutPath ^$INSTDIR\$(GTK_MODULES_DIR) >> $@
|
|
@echo File "$(STAGING_DIR)\$(GTK_MODULES_DIR)\libgail.dll" >> $@
|
|
!ENDIF
|
|
!IFDEF GTK_SCHEMAS_DIR
|
|
@echo SetOutPath ^$INSTDIR\$(GTK_SCHEMAS_DIR) >> $@
|
|
@echo File "$(STAGING_DIR)\$(GTK_SCHEMAS_DIR)\*.*" >> $@
|
|
!ENDIF
|
|
|
|
qt-dll-manifest.nsh: windeployqt-to-nsis.ps1 Makefile.nmake
|
|
!IF EXIST("$(QT5_BASE_DIR)\bin\qmake.exe")
|
|
set PATH=%PATH%;$(QT5_BASE_DIR)\bin
|
|
!ENDIF
|
|
$(POWERSHELL) windeployqt-to-nsis.ps1 \
|
|
-Executable ..\..\wireshark-qt-release\wireshark.exe \
|
|
-FilePath $@
|
|
|
|
$(STAGING_DIR)\uninstall.exe : $(NSI)
|
|
rm -f $(UNINSTALL_INSTALLER)
|
|
$(MAKENSIS) uninstall.nsi
|
|
$(UNINSTALL_INSTALLER)
|
|
rm -f $(UNINSTALL_INSTALLER)
|
|
|
|
uninstall-exe : $(STAGING_DIR)\uninstall.exe
|
|
|
|
wireshark-$(WIRESHARK_TARGET_PLATFORM)-$(VERSION).exe : user-guide.chm $(NSI) $(DELIVERABLES) Makefile.nmake $(STAGING_DIR)\uninstall.exe
|
|
$(MAKENSIS) wireshark.nsi
|
|
|
|
clean:
|
|
rm -f all-manifest.nsh
|
|
rm -f config.nsh
|
|
rm -f gtk-dll-manifest.nsh
|
|
rm -f NEWS.txt
|
|
rm -f qt-dll-manifest.nsh
|
|
rm -f user-guide.chm
|
|
rm -f $(UNINSTALL_INSTALLER)
|
|
rm -f wireshark-$(WIRESHARK_TARGET_PLATFORM)-$(VERSION).exe
|
|
|
|
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
|