Compare commits
1 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| 8e6af58323 |
1
_component_files
Normal file
1
_component_files
Normal file
@@ -0,0 +1 @@
|
||||
COPYING CREDITS README tools include scripts Kbuild Makefile arch/*/{include,lib,tools,Makefile} lib kernel/bpf/disasm.[ch]
|
||||
7
_service
Normal file
7
_service
Normal file
@@ -0,0 +1,7 @@
|
||||
<services>
|
||||
<service name="kernel-source-component" mode="manual">
|
||||
<param name="repo">kerncvs.suse.de:/srv/git/kernel-source.git</param>
|
||||
</service>
|
||||
<service name="set_version" mode="manual">
|
||||
</service>
|
||||
</services>
|
||||
BIN
perf-6.12.0.git11197.4d40f30b8f.tar.gz
LFS
Normal file
BIN
perf-6.12.0.git11197.4d40f30b8f.tar.gz
LFS
Normal file
Binary file not shown.
19385
perf.changes
19385
perf.changes
File diff suppressed because it is too large
Load Diff
4
perf.obsinfo
Normal file
4
perf.obsinfo
Normal file
@@ -0,0 +1,4 @@
|
||||
name: perf
|
||||
version: 6.12.0.git11197.4d40f30b8f
|
||||
mtime: 1752621814
|
||||
commit: 4d40f30b8f2a5fd8a4b206df8df7ff5410cba608
|
||||
192
perf.spec
192
perf.spec
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package perf
|
||||
#
|
||||
# Copyright (c) 2025 SUSE LLC
|
||||
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -12,77 +12,68 @@
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
# A bug in dwz leaves temporary trace-*.debug.#dwz#.* on 64 bits in place
|
||||
# It was long ago fixed in OpenSUSE but somehow is now occuring on SLE15-SP6
|
||||
# https://sourceware.org/bugzilla/show_bug.cgi?id=26645
|
||||
# https://bugzilla.suse.com/show_bug.cgi?id=1180984
|
||||
|
||||
# perf does not link with LTO
|
||||
%define _lto_cflags %{nil}
|
||||
%define version %(rpm -q --qf '%%{VERSION}' kernel-source)
|
||||
%define version_pure %(echo %{version}|sed 's@\\([0-9]*\\)\\.\\([0-9]*\\).*@\\1\\2@')
|
||||
|
||||
%define _find_debuginfo_dwz_opts %{nil}
|
||||
|
||||
Name: perf
|
||||
Version: 6.12.0.git11197.4d40f30b8f
|
||||
Release: 0
|
||||
Summary: Performance Monitoring Tools for Linux
|
||||
License: GPL-2.0-only
|
||||
Group: Development/Tools/Debuggers
|
||||
Url: https://perf.wiki.kernel.org/
|
||||
Source0: %{name}-%{version}.tar.gz
|
||||
BuildRequires: asciidoc
|
||||
BuildRequires: audit-devel
|
||||
BuildRequires: binutils-devel
|
||||
BuildRequires: bison
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: flex
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: gtk2-devel
|
||||
BuildRequires: libdw-devel
|
||||
BuildRequires: libelf-devel
|
||||
BuildRequires: libtraceevent-devel
|
||||
BuildRequires: llvm
|
||||
BuildRequires: OpenCSD-devel
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: python3-setuptools
|
||||
BuildRequires: newt-devel
|
||||
BuildRequires: openssl-devel
|
||||
BuildRequires: xmlto
|
||||
BuildRequires: xz-devel
|
||||
BuildRequires: zlib-devel
|
||||
BuildRequires: rubygem(asciidoctor)
|
||||
|
||||
%ifarch aarch64 ia64 x86_64 ppc64 ppc64le ppc %sparc
|
||||
BuildRequires: libnuma-devel
|
||||
%endif
|
||||
|
||||
%ifarch s390x s390
|
||||
%define _perf_unwind NO_LIBUNWIND=1
|
||||
%else
|
||||
%define _perf_unwind %{nil}
|
||||
BuildRequires: libunwind-devel
|
||||
%endif
|
||||
%{?sle15_python_module_pythons}
|
||||
Name: perf
|
||||
Version: %{version}
|
||||
Release: 0
|
||||
Summary: Performance Monitoring Tools for Linux
|
||||
License: GPL-2.0-only
|
||||
Group: Development/Tools/Debuggers
|
||||
URL: https://perf.wiki.kernel.org/
|
||||
BuildRequires: OpenCSD-devel
|
||||
BuildRequires: audit-devel
|
||||
%ifnarch %{arm}
|
||||
BuildRequires: babeltrace-devel
|
||||
%endif
|
||||
BuildRequires: binutils-devel
|
||||
BuildRequires: bison
|
||||
BuildRequires: clang
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: flex
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: gtk2-devel
|
||||
BuildRequires: kernel-source >= 2.6.31
|
||||
BuildRequires: libcap-devel
|
||||
# Debuginfod integration has major issues: boo#1213785
|
||||
#BuildRequires: libdebuginfod-devel
|
||||
BuildRequires: libdw-devel
|
||||
BuildRequires: %{python_module devel}
|
||||
BuildRequires: %{python_module setuptools}
|
||||
BuildRequires: libelf-devel
|
||||
BuildRequires: libtraceevent-devel
|
||||
BuildRequires: libzstd-devel
|
||||
BuildRequires: llvm
|
||||
BuildRequires: newt-devel
|
||||
BuildRequires: openssl-devel
|
||||
BuildRequires: python-rpm-macros
|
||||
BuildRequires: xz-devel
|
||||
BuildRequires: zlib-devel
|
||||
BuildRequires: rubygem(asciidoctor)
|
||||
%ifarch aarch64 ia64 x86_64 ppc64 ppc64le ppc %sparc
|
||||
BuildRequires: libnuma-devel
|
||||
%endif
|
||||
Recommends: kernel >= 2.6.31
|
||||
Recommends: perf-gtk
|
||||
|
||||
%{perl_requires}
|
||||
%{?libperl_requires}
|
||||
|
||||
# Add local patches below here based on {version_pure}:
|
||||
#
|
||||
# Example: for kernel version 6.14.* {version_pure} = 614 and local patches on
|
||||
# top of this (that will be in 6.15) should be numbered 6140-6149. Unlike SLE
|
||||
# we only carry a handful of local patches in Factory.
|
||||
#
|
||||
# This avoids the perf build breaking when the kernel version in Factory
|
||||
# asynchronously updates.
|
||||
# upstream patches
|
||||
# non upstream patches
|
||||
|
||||
%define python_subpackage_only 1
|
||||
%python_subpackages
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
%description
|
||||
This package provides a userspace tool 'perf', which monitors performance for
|
||||
@@ -91,6 +82,14 @@ which includes the Performance Counters for Linux (PCL) subsystem (>= 2.6.31).
|
||||
This subsystem utilizes the Performance Monitoring Unit (PMU) / hardware
|
||||
counters of the underlying cpu architecture (if supported).
|
||||
|
||||
%package devel
|
||||
Summary: Development headers for perf
|
||||
Group: Development/Libraries/Other
|
||||
Requires: %{name} = %{version}
|
||||
|
||||
%description devel
|
||||
Development headers for perf.
|
||||
|
||||
%package gtk
|
||||
Summary: Gtk browser for perf-report
|
||||
Group: Development/Tools/Other
|
||||
@@ -99,14 +98,6 @@ Requires: %{name} = %{version}
|
||||
%description gtk
|
||||
A GTK2 frontend for perf-report. (Use `perf report --gtk`.)
|
||||
|
||||
%package devel
|
||||
Summary: Development headers for perf
|
||||
Group: Development/Libraries/Other
|
||||
Requires: %{name} = %{version}
|
||||
|
||||
%description devel
|
||||
Development headers for perf. This is currently only dlfilter header.
|
||||
|
||||
%package bash-completion
|
||||
Summary: Bash completion for perf
|
||||
Group: System/Shells
|
||||
@@ -117,30 +108,9 @@ Supplements: (%{name} and bash-completion)
|
||||
%description bash-completion
|
||||
bash command line completion support for perf.
|
||||
|
||||
%package rebuild
|
||||
Summary: Empty package to ensure rebuilding perf in OBS
|
||||
%requires_eq kernel-source
|
||||
|
||||
%description rebuild
|
||||
This is an empty package that ensures perf is rebuilt every time
|
||||
kernel-default is rebuilt in OBS.
|
||||
|
||||
There is no reason to install this package.
|
||||
|
||||
%package -n python-perf
|
||||
Summary: Python Bindings for Manipulating Perf Events
|
||||
Group: Development/Languages/Python
|
||||
Requires: %{name} = %{version}
|
||||
|
||||
%description -n python-perf
|
||||
This package contains a module that permits applications written in
|
||||
the Python programming language to manipulate perf events.
|
||||
|
||||
%prep
|
||||
# copy necessary files from kernel-source since we need to modify them
|
||||
(cd %{_prefix}/src/linux ; tar -cf - COPYING CREDITS README tools include scripts Kbuild Makefile arch/*/{include,lib,tools,Makefile} lib kernel/bpf/disasm.[ch]) | tar -xf -
|
||||
%setup -q
|
||||
chmod +x tools/perf/util/generate-cmdlist.sh
|
||||
%autopatch -p1 -m%{version_pure}0
|
||||
|
||||
# don't error out on deprecated definitions in gtk2.h
|
||||
sed -i 's@ignored "-Wstrict-prototypes"@&\n#pragma GCC diagnostic ignored "-Wdeprecated-declarations"@' tools/build/feature/test-gtk2.c
|
||||
@@ -148,19 +118,21 @@ sed -i 's@ignored "-Wstrict-prototypes"@&\n#pragma GCC diagnostic ignored "-Wdep
|
||||
# skip info-from-txt generation (it's the same as man anyway)
|
||||
sed -i.old 's@\(all: .*\)info@\1@' tools/perf/Documentation/Makefile
|
||||
|
||||
# PASS rpm optflags as EXTRA_FLAGS, passing as CFLAGS overrides and breaks build
|
||||
%define perf_options LIBTRACEEVENT_DYNAMIC=1 BUILD_BPF_SKEL=1 EXTRA_CFLAGS="%{optflags}" ASCIIDOC8=1 USE_ASCIIDOCTOR=1 CORESIGHT=1 GTK2=1 prefix=%{_prefix} libdir=%{_libdir} perfexecdir=lib/%{name}-core tipdir=share/doc/packages/perf %{_perf_unwind}
|
||||
# BPF_SKEL=1 requires clang, enable when we resolve CLANG in SLE issue
|
||||
%define perf_options LIBTRACEEVENT_DYNAMIC=1 CORESIGHT=1 GTK2=1 PYTHON=python3 ASCIIDOC8=1 USE_ASCIIDOCTOR=1 EXTRA_CFLAGS="%{optflags}" prefix=/usr libdir=%{_libdir} perfexecdir=lib/%{name}-core tipdir=share/doc/packages/perf %{_perf_unwind}
|
||||
|
||||
%build
|
||||
cd tools/perf
|
||||
export WERROR=0
|
||||
# PASS rpm optflags as EXTRA_FLAGS, passing as CFLAGS overrides and breaks build
|
||||
|
||||
# Specifying "all doc" as one invocation when using -f Makefile.perf doesn't
|
||||
# work and all is deferred to later %install; so seperate into two
|
||||
|
||||
# Specifying "all doc" as one invocation when using -f Makefile.perf doesn't
|
||||
# work and all compiling is deferred to later %install; so seperate into two
|
||||
make %{?_smp_mflags} -f Makefile.perf \
|
||||
V=0 VF=0 \
|
||||
%{perf_options} \
|
||||
all
|
||||
all
|
||||
|
||||
make %{?_smp_mflags} -f Makefile.perf \
|
||||
V=0 VF=0 \
|
||||
@@ -170,40 +142,31 @@ make %{?_smp_mflags} -f Makefile.perf \
|
||||
%install
|
||||
cd tools/perf
|
||||
export WERROR=0
|
||||
|
||||
make -f Makefile.perf \
|
||||
%{perf_options} \
|
||||
DESTDIR=%{buildroot} \
|
||||
install install-doc
|
||||
|
||||
# Install all python-perf flavors
|
||||
%{python_expand #
|
||||
rm -rf python_ext_build/*
|
||||
make -f Makefile.perf \
|
||||
PYTHON=$python \
|
||||
%{perf_options} \
|
||||
DESTDIR=%{buildroot} \
|
||||
install-python_ext
|
||||
}
|
||||
|
||||
mkdir -p %{buildroot}%{_datadir}/bash-completion/completions/
|
||||
mv %{buildroot}%{_sysconfdir}/bash_completion.d/perf %{buildroot}%{_datadir}/bash-completion/completions/
|
||||
|
||||
# temp workaround as perf Makefile is still installing plugins even with LIBTRACEEVENT_DYNAMIC=1
|
||||
rm -rf %{buildroot}/%{_libdir}/traceevent
|
||||
|
||||
%fdupes %{buildroot}/%{_prefix}/lib/%{name}-core
|
||||
|
||||
%files
|
||||
%license COPYING
|
||||
%doc CREDITS README tools/perf/design.txt
|
||||
%if 0%{?suse_version} > 1315
|
||||
%defattr(-, root, root)
|
||||
%attr(0644, root, root) %doc COPYING CREDITS README tools/perf/design.txt
|
||||
%attr(0644, root, root) %doc %{_docdir}/perf/tips.txt
|
||||
%endif
|
||||
%{_bindir}/perf
|
||||
%{_bindir}/trace
|
||||
%{_prefix}/lib/%{name}-core
|
||||
%{_datadir}/%{name}-core
|
||||
%{_mandir}/man1/perf*
|
||||
|
||||
%files devel
|
||||
%dir %{_includedir}/perf/
|
||||
%attr(0644, root, root) %{_includedir}/perf/*.h
|
||||
|
||||
%files gtk
|
||||
%{_libdir}/libperf-gtk.so
|
||||
|
||||
@@ -212,15 +175,4 @@ rm -rf %{buildroot}/%{_libdir}/traceevent
|
||||
%dir %{_datadir}/bash-completion/completions
|
||||
%{_datadir}/bash-completion/completions/perf
|
||||
|
||||
%files devel
|
||||
%dir %{_includedir}/perf/
|
||||
%{_includedir}/perf/*.h
|
||||
|
||||
%files rebuild
|
||||
%license COPYING
|
||||
|
||||
%files %{python_files perf}
|
||||
%defattr(-,root,root)
|
||||
%{python_sitearch}/perf*
|
||||
|
||||
%changelog
|
||||
|
||||
Reference in New Issue
Block a user