summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick McLean <chutzpah@gentoo.org>2023-04-12 16:31:02 -0700
committerPatrick McLean <chutzpah@gentoo.org>2023-04-12 16:31:35 -0700
commitd2993133f11e0b2aaad9d74a15a337ef27a8538d (patch)
treec862bac41d4de123b7320365b4605a394f34dfce
parentnet-libs/gupnp-igd: Version bump to 1.6.0 (diff)
downloadgentoo-d2993133f11e0b2aaad9d74a15a337ef27a8538d.tar.gz
gentoo-d2993133f11e0b2aaad9d74a15a337ef27a8538d.tar.bz2
gentoo-d2993133f11e0b2aaad9d74a15a337ef27a8538d.zip
dev-util/bpftrace: Fix invalid LLVM dep (bug #902161)
Closes: https://bugs.gentoo.org/902161 Signed-off-by: Patrick McLean <chutzpah@gentoo.org>
-rw-r--r--dev-util/bpftrace/bpftrace-0.17.0-r4.ebuild97
1 files changed, 97 insertions, 0 deletions
diff --git a/dev-util/bpftrace/bpftrace-0.17.0-r4.ebuild b/dev-util/bpftrace/bpftrace-0.17.0-r4.ebuild
new file mode 100644
index 000000000000..21b7e21bf0fd
--- /dev/null
+++ b/dev-util/bpftrace/bpftrace-0.17.0-r4.ebuild
@@ -0,0 +1,97 @@
+# Copyright 2019-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_MAX_SLOT=16
+
+inherit llvm linux-info cmake
+
+DESCRIPTION="High-level tracing language for eBPF"
+HOMEPAGE="https://github.com/iovisor/bpftrace"
+MY_PV="${PV//_/}"
+SRC_URI="https://github.com/iovisor/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${PN}-${MY_PV:-${PV}}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+# remove keywords until build works:
+# https://github.com/iovisor/bpftrace/issues/2349
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="fuzzing test"
+
+# lots of fixing needed
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-libs/libbpf-1.1:=
+ >=dev-util/bcc-0.25.0:=
+ >=sys-devel/llvm-10[llvm_targets_BPF(+)]
+ >=sys-devel/clang-10
+ <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=
+ <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)):=[llvm_targets_BPF(+)]
+ sys-libs/binutils-libs:=
+ virtual/libelf:=
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ dev-libs/cereal:=
+ test? ( dev-cpp/gtest )
+"
+BDEPEND="
+ app-arch/xz-utils
+ sys-devel/flex
+ sys-devel/bison
+ virtual/pkgconfig
+"
+
+QA_DT_NEEDED="
+ /usr/lib.*/libbpftraceresources.so
+ /usr/lib.*/libcxxdemangler_llvm.so
+"
+
+PATCHES=(
+ "${FILESDIR}/bpftrace-0.17.0-install-libs.patch"
+ "${FILESDIR}/bpftrace-0.15.0-dont-compress-man.patch"
+ "${FILESDIR}/bpftrace-0.11.4-old-kernels.patch"
+ "${FILESDIR}/bpftrace-0.17.0-llvm-16.patch"
+ "${FILESDIR}/bpftrace-0.17.0-use-std-optional.patch"
+)
+
+pkg_pretend() {
+ local CONFIG_CHECK="
+ ~BPF
+ ~BPF_EVENTS
+ ~BPF_JIT
+ ~BPF_SYSCALL
+ ~FTRACE_SYSCALLS
+ ~HAVE_EBPF_JIT
+ "
+
+ check_extra_config
+}
+
+pkg_setup() {
+ llvm_pkg_setup
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DSTATIC_LINKING:BOOL=OFF
+ # bug 809362, 754648
+ -DBUILD_TESTING:BOOL=$(usex test)
+ -DBUILD_FUZZ:BOOL=$(usex fuzzing)
+ -DENABLE_MAN:BOOL=OFF
+ -DUSE_SYSTEM_BPF_BCC:BOOL=ON
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ # bug 809362
+ dostrip -x /usr/bin/bpftrace
+ doman man/man8/*.?
+}