diff options
-rw-r--r-- | Makefile.nmake | 55 | ||||
-rw-r--r-- | config.nmake | 19 | ||||
-rw-r--r-- | packaging/nsis/Makefile.nmake | 17 | ||||
-rw-r--r-- | packaging/nsis/wireshark.nsi | 49 | ||||
-rwxr-xr-x | packaging/u3/win32/makenmake.pl | 13 | ||||
-rwxr-xr-x | packaging/ws-manifest.pl | 14 |
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) { |