diff options
author | Sam James <sam@gentoo.org> | 2022-09-08 05:31:06 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2022-09-08 05:31:06 +0100 |
commit | 6ac0fae51f8558ef4d01861ae4b396039e1e9fcd (patch) | |
tree | 19f5d9a7c8b94c2f10179f7ce17a867ce70ed902 /net-analyzer | |
parent | net-libs/libssh: add 0.10.4 (diff) | |
download | gentoo-6ac0fae51f8558ef4d01861ae4b396039e1e9fcd.tar.gz gentoo-6ac0fae51f8558ef4d01861ae4b396039e1e9fcd.tar.bz2 gentoo-6ac0fae51f8558ef4d01861ae4b396039e1e9fcd.zip |
net-analyzer/wireshark: add 3.6.8
Bug: https://bugs.gentoo.org/869140
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-analyzer')
-rw-r--r-- | net-analyzer/wireshark/Manifest | 1 | ||||
-rw-r--r-- | net-analyzer/wireshark/wireshark-3.6.8.ebuild | 269 |
2 files changed, 270 insertions, 0 deletions
diff --git a/net-analyzer/wireshark/Manifest b/net-analyzer/wireshark/Manifest index c9f0a82a4ac0..8914f018742a 100644 --- a/net-analyzer/wireshark/Manifest +++ b/net-analyzer/wireshark/Manifest @@ -4,4 +4,5 @@ DIST wireshark-3.6.3.tar.xz 39935892 BLAKE2B 3b636867d946f0cf748eb719874e815c919 DIST wireshark-3.6.5.tar.xz 39939340 BLAKE2B 4df1abce2563f20e91fac169ef1ab65851a5f63423aceba487db8cd4b954c4a2ba5673e032878b33a43992cb2ee4628899eee8b0065220cd0c79a8c98a589ef0 SHA512 9aa60721401fbd1f3c6b912312792433c9f8a09583cf684a4f1a24c839f4786a54a0abbfd88c04ba222e5a7af09f7bc67c292a0f944c9b717a71509655fe2fe5 DIST wireshark-3.6.6.tar.xz 39950276 BLAKE2B cb74c4ed307b83ba509fa3b56356a33df11d9d1effb29054f73f248ca1c7107806676539d0802cc71e07687831a838145194104183afa4ae1825eb1fb85062b1 SHA512 c32d5aafb3091dc1475896a3c4cfcb5a47af002e53f011a65697271c611e690743153841f5db1021a6cbea6d427dc661dce7b85208832251200258fb46aad84b DIST wireshark-3.6.7.tar.xz 39967312 BLAKE2B 0539130aec2c7d8fdfec536114144a0b761addb8006d146a5e08d0a58e95d5d6b0db67ef32ceae4143de9836f25a3497802706f0a0eb633f29e1f24a47819e4b SHA512 caf087ee467bf934f28d096869ea3d9d7c5a3c83e51c4df447700096943a92abf5cf29f4956b9a549e0708bcb3515b55c4660a7ced2cb9dbc582b87550026fac +DIST wireshark-3.6.8.tar.xz 39942580 BLAKE2B 8b51ae1b3bf56fe1ccec70e94d9edb891e7b486a87b8f43984ea6d3150fe8f6c04beef9f12ebd9b830138aec6a993bcf88d50cfc4695b1f9ade6933092bed8db SHA512 c286e84e113f06b13b931da89b6d21b18e342660682579f88e77697f3e9c335ba75cdc190b41651da4d5729529a20740ef1a41e9f9523d9f6cc768147363053a DIST wireshark-4.0.0rc1.tar.xz 41291340 BLAKE2B 96dc9616702c67f47517cf5fc575bf555d5f7e83cc90284301e3ef26476ca6292f8aba3c7230c3ca7e6404a9b953861247a448826b339fa586d5a8206c787989 SHA512 16d4f3d39198bb208d4ad58059c38a40f21352186abf2cafb4140674d048e5bd29e5dbc079ed50f28f1dde150733bba6a26c6fc7d10e524e4556bd20c6ae2856 diff --git a/net-analyzer/wireshark/wireshark-3.6.8.ebuild b/net-analyzer/wireshark/wireshark-3.6.8.ebuild new file mode 100644 index 000000000000..fffca9343012 --- /dev/null +++ b/net-analyzer/wireshark/wireshark-3.6.8.ebuild @@ -0,0 +1,269 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-{1..2} ) +PYTHON_COMPAT=( python3_{8..10} ) + +inherit fcaps flag-o-matic lua-single python-any-r1 qmake-utils xdg cmake + +DESCRIPTION="A network protocol analyzer formerly known as ethereal" +HOMEPAGE="https://www.wireshark.org/" + +if [[ ${PV} == *9999* ]] ; then + EGIT_REPO_URI="https://gitlab.com/wireshark/wireshark" + inherit git-r3 +else + SRC_URI="https://www.wireshark.org/download/src/all-versions/${P/_/}.tar.xz" + S="${WORKDIR}/${P/_/}" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc64 ~riscv ~x86" +fi + +LICENSE="GPL-2" +SLOT="0/${PV}" +IUSE="androiddump bcg729 brotli +capinfos +captype ciscodump +dftest doc dpauxmon" +IUSE+=" +dumpcap +editcap http2 ilbc kerberos libxml2 lto lua lz4 maxminddb" +IUSE+=" +mergecap +minizip +netlink opus +plugins plugin-ifdemo +pcap +qt5 +randpkt" +IUSE+=" +randpktdump +reordercap sbc selinux +sharkd smi snappy spandsp sshdump ssl" +IUSE+=" sdjournal test +text2pcap tfshark +tshark +udpdump zlib +zstd" + +REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} ) + plugin-ifdemo? ( plugins )" + +RESTRICT="!test? ( test )" + +# bug #753062 for speexdsp +RDEPEND="acct-group/pcap + >=dev-libs/glib-2.38:2 + >=net-dns/c-ares-1.5:= + dev-libs/libgcrypt:= + media-libs/speexdsp + bcg729? ( media-libs/bcg729 ) + brotli? ( app-arch/brotli:= ) + ciscodump? ( >=net-libs/libssh-0.6 ) + filecaps? ( sys-libs/libcap ) + http2? ( net-libs/nghttp2:= ) + ilbc? ( media-libs/libilbc ) + kerberos? ( virtual/krb5 ) + libxml2? ( dev-libs/libxml2 ) + lua? ( ${LUA_DEPS} ) + lz4? ( app-arch/lz4:= ) + maxminddb? ( dev-libs/libmaxminddb:= ) + minizip? ( sys-libs/zlib[minizip] ) + netlink? ( dev-libs/libnl:3 ) + opus? ( media-libs/opus ) + pcap? ( net-libs/libpcap ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtmultimedia:5 + dev-qt/qtprintsupport:5 + dev-qt/qtwidgets:5 + x11-misc/xdg-utils + ) + sbc? ( media-libs/sbc ) + sdjournal? ( sys-apps/systemd ) + smi? ( net-libs/libsmi ) + snappy? ( app-arch/snappy ) + spandsp? ( media-libs/spandsp ) + sshdump? ( >=net-libs/libssh-0.6 ) + ssl? ( net-libs/gnutls:= ) + zlib? ( sys-libs/zlib ) + zstd? ( app-arch/zstd:= )" +DEPEND="${RDEPEND}" +BDEPEND="${PYTHON_DEPS} + dev-lang/perl + sys-devel/flex + sys-devel/gettext + virtual/pkgconfig + doc? ( + app-doc/doxygen + dev-ruby/asciidoctor + ) + qt5? ( + dev-qt/linguist-tools:5 + ) + test? ( + $(python_gen_any_dep ' + dev-python/pytest[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + ') + )" +RDEPEND="${RDEPEND} + qt5? ( virtual/freedesktop-icon-theme ) + selinux? ( sec-policy/selinux-wireshark )" + +PATCHES=( + "${FILESDIR}"/${PN}-2.6.0-redhat.patch + "${FILESDIR}"/${PN}-3.4.2-cmake-lua-version.patch +) + +python_check_deps() { + use test || return 0 + + python_has_version -b "dev-python/pytest[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/pytest-xdist[${PYTHON_USEDEP}]" +} + +pkg_setup() { + use lua && lua-single_pkg_setup + + python-any-r1_pkg_setup +} + +src_configure() { + local mycmakeargs + + # 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." + mycmakeargs+=( -DENABLE_GNUTLS=$(usex ssl) ) + ;; + esac + fi + + if use qt5 ; then + export QT_MIN_VERSION=5.3.0 + append-cxxflags -fPIC -DPIC + fi + + python_setup + + mycmakeargs+=( + -DCMAKE_DISABLE_FIND_PACKAGE_{Asciidoctor,DOXYGEN}=$(usex !doc) + $(use androiddump && use pcap && echo -DEXTCAP_ANDROIDDUMP_LIBPCAP=yes) + $(usex qt5 LRELEASE=$(qt5_get_bindir)/lrelease '') + $(usex qt5 MOC=$(qt5_get_bindir)/moc '') + $(usex qt5 RCC=$(qt5_get_bindir)/rcc '') + $(usex qt5 UIC=$(qt5_get_bindir)/uic '') + -DBUILD_androiddump=$(usex androiddump) + -DBUILD_capinfos=$(usex capinfos) + -DBUILD_captype=$(usex captype) + -DBUILD_ciscodump=$(usex ciscodump) + -DBUILD_dftest=$(usex dftest) + -DBUILD_dpauxmon=$(usex dpauxmon) + -DBUILD_dumpcap=$(usex dumpcap) + -DBUILD_editcap=$(usex editcap) + -DBUILD_mergecap=$(usex mergecap) + -DBUILD_mmdbresolve=$(usex maxminddb) + -DBUILD_randpkt=$(usex randpkt) + -DBUILD_randpktdump=$(usex randpktdump) + -DBUILD_reordercap=$(usex reordercap) + -DBUILD_sdjournal=$(usex sdjournal) + -DBUILD_sharkd=$(usex sharkd) + -DBUILD_sshdump=$(usex sshdump) + -DBUILD_text2pcap=$(usex text2pcap) + -DBUILD_tfshark=$(usex tfshark) + -DBUILD_tshark=$(usex tshark) + -DBUILD_udpdump=$(usex udpdump) + -DBUILD_wireshark=$(usex qt5) + -DDISABLE_WERROR=ON + -DENABLE_BCG729=$(usex bcg729) + -DENABLE_BROTLI=$(usex brotli) + -DENABLE_CAP=$(usex filecaps caps) + -DENABLE_GNUTLS=$(usex ssl) + -DENABLE_ILBC=$(usex ilbc) + -DENABLE_KERBEROS=$(usex kerberos) + -DENABLE_LIBXML2=$(usex libxml2) + -DENABLE_LTO=$(usex lto) + -DENABLE_LUA=$(usex lua) + -DENABLE_LZ4=$(usex lz4) + -DENABLE_MINIZIP=$(usex minizip) + -DENABLE_NETLINK=$(usex netlink) + -DENABLE_NGHTTP2=$(usex http2) + -DENABLE_OPUS=$(usex opus) + -DENABLE_PCAP=$(usex pcap) + -DENABLE_PLUGINS=$(usex plugins) + -DENABLE_PLUGIN_IFDEMO=$(usex plugin-ifdemo) + -DENABLE_SBC=$(usex sbc) + -DENABLE_SMI=$(usex smi) + -DENABLE_SNAPPY=$(usex snappy) + -DENABLE_SPANDSP=$(usex spandsp) + -DENABLE_ZLIB=$(usex zlib) + -DENABLE_ZSTD=$(usex zstd) + ) + + cmake_src_configure +} + +src_test() { + cmake_build test-programs + + # https://www.wireshark.org/docs/wsdg_html_chunked/ChTestsRunPytest.html + epytest \ + --disable-capture \ + --skip-missing-programs=all \ + --program-path "${BUILD_DIR}"/run +} + +src_install() { + cmake_src_install + + # FAQ is not required as is installed from help/faq.txt + dodoc AUTHORS ChangeLog NEWS README* doc/randpkt.txt doc/README* + + # install headers + insinto /usr/include/wireshark + doins ws_diag_control.h ws_symbol_export.h \ + "${BUILD_DIR}"/config.h + + # If trying to remove this, try build e.g. libvirt first! + # At last check, Fedora is still doing this too. + local dir dirs=( + epan + epan/crypt + epan/dfilter + epan/dissectors + epan/ftypes + wiretap + wsutil + wsutil/wmem + ) + + for dir in "${dirs[@]}" ; do + insinto /usr/include/wireshark/${dir} + doins ${dir}/*.h + done + + if use qt5 ; then + local s + + for s in 16 32 48 64 128 256 512 1024 ; do + insinto /usr/share/icons/hicolor/${s}x${s}/apps + newins image/wsicon${s}.png wireshark.png + done + + for s in 16 24 32 48 64 128 256 ; do + insinto /usr/share/icons/hicolor/${s}x${s}/mimetypes + newins image/WiresharkDoc-${s}.png application-vnd.tcpdump.pcap.png + done + fi + + if [[ -d "${ED}"/usr/share/appdata ]] ; then + rm -r "${ED}"/usr/share/appdata || die + fi +} + +pkg_postinst() { + xdg_pkg_postinst + + # Add group for users allowed to sniff. + chgrp pcap "${EROOT}"/usr/bin/dumpcap + + if use dumpcap && use pcap ; then + fcaps -o 0 -g pcap -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 pcap group. This security measure ensures" + ewarn "that only trusted users are allowed to sniff your traffic." +} |