commit: ff14aaada5967ae3479093287cb48b2b0cbe5725 Author: Holger Hoffstätte <holger <AT> applied-asynchrony <DOT> com> AuthorDate: Wed Mar 26 18:50:25 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Thu Mar 27 11:48:08 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff14aaad
dev-debug/bpftrace: add 0.23.0 This release preemptively drops support for USE=lldb, which has been removed upstream. It also adopts blazesym for address symbolization and adds support for LLVM-20. Closes: https://bugs.gentoo.org/952001 Signed-off-by: Holger Hoffstätte <holger <AT> applied-asynchrony.com> Closes: https://github.com/gentoo/gentoo/pull/41312 Signed-off-by: Sam James <sam <AT> gentoo.org> dev-debug/bpftrace/Manifest | 2 + dev-debug/bpftrace/bpftrace-0.23.0.ebuild | 109 ++++++++++++++++++++++++++++++ 2 files changed, 111 insertions(+) diff --git a/dev-debug/bpftrace/Manifest b/dev-debug/bpftrace/Manifest index 05f6fece327d..b81910693b11 100644 --- a/dev-debug/bpftrace/Manifest +++ b/dev-debug/bpftrace/Manifest @@ -6,3 +6,5 @@ DIST bpftrace-0.22.0-man.gh.tar.xz 76028 BLAKE2B ac061b0b380aada39d4cddf442daf1c DIST bpftrace-0.22.0.gh.tar.gz 1125284 BLAKE2B 03e15555e405b2367e96553d975405ab5c25db28aa1685fb05cecd101995ee7b90801baee4a58c462093293c239b8e76dbd0e7a0abbe714a3fa123d30021264e SHA512 fd566191c0d1e2e7e9ebf08c9b983a6db41ab230e2a99bc14b1af5afe2ace3172f8d60bd158d288ac52a254158f8535cd2296d36107d8f2b7149b6045f8f2984 DIST bpftrace-0.22.1-man.gh.tar.xz 76024 BLAKE2B 8e3764b38b62dac271a941fd224155b72eb32872415734d734e36a77f709ea190639d009280f5bc671ba527981b1a735dd511ad9cb3e3e83869b74303df5b684 SHA512 165486401e985edbffd2c424093c067c5ef2930faadaead6ca26e090650724ea501494de7a6f6e4f55869dafc18ea0b0f3ecb8f434b299beee400a022f21dd31 DIST bpftrace-0.22.1.gh.tar.gz 1125892 BLAKE2B e694f3da7947458ffc1db755e18dfd6be7664fae5573c04cddbc8db802391e834f241827f2be93a981055b26fb13128f88878d1aa17f50420227c7e8b93bd59d SHA512 3bf00f97750092e66bd94b20b3889f29e932f45ae7f75966f1f364013fb9aeaad837617c0a28402fd9323d62773dd3dab0e9749d8dcb9da9c77093f17fce4d91 +DIST bpftrace-0.23.0-man.tar.xz 76040 BLAKE2B 040ae555d2e934571d5f05d55947b0a57fce41cb59e9f936430218a7b6bf0319a2b7d09b78ec68d2f3078b77d5434c11235a181833be9057943c2536993ae4bd SHA512 397e697bfdbd4163bc500373adf0f61cd9c30cb41336bfdf24eb846bbc86ae0aabb265719e6fcb2d0261e52d75eacd8b7b08d91f5e616e1d5a6ef2a3829a9f1b +DIST bpftrace-0.23.0.tar.gz 1170815 BLAKE2B 4f30e2db142c2e0684ca1a69d8d2ab30fbf47171971d08bdc48a6d21d2536e6a732391231c6e4d1ce9bf473f89ebc54e796d828d6e1a29c276d539170723e934 SHA512 822cd0a86729e32691705d1a191c86d9b314e8161085621d778559603477432914f1221a94680f1eb37c5c4c2ae7e774044d1daba4704c93d0b812596726c564 diff --git a/dev-debug/bpftrace/bpftrace-0.23.0.ebuild b/dev-debug/bpftrace/bpftrace-0.23.0.ebuild new file mode 100644 index 000000000000..826360e218d6 --- /dev/null +++ b/dev-debug/bpftrace/bpftrace-0.23.0.ebuild @@ -0,0 +1,109 @@ +# Copyright 2019-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( {16..20} ) + +inherit cmake linux-info llvm-r1 + +DESCRIPTION="High-level tracing language for eBPF" +HOMEPAGE="https://github.com/bpftrace/bpftrace" +MY_PV="${PV//_/}" +# the man page version may trail the release +#MAN_V="0.22.0" +SRC_URI=" + https://github.com/bpftrace/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz + https://github.com/bpftrace/${PN}/releases/download/v${MAN_V:-${PV}}/man.tar.xz -> ${PN}-${MAN_V:-${PV}}-man.tar.xz +" +S="${WORKDIR}/${PN}-${MY_PV:-${PV}}" + +LICENSE="Apache-2.0" +SLOT="0" + +KEYWORDS="~amd64" +IUSE="pcap test systemd" + +# lots of fixing needed +RESTRICT="test" + +RDEPEND=" + >=dev-libs/libbpf-1.5:= + >=dev-util/bcc-0.25.0:= + $(llvm_gen_dep ' + llvm-core/clang:${LLVM_SLOT}= + llvm-core/llvm:${LLVM_SLOT}=[llvm_targets_BPF(+)] + ') + sys-process/procps + sys-libs/binutils-libs:= + virtual/libelf:= + systemd? ( sys-apps/systemd:= ) + pcap? ( net-libs/libpcap:= ) +" +DEPEND=" + ${RDEPEND} + dev-libs/cereal:= + test? ( dev-cpp/gtest ) +" +BDEPEND=" + app-arch/xz-utils + app-alternatives/lex + app-alternatives/yacc + dev-libs/cereal + test? ( + app-editors/vim-core + dev-util/pahole + ) + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/bpftrace-0.11.4-old-kernels.patch" + "${FILESDIR}/bpftrace-0.21.0-dont-compress-man.patch" +) + +pkg_pretend() { + local CONFIG_CHECK=" + ~BPF + ~BPF_EVENTS + ~BPF_JIT + ~BPF_SYSCALL + ~FTRACE_SYSCALLS + ~HAVE_EBPF_JIT + " + + check_extra_config +} + +src_prepare() { + # 0.23 still has LLDB support, but apparently it's problematic, + # deprecated and already gone on master. + # Remove the configuration check. + sed -i "/find_package(LLDB)/d" CMakeLists.txt || die + + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + # DO NOT build the internal libs as shared + -DBUILD_SHARED_LIBS=OFF + # DO dynamically link the bpftrace executable + -DSTATIC_LINKING:BOOL=OFF + # bug 809362, 754648 + -DBUILD_TESTING:BOOL=$(usex test) + -DBUILD_FUZZ:BOOL=OFF + -DENABLE_MAN:BOOL=OFF + -DENABLE_SYSTEMD:BOOL=$(usex systemd) + -DENABLE_SKB_OUTPUT:BOOL=$(usex pcap) + ) + + cmake_src_configure +} + +src_install() { + cmake_src_install + doman man/man8/*.? + gunzip "${WORKDIR}/man/man8/bpftrace.8.gz" || die + doman "${WORKDIR}/man/man8/bpftrace.8" +}
