summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuilherme Amadio <amadio@gentoo.org>2024-01-30 16:04:56 +0100
committerGuilherme Amadio <amadio@gentoo.org>2024-01-30 16:25:34 +0100
commit70d3e0e2fd20857968ba3ea7ddbf9292144b22ed (patch)
tree6f3ce84d1afb603e6bd173a638fd4f6a5b1d1db4 /dev-util/perf
parentsci-physics/root: drop 6.28.10-r1 (diff)
downloadgentoo-70d3e0e2fd20857968ba3ea7ddbf9292144b22ed.tar.gz
gentoo-70d3e0e2fd20857968ba3ea7ddbf9292144b22ed.tar.bz2
gentoo-70d3e0e2fd20857968ba3ea7ddbf9292144b22ed.zip
dev-util/perf: fix bugs #917559 and #921197
Closes: https://bugs.gentoo.org/917559 Closes: https://bugs.gentoo.org/921197 Co-authored-by: Peter Volkov <peter.volkov@gmail.com> Signed-off-by: Guilherme Amadio <amadio@gentoo.org>
Diffstat (limited to 'dev-util/perf')
-rw-r--r--dev-util/perf/files/perf-6.7-expr.patch24
-rw-r--r--dev-util/perf/perf-6.7.ebuild33
2 files changed, 41 insertions, 16 deletions
diff --git a/dev-util/perf/files/perf-6.7-expr.patch b/dev-util/perf/files/perf-6.7-expr.patch
new file mode 100644
index 000000000000..84f90c9b9008
--- /dev/null
+++ b/dev-util/perf/files/perf-6.7-expr.patch
@@ -0,0 +1,24 @@
+Ensure versions of libtraceevent and libtracefs have 3 components.
+
+Fixes: https://bugs.gentoo.org/917559
+
+--- a/tools/perf/Makefile.config
++++ b/tools/perf/Makefile.config
+@@ -1163,7 +1163,7 @@ ifneq ($(NO_LIBTRACEEVENT),1)
+ ifeq ($(feature-libtraceevent), 1)
+ CFLAGS += -DHAVE_LIBTRACEEVENT
+ EXTLIBS += -ltraceevent
+- LIBTRACEEVENT_VERSION := $(shell $(PKG_CONFIG) --modversion libtraceevent)
++ LIBTRACEEVENT_VERSION := $(shell $(PKG_CONFIG) --modversion libtraceevent).0
+ LIBTRACEEVENT_VERSION_1 := $(word 1, $(subst ., ,$(LIBTRACEEVENT_VERSION)))
+ LIBTRACEEVENT_VERSION_2 := $(word 2, $(subst ., ,$(LIBTRACEEVENT_VERSION)))
+ LIBTRACEEVENT_VERSION_3 := $(word 3, $(subst ., ,$(LIBTRACEEVENT_VERSION)))
+@@ -1177,7 +1177,7 @@ ifneq ($(NO_LIBTRACEEVENT),1)
+ $(call feature_check,libtracefs)
+ ifeq ($(feature-libtracefs), 1)
+ EXTLIBS += -ltracefs
+- LIBTRACEFS_VERSION := $(shell $(PKG_CONFIG) --modversion libtracefs)
++ LIBTRACEFS_VERSION := $(shell $(PKG_CONFIG) --modversion libtracefs).0
+ LIBTRACEFS_VERSION_1 := $(word 1, $(subst ., ,$(LIBTRACEFS_VERSION)))
+ LIBTRACEFS_VERSION_2 := $(word 2, $(subst ., ,$(LIBTRACEFS_VERSION)))
+ LIBTRACEFS_VERSION_3 := $(word 3, $(subst ., ,$(LIBTRACEFS_VERSION)))
diff --git a/dev-util/perf/perf-6.7.ebuild b/dev-util/perf/perf-6.7.ebuild
index 45ad2f3ededd..cc5b677f7e20 100644
--- a/dev-util/perf/perf-6.7.ebuild
+++ b/dev-util/perf/perf-6.7.ebuild
@@ -56,7 +56,7 @@ BDEPEND="
RDEPEND="
audit? ( sys-process/audit )
- babeltrace? ( dev-util/babeltrace )
+ babeltrace? ( dev-util/babeltrace:0/1 )
bpf? (
dev-libs/libbpf
dev-util/bpftool
@@ -95,20 +95,6 @@ DEPEND="${RDEPEND}
S_K="${WORKDIR}/linux-${LINUX_VER}"
S="${S_K}/tools/perf"
-CONFIG_CHECK="
- ~DEBUG_INFO
- ~FTRACE
- ~FTRACE_SYSCALLS
- ~FUNCTION_TRACER
- ~KALLSYMS
- ~KALLSYMS_ALL
- ~KPROBES
- ~KPROBE_EVENTS
- ~PERF_EVENTS
- ~UPROBES
- ~UPROBE_EVENTS
-"
-
QA_FLAGS_IGNORED=(
'usr/bin/perf-read-vdso32' # not linked with anything except for libc
'usr/libexec/perf-core/dlfilters/.*' # plugins
@@ -123,6 +109,20 @@ pkg_pretend() {
}
pkg_setup() {
+ local CONFIG_CHECK="
+ ~DEBUG_INFO
+ ~FTRACE
+ ~FTRACE_SYSCALLS
+ ~FUNCTION_TRACER
+ ~KALLSYMS
+ ~KALLSYMS_ALL
+ ~KPROBES
+ ~KPROBE_EVENTS
+ ~PERF_EVENTS
+ ~UPROBES
+ ~UPROBE_EVENTS
+ "
+
use bpf && llvm_pkg_setup
# We enable python unconditionally as libbpf always generates
# API headers using python script
@@ -140,7 +140,7 @@ pkg_setup() {
src_unpack() {
local paths=(
kernel/bpf tools/{arch,bpf,build,include,lib,perf,scripts}
- scripts include lib "arch/*/lib" arch/arm64/tools
+ scripts include lib "arch/*/lib" "arch/*/tools"
)
# We expect the tar implementation to support the -j option (both
@@ -176,6 +176,7 @@ src_prepare() {
pushd "${S_K}" >/dev/null || die
eapply "${FILESDIR}"/perf-6.4-libtracefs.patch
+ eapply "${FILESDIR}"/perf-6.7-expr.patch
popd || die
# Drop some upstream too-developer-oriented flags and fix the