Ver código fonte

wireshark: new package

This is only the bare minimum needed to build the textual tshark utility.
Support for more options, including the wireshark GUI, can be added later.

[Peter: point includedir at staging to workaround host/target headers issue]
Cc: Stefan Fröberg <stefan.froberg@petroprogram.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Tested-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Baruch Siach 12 anos atrás
pai
commit
e3b3be6bb6

+ 1 - 0
package/Config.in

@@ -732,6 +732,7 @@ if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 source "package/wget/Config.in"
 endif
 source "package/wireless_tools/Config.in"
+source "package/wireshark/Config.in"
 source "package/wpa_supplicant/Config.in"
 source "package/xinetd/Config.in"
 source "package/xl2tp/Config.in"

+ 14 - 0
package/wireshark/Config.in

@@ -0,0 +1,14 @@
+config BR2_PACKAGE_WIRESHARK
+	bool "wireshark"
+	select BR2_PACKAGE_LIBPCAP
+	select BR2_PACKAGE_LIBGCRYPT
+	select BR2_PACKAGE_LIBGLIB2
+	depends on BR2_USE_WCHAR # glib2
+	help
+	  Network traffic sniffer and protocol decoder. Currently only tshark,
+	  the console interface, is enabled.
+
+	  http://www.wireshark.org
+
+comment "wireshark requires a toolchain with WCHAR support"
+	depends on !BR2_USE_WCHAR

+ 41 - 0
package/wireshark/wireshark-dont-include-prefix.patch

@@ -0,0 +1,41 @@
+configure.in: don't add the build host's /usr/include and /usr/lib to the 
+search path of include files and libraries. This is not what you want when 
+cross compiling.
+
+Sent upstream as https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7926.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+diff -Nuar wireshark-1.8.3.orig/configure.in wireshark-1.8.3/configure.in
+--- wireshark-1.8.3.orig/configure.in	2012-08-15 23:33:32.000000000 +0300
++++ wireshark-1.8.3/configure.in	2012-10-28 10:07:54.864388531 +0200
+@@ -635,29 +635,6 @@
+ AC_SUBST(CORESERVICES_FRAMEWORKS)
+ AC_SUBST(LAUNCHSERVICES_FRAMEWORKS)
+ 
+-#
+-# If using $prefix we add "$prefix/include" to the include search path
+-# and "$prefix/lib" to the library search path.
+-#
+-if test "x$prefix" != "x" ; then
+-	AC_MSG_CHECKING(whether to use $prefix for headers and libraries)
+-	if test -d $prefix/include ; then
+-		AC_MSG_RESULT(yes)
+-		#
+-		# Arrange that we search for header files in "$prefix/include", as
+-		# various packages we use may have been installed under "$prefix/include".
+-		#
+-		CPPFLAGS="$CPPFLAGS -I$prefix/include"
+-
+-		#
+-		# Arrange that we search for libraries in "$prefix/lib".
+-		#
+-		AC_WIRESHARK_ADD_DASH_L(LDFLAGS, $prefix/lib)
+-	else
+-		AC_MSG_RESULT(no)
+-	fi
+-fi
+-
+ dnl Look in /usr/local for header files and libraries ?
+ dnl XXX FIXME don't include /usr/local if it is already in the system
+ dnl search path as this causes gcc 3.2 on Linux to complain about a change

+ 23 - 0
package/wireshark/wireshark.mk

@@ -0,0 +1,23 @@
+#############################################################
+#
+# wireshark
+#
+#############################################################
+
+WIRESHARK_VERSION = 1.8.5
+WIRESHARK_SOURCE = wireshark-$(WIRESHARK_VERSION).tar.bz2
+WIRESHARK_SITE = http://www.wireshark.org/download/src/all-versions
+WIRESHARK_LICENSE = wireshark license
+WIRESHARK_LICENSE_FILES = COPYING
+WIRESHARK_DEPENDENCIES = libpcap libgcrypt libglib2
+WIRESHARK_AUTORECONF = YES
+WIRESHARK_CONF_ENV = LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config \
+			ac_cv_path_PCAP_CONFIG=$(STAGING_DIR)/usr/bin/pcap-config
+
+# wireshark adds -I$includedir to CFLAGS, causing host/target headers mixup.
+# Work around it by pointing includedir at staging
+WIRESHARK_CONF_OPT = --disable-wireshark --without-krb5 --disable-usr-local \
+		     --enable-static=no --with-gnutls=no \
+		     --includedir=$(STAGING_DIR)/usr/include
+
+$(eval $(call autotools-package))