summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHolger Hoffstätte <holger@applied-asynchrony.com>2025-12-05 07:47:53 +0100
committerSam James <sam@gentoo.org>2025-12-05 07:33:22 +0000
commita404a5f3fbb28eb59c523db63554128a2c493fb7 (patch)
tree3e7d7e8cc39c000554047ccf3b89357bd7125927
parentf41601f43ecb0e61effea07e7419cb2936fe6e32 (diff)
downloadgentoo-a404a5f3fbb28eb59c523db63554128a2c493fb7.tar.gz
gentoo-a404a5f3fbb28eb59c523db63554128a2c493fb7.tar.bz2
gentoo-a404a5f3fbb28eb59c523db63554128a2c493fb7.zip
net-libs/xdp-tools: add 1.5.8
Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com> Part-of: https://github.com/gentoo/gentoo/pull/44910 Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r--net-libs/xdp-tools/Manifest1
-rw-r--r--net-libs/xdp-tools/xdp-tools-1.5.8.ebuild97
2 files changed, 98 insertions, 0 deletions
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
+}