From 1986109d7d282c0c34928fa7354d3d4c1b7baa3b Mon Sep 17 00:00:00 2001 From: Seung-Woo Kim Date: Tue, 15 Nov 2022 13:32:16 +0900 Subject: [PATCH] packaging: add perf package for perf tool and traceevent plugins Add perf package for perf tool and its traceevent plugins. Note: they are built from below directories. - perf: tools/perf - traceevent plugins: tools/lib/traceevent Change-Id: Ia154b6fd85dbc65f2ca3c5af018cc86cd6061f9d Signed-off-by: Seung-Woo Kim --- packaging/linux-rpi4.spec | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/packaging/linux-rpi4.spec b/packaging/linux-rpi4.spec index 6092bfb..07ab10d 100644 --- a/packaging/linux-rpi4.spec +++ b/packaging/linux-rpi4.spec @@ -30,6 +30,13 @@ BuildRequires: module-init-tools BuildRequires: bison BuildRequires: flex BuildRequires: libopenssl1.1-devel +BuildRequires: libunwind-devel +BuildRequires: libdw-devel +BuildRequires: libelf-devel +BuildRequires: elfutils +BuildRequires: xz-devel +BuildRequires: binutils-devel +BuildRequires: python3 BuildRequires: rsync %description @@ -111,6 +118,15 @@ This package provides userspaces headers from the Linux kernel. These headers are used by the installed headers for GNU glibc and other system libraries. +%package -n linux-kernel-perf +Summary: The perf performance counter tool +Group: System/Kernel +Provides: perf = %{version} + +%description -n linux-kernel-perf +This package provides the "perf" tool that can be used to monitor performance +counter events as well as various kernel internal events. + %prep %setup -q @@ -128,6 +144,10 @@ for target in %{variant} %{variant}-rt; do case $target in %{variant}) make O=build/${target} %{config_name} %{?_smp_mflags} + + # Build perf + make O=build/${target} -s -C tools/lib/traceevent %{?_smp_mflags} + make O=build/${target} -s -C tools/perf EXTRA_CFLAGS="-fPIE -rdynamic" %{?_smp_mflags} ;; %{variant}-rt) cat _localversion-rt > localversion-rt @@ -183,6 +203,14 @@ for target in %{variant} %{variant}-rt; do %else install -m 644 build/${target}/arch/%{buildarch}/boot/zImage %{buildroot}/boot/zImage %endif + + # Install perf + make O=build/${target} -s -C tools/perf EXTRA_CFLAGS="-fPIE -rdynamic" DESTDIR=%{buildroot}/usr install + rm -rf %{buildroot}/usr/etc + rm -rf %{buildroot}/usr/lib/debug + rm -rf %{buildroot}/usr/lib/perf + rm -rf %{buildroot}/usr/share + ;; %{variant}-rt) %ifarch aarch64 @@ -292,3 +320,9 @@ mv /boot/zImage /boot/zImage_rt %files -n %{variant}-linux-kernel-headers /usr/include/* + +%files -n linux-kernel-perf +%license COPYING +/usr/bin/* +/usr/libexec/* +/usr/lib/traceevent/* -- 2.7.4