blob: 693a1679380cb86dc2e3185838301e4a13dcbd14 [file] [log] [blame]
Andrew Geissler595f6302022-01-24 19:11:47 +00001DESCRIPTION = "wireshark - a popular network protocol analyzer"
2HOMEPAGE = "http://www.wireshark.org"
3SECTION = "net"
Andrew Geissler9aee5002022-03-30 16:27:02 +00004LICENSE = "GPL-2.0-only"
Andrew Geissler595f6302022-01-24 19:11:47 +00005LIC_FILES_CHKSUM = "file://COPYING;md5=6e271234ba1a13c6e512e76b94ac2f77"
6
7DEPENDS = "pcre expat glib-2.0 glib-2.0-native libgcrypt libgpg-error libxml2 bison-native c-ares"
8
9DEPENDS:append:class-target = " wireshark-native chrpath-replacement-native "
10
11SRC_URI = "https://1.eu.dl.wireshark.org/src/all-versions/wireshark-${PV}.tar.xz"
12
13SRC_URI += " \
14 file://0001-wireshark-src-improve-reproducibility.patch \
15 file://0002-flex-Remove-line-directives.patch \
16 file://0003-bison-Remove-line-directives.patch \
17 file://0004-lemon-Remove-line-directives.patch \
Andrew Geissler87f5cff2022-09-30 13:13:31 -050018 file://CVE-2022-3190.patch \
Andrew Geissler595f6302022-01-24 19:11:47 +000019"
20
21UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src"
22
Andrew Geissler615f2f12022-07-15 14:00:58 -050023SRC_URI[sha256sum] = "881a13303e263b7dc7fe337534c8a541d4914552287879bed30bbe76c5bf68ca"
Andrew Geissler595f6302022-01-24 19:11:47 +000024
25PE = "1"
26
Patrick Williams864cc432023-02-09 14:54:44 -060027inherit cmake pkgconfig python3native python3targetconfig perlnative upstream-version-is-even mime mime-xdg
Andrew Geissler595f6302022-01-24 19:11:47 +000028
29PACKAGECONFIG ?= "libpcap gnutls libnl libcap sbc"
30
31PACKAGECONFIG:class-native = "libpcap gnutls ssl libssh"
32
33PACKAGECONFIG[libcap] = "-DENABLE_CAP=ON,-DENABLE_CAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON, libcap"
34PACKAGECONFIG[libpcap] = "-DENABLE_PCAP=ON,-DENABLE_PCAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON , libpcap"
35PACKAGECONFIG[libsmi] = "-DENABLE_SMI=ON,-DENABLE_SMI=OFF,libsmi"
36PACKAGECONFIG[libnl] = ",,libnl"
37PACKAGECONFIG[portaudio] = "-DENABLE_PORTAUDIO=ON,-DENABLE_PORTAUDIO=OFF, portaudio-v19"
38PACKAGECONFIG[gnutls] = "-DENABLE_GNUTLS=ON,-DENABLE_GNUTLS=OFF, gnutls"
39PACKAGECONFIG[ssl] = ",,openssl"
40PACKAGECONFIG[krb5] = "-DENABLE_KRB5=ON,-DENABLE_KRB5=OFF, krb5"
41PACKAGECONFIG[lua] = "-DENABLE_LUA=ON,-DENABLE_LUA=OFF, lua"
42PACKAGECONFIG[zlib] = "-DENABLE_ZLIB=ON,-DENABLE_ZLIB=OFF, zlib"
43PACKAGECONFIG[geoip] = ",, geoip"
44PACKAGECONFIG[plugins] = "-DENABLE_PLUGINS=ON,-DENABLE_PLUGINS=OFF"
45PACKAGECONFIG[sbc] = "-DENABLE_SBC=ON,-DENABLE_SBC=OFF, sbc"
46PACKAGECONFIG[libssh] = ",,libssh2"
47PACKAGECONFIG[lz4] = "-DENABLE_LZ4=ON,-DENABLE_LZ4=OFF, lz4"
48PACKAGECONFIG[zstd] = "-DENABLE_STTD=ON,-DENABLE_ZSTD=OFF, zstd"
Patrick Williams864cc432023-02-09 14:54:44 -060049PACKAGECONFIG[nghttp2] = "-DENABLE_NGHTTP2=ON,-DENABLE_NGHTTP2=OFF, nghttp2"
Andrew Geissler595f6302022-01-24 19:11:47 +000050
51# these next two options require addional layers
52PACKAGECONFIG[c-ares] = "-DENABLE_CARES=ON,-DENABLE_CARES=OFF, c-ares"
53PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON -DBUILD_wireshark=ON, -DENABLE_QT5=OFF -DBUILD_wireshark=OFF, qttools-native qtmultimedia qtsvg"
54
55inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt5', 'cmake_qt5', '', d)}
56
57EXTRA_OECMAKE += "-DENABLE_NETLINK=ON \
58 -DBUILD_mmdbresolve=OFF \
59 -DBUILD_randpktdump=OFF \
60 -DBUILD_androiddump=OFF \
61 -DBUILD_dcerpcidl2wrs=OFF \
62 -DM_INCLUDE_DIR=${includedir} \
63 -DM_LIBRARY=${libdir} \
64 "
65CFLAGS:append = " -lm"
66
67do_install:append:class-native() {
68 install -d ${D}${bindir}
69 for f in lemon
70 do
71 install -m 0755 ${B}/run/$f ${D}${bindir}
72 done
73}
74
75do_install:append:class-target() {
76 for f in `find ${D}${libdir} ${D}${bindir} -type f -executable`
77 do
78 chrpath --delete $f
79 done
80}
81
82PACKAGE_BEFORE_PN += "tshark"
83
84FILES:tshark = "${bindir}/tshark ${mandir}/man1/tshark.*"
85
86FILES:${PN} += "${datadir}*"
87
88RDEPENDS:tshark = "wireshark"
89
90BBCLASSEXTEND = "native"