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