Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package perf for openSUSE:Factory checked in at 2026-11-03 17:59:26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perf (Old) and /work/SRC/openSUSE:Factory/.perf.new.1257 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perf" Tue Nov 3 17:59:26 2026 rev:87 rq:1394663 version:MACRO Changes: -------- --- /work/SRC/openSUSE:Factory/perf/perf.changes 2026-09-11 18:06:36.694085302 +0200 +++ /work/SRC/openSUSE:Factory/.perf.new.1257/perf.changes 2026-11-03 18:04:07.846912168 +0100 @@ -1,0 +2,8 @@ +Tue Nov 3 08:52:40 UTC 2026 - Jiri Slaby <[email protected]> + +- support kernel 7.4 (gtk4 finally) +- enable LTO, it is long supported (since 6.6) +- noarch for some subpackages +- add %check with some basic tests + +------------------------------------------------------------------- New: ---- _scmsync.obsinfo build.specials.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perf.spec ++++++ --- /var/tmp/diff_new_pack.ZMvfL2/_old 2026-11-03 18:04:09.121965542 +0100 +++ /var/tmp/diff_new_pack.ZMvfL2/_new 2026-11-03 18:04:09.126965751 +0100 @@ -15,11 +15,15 @@ # Please submit bugfixes or comments via https://bugs.opensuse.org/ # - -# 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 version_pure %(echo %{version} | awk -F. '{printf "%%d%%02d\\n", $1, $2}') + +%if %{version_pure} >= 704 +%define gtk_version 4 +%else +%define gtk_version 2 +%endif + %ifarch s390x s390 %define _perf_unwind NO_LIBUNWIND=1 %else @@ -46,7 +50,10 @@ BuildRequires: flex BuildRequires: gcc BuildRequires: gcc-c++ +# remove gtk2 once 7.4 hits TW -- gtk_version cannot be used (the installation +# phase cannot handle %%version -- evaluates on host) BuildRequires: gtk2-devel +BuildRequires: gtk4-devel BuildRequires: java-devel BuildRequires: kernel-source >= 2.6.31 BuildRequires: libcap-devel @@ -96,12 +103,13 @@ Requires: %{name} = %{version} %description gtk -A GTK2 frontend for perf-report. (Use `perf report --gtk`.) +A GTK%{gtk_version} frontend for perf-report. (Use `perf report --gtk`.) %package devel Summary: Development headers for perf Group: Development/Libraries/Other Requires: %{name} = %{version} +BuildArch: noarch %description devel Development headers for perf. This is currently only dlfilter header. @@ -124,12 +132,14 @@ Requires: %{name} Requires: bash-completion Supplements: (%{name} and bash-completion) +BuildArch: noarch %description bash-completion bash command line completion support for perf. %package rebuild Summary: Empty package to ensure rebuilding perf in OBS +BuildArch: noarch %requires_eq kernel-source %description rebuild @@ -155,21 +165,23 @@ test -f "$cmdlist" && chmod +x "$cmdlist" %autopatch -p1 -m%{version_pure}0 +%if %{gtk_version} == 2 # 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 +%endif # 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 JDIR=${JAVA_HOME} 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} +%define perf_options JDIR=${JAVA_HOME} LIBTRACEEVENT_DYNAMIC=1 BUILD_BPF_SKEL=1 EXTRA_CFLAGS="%{optflags}" ASCIIDOC8=1 USE_ASCIIDOCTOR=1 CORESIGHT=1 GTK%{gtk_version}=1 prefix=%{_prefix} libdir=%{_libdir} perfexecdir=lib/%{name}-core tipdir=share/doc/packages/perf %{_perf_unwind} %build cd tools/perf export WERROR=0 # 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 +# 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} \ @@ -208,12 +220,23 @@ %fdupes %{buildroot}/%{_prefix}/lib/%{name}-core +%check +cd tools/perf +# at least something; many tests are HW-dependent +./perf test \ + "demangle" \ + "kallsyms" \ + "perf stat" \ + "print" \ + "Simple expression" \ + "DSO data tests" \ + |& tee test_log +grep -q '^Failed tests *: *0$' test_log + %files %license COPYING %doc CREDITS README tools/perf/design.txt -%if 0%{?suse_version} > 1315 -%attr(0644, root, root) %doc %{_docdir}/perf/tips.txt -%endif +%doc %{_docdir}/perf/tips.txt %{_bindir}/perf %{_bindir}/trace %{_prefix}/lib/%{name}-core ++++++ _scmsync.obsinfo ++++++ mtime: 1793699509 commit: a4572ded28419579a29531106f8f77512523661e4e0b6b5cfc3574fa7f3acc14 url: https://src.opensuse.org/jirislaby/d-t-perf ++++++ build.specials.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/.gitignore new/.gitignore --- old/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/.gitignore 2026-11-03 10:51:49.000000000 +0100 @@ -0,0 +1,4 @@ +*.obscpio +*.osc +_build.* +.pbuild
