From 0f558761aa2dee1017b4751e4017205e015a9560 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 29 Jun 2022 12:04:12 +0100 Subject: gentoo resync : 29.12.2022 --- net-analyzer/wireshark/Manifest | 8 +- net-analyzer/wireshark/wireshark-3.6.3.ebuild | 2 +- net-analyzer/wireshark/wireshark-3.6.5.ebuild | 269 ++++++++++++++++++++++++++ net-analyzer/wireshark/wireshark-3.6.6.ebuild | 269 ++++++++++++++++++++++++++ net-analyzer/wireshark/wireshark-9999.ebuild | 34 ++-- 5 files changed, 564 insertions(+), 18 deletions(-) create mode 100644 net-analyzer/wireshark/wireshark-3.6.5.ebuild create mode 100644 net-analyzer/wireshark/wireshark-3.6.6.ebuild (limited to 'net-analyzer/wireshark') diff --git a/net-analyzer/wireshark/Manifest b/net-analyzer/wireshark/Manifest index 6218ee58dff9..4b3a2911f48b 100644 --- a/net-analyzer/wireshark/Manifest +++ b/net-analyzer/wireshark/Manifest @@ -4,8 +4,12 @@ AUX wireshark-9999-ui-needs-wiretap.patch 211 BLAKE2B f27c7ecdc3ee769020ad5d361f DIST wireshark-3.4.11.tar.xz 32354216 BLAKE2B 3e08d01f2d89f5ddd74c4e2215e6852f30c7419234a45b52a25aa9119995ec2c2882cc3993dce7941e6e73230eb4d295bf0785dda5fe8c3df99f9efdb1e42bfd SHA512 cfef2c3e56279baadb7f41a1f46fde9214a467972f69914c14a8153ea2f2adcb55832413bcaf7a3f8d98b4b62d0574f12144de6c06ff382b4fa8b071903993dc DIST wireshark-3.6.2.tar.xz 39654296 BLAKE2B 585cf925892ec9d5b6413ccc53c49035eba8a7cd9206f1354f0a808daec9b0f20fc72b3427a2b592f196dd6b2ab67fd35e73d152a20c16fb0f0153c6a03d3156 SHA512 cd4a8077629632e9a924600f9af2ffd01917726fd64504d6f3b4a2a1cb5340c9c0bac23e4abab63743952a0a78efd2e09bb125b127d24e85eca6fa41928fd070 DIST wireshark-3.6.3.tar.xz 39935892 BLAKE2B 3b636867d946f0cf748eb719874e815c919ee9cedd21a7e9034d54b4cb87ae4a09ec02a199e1ec8051e421fe2929983d659f340ccfd12ab35e1ecd52000964fd SHA512 4415216f791caee23757f3c754dd88ce8fd8eb8d2d64c1bd011b40c7451a1ef56cf41bcf1cdcf41221f196bf17be550f9271f05b82a017a02cac5c241785b7e6 +DIST wireshark-3.6.5.tar.xz 39939340 BLAKE2B 4df1abce2563f20e91fac169ef1ab65851a5f63423aceba487db8cd4b954c4a2ba5673e032878b33a43992cb2ee4628899eee8b0065220cd0c79a8c98a589ef0 SHA512 9aa60721401fbd1f3c6b912312792433c9f8a09583cf684a4f1a24c839f4786a54a0abbfd88c04ba222e5a7af09f7bc67c292a0f944c9b717a71509655fe2fe5 +DIST wireshark-3.6.6.tar.xz 39950276 BLAKE2B cb74c4ed307b83ba509fa3b56356a33df11d9d1effb29054f73f248ca1c7107806676539d0802cc71e07687831a838145194104183afa4ae1825eb1fb85062b1 SHA512 c32d5aafb3091dc1475896a3c4cfcb5a47af002e53f011a65697271c611e690743153841f5db1021a6cbea6d427dc661dce7b85208832251200258fb46aad84b EBUILD wireshark-3.4.11.ebuild 7457 BLAKE2B 05a0c93f8b8137ecb865ad4cc5f409685c79ce8dab0694e2d89b18bda7b8760e6162f5bdd4843fb8e5a21c69cfd62608b31fcb707636c8f6592c5664f64ccf55 SHA512 51cb14b1866282aa3bc83d697aaa999d1ab2a839fcf778483bd290f0366f9a105b5f2813c00f67779c1df60a443cfb7243176857e3ee5b91549447a941b75509 EBUILD wireshark-3.6.2.ebuild 7258 BLAKE2B 32c295bd798526fa0c406e1662e8dc941e402c322696c7d9be524e21a4066b2671d94ffb9e1fe1df854869eab2e9c32c25cf2f43c3a512f2c25fa57af7a1fac7 SHA512 59fdf0864bf220784ced5496adc1bd15a6e0a6a992fedd1e3138e38221734b0a97c704b7dd750477990c3a81153878c7275c9486cae5b0fd2a38d06243119431 -EBUILD wireshark-3.6.3.ebuild 7089 BLAKE2B d96ebead8d7ae42562e2223cb26b3c36d2f4505a1e1e0716d96148a86b727ce7c230ce16847029507b49832917378edcb2d5e082842ab883655958207d77badc SHA512 8458db633a1522889362382aab665a89002d57b150b23f84909b5a0fb884d45748144a8cc30e32255d43a9f9de1494cb2f6540911e4a5a2da629359f62fb3267 -EBUILD wireshark-9999.ebuild 7073 BLAKE2B 4de204e4e91d076ddf44ec6ed29fb1e1a007a23fd3107cc760cdd7ac53abb00c3f3ba5c23ec703423e36a88cccb764985a3e21e728d6a8589744831dc7100dbe SHA512 42359be522e8c1482b8f257f474e641baf6d753aefcd081d615505b5a58e25b45a456d9c360a9df8dfef9c45a220b11e6c0c72bf228109ee2f113a52e9f39adc +EBUILD wireshark-3.6.3.ebuild 7088 BLAKE2B 739c59ec85023365cd17a6ed7e77f1d9a50a541bb19c53d2df6848895c0f7e21c9d76d72f2246dd1ca1df8a4fb32cda36349417140e054bd3064a62eb2b673c4 SHA512 c47811d1cb475de60906b2bff0f6423c0eb9a955dba9d4e7cf378022b028665c3d8e7c315ca5afc886f581a5f6dd450e65b976942e57d3d602f31e1863196d4f +EBUILD wireshark-3.6.5.ebuild 7290 BLAKE2B 9488d17dfd2e7bb6b9664b75ef4f9cc35f3f8faba148701f9a376f43f7f5a01dba5dd145b8a3e822e85d2a2eecb6919b8906f7dca3268a61d85b5d1f204f3c0c SHA512 c97d5d8b388441536cd27ec737312cc0278f05947efb28a9d8a304350b84c103bf642b7668cadb476e599284ecb80c8bd80ade64af57e960cae3d0dde9458bed +EBUILD wireshark-3.6.6.ebuild 7290 BLAKE2B 9488d17dfd2e7bb6b9664b75ef4f9cc35f3f8faba148701f9a376f43f7f5a01dba5dd145b8a3e822e85d2a2eecb6919b8906f7dca3268a61d85b5d1f204f3c0c SHA512 c97d5d8b388441536cd27ec737312cc0278f05947efb28a9d8a304350b84c103bf642b7668cadb476e599284ecb80c8bd80ade64af57e960cae3d0dde9458bed +EBUILD wireshark-9999.ebuild 7270 BLAKE2B 16cfb9618d7c251a1131ff1a1b8ceda2ff7975e8e4b8416e6835143e1387ed3d089287df9200416c1ed686eecfe7076564336d47b0d0dff671729782b74214cb SHA512 9d0d259670da93e2e0ecb15e8dc8d318a1d12093c948b86cbb9d51e96631b91841e807c4a8dec9111929c9b84e8c274730d7e3ddcacc2bd8e4eeb6fd7044b972 MISC metadata.xml 5328 BLAKE2B a030872929b89f0ead3794d8bbff20354b3a1b7a35aa7c3ce37baf5170ced9d39bdc665bd23e03e70d94550085a88224ec6cd260679b2d01501b272c595442d0 SHA512 cbadc90c858ef008b763253ef548e3634643b98bf90069b3fa34bd4f947d93ee8d4a2f3c6d9c7fe4c93b4169e34681e00905b28e64f8edcff02f23867d75b265 diff --git a/net-analyzer/wireshark/wireshark-3.6.3.ebuild b/net-analyzer/wireshark/wireshark-3.6.3.ebuild index 7ac210542945..4d449ccaf2ea 100644 --- a/net-analyzer/wireshark/wireshark-3.6.3.ebuild +++ b/net-analyzer/wireshark/wireshark-3.6.3.ebuild @@ -18,7 +18,7 @@ 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" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc64 ~riscv x86" fi LICENSE="GPL-2" diff --git a/net-analyzer/wireshark/wireshark-3.6.5.ebuild b/net-analyzer/wireshark/wireshark-3.6.5.ebuild new file mode 100644 index 000000000000..fffca9343012 --- /dev/null +++ b/net-analyzer/wireshark/wireshark-3.6.5.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." +} diff --git a/net-analyzer/wireshark/wireshark-3.6.6.ebuild b/net-analyzer/wireshark/wireshark-3.6.6.ebuild new file mode 100644 index 000000000000..fffca9343012 --- /dev/null +++ b/net-analyzer/wireshark/wireshark-3.6.6.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." +} diff --git a/net-analyzer/wireshark/wireshark-9999.ebuild b/net-analyzer/wireshark/wireshark-9999.ebuild index 3c9c26865ea3..68dc99e8c15c 100644 --- a/net-analyzer/wireshark/wireshark-9999.ebuild +++ b/net-analyzer/wireshark/wireshark-9999.ebuild @@ -86,8 +86,10 @@ BDEPEND="${PYTHON_DEPS} dev-qt/linguist-tools:5 ) test? ( - dev-python/pytest - dev-python/pytest-xdist + $(python_gen_any_dep ' + dev-python/pytest[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + ') )" RDEPEND="${RDEPEND} qt5? ( virtual/freedesktop-icon-theme ) @@ -98,8 +100,17 @@ PATCHES=( "${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() { @@ -153,7 +164,7 @@ src_configure() { -DBUILD_tshark=$(usex tshark) -DBUILD_udpdump=$(usex udpdump) -DBUILD_wireshark=$(usex qt5) - -DDISABLE_WERROR=yes + -DDISABLE_WERROR=ON -DENABLE_BCG729=$(usex bcg729) -DENABLE_BROTLI=$(usex brotli) -DENABLE_CAP=$(usex filecaps caps) @@ -185,18 +196,11 @@ src_configure() { src_test() { cmake_build test-programs - myctestargs=( - --disable-capture - --skip-missing-programs=all - --verbose - - # Skip known failing tests - # extcaps needs a bunch of external programs - -E "(suite_extcaps)" - #-E "(suite_decryption|suite_extcaps|suite_nameres)" - ) - - cmake_src_test + # https://www.wireshark.org/docs/wsdg_html_chunked/ChTestsRunPytest.html + epytest \ + --disable-capture \ + --skip-missing-programs=all \ + --program-path "${BUILD_DIR}"/run } src_install() { -- cgit v1.2.3