net-libs/xdp-tools: add 1.5.6

Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com>
Closes: https://github.com/gentoo/gentoo/pull/43452
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
This commit is contained in:
Holger Hoffstätte
2025-08-15 11:22:39 +02:00
committed by Arthur Zamarin
parent 4739347a44
commit f6eb408021
2 changed files with 97 additions and 0 deletions

View File

@@ -1,2 +1,3 @@
DIST xdp-tools-1.5.3.tar.gz 354019 BLAKE2B 5eb7eede34dc502301119d7c79f0a68b0dca6a72fb99e493eb581d1f6bece72059b063326de8ea9e6f25aeeadbceb28b8ecbd6a62201688c934a9645864cb0b5 SHA512 28539a11abdbb56682b98524bbec76bd097df1f4c1f1657cca7b776217f34cc18b97de0bb3b0f191659b5d0496917b1ec03d8c496587909cd0b47b8195c2add8
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

View File

@@ -0,0 +1,96 @@
# 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"
DEPEND="
dev-libs/libbpf:=
net-libs/libpcap
sys-libs/zlib
virtual/libelf
"
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_test() { :; }
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
}