Gentoo Archives: gentoo-commits

From: Jeroen Roovers <jer@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-analyzer/wireshark/
Date: Fri, 25 Sep 2020 08:52:30
Message-Id: 1601023942.6abc81eb706e80d554d2fc68bd0131b8d9df5f58.jer@gentoo
1 commit: 6abc81eb706e80d554d2fc68bd0131b8d9df5f58
2 Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
3 AuthorDate: Fri Sep 25 08:51:46 2020 +0000
4 Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
5 CommitDate: Fri Sep 25 08:52:22 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6abc81eb
7
8 net-analyzer/wireshark: Version 3.2.7
9
10 Package-Manager: Portage-3.0.8, Repoman-3.0.1
11 Bug: https://bugs.gentoo.org/744592
12 Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org>
13
14 net-analyzer/wireshark/Manifest | 1 +
15 net-analyzer/wireshark/wireshark-3.2.7.ebuild | 261 ++++++++++++++++++++++++++
16 2 files changed, 262 insertions(+)
17
18 diff --git a/net-analyzer/wireshark/Manifest b/net-analyzer/wireshark/Manifest
19 index 5f2b26a2c31..2609271b4da 100644
20 --- a/net-analyzer/wireshark/Manifest
21 +++ b/net-analyzer/wireshark/Manifest
22 @@ -1,2 +1,3 @@
23 DIST wireshark-3.2.6.tar.xz 31635628 BLAKE2B 216623d4f357e755b9c032bef45b30c373bb0e2de773daabb78725491bd8eb0290d25a9016081dc62844c1be63e3afd273a8a6b8d16e70e589465fd837cc7442 SHA512 71905836370b916a92e7a76e4f93cb10a658374c7a95aa47b607b2b142abebdb0d1562f642782a5a946a167dfb28169572330a7603cf0d7ab6016ce7f12fac78
24 +DIST wireshark-3.2.7.tar.xz 31659996 BLAKE2B 69ed148e5cc6403b3948f4851164033163d0817626feaeaa0abf09b749c9e37c036786ed91f04add1ceeb80b69b7d05316b648d339c8c86f0818e0ee0afdf4ad SHA512 c17913fe6c193ccc6b0dbf86932d625a1f3b670aef805296e5db2639118218e06d513910ad50ab3926204f94a0010425b0d498176f987516d64fdd6a52d2517b
25 DIST wireshark-3.3.0.tar.xz 32795500 BLAKE2B 1f5b7711e76464403a9ed11f2f72a858716e177334b036bf5f2b2aa9f41b197fded04ff18a3841f3d6fdab9acf331a5bc4dfee3adc8eca775c4eeedbbc163ece SHA512 1ca59d951b3b3c18f55f21023a775124639fbc99a0396e3b2ecf3569213659a039836c6bdaf82b802668b5108f455106a22e83ab26ee18ed882dfa564594df5a
26
27 diff --git a/net-analyzer/wireshark/wireshark-3.2.7.ebuild b/net-analyzer/wireshark/wireshark-3.2.7.ebuild
28 new file mode 100644
29 index 00000000000..5b16741cb38
30 --- /dev/null
31 +++ b/net-analyzer/wireshark/wireshark-3.2.7.ebuild
32 @@ -0,0 +1,261 @@
33 +# Copyright 1999-2020 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=7
37 +PYTHON_COMPAT=( python3_{6,7,8} )
38 +inherit fcaps flag-o-matic multilib python-any-r1 qmake-utils user xdg-utils cmake
39 +
40 +DESCRIPTION="A network protocol analyzer formerly known as ethereal"
41 +HOMEPAGE="https://www.wireshark.org/"
42 +SRC_URI="https://www.wireshark.org/download/src/all-versions/${P/_/}.tar.xz"
43 +LICENSE="GPL-2"
44 +
45 +SLOT="0/${PV}"
46 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc64 ~x86"
47 +IUSE="
48 + androiddump bcg729 brotli +capinfos +captype ciscodump +dftest doc dpauxmon
49 + +dumpcap +editcap http2 kerberos libxml2 lua lz4 maxminddb +mergecap
50 + +minizip +netlink +plugins plugin-ifdemo +pcap +qt5 +randpkt +randpktdump
51 + +reordercap sbc selinux +sharkd smi snappy spandsp sshdump ssl sdjournal
52 + test +text2pcap tfshark +tshark +udpdump zlib +zstd
53 +"
54 +S=${WORKDIR}/${P/_/}
55 +
56 +CDEPEND="
57 + >=dev-libs/glib-2.32:2
58 + >=net-dns/c-ares-1.5
59 + dev-libs/libgcrypt:0
60 + bcg729? ( media-libs/bcg729 )
61 + brotli? ( app-arch/brotli )
62 + ciscodump? ( >=net-libs/libssh-0.6 )
63 + filecaps? ( sys-libs/libcap )
64 + http2? ( net-libs/nghttp2 )
65 + kerberos? ( virtual/krb5 )
66 + libxml2? ( dev-libs/libxml2 )
67 + lua? ( >=dev-lang/lua-5.1:* )
68 + lz4? ( app-arch/lz4 )
69 + maxminddb? ( dev-libs/libmaxminddb )
70 + minizip? ( sys-libs/zlib[minizip] )
71 + netlink? ( dev-libs/libnl:3 )
72 + pcap? ( net-libs/libpcap )
73 + qt5? (
74 + dev-qt/qtcore:5
75 + dev-qt/qtgui:5
76 + dev-qt/qtmultimedia:5
77 + dev-qt/qtprintsupport:5
78 + dev-qt/qtwidgets:5
79 + x11-misc/xdg-utils
80 + )
81 + sbc? ( media-libs/sbc )
82 + sdjournal? ( sys-apps/systemd )
83 + smi? ( net-libs/libsmi )
84 + snappy? ( app-arch/snappy )
85 + spandsp? ( media-libs/spandsp )
86 + sshdump? ( >=net-libs/libssh-0.6 )
87 + ssl? ( net-libs/gnutls:= )
88 + zlib? ( sys-libs/zlib )
89 + zstd? ( app-arch/zstd )
90 +"
91 +# We need perl for `pod2html`. The rest of the perl stuff is to block older
92 +# and broken installs. #455122
93 +DEPEND="
94 + ${CDEPEND}
95 + ${PYTHON_DEPS}
96 +"
97 +BDEPEND="
98 + dev-lang/perl
99 + sys-devel/bison
100 + sys-devel/flex
101 + virtual/pkgconfig
102 + doc? (
103 + app-doc/doxygen
104 + dev-ruby/asciidoctor
105 + )
106 + qt5? (
107 + dev-qt/linguist-tools:5
108 + )
109 + test? (
110 + dev-python/pytest
111 + dev-python/pytest-xdist
112 + )
113 +"
114 +RDEPEND="
115 + ${CDEPEND}
116 + qt5? ( virtual/freedesktop-icon-theme )
117 + selinux? ( sec-policy/selinux-wireshark )
118 +"
119 +REQUIRED_USE="
120 + plugin-ifdemo? ( plugins )
121 +"
122 +RESTRICT="test"
123 +PATCHES=(
124 + "${FILESDIR}"/${PN}-2.4-androiddump.patch
125 + "${FILESDIR}"/${PN}-2.6.0-redhat.patch
126 + "${FILESDIR}"/${PN}-2.9.0-tfshark-libm.patch
127 + "${FILESDIR}"/${PN}-99999999-androiddump-wsutil.patch
128 + "${FILESDIR}"/${PN}-99999999-qtsvg.patch
129 + "${FILESDIR}"/${PN}-99999999-ui-needs-wiretap.patch
130 +)
131 +
132 +pkg_setup() {
133 + enewgroup wireshark
134 +}
135 +
136 +src_configure() {
137 + local mycmakeargs
138 +
139 + # Workaround bug #213705. If krb5-config --libs has -lcrypto then pass
140 + # --with-ssl to ./configure. (Mimics code from acinclude.m4).
141 + if use kerberos; then
142 + case $(krb5-config --libs) in
143 + *-lcrypto*)
144 + ewarn "Kerberos was built with ssl support: linkage with openssl is enabled."
145 + ewarn "Note there are annoying license incompatibilities between the OpenSSL"
146 + ewarn "license and the GPL, so do your check before distributing such package."
147 + mycmakeargs+=( -DENABLE_GNUTLS=$(usex ssl) )
148 + ;;
149 + esac
150 + fi
151 +
152 + if use qt5; then
153 + export QT_MIN_VERSION=5.3.0
154 + append-cxxflags -fPIC -DPIC
155 + fi
156 +
157 + python_setup
158 +
159 + mycmakeargs+=(
160 + $(use androiddump && use pcap && echo -DEXTCAP_ANDROIDDUMP_LIBPCAP=yes)
161 + $(usex qt5 LRELEASE=$(qt5_get_bindir)/lrelease '')
162 + $(usex qt5 MOC=$(qt5_get_bindir)/moc '')
163 + $(usex qt5 RCC=$(qt5_get_bindir)/rcc '')
164 + $(usex qt5 UIC=$(qt5_get_bindir)/uic '')
165 + -DBUILD_androiddump=$(usex androiddump)
166 + -DBUILD_capinfos=$(usex capinfos)
167 + -DBUILD_captype=$(usex captype)
168 + -DBUILD_ciscodump=$(usex ciscodump)
169 + -DBUILD_dftest=$(usex dftest)
170 + -DBUILD_dpauxmon=$(usex dpauxmon)
171 + -DBUILD_dumpcap=$(usex dumpcap)
172 + -DBUILD_editcap=$(usex editcap)
173 + -DBUILD_mergecap=$(usex mergecap)
174 + -DBUILD_mmdbresolve=$(usex maxminddb)
175 + -DBUILD_randpkt=$(usex randpkt)
176 + -DBUILD_randpktdump=$(usex randpktdump)
177 + -DBUILD_reordercap=$(usex reordercap)
178 + -DBUILD_sdjournal=$(usex sdjournal)
179 + -DBUILD_sharkd=$(usex sharkd)
180 + -DBUILD_sshdump=$(usex sshdump)
181 + -DBUILD_text2pcap=$(usex text2pcap)
182 + -DBUILD_tfshark=$(usex tfshark)
183 + -DBUILD_tshark=$(usex tshark)
184 + -DBUILD_udpdump=$(usex udpdump)
185 + -DBUILD_wireshark=$(usex qt5)
186 + -DCMAKE_INSTALL_DOCDIR="${EROOT}/usr/share/doc/${PF}"
187 + -DDISABLE_WERROR=yes
188 + -DENABLE_BCG729=$(usex bcg729)
189 + -DENABLE_BROTLI=$(usex brotli)
190 + -DENABLE_CAP=$(usex filecaps caps)
191 + -DENABLE_GNUTLS=$(usex ssl)
192 + -DENABLE_KERBEROS=$(usex kerberos)
193 + -DENABLE_LIBXML2=$(usex libxml2)
194 + -DENABLE_LUA=$(usex lua)
195 + -DENABLE_LZ4=$(usex lz4)
196 + -DENABLE_MINIZIP=$(usex minizip)
197 + -DENABLE_NETLINK=$(usex netlink)
198 + -DENABLE_NGHTTP2=$(usex http2)
199 + -DENABLE_PCAP=$(usex pcap)
200 + -DENABLE_PLUGINS=$(usex plugins)
201 + -DENABLE_PLUGIN_IFDEMO=$(usex plugin-ifdemo)
202 + -DENABLE_SBC=$(usex sbc)
203 + -DENABLE_SMI=$(usex smi)
204 + -DENABLE_SNAPPY=$(usex snappy)
205 + -DENABLE_SPANDSP=$(usex spandsp)
206 + -DENABLE_ZLIB=$(usex zlib)
207 + -DENABLE_ZSTD=$(usex zstd)
208 + )
209 +
210 + cmake_src_configure
211 +}
212 +
213 +src_test() {
214 + cmake_build test-programs
215 +
216 + myctestargs=( --disable-capture --skip-missing-programs=all --verbose )
217 + cmake_src_test
218 +}
219 +
220 +src_install() {
221 + cmake_src_install
222 +
223 + # FAQ is not required as is installed from help/faq.txt
224 + dodoc AUTHORS ChangeLog NEWS README* doc/randpkt.txt doc/README*
225 +
226 + # install headers
227 + insinto /usr/include/wireshark
228 + doins ws_diag_control.h ws_symbol_export.h \
229 + "${BUILD_DIR}"/config.h "${BUILD_DIR}"/version.h
230 +
231 + local dir dirs=(
232 + epan
233 + epan/crypt
234 + epan/dfilter
235 + epan/dissectors
236 + epan/ftypes
237 + epan/wmem
238 + wiretap
239 + wsutil
240 + )
241 + for dir in "${dirs[@]}"
242 + do
243 + insinto /usr/include/wireshark/${dir}
244 + doins ${dir}/*.h
245 + done
246 +
247 + #with the above this really shouldn't be needed, but things may be looking
248 + # in wiretap/ instead of wireshark/wiretap/
249 + insinto /usr/include/wiretap
250 + doins wiretap/wtap.h
251 +
252 + if use qt5; then
253 + local s
254 + for s in 16 32 48 64 128 256 512 1024; do
255 + insinto /usr/share/icons/hicolor/${s}x${s}/apps
256 + newins image/wsicon${s}.png wireshark.png
257 + done
258 + for s in 16 24 32 48 64 128 256 ; do
259 + insinto /usr/share/icons/hicolor/${s}x${s}/mimetypes
260 + newins image/WiresharkDoc-${s}.png application-vnd.tcpdump.pcap.png
261 + done
262 + fi
263 +
264 + if [[ -d "${D}"/usr/share/appdata ]]; then
265 + rm -r "${D}"/usr/share/appdata || die
266 + fi
267 +}
268 +
269 +pkg_postinst() {
270 + xdg_desktop_database_update
271 + xdg_icon_cache_update
272 + xdg_mimeinfo_database_update
273 +
274 + # Add group for users allowed to sniff.
275 + enewgroup wireshark
276 + chgrp wireshark "${EROOT}"/usr/bin/dumpcap
277 +
278 + if use dumpcap && use pcap; then
279 + fcaps -o 0 -g wireshark -m 4710 -M 0710 \
280 + cap_dac_read_search,cap_net_raw,cap_net_admin \
281 + "${EROOT}"/usr/bin/dumpcap
282 + fi
283 +
284 + ewarn "NOTE: To capture traffic with wireshark as normal user you have to"
285 + ewarn "add yourself to the wireshark group. This security measure ensures"
286 + ewarn "that only trusted users are allowed to sniff your traffic."
287 +}
288 +
289 +pkg_postrm() {
290 + xdg_desktop_database_update
291 + xdg_icon_cache_update
292 + xdg_mimeinfo_database_update
293 +}