From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-853155-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	by finch.gentoo.org (Postfix) with ESMTP id 7A2751384B4
	for <garchives@archives.gentoo.org>; Thu, 24 Dec 2015 12:50:45 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 3856A21C01F;
	Thu, 24 Dec 2015 12:50:43 +0000 (UTC)
Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183])
	(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id BE7D621C01F
	for <gentoo-commits@lists.gentoo.org>; Thu, 24 Dec 2015 12:50:42 +0000 (UTC)
Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84])
	(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id D24C2340831
	for <gentoo-commits@lists.gentoo.org>; Thu, 24 Dec 2015 12:50:41 +0000 (UTC)
Received: from localhost.localdomain (localhost [127.0.0.1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id 761B0C6A
	for <gentoo-commits@lists.gentoo.org>; Thu, 24 Dec 2015 12:50:37 +0000 (UTC)
From: "Jeroen Roovers" <jer@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Jeroen Roovers" <jer@gentoo.org>
Message-ID: <1450961427.b83fca33acfbe7f82760feeead0f6f5937984f20.jer@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: net-analyzer/wireshark/, net-analyzer/wireshark/files/
X-VCS-Repository: repo/gentoo
X-VCS-Files: net-analyzer/wireshark/files/wireshark-2.0.0-androiddump-pcap.patch net-analyzer/wireshark/metadata.xml net-analyzer/wireshark/wireshark-2.0.0-r1.ebuild
X-VCS-Directories: net-analyzer/wireshark/ net-analyzer/wireshark/files/
X-VCS-Committer: jer
X-VCS-Committer-Name: Jeroen Roovers
X-VCS-Revision: b83fca33acfbe7f82760feeead0f6f5937984f20
X-VCS-Branch: master
Date: Thu, 24 Dec 2015 12:50:37 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Archives-Salt: b0143d86-de36-4550-9fee-e565ce354e64
X-Archives-Hash: c4438525d9df147481c05b99fc2f5ffa

commit:     b83fca33acfbe7f82760feeead0f6f5937984f20
Author:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 24 11:22:39 2015 +0000
Commit:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Thu Dec 24 12:50:27 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b83fca33

net-analyzer/wireshark: Add USE=androiddump. Add USE=tfshark.

Package-Manager: portage-2.2.26

 .../files/wireshark-2.0.0-androiddump-pcap.patch   |  10 +
 net-analyzer/wireshark/metadata.xml                |   2 +
 net-analyzer/wireshark/wireshark-2.0.0-r1.ebuild   | 278 +++++++++++++++++++++
 3 files changed, 290 insertions(+)

diff --git a/net-analyzer/wireshark/files/wireshark-2.0.0-androiddump-pcap.patch b/net-analyzer/wireshark/files/wireshark-2.0.0-androiddump-pcap.patch
new file mode 100644
index 0000000..639e299
--- /dev/null
+++ b/net-analyzer/wireshark/files/wireshark-2.0.0-androiddump-pcap.patch
@@ -0,0 +1,10 @@
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -549,6 +549,7 @@
+ 	wiretap/libwiretap.la		\
+ 	wsutil/libwsutil.la		\
+ 	@GLIB_LIBS@			\
++	@PCAP_LIBS@			\
+ 	@SOCKET_LIBS@
+ 
+ androiddump_CFLAGS = $(AM_CLEAN_CFLAGS)

diff --git a/net-analyzer/wireshark/metadata.xml b/net-analyzer/wireshark/metadata.xml
index 2707e56..9b808bb 100644
--- a/net-analyzer/wireshark/metadata.xml
+++ b/net-analyzer/wireshark/metadata.xml
@@ -26,6 +26,7 @@
 </longdescription>
 <use>
 <flag name='adns'>Use the GNU <pkg>net-dns/c-ares</pkg> library to resolve DNS names</flag>
+<flag name='androiddump'>Install androiddump</flag>
 <flag name='crypt'>Use <pkg>dev-libs/libgcrypt</pkg> to decrypt traffic</flag>
 <flag name='doc-pdf'>Build documentation in pdf format (US and a4 paper sizes)</flag>
 <flag name='gtk3'>Build the wireshark executable with a GTK+ UI version 3.</flag>
@@ -34,5 +35,6 @@
 <flag name='qt4'>Build the wireshark executable with an experimental Qt UI instead of GTK+.</flag>
 <flag name='sbc'>Use <pkg>media-libs/sbc</pkg> for playing back SBC encoded packets</flag>
 <flag name='smi'>Use <pkg>net-libs/libsmi</pkg> to resolve numeric OIDs into human readable format</flag>
+<flag name='tfshark'>Install tfshark</flag>
 </use>
 </pkgmetadata>

diff --git a/net-analyzer/wireshark/wireshark-2.0.0-r1.ebuild b/net-analyzer/wireshark/wireshark-2.0.0-r1.ebuild
new file mode 100644
index 0000000..bf934d2
--- /dev/null
+++ b/net-analyzer/wireshark/wireshark-2.0.0-r1.ebuild
@@ -0,0 +1,278 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit autotools eutils fcaps flag-o-matic multilib qmake-utils qt4-r2 user
+
+DESCRIPTION="A network protocol analyzer formerly known as ethereal"
+HOMEPAGE="http://www.wireshark.org/"
+SRC_URI="${HOMEPAGE}download/src/all-versions/${P/_/}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="
+	adns androiddump +caps crypt doc doc-pdf geoip +gtk3 ipv6 kerberos lua
+	+netlink +pcap portaudio +qt4 qt5 selinux sbc smi tfshark
+	cpu_flags_x86_sse4_2 ssl zlib
+"
+REQUIRED_USE="
+	ssl? ( crypt )
+	?? ( qt4 qt5 )
+"
+
+S=${WORKDIR}/${P/_/}
+
+GTK_COMMON_DEPEND="
+	x11-libs/gdk-pixbuf
+	x11-libs/pango
+	x11-misc/xdg-utils
+"
+CDEPEND="
+	>=dev-libs/glib-2.14:2
+	netlink? ( dev-libs/libnl:3 )
+	adns? ( >=net-dns/c-ares-1.5 )
+	crypt? ( dev-libs/libgcrypt:0 )
+	caps? ( sys-libs/libcap )
+	geoip? ( dev-libs/geoip )
+	gtk3? (
+		${GTK_COMMON_DEPEND}
+		x11-libs/gtk+:3
+	)
+	kerberos? ( virtual/krb5 )
+	lua? ( >=dev-lang/lua-5.1:* )
+	pcap? ( net-libs/libpcap )
+	portaudio? ( media-libs/portaudio )
+	qt4? (
+		dev-qt/qtcore:4
+		dev-qt/qtgui:4[accessibility]
+		x11-misc/xdg-utils
+		)
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		x11-misc/xdg-utils
+	)
+	sbc? ( media-libs/sbc )
+	smi? ( net-libs/libsmi )
+	ssl? ( net-libs/gnutls )
+	zlib? ( sys-libs/zlib !=sys-libs/zlib-1.2.4 )
+"
+# We need perl for `pod2html`.  The rest of the perl stuff is to block older
+# and broken installs. #455122
+DEPEND="
+	${CDEPEND}
+	dev-lang/perl
+	!<virtual/perl-Pod-Simple-3.170
+	!<perl-core/Pod-Simple-3.170
+	doc? (
+		app-doc/doxygen
+		app-text/asciidoc
+		dev-libs/libxml2
+		dev-libs/libxslt
+		doc-pdf? ( dev-java/fop )
+		www-client/lynx
+	)
+	sys-devel/bison
+	sys-devel/flex
+	virtual/pkgconfig
+"
+RDEPEND="
+	${CDEPEND}
+	gtk3? ( virtual/freedesktop-icon-theme )
+	qt4? ( virtual/freedesktop-icon-theme )
+	qt5? ( virtual/freedesktop-icon-theme )
+	selinux? ( sec-policy/selinux-wireshark )
+"
+
+pkg_setup() {
+	enewgroup wireshark
+}
+
+src_prepare() {
+	epatch \
+		"${FILESDIR}"/${PN}-1.6.13-ldflags.patch \
+		"${FILESDIR}"/${PN}-1.11.0-oldlibs.patch \
+		"${FILESDIR}"/${PN}-1.99.0.1975-sse4_2.patch \
+		"${FILESDIR}"/${PN}-99999999-pkgconfig.patch \
+		"${FILESDIR}"/${PN}-1.99.8-qtchooser.patch \
+		"${FILESDIR}"/${PN}-2.0.0-androiddump-pcap.patch
+
+	epatch_user
+
+	eautoreconf
+}
+
+src_configure() {
+	local myconf
+
+	# Workaround bug #213705. If krb5-config --libs has -lcrypto then pass
+	# --with-ssl to ./configure. (Mimics code from acinclude.m4).
+	if use kerberos; then
+		case $(krb5-config --libs) in
+			*-lcrypto*)
+				ewarn "Kerberos was built with ssl support: linkage with openssl is enabled."
+				ewarn "Note there are annoying license incompatibilities between the OpenSSL"
+				ewarn "license and the GPL, so do your check before distributing such package."
+				myconf+=( "--with-ssl" )
+				;;
+		esac
+	fi
+
+	# Enable wireshark binary with any supported GUI toolkit (bug #473188)
+	if use gtk3 || use qt4 || use qt5; then
+		myconf+=( "--enable-wireshark" )
+	else
+		myconf+=( "--disable-wireshark" )
+	fi
+
+	if ! use qt4 && ! use qt5; then
+		myconf+=( "--with-qt=no" )
+	fi
+
+	if use qt4; then
+		export QT_MIN_VERSION=4.6.0
+	fi
+
+	if use qt5; then
+		export QT_MIN_VERSION=5.3.0
+		append-cxxflags -fPIC -DPIC
+	fi
+
+	# Hack around inability to disable doxygen/fop doc generation
+	use doc || export ac_cv_prog_HAVE_DOXYGEN=false
+	use doc-pdf || export ac_cv_prog_HAVE_FOP=false
+
+	# dumpcap requires libcap
+	# --disable-profile-build bugs #215806, #292991, #479602
+	econf \
+		$(use androiddump && use pcap && echo --enable-androiddump-use-libpcap=yes) \
+		$(use_enable androiddump) \
+		$(use_enable ipv6) \
+		$(use_enable tfshark) \
+		$(use_with adns c-ares) \
+		$(use_with caps libcap) \
+		$(use_with crypt gcrypt) \
+		$(use_with geoip) \
+		$(use_with gtk3) \
+		$(use_with kerberos krb5) \
+		$(use_with lua) \
+		$(use_with pcap dumpcap-group wireshark) \
+		$(use_with pcap) \
+		$(use_with portaudio) \
+		$(usex qt4 --with-qt=4 '') \
+		$(usex qt5 --with-qt=5 '') \
+		$(usex qt4 MOC=$(qt4_get_bindir)/moc '') \
+		$(usex qt4 RCC=$(qt4_get_bindir)/rcc '') \
+		$(usex qt4 UIC=$(qt4_get_bindir)/uic '') \
+		$(usex qt5 MOC=$(qt5_get_bindir)/moc '') \
+		$(usex qt5 RCC=$(qt5_get_bindir)/rcc '') \
+		$(usex qt5 UIC=$(qt5_get_bindir)/uic '') \
+		$(use_with sbc) \
+		$(use_with smi libsmi) \
+		$(use_with ssl gnutls) \
+		$(use_with zlib) \
+		$(usex netlink --with-libnl=3 --without-libnl) \
+		$(usex cpu_flags_x86_sse4_2 --enable-sse4_2 '') \
+		--disable-profile-build \
+		--disable-usr-local \
+		--disable-warnings-as-errors \
+		--sysconfdir="${EPREFIX}"/etc/wireshark \
+		--without-adns \
+		${myconf[@]}
+}
+
+src_compile() {
+	default
+	if use doc; then
+		use doc-pdf && addpredict "/root/.java"
+		emake -j1 -C docbook
+	fi
+}
+
+src_install() {
+	default
+
+	if use doc; then
+		dohtml -r docbook/{release-notes.html,ws{d,u}g_html{,_chunked}}
+		if use doc-pdf; then
+			insinto /usr/share/doc/${PF}/pdf/
+			doins docbook/{developer,user}-guide-{a4,us}.pdf docbook/release-notes.pdf
+		fi
+	fi
+
+	# FAQ is not required as is installed from help/faq.txt
+	dodoc AUTHORS ChangeLog NEWS README{,.bsd,.linux,.macos,.vmware} \
+		doc/{randpkt.txt,README*}
+
+	# install headers
+	local wsheader
+	for wsheader in \
+		color.h \
+		config.h \
+		epan/*.h \
+		epan/crypt/*.h \
+		epan/dfilter/*.h \
+		epan/dissectors/*.h \
+		epan/ftypes/*.h \
+		epan/wmem/*.h \
+		register.h \
+		wiretap/*.h \
+		ws_symbol_export.h \
+		wsutil/*.h
+	do
+		insinto /usr/include/wireshark/$( dirname ${wsheader} )
+		doins ${wsheader}
+	done
+
+	#with the above this really shouldn't be needed, but things may be looking in wiretap/ instead of wireshark/wiretap/
+	insinto /usr/include/wiretap
+	doins wiretap/wtap.h
+
+	if use gtk3 || use qt4 || use qt5; then
+		local c d
+		for c in hi lo; do
+			for d in 16 32 48; do
+				insinto /usr/share/icons/${c}color/${d}x${d}/apps
+				newins image/${c}${d}-app-wireshark.png wireshark.png
+			done
+		done
+		for d in 16 24 32 48 64 128 256 ; do
+			insinto /usr/share/icons/hicolor/${d}x${d}/mimetypes
+			newins image/WiresharkDoc-${d}.png application-vnd.tcpdump.pcap.png
+		done
+	fi
+
+	if use gtk3; then
+		domenu wireshark.desktop
+	fi
+
+	if use qt4 || use qt5; then
+		sed \
+			-e '/Exec=/s|wireshark|&-qt|g' \
+			-e 's|^Name.*=Wireshark|& (Qt)|g' \
+			wireshark.desktop > wireshark-qt.desktop \
+			|| die
+		domenu wireshark-qt.desktop
+	fi
+
+	prune_libtool_files
+}
+
+pkg_postinst() {
+	# Add group for users allowed to sniff.
+	enewgroup wireshark
+
+	if use pcap; then
+		fcaps -o 0 -g wireshark -m 4710 -M 0710 \
+			cap_dac_read_search,cap_net_raw,cap_net_admin \
+			"${EROOT}"/usr/bin/dumpcap
+	fi
+
+	ewarn "NOTE: To capture traffic with wireshark as normal user you have to"
+	ewarn "add yourself to the wireshark group. This security measure ensures"
+	ewarn "that only trusted users are allowed to sniff your traffic."
+}