From a404a5f3fbb28eb59c523db63554128a2c493fb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Holger=20Hoffst=C3=A4tte?= Date: Fri, 5 Dec 2025 07:47:53 +0100 Subject: net-libs/xdp-tools: add 1.5.8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Holger Hoffstätte Part-of: https://github.com/gentoo/gentoo/pull/44910 Signed-off-by: Sam James --- net-libs/xdp-tools/Manifest | 1 + net-libs/xdp-tools/xdp-tools-1.5.8.ebuild | 97 +++++++++++++++++++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 net-libs/xdp-tools/xdp-tools-1.5.8.ebuild diff --git a/net-libs/xdp-tools/Manifest b/net-libs/xdp-tools/Manifest index 66072ba24f1d..7b3e8592b028 100644 --- a/net-libs/xdp-tools/Manifest +++ b/net-libs/xdp-tools/Manifest @@ -2,3 +2,4 @@ DIST xdp-tools-1.5.3.tar.gz 354019 BLAKE2B 5eb7eede34dc502301119d7c79f0a68b0dca6 DIST xdp-tools-1.5.4.tar.gz 353692 BLAKE2B f4b3e2698fecf695ee16fce4245a1e27cddef7e17e7f48510fa395c5143bed731421a87a1a44ddad98b4943eca6c4f53cbe0617336da52de0f1567d6170d6ac2 SHA512 a43f3446638638cc66508a916d4f8a44597f9b9d09083874924a6cc53d3314eadff6b0a8cf23ac66a74bceb766f5fc6c69a88d95aee4065441ce91b66ab9a4e8 DIST xdp-tools-1.5.6.tar.gz 355790 BLAKE2B cfff31b91c4e766821945b7a1be7546fa896c677f25808b4ff3f0587bf424bedf8b997fc0622a877e852032857e3246fb4c41dcd138aa63778438487d0e461a7 SHA512 20a8fa0bf397e66c6f65e095ad95701d96b1ee34303e62741b523fcc9dddbe0bd7d5e86b3f620766e81265a9986180f2de7a61fee80861bf6d944311a63a2526 DIST xdp-tools-1.5.7.tar.gz 358429 BLAKE2B 15e2fb9efc50415fbf08302ae9d9f5b2f4680e8320a5a64f13b22f817aa641b8c481d959e5c5e2e1c574dd4508b4eb1805c9ac3ba79d7c711200acf1e1941d96 SHA512 5c23d6cae8faa2a30293f5078341bf87c4a20bb69df2efa3ef511f3550668710dde8b121d6fbefd98ab7712ad145aace297a54d741d1ebc0775ecc00e9d1687b +DIST xdp-tools-1.5.8.tar.gz 358654 BLAKE2B 600c43bf78a4cd5874deefe125d65e96a84ebcafdb7ddf97efda73857aba85eb94ea324e0f8f62e637bff435358c6d354c5c839d7e0fecd4052b144075eaebea SHA512 e35d91fb947ec867ade292559afa2687d6f2490ddef87c93879db66b9397b298c94018dc4ba9dac1473e460a0225544e56835e9809601d1badbcd13d37ac918b diff --git a/net-libs/xdp-tools/xdp-tools-1.5.8.ebuild b/net-libs/xdp-tools/xdp-tools-1.5.8.ebuild new file mode 100644 index 000000000000..27f5f15f0161 --- /dev/null +++ b/net-libs/xdp-tools/xdp-tools-1.5.8.ebuild @@ -0,0 +1,97 @@ +# Copyright 2021-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic linux-info toolchain-funcs + +DESCRIPTION="The libxdp library and various tools for use with XDP" +HOMEPAGE="https://github.com/xdp-project/xdp-tools" +SRC_URI="https://github.com/xdp-project/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2 LGPL-2.1 BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="+tools" + +# tests require root privileges +RESTRICT+=" test" + +DEPEND=" + dev-libs/libbpf:= + net-libs/libpcap + virtual/libelf + virtual/zlib:= +" +RDEPEND="${DEPEND}" +BDEPEND=" + dev-util/bpftool + sys-apps/grep[pcre] + llvm-core/clang:*[llvm_targets_BPF] + sys-devel/m4 +" + +# Not prebuilt -- we build them -- but they're not ordinary ELF objects either. +QA_PREBUILT="usr/lib/bpf/*.o" + +MAKEOPTS+=" V=1" + +CONFIG_CHECK="~BPF ~BPF_JIT ~BPF_SYSCALL ~HAVE_EBPF_JIT ~XDP_SOCKETS ~XDP_SOCKETS_DIAG" + +src_prepare() { + # remove -Werror: #899744 + sed -i 's/-Werror//g' lib/Makefile lib/defines.mk || die + sed -i '/-Werror/d' lib/common.mk lib/libxdp/Makefile \ + lib/libxdp/tests/Makefile lib/util/Makefile || die + + default +} + +src_configure() { + # filter LTO: #861587 + filter-lto + + # filter LDFLAGS some more: #916591 + filter-ldflags -Wl,--{icf,lto}* + + export CC="$(tc-getCC)" + export PREFIX="${EPREFIX}/usr" + export LIBDIR="${PREFIX}/$(get_libdir)" + export BPF_OBJECT_DIR="${PREFIX}/lib/bpf" + export PRODUCTION=1 + export DYNAMIC_LIBXDP=1 + export FORCE_SYSTEM_LIBBPF=1 + + default +} + +src_install() { + default + + # To remove the scripts/testing files that are installed. + rm -r "${ED}/usr/share/xdp-tools" || die + # We can't control static archive generation yet. + rm "${ED}/usr/$(get_libdir)/libxdp.a" || die + + use tools || { rm "${ED}/usr/sbin"/* || die; } + + # These are ELF objects but BPF ones. + dostrip -x /usr/lib/bpf +} + +pkg_postinst() { + elog + elog "Many BPF utilities need access to a mounted bpffs virtual file system." + elog "Either mount it manually like this:" + elog + elog " mount bpffs /sys/fs/bpf -t bpf -o nosuid,nodev,noexec,relatime,mode=700" + elog + elog "or add the following line to your /etc/fstab to always mount it at boot time:" + elog + elog " bpffs /sys/fs/bpf bpf nosuid,nodev,noexec,relatime,mode=700 0 0" + elog + elog "You can verify that bpffs is mounted with:" + elog + elog " mount | grep /sys/fs/bpf" + elog +} -- cgit v1.2.3