summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHolger Hoffstätte <holger@applied-asynchrony.com>2024-01-30 18:46:20 +0100
committerSam James <sam@gentoo.org>2024-03-21 02:39:29 +0000
commit78ced104bc8343e704d716b42a6c8a20f2e8dfb7 (patch)
tree170016b8361d530eca56009d4a3dd5ad4237aca2 /net-libs
parentsys-process/minicoredumper: drop 2.0.1-r1 (diff)
downloadgentoo-78ced104bc8343e704d716b42a6c8a20f2e8dfb7.tar.gz
gentoo-78ced104bc8343e704d716b42a6c8a20f2e8dfb7.tar.bz2
gentoo-78ced104bc8343e704d716b42a6c8a20f2e8dfb7.zip
net-libs/xdp-tools: add 1.4.2
Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-libs')
-rw-r--r--net-libs/xdp-tools/Manifest2
-rw-r--r--net-libs/xdp-tools/xdp-tools-1.4.2.ebuild96
2 files changed, 97 insertions, 1 deletions
diff --git a/net-libs/xdp-tools/Manifest b/net-libs/xdp-tools/Manifest
index 5f1d1649aacb..dfdf3285fdf0 100644
--- a/net-libs/xdp-tools/Manifest
+++ b/net-libs/xdp-tools/Manifest
@@ -1,2 +1,2 @@
-DIST xdp-tools-1.4.0.tar.gz 337221 BLAKE2B 008dda0fcfd403e47ab2b8c801fc0a5c4e103fb3b9869f1d1bf5af258fc646dd5a0285d3126c012c9b81805408b9669da886b9fcf2fdf33b256f74bbf898222a SHA512 c17bd6e9e6e4cf59c33f4b9ae4e3e0434863d147abf80f87b425215261b96d4574898fa09cc2b201a427a5e9d49ad64d0c70e50e3f72e3a18c6fbdf7f4cd4a3a
DIST xdp-tools-1.4.1.tar.gz 339878 BLAKE2B 30ed245dd0da8404cf67313ea4d5f9a148507d14bd7330bdac3b03c07d1cc0b38eb1a376636551cb8ea14c8a2e77d02527da363733a1059e1c2ebaee9ac90392 SHA512 9d2ad42713aa53c10ccbde2c344bf2696524e317544f3693114b343ab74240187699c3802cfc6efa05b3e9f9bfec80fd2537799aa3ae050717bb1f6aab435996
+DIST xdp-tools-1.4.2.tar.gz 340864 BLAKE2B c5197330ff917043e03a16346823acab760db5fe903f2e039bd2c178ad34bb04d96a0d6b321fd3565256c39422f3f1f7b475970bd22ab487e30468c96e11c711 SHA512 aedf79859872523d514f18e7a6e8b7999bd1942021968dbba9a7e86cde1c193e31b328bc56d6bf2b3fbc7f266c9df8d942d90a70bbd9d514ce38d56c07cd18ca
diff --git a/net-libs/xdp-tools/xdp-tools-1.4.2.ebuild b/net-libs/xdp-tools/xdp-tools-1.4.2.ebuild
new file mode 100644
index 000000000000..6617263e054b
--- /dev/null
+++ b/net-libs/xdp-tools/xdp-tools-1.4.2.ebuild
@@ -0,0 +1,96 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic 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 ~ppc64 ~riscv ~x86"
+IUSE="+tools"
+
+DEPEND="
+ dev-libs/libbpf:=
+ dev-util/bpftool
+ net-libs/libpcap
+ sys-libs/zlib
+ virtual/libelf
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ sys-apps/grep[pcre]
+ >=sys-devel/clang-11.0.0
+"
+
+# Not prebuilt -- we build them -- but they're not ordinary ELF objects either.
+QA_PREBUILT="usr/lib/bpf/*.o"
+
+MAKEOPTS+=" V=1"
+
+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}*
+
+ # force ld.bfd: #916591
+ tc-ld-force-bfd
+
+ 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
+}