summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.nmake55
-rw-r--r--config.nmake19
-rw-r--r--packaging/nsis/Makefile.nmake17
-rw-r--r--packaging/nsis/wireshark.nsi49
-rwxr-xr-xpackaging/u3/win32/makenmake.pl13
-rwxr-xr-xpackaging/ws-manifest.pl14
6 files changed, 91 insertions, 76 deletions
diff --git a/Makefile.nmake b/Makefile.nmake
index 085ce46ed5..f3010c8dd3 100644
--- a/Makefile.nmake
+++ b/Makefile.nmake
@@ -1132,39 +1132,41 @@ install-all: install-generated-files
xcopy $(GTK_DIR)\bin\libatk-1.0-0.dll $(INSTALL_DIR) /d
xcopy $(GTK_DIR)\bin\libpango-1.0-0.dll $(INSTALL_DIR) /d
xcopy $(GTK_DIR)\bin\libpangowin32-1.0-0.dll $(INSTALL_DIR) /d
+ if not exist $(INSTALL_DIR)\lib mkdir $(INSTALL_DIR)\lib
if not exist $(INSTALL_DIR)\etc mkdir $(INSTALL_DIR)\etc
+ if not exist $(INSTALL_DIR)\$(GTK_ETC_DIR) mkdir $(INSTALL_DIR)\$(GTK_ETC_DIR)
+ xcopy $(GTK_DIR)\$(GTK_ETC_DIR)\*.* $(INSTALL_DIR)\$(GTK_ETC_DIR) /d
+# if not exist $(INSTALL_DIR)\etc\pango mkdir $(INSTALL_DIR)\etc\pango
+# xcopy $(GTK_DIR)\etc\pango\pango.* $(INSTALL_DIR)\etc\pango /d
!IF "$(GTK_INST_VERSION)" == "3.4"
- if not exist $(INSTALL_DIR)\etc\gtk-3.0 mkdir $(INSTALL_DIR)\etc\gtk-3.0
- if not exist $(INSTALL_DIR)\etc\pango mkdir $(INSTALL_DIR)\etc\pango
- if not exist $(INSTALL_DIR)\lib mkdir $(INSTALL_DIR)\lib
if not exist $(INSTALL_DIR)\lib\gtk-3.0 mkdir $(INSTALL_DIR)\lib\gtk-3.0
if not exist $(INSTALL_DIR)\lib\gtk-3.0\$(GTK_LIB_DIR) mkdir $(INSTALL_DIR)\lib\gtk-3.0\$(GTK_LIB_DIR)
- xcopy $(GTK_DIR)\etc\gtk-3.0\*.* $(INSTALL_DIR)\etc\gtk-3.0 /d
- xcopy ".\ui\win32\settings.ini" $(INSTALL_DIR)\etc\gtk-3.0 /d
-!IFDEF NEED_CAIRO_DLL
- xcopy $(GTK_DIR)\bin\libcairo-2.dll $(INSTALL_DIR) /d
- xcopy $(GTK_DIR)\bin\libcairo-gobject-2.dll $(INSTALL_DIR) /d
- xcopy $(GTK_DIR)\bin\libpangocairo-1.0-0.dll $(INSTALL_DIR) /d
-!ENDIF
+ xcopy ".\ui\win32\settings.ini" $(INSTALL_DIR)\$(GTK_ETC_DIR) /d
!ELSE
- if not exist $(INSTALL_DIR)\etc\gtk-2.0 mkdir $(INSTALL_DIR)\etc\gtk-2.0
- if not exist $(INSTALL_DIR)\etc\pango mkdir $(INSTALL_DIR)\etc\pango
- if not exist $(INSTALL_DIR)\lib mkdir $(INSTALL_DIR)\lib
if not exist $(INSTALL_DIR)\lib\gtk-2.0 mkdir $(INSTALL_DIR)\lib\gtk-2.0
- if not exist $(INSTALL_DIR)\lib\gtk-2.0\modules mkdir $(INSTALL_DIR)\lib\gtk-2.0\modules
if not exist $(INSTALL_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR) mkdir $(INSTALL_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR)
if not exist $(INSTALL_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR)\loaders mkdir $(INSTALL_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR)\loaders
- if not exist $(INSTALL_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR)\engines mkdir $(INSTALL_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR)\engines
- xcopy $(GTK_DIR)\etc\gtk-2.0\*.* $(INSTALL_DIR)\etc\gtk-2.0 /d
- if exist $(GTK_DIR)\etc\pango xcopy $(GTK_DIR)\etc\pango\pango.* $(INSTALL_DIR)\etc\pango /d
if exist $(GTK_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR)\loaders xcopy $(GTK_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR)\loaders\libpixbufloader-*.dll $(INSTALL_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR)\loaders /d
- xcopy $(GTK_DIR)\lib\gtk-2.0\modules\libgail.dll $(INSTALL_DIR)\lib\gtk-2.0\modules /d
- xcopy $(GTK_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR)\engines\libpixmap.dll $(INSTALL_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR)\engines /d
+!ENDIF
+!IFDEF GTK_ENGINES_DIR
+ if not exist $(INSTALL_DIR)\$(GTK_ENGINES_DIR) mkdir $(INSTALL_DIR)\$(GTK_ENGINES_DIR)
+ xcopy $(GTK_DIR)\$(GTK_ENGINES_DIR)\libpixmap.dll $(INSTALL_DIR)\$(GTK_ENGINES_DIR) /d
+ xcopy $(GTK_DIR)\$(GTK_ENGINES_DIR)\libwimp.dll $(INSTALL_DIR)\$(GTK_ENGINES_DIR) /d
+!ENDIF
+!IFDEF GTK_THEMES_DIR
+ xcopy "$(GTK_DIR)\$(GTK_THEMES_DIR)\gtkrc" $(INSTALL_DIR)\$(GTK_ETC_DIR) /d
+!ENDIF
+!IFDEF GTK_MODULES_DIR
+ if not exist $(INSTALL_DIR)\$(GTK_MODULES_DIR) mkdir $(INSTALL_DIR)\$(GTK_MODULES_DIR)
+ xcopy $(GTK_DIR)\$(GTK_MODULES_DIR)\libgail.dll $(INSTALL_DIR)\$(GTK_MODULES_DIR) /d
+!ENDIF
+!IFDEF NEED_CAIRO_GOBJECT_DLL
+ xcopy $(GTK_DIR)\bin\libcairo-gobject-2.dll $(INSTALL_DIR) /d
+!ENDIF
!IFDEF NEED_CAIRO_DLL
xcopy $(GTK_DIR)\bin\libcairo-2.dll $(INSTALL_DIR) /d
xcopy $(GTK_DIR)\bin\libpangocairo-1.0-0.dll $(INSTALL_DIR) /d
!ENDIF
-!ENDIF
!IFDEF NEED_EXPAT_DLL
xcopy $(GTK_DIR)\bin\$(EXPAT_DLL) $(INSTALL_DIR) /d
!ENDIF
@@ -1199,15 +1201,10 @@ install-all: install-generated-files
!IFDEF NEED_XML_DLL
xcopy $(GTK_DIR)\bin\$(XML_DLL) $(INSTALL_DIR) /d
!ENDIF
-!IF "$(GTK_INST_VERSION)" == "3.4"
- if not exist $(INSTALL_DIR)\$(GTK_SCHEMAS_INST_DIR) mkdir $(INSTALL_DIR)\$(GTK_SCHEMAS_INST_DIR)
- if not exist $(GTK_DIR)\$(GTK_SCHEMAS_INST_DIR)\gschemas.compiled $(GTK_DIR)\bin\glib-compile-schemas $(GTK_DIR)\$(GTK_SCHEMAS_INST_DIR)
- xcopy $(GTK_DIR)\$(GTK_SCHEMAS_INST_DIR)\gschemas.compiled $(INSTALL_DIR)\$(GTK_SCHEMAS_INST_DIR) /d
-!ELSE
- if not exist $(INSTALL_DIR)\$(GTK_WIMP_DLLDST_DIR) mkdir $(INSTALL_DIR)\$(GTK_WIMP_DLLDST_DIR)
- xcopy "$(GTK_WIMP_DLLSRC_DIR)\libwimp.dll" $(INSTALL_DIR)\$(GTK_WIMP_DLLDST_DIR) /d
- if not exist $(INSTALL_DIR)\$(GTK_WIMP_RCDST_DIR) mkdir $(INSTALL_DIR)\$(GTK_WIMP_RCDST_DIR)
- xcopy "$(GTK_WIMP_RCSRC_DIR)\gtkrc" $(INSTALL_DIR)\$(GTK_WIMP_RCDST_DIR) /d
+!IFDEF GTK_SCHEMAS_DIR
+ if not exist $(INSTALL_DIR)\$(GTK_SCHEMAS_DIR) mkdir $(INSTALL_DIR)\$(GTK_SCHEMAS_DIR)
+ if not exist $(GTK_DIR)\$(GTK_SCHEMAS_DIR)\gschemas.compiled $(GTK_DIR)\bin\glib-compile-schemas $(GTK_DIR)\$(GTK_SCHEMAS_DIR)
+ xcopy $(GTK_DIR)\$(GTK_SCHEMAS_DIR)\gschemas.compiled $(INSTALL_DIR)\$(GTK_SCHEMAS_DIR) /d
!ENDIF
xcopy $(GTK_DIR)\bin\libgio-2.0-0.dll $(INSTALL_DIR) /d
xcopy $(GTK_DIR)\bin\libglib-2.0-0.dll $(INSTALL_DIR) /d
diff --git a/config.nmake b/config.nmake
index 1032fa9a6c..7e5005bfca 100644
--- a/config.nmake
+++ b/config.nmake
@@ -246,6 +246,7 @@ GLIB_VERSION=2.0
GTK_NAME=gtk2
GTK_DIR=$(WIRESHARK_LIB_DIR)\$(GTK_NAME)
+
# These macros are used by the nsis installer script and by the install target.
#EXPAT_DLL=libexpat-1.dll
FFI_DLL=libffi-5.dll
@@ -653,6 +654,18 @@ SMI_PKG=svn-40773
GEOIP_PKG=1.4.8-2
!endif
+# win32 / win64
+
+!IF "$(GTK_NAME)" == "gtk2"
+GTK_ETC_DIR=etc\gtk-2.0
+GTK_ENGINES_DIR=lib\gtk-2.0\$(GTK_LIB_DIR)\engines
+GTK_MODULES_DIR=lib\gtk-2.0\modules
+GTK_THEMES_DIR=share\themes\MS-Windows\gtk-2.0
+!ELSE
+GTK_ETC_DIR=etc\gtk-3.0
+GTK_SCHEMAS_DIR=\share\glib-2.0\schemas
+!ENDIF
+
##### Tools #####
@@ -1171,15 +1184,10 @@ NEED_JPEG_DLL=USE
NEED_TIFF_DLL=USE
NEED_LZMA_DLL=USE
-GTK_WIMP_DLLSRC_DIR=$(GTK_DIR)\lib\gtk-2.0\$(GTK_LIB_DIR)\engines
-GTK_WIMP_DLLDST_DIR=lib\gtk-2.0\$(GTK_LIB_DIR)\engines
-GTK_WIMP_RCSRC_DIR=$(GTK_DIR)\share\themes\MS-Windows\gtk-2.0
-GTK_WIMP_RCDST_DIR=etc\gtk-2.0
#
# Use of GTK3+ is experimental/not working
#
!ELSEIF "$(GTK_INST_VERSION)" == "3.4"
-GTK_SCHEMAS_INST_DIR=\share\glib-2.0\schemas
# GTK+
GTK_CFLAGS=$(GLIB_CFLAGS) /I$(GTK_DIR)\include\gtk-3.0 \
@@ -1203,6 +1211,7 @@ GTK_LIB_DIR=3.4
!IFDEF _DLL
!ENDIF
+NEED_CAIRO_GOBJECT_DLL=USE
NEED_CAIRO_DLL=USE
!IFDEF EXPAT_DLL
diff --git a/packaging/nsis/Makefile.nmake b/packaging/nsis/Makefile.nmake
index 487da70357..4cb6870b36 100644
--- a/packaging/nsis/Makefile.nmake
+++ b/packaging/nsis/Makefile.nmake
@@ -114,6 +114,19 @@ NSIS_FLAGS=\
/DGDK_DLL=$(GDK_DLL) \
/DGTK_DLL=$(GTK_DLL) \
/DGTK_NAME=$(GTK_NAME) \
+ /DGTK_ETC_DIR=$(GTK_ETC_DIR) \
+!IFDEF GTK_ENGINES_DIR
+ /DGTK_ENGINES_DIR=$(GTK_ENGINES_DIR) \
+!ENDIF
+!IFDEF GTK_MODULES_DIR
+ /DGTK_MODULES_DIR=$(GTK_MODULES_DIR) \
+!ENDIF
+!IFDEF GTK_SCHEMAS_DIR
+ /DGTK_SCHEMAS_DIR=$(GTK_SCHEMAS_DIR) \
+!ENDIF
+!IFDEF NEED_CAIRO_GOBJECT_DLL
+ /DNEED_CAIRO_GOBJECT_DLL=$(NEED_CAIRO_GOBJECT_DLL) \
+!ENDIF
!IFDEF NEED_CAIRO_DLL
/DNEED_CAIRO_DLL=$(NEED_CAIRO_DLL) \
!ENDIF
@@ -162,10 +175,6 @@ NSIS_FLAGS=\
/DXML_DLL=$(XML_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) \
/DVERSION_MAJOR=$(VERSION_MAJOR) \
diff --git a/packaging/nsis/wireshark.nsi b/packaging/nsis/wireshark.nsi
index dfeb26eadd..8ac87b3ab6 100644
--- a/packaging/nsis/wireshark.nsi
+++ b/packaging/nsis/wireshark.nsi
@@ -278,7 +278,9 @@ FunctionEnd
Var WINPCAP_UNINSTALL ;declare variable for holding the value of a registry key
;Var WIRESHARK_UNINSTALL ;declare variable for holding the value of a registry key
+!ifdef VCREDIST_EXE
Var VCREDIST_FLAGS ; silent vs passive, norestart
+!endif
Section "-Required"
;-------------------------------------------
@@ -750,12 +752,12 @@ File "${STAGING_DIR}\${GTK_DLL}"
File "${STAGING_DIR}\libatk-1.0-0.dll"
File "${STAGING_DIR}\libpango-1.0-0.dll"
File "${STAGING_DIR}\libpangowin32-1.0-0.dll"
+!ifdef NEED_CAIRO_GOBJECT_DLL
+File "${STAGING_DIR}\libcairo-gobject-2.dll"
+!endif
!ifdef NEED_CAIRO_DLL
File "${STAGING_DIR}\libcairo-2.dll"
File "${STAGING_DIR}\libpangocairo-1.0-0.dll"
-!if ${GTK_NAME} == "gtk3"
-File "${STAGING_DIR}\libcairo-gobject-2.dll"
-!endif
!endif
!ifdef NEED_EXPAT_DLL
File "${STAGING_DIR}\${EXPAT_DLL}"
@@ -792,32 +794,25 @@ File "${STAGING_DIR}\${TIFF_DLL}"
File "${STAGING_DIR}\${XML_DLL}"
!endif
-!if ${GTK_NAME} == "gtk2"
-SetOutPath $INSTDIR\etc\gtk-2.0
-File "${GTK_DIR}\etc\gtk-2.0\*.*"
-!else
-SetOutPath $INSTDIR\etc\gtk-3.0
-File "${STAGING_DIR}\etc\gtk-3.0\*.*"
-SetOutPath $INSTDIR\share\glib-2.0\schemas
-File "${STAGING_DIR}\share\glib-2.0\schemas\*.*"
+SetOutPath $INSTDIR\${GTK_ETC_DIR}
+File "${GTK_DIR}\${GTK_ETC_DIR}\*.*"
+
+!ifdef GTK_ENGINES_DIR
+SetOutPath $INSTDIR\${GTK_ENGINES_DIR}
+File "${STAGING_DIR}\${GTK_ENGINES_DIR}\libpixmap.dll"
+File "${STAGING_DIR}\${GTK_ENGINES_DIR}\libwimp.dll"
+!endif
+
+!ifdef GTK_MODULES_DIR
+SetOutPath $INSTDIR\${GTK_MODULES_DIR}
+File "${STAGING_DIR}\${GTK_MODULES_DIR}\libgail.dll"
!endif
-#!if ${WIRESHARK_TARGET_PLATFORM} == "win32"
-#SetOutPath $INSTDIR\etc\pango
-#File "${GTK_DIR}\etc\pango\pango.*"
-#!endif
-
-!if ${GTK_NAME} == "gtk2"
-SetOutPath $INSTDIR\lib\gtk-2.0\${GTK_LIB_DIR}\engines
-File "${STAGING_DIR}\lib\gtk-2.0\${GTK_LIB_DIR}\engines\libpixmap.dll"
-SetOutPath $INSTDIR\lib\gtk-2.0\modules
-File "${STAGING_DIR}\lib\gtk-2.0\modules\libgail.dll"
-
-; GTK MS-Windows Engine (GTK-Wimp)
-SetOutPath $INSTDIR\${GTK_WIMP_DLLDST_DIR}
-File "${STAGING_DIR}\lib\gtk-2.0\${GTK_LIB_DIR}\engines\libwimp.dll"
-SetOutPath $INSTDIR\${GTK_WIMP_RCDST_DIR}
-File "${GTK_WIMP_RCSRC_DIR}\gtkrc"
+
+!ifdef GTK_SCHEMAS_DIR
+SetOutPath $INSTDIR\${GTK_SCHEMAS_DIR}
+File "${STAGING_DIR}\${GTK_SCHEMAS_DIR}\*.*"
!endif
+
SectionEnd ; "Wireshark"
!endif
diff --git a/packaging/u3/win32/makenmake.pl b/packaging/u3/win32/makenmake.pl
index 56a1273e9a..c3d19868a7 100755
--- a/packaging/u3/win32/makenmake.pl
+++ b/packaging/u3/win32/makenmake.pl
@@ -4,6 +4,10 @@
#
print q{
+#
+# DO NOT EDIT - autogenerated from makenmake.pl
+#
+
include ../../../config.nmake
include <win32.mak>
@@ -31,6 +35,12 @@ while($line = <>) {
$dir = $1;
undef $u3loc;
+ # Close any previous !IFDEFs
+ if(defined $define) {
+ print "!ENDIF\n";
+ }
+ undef $define;
+
if($line =~ /u3loc=(\w+)/) {
$u3loc = "\$(" . uc $1 . ")";
}
@@ -62,8 +72,7 @@ while($line = <>) {
$define = $1;
print "!IF DEFINED($define)\n";
}
- } else {
-
+ } else {
if(defined $define) {
print "!ENDIF\n";
}
diff --git a/packaging/ws-manifest.pl b/packaging/ws-manifest.pl
index ed228fd394..0df2584a02 100755
--- a/packaging/ws-manifest.pl
+++ b/packaging/ws-manifest.pl
@@ -7,19 +7,14 @@
my %u3locs = qw(
$INSTDIR device
- $INSTDIR\${GTK_WIMP_DLLDST_DIR} host
- $INSTDIR\${GTK_WIMP_RCDST_DIR} host
$INSTDIR\diameter device
$INSTDIR\dtds device
- $INSTDIR\etc\gtk-2.0 host
- $INSTDIR\etc\gtk-3.0 host
- $INSTDIR\share\glib-2.0\schemas
+ $INSTDIR\${GTK_ETC_DIR} host
+ $INSTDIR\${GTK_SCHEMAS_DIR} host
+ $INSTDIR\${GTK_ENGINES_DIR} host
+ $INSTDIR\${GTK_MODULES_DIR} host
$INSTDIR\etc\pango host
$INSTDIR\help device
- $INSTDIR\lib\gtk-2.0\${GTK_LIB_DIR}\engines host
- $INSTDIR\lib\gtk-2.0\${GTK_LIB_DIR}\immodules host
- $INSTDIR\lib\gtk-2.0\${GTK_LIB_DIR}\loaders host
- $INSTDIR\lib\gtk-2.0\modules host
$INSTDIR\plugins\${VERSION} device
$INSTDIR\radius device
$INSTDIR\snmp\mibs device
@@ -70,6 +65,7 @@ print "#\n# DO NOT EDIT - autogenerated from wireshark.nsi\n#\n";
foreach $dir(sort @dirs) {
if($prev ne $dir) {
+ print STDERR "looking for $dir\n";
$loc = $u3locs{$dir};
if(defined $loc) {