summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--config.nmake22
-rw-r--r--docbook/wsdg_src/WSDG_chapter_sources.asciidoc34
-rw-r--r--docbook/wsdg_src/WSDG_chapter_tools.asciidoc28
-rw-r--r--packaging/Makefile.nmake9
-rw-r--r--packaging/portableapps/win32/Makefile.nmake207
-rw-r--r--packaging/portableapps/win32/WiresharkPortable.ini3
-rwxr-xr-xpackaging/portableapps/win32/WiresharkPortable.nsi251
-rwxr-xr-xpackaging/portableapps/win32/appinfo.tmpl6
-rw-r--r--packaging/portableapps/win32/help.html8
-rwxr-xr-xpackaging/portableapps/win32/installer.ini0
-rwxr-xr-xpackaging/ws-manifest.pl7
-rw-r--r--ui/qt/Wireshark.pro2
13 files changed, 213 insertions, 365 deletions
diff --git a/.gitignore b/.gitignore
index 44adbf274c..361b3be135 100644
--- a/.gitignore
+++ b/.gitignore
@@ -211,7 +211,6 @@ packaging/macosx/osx-dmg.sh
packaging/macosx/Wireshark_package.pmdoc/index.xml
packaging/nsis/qt-dll-manifest.nsh
packaging/portableapps/win32/Files/
-packaging/portableapps/win32/WiresharkPortable.ini
packaging/portableapps/win32/appinfo.ini
packaging/portableapps/win32/distribution.nmake
packaging/rpm/SPECS/wireshark.spec
diff --git a/config.nmake b/config.nmake
index fddc6ff1a9..acd65615d8 100644
--- a/config.nmake
+++ b/config.nmake
@@ -355,7 +355,8 @@ QT5_BASE_DIR=$(WIRESHARK_LIB_DIR)\Qt5.1.1\5.1.1\msvc2010
# PCAP_DIR isn't defined.
#
PCAP_DIR=$(WIRESHARK_LIB_DIR)\WPdpack
-# This macro is used by the nsis installer script, by the u3/portable apps and by the setup target.
+# This macro is used by the NSIS installer script, PortableApps, and by the
+# setup target.
WINPCAP_VERSION=4_1_3
WPD_VERSION=4_1_2
@@ -603,7 +604,8 @@ QT5_BASE_DIR=$(WIRESHARK_LIB_DIR)\Qt5.1.1\5.1.1\msvc2010
# PCAP_DIR isn't defined.
#
PCAP_DIR=$(WIRESHARK_LIB_DIR)\WPdpack
-# This macro is used by the nsis installer script, by the u3/portable apps and by the setup target.
+# This macro is used by the NSIS installer script, PortableApps, and by the
+# setup target.
WINPCAP_VERSION=4_1_3
WPD_VERSION=4_1_2
@@ -866,14 +868,17 @@ MAKENSIS="$(PROGRAM_FILES_W6432)\NSIS\makensis.exe"
!ENDIF
#
-# Optional: To build the NSIS PortableApps installer.
+# Optional: Build the PortableApps package (WiresharkPortable).
#
-# If you have the NSIS Unicode package, set this to the NSIS Unicode executable.
+# If you have the PortableApps.com Platform installed set this to the main
+# PortableApps directory. In order to build packages you need to install
+# "PortableApps.com Launcher" and "NSIS Portable (Unicode)" *within* the
+# PortableApps environment.
#
-# If you don't have NSIS Unicode, comment this line out, so that
-# MAKENSIS_UNICODE isn't defined.
+# If you don't have the PortableApps.com Platform installed comment this line
+# out.
#
-MAKENSIS_UNICODE="$(PROGRAM_FILES)\NSIS\Unicode\makensis.exe"
+PORTABLEAPPS_DIR="C:\PortableApps"
#
# Optional: To build the developers API documentation with doxygen and dot.
@@ -901,7 +906,8 @@ MAKENSIS_UNICODE="$(PROGRAM_FILES)\NSIS\Unicode\makensis.exe"
HHC_DIR=$(PROGRAM_FILES)\HTML Help Workshop
#
-# Optional: To reduce the size of dlls and exes, which is especially useful for USB device distributions (U3, PortableApps)
+# Optional: To reduce the size of dlls and exes, which is especially useful for
+# USB device distributions (PortableApps)
#
# If you have the UPX package, set this to the upx.exe executable.
#
diff --git a/docbook/wsdg_src/WSDG_chapter_sources.asciidoc b/docbook/wsdg_src/WSDG_chapter_sources.asciidoc
index 17d525a8fb..cd6802d48b 100644
--- a/docbook/wsdg_src/WSDG_chapter_sources.asciidoc
+++ b/docbook/wsdg_src/WSDG_chapter_sources.asciidoc
@@ -1131,7 +1131,7 @@ You will probably have to modify the MAKENSIS setting in the
'config.nmake' file to specify where the NSIS binaries
are installed.
-In the wireshark directory, type:
+In the top-level source directory type:
----
> nmake -f makefile.nmake packaging
@@ -1139,8 +1139,8 @@ In the wireshark directory, type:
to build the installer.
-.This might take a while
[TIP]
+.This might take a while
====
Please be patient while the package is compressed.
It might take some time, even on fast machines.
@@ -1150,6 +1150,36 @@ If everything went well, you will now find something like:
'wireshark-setup-wireshark-version:[].exe' in
the 'packaging/nsis' directory.
+[[ChSrcPortableApps]]
+
+==== Win32: PortableApps .paf.exe package
+
+_PortableApps.com_ is an environment that lets users run popular applications
+from portable media such as flash drives and cloud drive services.
+
+You will probably have to modify the MAKENSIS setting in the
+'config.nmake' file to specify where the NSIS binaries
+are installed.
+
+In the top-level source directory type:
+
+----
+> nmake -f makefile.nmake packaging_papps
+----
+
+to build the installer.
+
+[TIP]
+.This might take a while
+====
+Please be patient while the package is compressed.
+It might take some time, even on fast machines.
+====
+
+If everything went well, you will now find something like:
+'WiresharkPortable-wireshark-major-minor-version:[].paf.exe' in
+the 'packaging/portableapps/win32' directory.
+
++++++++++++++++++++++++++++++++++++++
<!-- End of WSDG Chapter Sources -->
++++++++++++++++++++++++++++++++++++++
diff --git a/docbook/wsdg_src/WSDG_chapter_tools.asciidoc b/docbook/wsdg_src/WSDG_chapter_tools.asciidoc
index 6d533ed47e..e45276e2cb 100644
--- a/docbook/wsdg_src/WSDG_chapter_tools.asciidoc
+++ b/docbook/wsdg_src/WSDG_chapter_tools.asciidoc
@@ -1347,7 +1347,33 @@ To install it, simply download the latest released version (currently 2.46)
from http://nsis.sourceforge.net[] and start the downloaded installer. You will
need NSIS version 2. Version 3 is not yet supported.
-You will find more instructions in <<ChSrcNSIS>>on how to use the NSIS tool.
+You can find more instructions on using NSIS in <<ChSrcNSIS>>.
+
+=== Windows: PortableApps (optional)
+
+The PortableApps.com Installer is used to generate
+'WiresharkPortable-wireshark-major-minor-version:[].paf.exe' from all the files
+needed to be installed, including all required DLLs, plugins, and supporting
+files.
+
+To install it, do the following:
+
+* Download the latest PortableApps.com Platform release from
+ http://portableapps.com/[]. `config.nmake` uses the ``Local
+ All Users'' install location (`C:\`) by default.
+
+* Install the following applications in the PortableApps.com environment:
+
+** PortableApps.com Installer
+
+** PortableApps.com Launcher
+
+** NSIS Portable (Unicode)
+
+** PortableApps.com AppCompactor
+
+You can find more instructions on using the PortableApps.com Installer in
+<<ChSrcPortableApps>>.
++++++++++++++++++++++++++++++++++++++
<!-- End of WSDG Chapter Tools -->
diff --git a/packaging/Makefile.nmake b/packaging/Makefile.nmake
index 2506497323..ee72cdd164 100644
--- a/packaging/Makefile.nmake
+++ b/packaging/Makefile.nmake
@@ -1,14 +1,13 @@
-#
+# This is no longer used and can probably be removed.
include ../config.nmake
-wireshark.manifest: nsis/wireshark.nsi ws-manifest.pl
- $(PERL) ws-manifest.pl nsis/wireshark.nsi > $@
+#wireshark.manifest: nsis/wireshark.nsi ws-manifest.pl
+# $(PERL) ws-manifest.pl nsis/wireshark.nsi > $@
clean:
rm -rf wireshark.manifest
distclean: clean
-
+
maintainer-clean: distclean
-
diff --git a/packaging/portableapps/win32/Makefile.nmake b/packaging/portableapps/win32/Makefile.nmake
index 60dee968ba..b6cfe96a92 100644
--- a/packaging/portableapps/win32/Makefile.nmake
+++ b/packaging/portableapps/win32/Makefile.nmake
@@ -1,21 +1,29 @@
#
+TOPDIR = ..\..\..
+TOOLS_DIR = $(TOPDIR)\tools
+
include ../../../config.nmake
-FILES = Files
-APP = App
-DATA = Data
-OTHER = Other
-APPINFO = AppInfo
-WIRESHARK = Wireshark
-SOURCE = WiresharkPortableSource
+PROGRAM_PORTABLE = $(PROGRAM_NAME)Portable
+
+STAGING_DIR = $(PROGRAM_PORTABLE)
+APP = $(STAGING_DIR)\App
+APPINFO = $(APP)\AppInfo
+LAUNCHER_DIR = $(APPINFO)\Launcher
+WIRESHARK_DIR = $(APP)\$(PROGRAM_NAME)
+DATA = $(STAGING_DIR)\Data
+OTHER = $(STAGING_DIR)\Other
+SOURCE = $(OTHER)\Source
+
+APPINFO_INI = $(APPINFO)\appinfo.ini
+LAUNCHER_INI = $(LAUNCHER_DIR)\$(PROGRAM_PORTABLE).ini
WSMANIFEST = ../../wireshark.manifest
NSIS_PLUGINS = nsis-plugins
FINDPROCDLL = $(WIRESHARK_LIB_DIR)\$(NSIS_PLUGINS)\FindProcDLL.dll
-TOPDIR = ..\..\..
COPY = xcopy
MKDIR = mkdir
COPY_FLAGS = /d /y
@@ -23,6 +31,8 @@ COPY_FLAGS = /d /y
WIN32_SETUP_OPT = --download
!ENDIF
+NSIS_DIR = $(TOPDIR)\packaging\nsis
+
# XXX This should be defined in config.nmake.
!IF EXIST("..\..\wireshark-qt-release\wireshark.exe")
QT_DIR = "..\..\wireshark-qt-release"
@@ -34,107 +44,118 @@ NEED_QT5_DLL = USE
NEED_QT4_DLL = USE
!ENDIF
+#wireshark.nsi: qt-dll-manifest.nsh
+#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 $@
+
UPX_FLAGS = -q
PAPPS_VERSION=$(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_MICRO).0
-all: package
+all: package
-package: WiresharkPortable-$(VERSION).paf.exe
+package: $(PROGRAM_PORTABLE)-$(VERSION).paf.exe
dirs:
- if not exist $(FILES) $(MKDIR) $(FILES)
- if not exist $(FILES)\$(APP) $(MKDIR) $(FILES)\$(APP)
- if not exist $(FILES)\$(APP)\$(APPINFO) $(MKDIR) $(FILES)\$(APP)\$(APPINFO)
- if not exist $(FILES)\$(APP)\$(WIRESHARK) $(MKDIR) $(FILES)\$(APP)\$(WIRESHARK)
- if not exist $(FILES)\$(DATA) $(MKDIR) $(FILES)\$(DATA)
- if not exist $(FILES)\$(OTHER) $(MKDIR) $(FILES)\$(OTHER)
- if not exist $(FILES)\$(OTHER)\$(SOURCE) $(MKDIR) $(FILES)\$(OTHER)\$(SOURCE)
-
-nsis-bits:
- cd ../../nsis
- $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake user-guide.chm
- cd ../portableapps/win32
-
-$(WSMANIFEST):
- cd ../..
- $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake wireshark.manifest
- cd portableapps/win32
-
-distribution.nmake: makenmake.pl $(WSMANIFEST) ../../ws-manifest.pl
- $(PERL) makenmake.pl $(WSMANIFEST) > $@
-
-distribution: distribution.nmake
- nmake -f distribution.nmake
-
-pack: distribution
-!IFDEF UPX
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\[a-z]*.exe
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\*.dll
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\plugins\$(VERSION)\*.dll
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\lib\gtk-2.0\$(GTK_LIB_DIR)\loaders\*.dll
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\lib\gtk-2.0\$(GTK_LIB_DIR)\immodules\*.dll
- -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\$(GTK_WIMP_DLLDST_DIR)\*.dll
-!ENDIF
-
-
-appinfo.ini: appinfo.tmpl $(TOPDIR)\config.nmake
+ if not exist $(STAGING_DIR) $(MKDIR) $(STAGING_DIR)
+ if not exist $(APP) $(MKDIR) $(APP)
+ if not exist $(APPINFO) $(MKDIR) $(APPINFO)
+ if not exist $(LAUNCHER_DIR) $(MKDIR) $(LAUNCHER_DIR)
+ if not exist $(WIRESHARK_DIR) $(MKDIR) $(WIRESHARK_DIR)
+ if not exist $(DATA) $(MKDIR) $(DATA)
+ if not exist $(OTHER) $(MKDIR) $(OTHER)
+ if not exist $(SOURCE) $(MKDIR) $(SOURCE)
+
+#nsis-bits:
+# cd ../../nsis
+# $(MAKE) /$(MAKEFLAGS) -f Makefile.nmake user-guide.chm
+# cd ../portableapps/win32
+
+#distribution.nmake: makenmake.pl $(WSMANIFEST) ../../ws-manifest.pl
+# $(PERL) makenmake.pl $(WSMANIFEST) > $@
+
+#distribution: distribution.nmake
+# nmake -f distribution.nmake
+
+#pack: distribution
+#!IFDEF UPX
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\[a-z]*.exe
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\*.dll
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\plugins\$(VERSION)\*.dll
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\lib\gtk-2.0\$(GTK_LIB_DIR)\loaders\*.dll
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\lib\gtk-2.0\$(GTK_LIB_DIR)\immodules\*.dll
+# -$(UPX) $(UPX_FLAGS) $(FILES)\$(APP)\$(WIRESHARK)\$(GTK_WIMP_DLLDST_DIR)\*.dll
+#!ENDIF
+
+$(APPINFO_INI): dirs appinfo.tmpl $(TOPDIR)\config.nmake
sed -e 's/$$(PAPPS_VERSION)/$(PAPPS_VERSION)/g' \
-e 's/$$(VERSION_MAJOR)/$(VERSION_MAJOR)/g' \
-e 's/$$(VERSION_MINOR)/$(VERSION_MINOR)/g' \
- < appinfo.tmpl > appinfo.ini
-
-WiresharkPortable.ini: WiresharkPortable.tmpl $(TOPDIR)\config.nmake
- sed -e 's/$$(WINPCAP_VERSION)/$(WINPCAP_VERSION)/g' \
- -e 's/$$(TARGET_MACHINE)/$(TARGET_MACHINE)/g' \
- < WiresharkPortable.tmpl > WiresharkPortable.ini
-
-appinfo: appinfo.ini
- $(COPY) appinfo.ini $(FILES)\$(APP)\$(APPINFO) $(COPY_FLAGS)
- $(COPY) installer.ini $(FILES)\$(APP)\$(APPINFO) $(COPY_FLAGS)
- copy $(TOPDIR)\image\wireshark.ico $(FILES)\$(APP)\$(APPINFO)\appicon.ico /y
- copy $(TOPDIR)\image\wsicon16.png $(FILES)\$(APP)\$(APPINFO)\appicon_16.png /y
- copy $(TOPDIR)\image\wsicon32.png $(FILES)\$(APP)\$(APPINFO)\appicon_32.png /y
-
-source: WiresharkPortable.ini
- $(COPY) WiresharkPortable.ini $(FILES)\$(OTHER)\$(SOURCE) $(COPY_FLAGS)
- $(COPY) readme.txt $(FILES)\$(OTHER)\$(SOURCE) $(COPY_FLAGS)
- $(COPY) WiresharkPortable.nsi $(FILES)\$(OTHER)\$(SOURCE) $(COPY_FLAGS)
- $(COPY) Installer.nsi $(FILES)\$(OTHER)\$(SOURCE) $(COPY_FLAGS)
-
-findprocdll:
- if not exist $(FINDPROCDLL) \
- @$(SH) ../../../tools/win-setup.sh "$(WIN32_SETUP_OPT)" "$(WIRESHARK_LIB_DIR)" \
- $(NSIS_PLUGINS) FindProc.zip "$(DOWNLOAD_TAG)" "$(WIRESHARK_TARGET_PLATFORM)"
-
-
-WiresharkPortable-$(VERSION).paf.exe : dirs appinfo nsis-bits pack source Files/WiresharkPortable.exe Installer.nsi
- $(MAKENSIS) \
- /DVERSION=$(PAPPS_VERSION) \
- /DWSVERSION=$(VERSION) \
- /DQT_DIR=$(QT_DIR) \
- /DNEED_QT5_DLL=$(NEED_QT5_DLL) \
- /DNEED_QT4_DLL=$(NEED_QT4_DLL) \
- /DEXTRA_PLUGINS="$(WIRESHARK_LIB_DIR)\$(NSIS_PLUGINS)" \
- Installer.nsi
-
-Files/WiresharkPortable.exe : WiresharkPortable.nsi findprocdll
- $(MAKENSIS) \
- /DVERSION=$(PAPPS_VERSION) \
- /DWSVERSION=$(VERSION) \
- /DEXTRA_PLUGINS="$(WIRESHARK_LIB_DIR)\$(NSIS_PLUGINS)" \
- /DDEFAULTWINPCAP=WinPcap_$(WINPCAP_VERSION).exe \
- /DDEFAULTMSVCREDIST=vcredist_$(TARGET_MACHINE).exe \
- WiresharkPortable.nsi
+ < appinfo.tmpl > $@
+
+$(LAUNCHER_INI): dirs $(PROGRAM_PORTABLE).ini
+ copy $(PROGRAM_PORTABLE).ini $(LAUNCHER_INI) /y
+
+appinfo: $(APPINFO_INI) $(LAUNCHER_INI)
+ copy help.html $(STAGING_DIR)\help.html /y
+ copy $(TOPDIR)\image\wireshark.ico $(APPINFO)\appicon.ico /y
+ copy $(TOPDIR)\image\wsicon16.png $(APPINFO)\appicon_16.png /y
+ copy $(TOPDIR)\image\wsicon32.png $(APPINFO)\appicon_32.png /y
+ copy $(TOPDIR)\image\wsicon128.png $(APPINFO)\appicon_128.png /y
+
+# It'd be nice if we could get some sort of status or debugging output. For now
+# just cross our fingers.
+applauncher: appinfo
+ $(PORTABLEAPPS_DIR)\PortableApps.comLauncher\PortableApps.comLauncherGenerator.exe \
+ $(MAKEDIR)\$(PROGRAM_PORTABLE)
+
+appbinaries: applauncher
+ xcopy $(TOPDIR)\wireshark-qt-release $(WIRESHARK_DIR) /D /I /E /Y
+ xcopy $(TOPDIR)\capinfos.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\captype.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\dumpcap.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\editcap.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\mergecap.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\randpkt.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\reordercap.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\rawshark.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\text2pcap.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\tfshark.exe $(WIRESHARK_DIR) /d
+ xcopy $(TOPDIR)\tshark.exe $(WIRESHARK_DIR) /d
+
+#WiresharkPortable.ini: WiresharkPortable.tmpl $(TOPDIR)\config.nmake
+# sed -e 's/$$(WINPCAP_VERSION)/$(WINPCAP_VERSION)/g' \
+# -e 's/$$(TARGET_MACHINE)/$(TARGET_MACHINE)/g' \
+# < WiresharkPortable.tmpl > WiresharkPortable.ini
+
+source: dirs
+ $(COPY) readme.txt $(SOURCE) $(COPY_FLAGS)
+ $(TEXTIFY) -Destination $(SOURCE) \
+ $(TOPDIR)/COPYING \
+ $(TOPDIR)/NEWS \
+ $(TOPDIR)/README.windows
+
+WiresharkPortable-$(VERSION).paf.exe : dirs appinfo appbinaries source
+!IFDEF PORTABLEAPPS_DIR
+ $(PORTABLEAPPS_DIR)\PortableApps.comInstaller\PortableApps.comInstaller.exe \
+ $(MAKEDIR)\$(PROGRAM_PORTABLE)
+!ELSE
+!MESSAGE PORTABLEAPPS_DIR not configured in config.nmake. Skipping.
+!ENDIF
clean:
cd ../../
$(MAKE) -f Makefile.nmake $@
cd portableapps/win32
- rm -rf $(FILES)
+ rm -rf $(STAGING_DIR)
rm -rf appinfo.ini
- rm -rf WiresharkPortable.ini
- rm -rf distribution.nmake
+ #rm -rf WiresharkPortable.ini
+ #rm -rf distribution.nmake
rm -rf WiresharkPortable-$(VERSION).paf.exe
rm -rf *~ *.*~
diff --git a/packaging/portableapps/win32/WiresharkPortable.ini b/packaging/portableapps/win32/WiresharkPortable.ini
new file mode 100644
index 0000000000..b9ea785d0d
--- /dev/null
+++ b/packaging/portableapps/win32/WiresharkPortable.ini
@@ -0,0 +1,3 @@
+[Launch]
+ProgramExecutable=Wireshark\Wireshark.exe
+WaitForProgram=false \ No newline at end of file
diff --git a/packaging/portableapps/win32/WiresharkPortable.nsi b/packaging/portableapps/win32/WiresharkPortable.nsi
deleted file mode 100755
index 50538ac646..0000000000
--- a/packaging/portableapps/win32/WiresharkPortable.nsi
+++ /dev/null
@@ -1,251 +0,0 @@
-
-; WiresharkPortable.nsi - runs Wireshark Portable from a PortableApps enabled device
-
-; $Id$
-
-;Copyright (C) 2004-2007 John T. Haller of PortableApps.com
-
-;Website: http://www.wireshark.org/
-
-;This software is OSI Certified Open Source Software.
-;OSI Certified is a certification mark of the Open Source Initiative.
-
-;This program is free software; you can redistribute it and/or
-;modify it under the terms of the GNU General Public License
-;as published by the Free Software Foundation; either version 2
-;of the License, or (at your option) any later version.
-
-;This program is distributed in the hope that it will be useful,
-;but WITHOUT ANY WARRANTY; without even the implied warranty of
-;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;GNU General Public License for more details.
-
-;You should have received a copy of the GNU General Public License
-;along with this program; if not, write to the Free Software
-;Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-!define NAME "WiresharkPortable"
-!define FULLNAME "Wireshark Portable"
-!define APP "Wireshark"
-!define WEBSITE "www.wireshark.org"
-!define DEFAULTEXE "wireshark.exe"
-!define DEFAULTAPPDIR "Wireshark"
-
-!addplugindir "${EXTRA_PLUGINS}"
-
-;=== Program Details
-Name "${FULLNAME}"
-OutFile "Files\${NAME}.exe"
-Caption "${FULLNAME} | PortableApps.com"
-VIProductVersion "${VERSION}"
-VIAddVersionKey ProductName "${FULLNAME}"
-VIAddVersionKey Comments "Allows ${APP} to be run from a removable drive. For additional details, visit ${WEBSITE}"
-VIAddVersionKey CompanyName "Wireshark.org"
-VIAddVersionKey LegalCopyright "Gerald Combs"
-VIAddVersionKey FileDescription "${FULLNAME}"
-VIAddVersionKey FileVersion "${VERSION}"
-VIAddVersionKey ProductVersion "${VERSION}"
-VIAddVersionKey InternalName "${FULLNAME}"
-VIAddVersionKey LegalTrademarks "Wireshark and the fin logo are registered trademarks of Gerald C. Combs"
-VIAddVersionKey OriginalFilename "${NAME}.exe"
-;VIAddVersionKey PrivateBuild ""
-;VIAddVersionKey SpecialBuild ""
-
-;=== Runtime Switches
-CRCCheck On
-WindowIcon Off
-SilentInstall Silent
-AutoCloseWindow True
-RequestExecutionLevel user
-XPStyle on
-
-;=== Include
-!include "FileFunc.nsh"
-!insertmacro GetParameters
-
-;=== Program Icon
-Icon "Files\App\AppInfo\appicon.ico"
-
-;=== Variables
-Var PROGRAMDIRECTORY
-Var ADDITIONALPARAMETERS
-Var EXECSTRING
-Var PROGRAMEXECUTABLE
-Var INIPATH
-Var DISABLEWINPCAPINSTALL
-Var WINPCAPINSTALLER
-Var WINPCAP_UNINSTALL ;declare variable for holding the value of a registry key
-Var MSVCREDIST
-Var MSVCREDIST_UNINSTALL ;declare variable for holding the value of a registry key
-Var PDRIVE
-
-Section "Main"
- ;=== Check if another WiresharkPortable already running
- ;System::Call 'kernel32::CreateMutexA(i 0, i 0, t "${NAME}") i .r1 ?e'
- ;Pop $0
- ;StrCmp $0 0 CheckINI
- ; Goto WarnAnotherInstance
-
- CheckINI:
- ;=== Find the INI file, if there is one
- IfFileExists "$EXEDIR\${NAME}.ini" "" CheckSubINI
- StrCpy "$INIPATH" "$EXEDIR"
- Goto ReadINI
-
- CheckSubINI:
- IfFileExists "$EXEDIR\${NAME}\${NAME}.ini" "" NoINI
- StrCpy "$INIPATH" "$EXEDIR\${NAME}"
- Goto ReadINI
-
- ReadINI:
- ;=== Read the parameters from the INI file
- ReadINIStr $0 "$INIPATH\${NAME}.ini" "${NAME}" "${APP}Directory"
- StrCpy "$PROGRAMDIRECTORY" "$EXEDIR\$0"
-
- ;=== Check that the above required parameters are present
- IfErrors NoINI
-
- ReadINIStr $PROGRAMEXECUTABLE "$INIPATH\${NAME}.ini" "${NAME}" "${APP}Executable"
- ReadINIStr $ADDITIONALPARAMETERS "$INIPATH\${NAME}.ini" "${NAME}" "AdditionalParameters"
-
- ReadINIStr $DISABLEWINPCAPINSTALL "$INIPATH\${NAME}.ini" "${NAME}" "DisableWinPcapInstall"
- ReadINIStr $WINPCAPINSTALLER "$INIPATH\${NAME}.ini" "${NAME}" "WinPcapInstaller"
- ReadINIStr $MSVCREDIST "$INIPATH\${NAME}.ini" "${NAME}" "MSVCRedist"
-
- ;CleanUpAnyErrors:
- ;=== Any missing unrequired INI entries will be an empty string, ignore associated errors
- ClearErrors
-
- ;=== Correct PROGRAMEXECUTABLE if blank
- StrCmp $PROGRAMEXECUTABLE "" "" EndINI
- StrCpy "$PROGRAMEXECUTABLE" "${DEFAULTEXE}"
- Goto EndINI
-
- ;=== Correct WINPCAPINSTALLER if blank
- StrCmp $WINPCAPINSTALLER "" "" EndINI
- StrCpy "$WINPCAPINSTALLER" "${DEFAULTWINPCAP}"
- Goto EndINI
-
- NoINI:
- ;=== No INI file, so we'll use the defaults
- StrCpy "$ADDITIONALPARAMETERS" ""
- StrCpy "$PROGRAMEXECUTABLE" "${DEFAULTEXE}"
- StrCpy "$WINPCAPINSTALLER" "${DEFAULTWINPCAP}"
- StrCpy "$MSVCREDIST" "${DEFAULTMSVCREDIST}"
-
- IfFileExists "$EXEDIR\App\${DEFAULTAPPDIR}\${DEFAULTEXE}" "" CheckPortableProgramDIR
- StrCpy "$PROGRAMDIRECTORY" "$EXEDIR\App\${DEFAULTAPPDIR}"
- GoTo EndINI
-
- CheckPortableProgramDIR:
- IfFileExists "$EXEDIR\${NAME}\App\${DEFAULTAPPDIR}\${DEFAULTEXE}" "" NoProgramEXE
- StrCpy "$PROGRAMDIRECTORY" "$EXEDIR\${NAME}\App\${DEFAULTAPPDIR}"
- GoTo EndINI
-
- EndINI:
- IfFileExists "$PROGRAMDIRECTORY\$PROGRAMEXECUTABLE" GetPassedParameters
-
- NoProgramEXE:
- ;=== Program executable not where expected
- MessageBox MB_OK|MB_ICONEXCLAMATION `$PROGRAMEXECUTABLE was not found. Please check your configuration`
- Abort
-
- FoundProgramEXE:
- ;=== Check if Wireshark running from somwehere else (e.g. U3 device)
- ; if the following step fails, you'll need the FindProcDLL plug-in from:
- ; http://nsis.sourceforge.net/Find_Process_By_Name
- ;FindProcDLL::FindProc "${PROGRAMEXECUTABLE}"
- ;StrCmp $R0 "1" WarnAnotherInstance GetPassedParameters
-
- ;WarnAnotherInstance:
- ; MessageBox MB_OK|MB_ICONINFORMATION `Another instance of ${APP} is already running. Please close other instances of ${APP} before launching ${FULLNAME}.`
- ; Abort
-
- GetPassedParameters:
- ;=== Get any passed parameters
- ${GetParameters} $0
- StrCmp "'$0'" "''" "" LaunchProgramParameters
-
- ;=== No parameters
- StrCpy $EXECSTRING `"$PROGRAMDIRECTORY\$PROGRAMEXECUTABLE"`
- Goto AdditionalParameters
-
- LaunchProgramParameters:
- StrCpy $EXECSTRING `"$PROGRAMDIRECTORY\$PROGRAMEXECUTABLE" $0`
-
- AdditionalParameters:
- StrCmp $ADDITIONALPARAMETERS "" CheckWinPcap
-
- ;=== Additional Parameters
- StrCpy $EXECSTRING `$EXECSTRING $ADDITIONALPARAMETERS`
-
- CheckWinPcap:
- StrCmp $DISABLEWINPCAPINSTALL "true" EnvironmentVariables
-
- ReadRegStr $WINPCAP_UNINSTALL HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinPcapInst" "UninstallString"
- IfErrors InstallWinPcap
-
- StrCpy $WINPCAP_UNINSTALL ""
-
- goto CheckRedist
-
- InstallWinPcap:
- MessageBox MB_YESNO "If you want to capture packets from the network you will need to install WinPcap.\nIt will be uninstalled when you exit Wireshark.\n\nDo you want to install WinPcap?" /SD IDYES IDNO CheckRedist
- ExecWait `"$PROGRAMDIRECTORY\$WINPCAPINSTALLER"`
- ;=== remember the uninstall string for when we are done
- ReadRegStr $WINPCAP_UNINSTALL HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\WinPcapInst" "UninstallString"
-
- CheckRedist:
-
- ReadRegStr $MSVCREDIST_UNINSTALL HKLM "SOFTWARE\Microsoft\CurrentVersion\Uninstall\{A49F249F-0C91-497F-86DF-B2585E8E76B7}" "UninstallString"
- IfErrors InstallRedist
-
- StrCpy $MSVCREDIST_UNINSTALL ""
-
- goto EnvironmentVariables
-
- InstallRedist:
- ExecWait `"$PROGRAMDIRECTORY\$MSVCREDIST" /q`
- ;=== remember the uninstall string for when we are done
-
- ReadRegStr $MSVCREDIST_UNINSTALL HKLM "SOFTWARE\Microsoft\CurrentVersion\Uninstall\{A49F249F-0C91-497F-86DF-B2585E8E76B7}" "UninstallString"
-
- EnvironmentVariables:
- ; set the U3 environment variables
- StrCpy $PDRIVE $EXEDIR 2
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_SERIAL", "0000060414068917").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_PATH", "$PDRIVE").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DOCUMENT_PATH", "$PDRIVE\Documents").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_VENDOR", "Wireshark Developers").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_PRODUCT", "PortableApps").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_VENDOR_ID", "0000").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_APP_DATA_PATH", "$EXEDIR\Data").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_HOST_EXEC_PATH", "$EXEDIR\App\Wireshark").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_DEVICE_EXEC_PATH", "$EXEDIR\App\Wireshark").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_ENV_VERSION", "1.0").r0'
- System::Call 'Kernel32::SetEnvironmentVariableA(t,t) i("U3_ENV_LANGUAGE", "1033").r0'
- StrCmp $SECONDARYLAUNCH "true" LaunchAndExit
-
- ExecWait $EXECSTRING
-
- CheckRunning:
- Sleep 1000
- FindProcDLL::FindProc "${DEFAULTEXE}"
- StrCmp $R0 "1" CheckRunning
-
- StrCmp $WINPCAP_UNINSTALL "" UninstallRedist ;=== if we installed it, uninstall it
- ExecWait $WINPCAP_UNINSTALL
-
- UninstallRedist:
-
- StrCmp $MSVCREDIST_UNINSTALL "" TheEnd ;=== if we installed it, uninstall it
-
- ExecWait $MSVCREDIST_UNINSTALL
-
- Goto TheEnd
-
- LaunchAndExit:
- Exec $EXECSTRING
-
- TheEnd:
-SectionEnd
diff --git a/packaging/portableapps/win32/appinfo.tmpl b/packaging/portableapps/win32/appinfo.tmpl
index 5d7f2e7b24..4710115feb 100755
--- a/packaging/portableapps/win32/appinfo.tmpl
+++ b/packaging/portableapps/win32/appinfo.tmpl
@@ -1,16 +1,16 @@
[Format]
Type=PortableApps.comFormat
-Version=2.0
+Version=3.0
[Details]
Name=Wireshark Portable
AppID=WiresharkPortable
Publisher=Wireshark.org
-Homepage=www.wireshark.org
+Homepage=https://www.wireshark.org/
Category=Internet
Description=Wireshark is one of the world's foremost network protocol analyzers.
Language=Multilingual
-Trademarks=Wireshark and the fin logo are registered trademarks of Gerald C. Combs
+Trademarks=Wireshark and the fin logo are registered trademarks of the Wireshark Foundation
[License]
Shareable=true
diff --git a/packaging/portableapps/win32/help.html b/packaging/portableapps/win32/help.html
new file mode 100644
index 0000000000..35dae9b006
--- /dev/null
+++ b/packaging/portableapps/win32/help.html
@@ -0,0 +1,8 @@
+<!DOCTYPE html>
+<html>
+<head>
+<title>Wireshark Portable ยท Help</title>
+</head>
+<body>
+Please see <a href="https://www.wireshark.org/docs/">the online documentation</a>.
+</body> \ No newline at end of file
diff --git a/packaging/portableapps/win32/installer.ini b/packaging/portableapps/win32/installer.ini
deleted file mode 100755
index e69de29bb2..0000000000
--- a/packaging/portableapps/win32/installer.ini
+++ /dev/null
diff --git a/packaging/ws-manifest.pl b/packaging/ws-manifest.pl
index 41a0fbba9e..793f5ef16d 100755
--- a/packaging/ws-manifest.pl
+++ b/packaging/ws-manifest.pl
@@ -1,3 +1,10 @@
+# This is no longer used and should probably be replaced. For example, we could
+# replace most of the copy/xcopy commands for the install-generated-files target
+# in ../Makefile.nmake with echo commands that append to a deployment manifest.
+# We could then use that manifest to fill in the section includes in
+# nsis\wireshark.nsi, copy files to wireshark-gtk2, and copy files to
+# portableapps\win32\WiresharkPortable\App\Wireshark.
+
#
# ws-manifest.pl - create a generic manifest file (including u3 information) from the wireshark.nsi
diff --git a/ui/qt/Wireshark.pro b/ui/qt/Wireshark.pro
index 9d142d91e0..5e626c822e 100644
--- a/ui/qt/Wireshark.pro
+++ b/ui/qt/Wireshark.pro
@@ -487,7 +487,7 @@ win32 {
# Currently the QT bin dir has to be on the path for windeployqt to work
isEqual(QT_MAJOR_VERSION, 5):isEqual(QT_MINOR_VERSION, 3) {
QMAKE_POST_LINK +=$$quote(set PATH=%PATH%;$${QT5_BASE_DIR}\\bin$$escape_expand(\\n\\t))
- QMAKE_POST_LINK +=$$quote(windeployqt --release $(DESTDIR)wireshark.exe)$$escape_expand(\\n\\t))
+ QMAKE_POST_LINK +=$$quote(windeployqt --release --no-compiler-runtime $(DESTDIR)wireshark.exe)$$escape_expand(\\n\\t))
}
}