aboutsummaryrefslogtreecommitdiffstats
path: root/meta-networking/recipes-support/wireshark
diff options
context:
space:
mode:
Diffstat (limited to 'meta-networking/recipes-support/wireshark')
-rw-r--r--meta-networking/recipes-support/wireshark/README4
-rw-r--r--meta-networking/recipes-support/wireshark/files/0001-UseLemon.cmake-do-not-use-lemon-data-from-the-host.patch32
-rw-r--r--meta-networking/recipes-support/wireshark/files/0001-wireshark-src-improve-reproducibility.patch28
-rw-r--r--meta-networking/recipes-support/wireshark/files/0002-flex-Remove-line-directives.patch44
-rw-r--r--meta-networking/recipes-support/wireshark/files/0004-lemon-Remove-line-directives.patch35
-rw-r--r--meta-networking/recipes-support/wireshark/wireshark_4.2.4.bb (renamed from meta-networking/recipes-support/wireshark/wireshark_3.2.5.bb)51
6 files changed, 176 insertions, 18 deletions
diff --git a/meta-networking/recipes-support/wireshark/README b/meta-networking/recipes-support/wireshark/README
index 63b5b72631..f5e4d04777 100644
--- a/meta-networking/recipes-support/wireshark/README
+++ b/meta-networking/recipes-support/wireshark/README
@@ -14,12 +14,12 @@ Adding the wireshark to your build
========================================
via local.conf
-IMAGE_INSTALL_append = " wireshark"
+IMAGE_INSTALL:append = " wireshark"
Adding the wireshark to your graphical build
========================================
via local.conf
-IMAGE_INSTALL_append = " wireshark"
+IMAGE_INSTALL:append = " wireshark"
and one of:
diff --git a/meta-networking/recipes-support/wireshark/files/0001-UseLemon.cmake-do-not-use-lemon-data-from-the-host.patch b/meta-networking/recipes-support/wireshark/files/0001-UseLemon.cmake-do-not-use-lemon-data-from-the-host.patch
new file mode 100644
index 0000000000..1903f38f5d
--- /dev/null
+++ b/meta-networking/recipes-support/wireshark/files/0001-UseLemon.cmake-do-not-use-lemon-data-from-the-host.patch
@@ -0,0 +1,32 @@
+From 802d3cafa888b36aa72007d48232a010dbb0231d Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Wed, 27 Dec 2023 16:57:28 +0100
+Subject: [PATCH] UseLemon.cmake: do not use lemon data from the host
+
+We use native lemon, and not the host one, so
+the data should be taken from the source tree as well.
+
+Upstream-Status: Inappropriate [cross-specific]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ cmake/modules/UseLemon.cmake | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/cmake/modules/UseLemon.cmake b/cmake/modules/UseLemon.cmake
+index fa4034e..83a7ca3 100644
+--- a/cmake/modules/UseLemon.cmake
++++ b/cmake/modules/UseLemon.cmake
+@@ -13,11 +13,12 @@ if(LEMON_EXECUTABLE)
+ ${_out}.out
+ COMMAND ${LEMON_EXECUTABLE}
+ -l
+- -T/usr/share/lemon/lempar.c
++ -T${CMAKE_SOURCE_DIR}/tools/lemon/lempar.c
+ -d.
+ ${_in}
+ DEPENDS
+ ${_in}
++ ${CMAKE_SOURCE_DIR}/tools/lemon/lempar.c
+ )
+ endmacro()
+ add_custom_target(lemon)
diff --git a/meta-networking/recipes-support/wireshark/files/0001-wireshark-src-improve-reproducibility.patch b/meta-networking/recipes-support/wireshark/files/0001-wireshark-src-improve-reproducibility.patch
new file mode 100644
index 0000000000..202de62606
--- /dev/null
+++ b/meta-networking/recipes-support/wireshark/files/0001-wireshark-src-improve-reproducibility.patch
@@ -0,0 +1,28 @@
+From d9c4cdad0c48becab491ea4e80e5cd81f7d1dc97 Mon Sep 17 00:00:00 2001
+From: Oleksiy Obitotskyy <oobitots@cisco.com>
+Date: Thu, 26 Nov 2020 05:38:31 -0800
+Subject: [PATCH] wireshark-src: improve reproducibility
+
+Cut absolute path for filename in generated code
+comments.
+
+Upstream-Status: Pending
+Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
+
+---
+ tools/ncp2222.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tools/ncp2222.py b/tools/ncp2222.py
+index f14d0c5..05073b9 100755
+--- a/tools/ncp2222.py
++++ b/tools/ncp2222.py
+@@ -5891,7 +5891,7 @@ def produce_code():
+
+ print("/*")
+ print(" * Do not modify this file. Changes will be overwritten.")
+- print(" * Generated automatically from %s" % (sys.argv[0]))
++ print(" * Generated automatically from %s" % (os.path.basename(sys.argv[0])))
+ print(" */\n")
+
+ print("""
diff --git a/meta-networking/recipes-support/wireshark/files/0002-flex-Remove-line-directives.patch b/meta-networking/recipes-support/wireshark/files/0002-flex-Remove-line-directives.patch
new file mode 100644
index 0000000000..0e6249c939
--- /dev/null
+++ b/meta-networking/recipes-support/wireshark/files/0002-flex-Remove-line-directives.patch
@@ -0,0 +1,44 @@
+From e4e88c2f55286cf24af230b265d0e059363baa6c Mon Sep 17 00:00:00 2001
+From: Oleksiy Obitotskyy <oobitots@cisco.com>
+Date: Thu, 26 Nov 2020 12:00:43 -0800
+Subject: [PATCH] flex: Remove #line directives
+
+Append --noline option to flex to not
+generate #line directives with absolute file patch.
+
+Upstream-Status: Pending
+Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
+
+---
+ cmake/modules/FindLEX.cmake | 18 +++++++++++++-----
+ 1 file changed, 13 insertions(+), 5 deletions(-)
+
+diff --git a/cmake/modules/FindLEX.cmake b/cmake/modules/FindLEX.cmake
+index 20caa09..174f452 100644
+--- a/cmake/modules/FindLEX.cmake
++++ b/cmake/modules/FindLEX.cmake
+@@ -32,11 +32,19 @@ MACRO(ADD_LEX_FILES _source _generated)
+ SET(_outc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.c)
+ SET(_outh ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_lex.h)
+
+- ADD_CUSTOM_COMMAND(
+- OUTPUT ${_outc} ${_outh}
+- COMMAND ${LEX_EXECUTABLE} $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:--debug> -o${_outc} --header-file=${_outh} ${_in}
+- DEPENDS ${_in}
+- )
++ IF (DEFINED ENV{SOURCE_DATE_EPOCH})
++ ADD_CUSTOM_COMMAND(
++ OUTPUT ${_outc} ${_outh}
++ COMMAND ${LEX_EXECUTABLE} $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:--debug> --noline -o${_outc} --header-file=${_outh} ${_in}
++ DEPENDS ${_in}
++ )
++ ELSE ()
++ ADD_CUSTOM_COMMAND(
++ OUTPUT ${_outc} ${_outh}
++ COMMAND ${LEX_EXECUTABLE} $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:--debug> -o${_outc} --header-file=${_outh} ${_in}
++ DEPENDS ${_in}
++ )
++ ENDIF ()
+ LIST(APPEND ${_source} ${_in})
+ LIST(APPEND ${_generated} ${_outc})
+ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
diff --git a/meta-networking/recipes-support/wireshark/files/0004-lemon-Remove-line-directives.patch b/meta-networking/recipes-support/wireshark/files/0004-lemon-Remove-line-directives.patch
new file mode 100644
index 0000000000..1a6fe8d39e
--- /dev/null
+++ b/meta-networking/recipes-support/wireshark/files/0004-lemon-Remove-line-directives.patch
@@ -0,0 +1,35 @@
+From 94b951c0cccf67b66749cc87c473e63fa5207e83 Mon Sep 17 00:00:00 2001
+From: Oleksiy Obitotskyy <oobitots@cisco.com>
+Date: Wed, 27 Jan 2021 06:47:13 -0800
+Subject: [PATCH] lemon: Remove #line directives
+
+In case of reproducible build remove #line
+directives with extra option '-l'.
+
+Upstream-Status: Pending
+Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
+
+---
+ cmake/modules/UseLemon.cmake | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/cmake/modules/UseLemon.cmake b/cmake/modules/UseLemon.cmake
+index e419de1..fa4034e 100644
+--- a/cmake/modules/UseLemon.cmake
++++ b/cmake/modules/UseLemon.cmake
+@@ -12,6 +12,7 @@ if(LEMON_EXECUTABLE)
+ ${_out}.h
+ ${_out}.out
+ COMMAND ${LEMON_EXECUTABLE}
++ -l
+ -T/usr/share/lemon/lempar.c
+ -d.
+ ${_in}
+@@ -30,6 +31,7 @@ else()
+ ${_out}.h
+ ${_out}.out
+ COMMAND $<TARGET_FILE:lemon>
++ -l
+ -T${CMAKE_SOURCE_DIR}/tools/lemon/lempar.c
+ -d.
+ ${_in}
diff --git a/meta-networking/recipes-support/wireshark/wireshark_3.2.5.bb b/meta-networking/recipes-support/wireshark/wireshark_4.2.4.bb
index a6c09d47ba..95db2efc4c 100644
--- a/meta-networking/recipes-support/wireshark/wireshark_3.2.5.bb
+++ b/meta-networking/recipes-support/wireshark/wireshark_4.2.4.bb
@@ -1,26 +1,31 @@
DESCRIPTION = "wireshark - a popular network protocol analyzer"
HOMEPAGE = "http://www.wireshark.org"
SECTION = "net"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6e271234ba1a13c6e512e76b94ac2f77"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-DEPENDS = "pcre expat glib-2.0 glib-2.0-native libgcrypt libgpg-error libxml2 bison-native"
+DEPENDS = "pcre2 expat glib-2.0 glib-2.0-native libgcrypt libgpg-error libxml2 bison-native c-ares speexdsp"
-DEPENDS_append_class-target = " wireshark-native chrpath-replacement-native "
+DEPENDS:append:class-target = " wireshark-native chrpath-replacement-native "
-SRC_URI = "https://1.eu.dl.wireshark.org/src/all-versions/wireshark-${PV}.tar.xz"
+SRC_URI = "https://1.eu.dl.wireshark.org/src/wireshark-${PV}.tar.xz \
+ file://0001-wireshark-src-improve-reproducibility.patch \
+ file://0002-flex-Remove-line-directives.patch \
+ file://0004-lemon-Remove-line-directives.patch \
+ file://0001-UseLemon.cmake-do-not-use-lemon-data-from-the-host.patch \
+ "
UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src"
-SRC_URI[sha256sum] = "bd89052a5766cce08b1090df49628567e48cdd24bbaa47667c851bac6aaac940"
+SRC_URI[sha256sum] = "46bd0f4474337144b30816fb2d8f14e72a26d0391f24fe0b7b619acdcdad8c0c"
PE = "1"
-inherit cmake pkgconfig python3native perlnative upstream-version-is-even mime mime-xdg
+inherit cmake pkgconfig python3native python3targetconfig perlnative upstream-version-is-even mime mime-xdg
PACKAGECONFIG ?= "libpcap gnutls libnl libcap sbc"
-PACKAGECONFIG_class-native = "libpcap gnutls ssl libssh"
+PACKAGECONFIG:class-native = "libpcap gnutls ssl libssh"
PACKAGECONFIG[libcap] = "-DENABLE_CAP=ON,-DENABLE_CAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON, libcap"
PACKAGECONFIG[libpcap] = "-DENABLE_PCAP=ON,-DENABLE_PCAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON , libpcap"
@@ -35,11 +40,12 @@ PACKAGECONFIG[zlib] = "-DENABLE_ZLIB=ON,-DENABLE_ZLIB=OFF, zlib"
PACKAGECONFIG[geoip] = ",, geoip"
PACKAGECONFIG[plugins] = "-DENABLE_PLUGINS=ON,-DENABLE_PLUGINS=OFF"
PACKAGECONFIG[sbc] = "-DENABLE_SBC=ON,-DENABLE_SBC=OFF, sbc"
-PACKAGECONFIG[libssh] = ",,libssh2"
+PACKAGECONFIG[libssh] = "-DENABLE_LIBSSH=ON,-DENABLE_LIBSSH=OFF, libssh2"
PACKAGECONFIG[lz4] = "-DENABLE_LZ4=ON,-DENABLE_LZ4=OFF, lz4"
+PACKAGECONFIG[zstd] = "-DENABLE_STTD=ON,-DENABLE_ZSTD=OFF, zstd"
+PACKAGECONFIG[nghttp2] = "-DENABLE_NGHTTP2=ON,-DENABLE_NGHTTP2=OFF, nghttp2"
# these next two options require addional layers
-PACKAGECONFIG[c-ares] = "-DENABLE_CARES=ON,-DENABLE_CARES=OFF, c-ares"
PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON -DBUILD_wireshark=ON, -DENABLE_QT5=OFF -DBUILD_wireshark=OFF, qttools-native qtmultimedia qtsvg"
inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt5', 'cmake_qt5', '', d)}
@@ -52,9 +58,19 @@ EXTRA_OECMAKE += "-DENABLE_NETLINK=ON \
-DM_INCLUDE_DIR=${includedir} \
-DM_LIBRARY=${libdir} \
"
-CFLAGS_append = " -lm"
+CFLAGS:append = " -lm"
+
+do_compile:append:class-target() {
+ # Fix TMPDIR, these are in the comments section
+ sed -i -e "s:** source file.*::g" ${B}/wiretap/ascend_parser.c
+ sed -i -e "s:** source file.*::g" ${B}/wiretap/candump_parser.c
+ sed -i -e "s:** source file.*::g" ${B}/wiretap/busmaster_parser.c
+ sed -i -e "s:** source file.*::g" ${B}/epan/protobuf_lang_parser.c
+ sed -i -e "s:** source file.*::g" ${B}/epan/dtd_grammar.c
+ sed -i -e "s:** source file.*::g" ${B}/epan/dfilter/grammar.c
+}
-do_install_append_class-native() {
+do_install:append:class-native() {
install -d ${D}${bindir}
for f in lemon
do
@@ -62,19 +78,22 @@ do_install_append_class-native() {
done
}
-do_install_append_class-target() {
+do_install:append:class-target() {
for f in `find ${D}${libdir} ${D}${bindir} -type f -executable`
do
chrpath --delete $f
done
+
+ # We don't need the cmake files installed
+ rm -fr ${D}${usrlib}/${BPN}/cmake
}
PACKAGE_BEFORE_PN += "tshark"
-FILES_tshark = "${bindir}/tshark ${mandir}/man1/tshark.*"
+FILES:tshark = "${bindir}/tshark ${mandir}/man1/tshark.*"
-FILES_${PN} += "${datadir}*"
+FILES:${PN} += "${datadir}*"
-RDEPENDS_tshark = "wireshark"
+RDEPENDS:tshark = "wireshark"
BBCLASSEXTEND = "native"