From 4e0c4536bcbff9443616a307a087c4c071ff3122 Mon Sep 17 00:00:00 2001 From: Peter Volkov Date: Sat, 26 Jan 2008 15:52:12 +0000 Subject: Enable lua support, bug 206151, thank you Jaroslaw Niec . (Portage version: 2.1.3.19) --- net-analyzer/wireshark/ChangeLog | 9 +- .../wireshark/files/digest-wireshark-0.99.7-r2 | 3 + .../wireshark-0.99.7-glib-1.2-compile-fix.patch | 12 ++ net-analyzer/wireshark/wireshark-0.99.7-r2.ebuild | 176 +++++++++++++++++++++ 4 files changed, 199 insertions(+), 1 deletion(-) create mode 100644 net-analyzer/wireshark/files/digest-wireshark-0.99.7-r2 create mode 100644 net-analyzer/wireshark/files/wireshark-0.99.7-glib-1.2-compile-fix.patch create mode 100644 net-analyzer/wireshark/wireshark-0.99.7-r2.ebuild (limited to 'net-analyzer/wireshark') diff --git a/net-analyzer/wireshark/ChangeLog b/net-analyzer/wireshark/ChangeLog index 62db7d431926..d83e18c12de7 100644 --- a/net-analyzer/wireshark/ChangeLog +++ b/net-analyzer/wireshark/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for net-analyzer/wireshark # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-analyzer/wireshark/ChangeLog,v 1.76 2008/01/10 18:36:34 pva Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-analyzer/wireshark/ChangeLog,v 1.77 2008/01/26 15:52:12 pva Exp $ + +*wireshark-0.99.7-r2 (27 Jan 2008) + + 27 Jan 2008; + +files/wireshark-0.99.7-glib-1.2-compile-fix.patch, + +wireshark-0.99.7-r2.ebuild: + Enable lua support, bug 206151, thank you Jaroslaw Niec . *wireshark-0.99.7-r1 (10 Jan 2008) diff --git a/net-analyzer/wireshark/files/digest-wireshark-0.99.7-r2 b/net-analyzer/wireshark/files/digest-wireshark-0.99.7-r2 new file mode 100644 index 000000000000..3dbb61dac57c --- /dev/null +++ b/net-analyzer/wireshark/files/digest-wireshark-0.99.7-r2 @@ -0,0 +1,3 @@ +MD5 ef04dfac3e7acc4a9cb2b107dd2a2f8a wireshark-0.99.7.tar.bz2 13179467 +RMD160 558611675aa23313acbdb46650cf471959204bd0 wireshark-0.99.7.tar.bz2 13179467 +SHA256 2cbb3360507d8da13fa108e2fe9a4407a89b61fc0ddb6505d60f906b6c15eb82 wireshark-0.99.7.tar.bz2 13179467 diff --git a/net-analyzer/wireshark/files/wireshark-0.99.7-glib-1.2-compile-fix.patch b/net-analyzer/wireshark/files/wireshark-0.99.7-glib-1.2-compile-fix.patch new file mode 100644 index 000000000000..93ee1a79b782 --- /dev/null +++ b/net-analyzer/wireshark/files/wireshark-0.99.7-glib-1.2-compile-fix.patch @@ -0,0 +1,12 @@ +--- epan/wslua/wslua.h.orig 2008-01-27 18:47:07.000000000 +0300 ++++ epan/wslua/wslua.h 2008-01-27 18:46:27.000000000 +0300 +@@ -53,6 +53,9 @@ + #include + #include + #include ++#if GLIB_MAJOR_VERSION < 2 ++#include ++#endif + + #include "declare_wslua.h" + diff --git a/net-analyzer/wireshark/wireshark-0.99.7-r2.ebuild b/net-analyzer/wireshark/wireshark-0.99.7-r2.ebuild new file mode 100644 index 000000000000..bab211b9099b --- /dev/null +++ b/net-analyzer/wireshark/wireshark-0.99.7-r2.ebuild @@ -0,0 +1,176 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-analyzer/wireshark/wireshark-0.99.7-r2.ebuild,v 1.1 2008/01/26 15:52:12 pva Exp $ + +WANT_AUTOMAKE="1.9" +inherit autotools libtool flag-o-matic eutils toolchain-funcs + +DESCRIPTION="A network protocol analyzer formerly known as ethereal" +HOMEPAGE="http://www.wireshark.org/" + +# _rc versions has different download location. +[[ -n ${PV#*_rc} && ${PV#*_rc} != ${PV} ]] && { +SRC_URI="http://www.wireshark.org/download/prerelease/${PN}-${PV/_rc/pre}.tar.gz"; +S=${WORKDIR}/${PN}-${PV/_rc/pre} ; } || \ +SRC_URI="http://www.wireshark.org/download/src/all-versions/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="adns gtk ipv6 lua portaudio snmp ssl kerberos threads selinux" + +RDEPEND="sys-libs/zlib + snmp? ( net-analyzer/net-snmp ) + gtk? ( >=dev-libs/glib-2.0.4 + =x11-libs/gtk+-2* + x11-libs/pango + dev-libs/atk ) + !gtk? ( =dev-libs/glib-1.2* ) + ssl? ( dev-libs/openssl ) + !ssl? ( net-libs/gnutls ) + net-libs/libpcap + dev-libs/libpcre + sys-libs/libcap + adns? ( net-libs/adns ) + kerberos? ( virtual/krb5 ) + portaudio? ( media-libs/portaudio ) + lua? ( >=dev-lang/lua-5.1 ) + selinux? ( sec-policy/selinux-wireshark )" + +DEPEND="${RDEPEND} + >=dev-util/pkgconfig-0.15.0 + dev-lang/perl + sys-devel/bison + sys-devel/flex + sys-apps/sed" + +pkg_setup() { + # bug 119208 + if has_version "<=dev-lang/perl-5.8.8_rc1" && built_with_use dev-lang/perl minimal ; then + ewarn "wireshark will not build if dev-lang/perl is compiled with" + ewarn "USE=minimal. Rebuild dev-lang/perl with USE=-minimal and try again." + ebeep 5 + die "dev-lang/perl compiled with USE=minimal" + fi + + if ! use gtk; then + ewarn "USE=-gtk will mean no gui called wireshark will be created and" + ewarn "only command line utils are available" + fi + + # Add group for users allowed to sniff. + enewgroup wireshark || die "Failed to create wireshark group" +} + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${PN}-0.99.7-libgcrypt.patch + epatch "${FILESDIR}"/${PN}-0.99.7-asneeded.patch + + cd "${S}"/epan + epatch "${FILESDIR}"/wireshark-except-double-free.diff + + cd "${S}" + # http://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2012 + epatch "${FILESDIR}"/${P}-crash-emem.c.patch + # http://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2177 + epatch "${FILESDIR}"/${P}-exit.patch + + # http://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2224 + epatch "${FILESDIR}"/${P}-glib-1.2-compile-fix.patch + AT_M4DIR="${S}/aclocal-fallback" + eautoreconf +} + +src_compile() { + # optimization bug, see bug #165340, bug #40660 + if [[ $(gcc-version) == 3.4 ]] ; then + elog "Found gcc 3.4, forcing -O3 into CFLAGS" + replace-flags -O? -O3 + elif [[ $(gcc-version) == 3.3 || $(gcc-version) == 3.2 ]] ; then + elog "Found <=gcc-3.3, forcing -O into CFLAGS" + replace-flags -O? -O + fi + + # see bug #133092 + filter-flags -fstack-protector + + local myconf + + if use gtk; then + einfo "Building with gtk support" + else + einfo "Building without gtk support" + myconf="${myconf} --disable-wireshark --disable-warnings-as-errors" + # the asn1 plugin needs gtk + sed -i -e '/plugins.asn1/d' Makefile.in || die "sed failed" + sed -i -e '/^SUBDIRS/s/asn1//' plugins/Makefile.in || die "sed failed" + fi + + econf $(use_with ssl) \ + $(use_enable ipv6) \ + $(use_with lua) \ + $(use_with adns) \ + $(use_with kerberos krb5) \ + $(use_with snmp net-snmp) \ + $(use_with portaudio) \ + $(use_enable gtk gtk2) \ + $(use_enable threads) \ + --with-libcap \ + --enable-setuid-install \ + --without-ucd-snmp \ + --enable-dftest \ + --enable-randpkt \ + --sysconfdir=/etc/wireshark \ + --enable-editcap \ + --enable-capinfos \ + --enable-text2pcap \ + ${myconf} || die "econf failed" + + # fixes an access violation caused by libnetsnmp - see bug 79068 + use snmp && export MIBDIRS="${D}/usr/share/snmp/mibs" + + emake || die "emake failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + + for file in /usr/bin/tshark /usr/bin/dumpcap + do + fowners 0:wireshark ${file} + fperms 6550 ${file} + done + + insinto /usr/include/wiretap + doins wiretap/wtap.h + + dodoc AUTHORS ChangeLog NEWS README* + + if use gtk ; then + insinto /usr/share/icons/hicolor/16x16/apps + newins image/hi16-app-wireshark.png wireshark.png + insinto /usr/share/icons/hicolor/32x32/apps + newins image/hi32-app-wireshark.png wireshark.png + insinto /usr/share/icons/hicolor/48x48/apps + newins image/hi48-app-wireshark.png wireshark.png + insinto /usr/share/applications + # Wireshark should not be ran as root in KDE. + # Bug: http://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2127 + sed -i '/X-KDE-SubstituteUID/d' wireshark.desktop + doins wireshark.desktop + fi +} + +pkg_postinst() { + echo + ewarn "With version 0.99.7, all function calls that require elevated privileges" + ewarn "have been moved out of the GUI to dumpcap. WIRESHARK CONTAINS OVER ONE" + ewarn "POINT FIVE MILLION LINES OF SOURCE CODE. DO NOT RUN THEM AS ROOT." + ewarn + ewarn "NOTE: To run wireshark as normal user you have to add yourself into" + ewarn "wireshark group. This security measure ensures that only trusted" + ewarn "users allowed to sniff your traffic." + echo +} -- cgit v1.2.3-65-gdbad