+ Disable unloading of libraries linking libsysprof-capture as it
uses TLS in intrusive ways
+ Updated translations.
- Update to version 49.rc:
+ Ensure libdex is initialized in various tools.
+ Add support for building introspection and documentation. This
really is just used for developers of Sysprof, so it is
unlikely that distributions will want to install this.
+ Make debuginfod symbolizer work with recent GObject changes.
+ Fix warnings when building with Clang
+ Use app metadata instead of appinfo
+ Ensure counters clear ring buffer before writing new values
- Changes from version 49.alpha:
+ Various improvements to the greeter window
+ New filtering for various types of marks
+ Instrument improvements
+ Ability to avoid using sysprofd in some specific use cases
+ Desktop file/action integration improvements
+ mmap fixes for HPPA architecture
+ Improve ELF loader search directories
+ Updated translations.
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/sysprof?expand=0&rev=95
186 lines
5.4 KiB
RPMSpec
186 lines
5.4 KiB
RPMSpec
#
|
|
# spec file for package sysprof
|
|
#
|
|
# Copyright (c) 2025 SUSE LLC and contributors
|
|
# Copyright (c) 2016 Bjørn Lie, Bryne, Norway.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# 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/
|
|
#
|
|
|
|
|
|
%define apiver 6
|
|
%define sover 6
|
|
%define glib_version 2.76.0
|
|
|
|
Name: sysprof
|
|
Version: 49.0
|
|
Release: 0
|
|
Summary: A system-wide Linux profiler
|
|
License: GPL-3.0-or-later AND LGPL-3.0-or-later
|
|
Group: Development/Tools/Debuggers
|
|
URL: https://wiki.gnome.org/Apps/Sysprof
|
|
Source0: sysprof-%{version}.tar.zst
|
|
Patch0: harden_sysprof3.service.patch
|
|
Patch1: explicitly-include-unistd.patch
|
|
|
|
BuildRequires: c++_compiler
|
|
%if 0%{?sle_version} && 0%{?sle_version} < 160000
|
|
BuildRequires: gcc11
|
|
BuildRequires: gcc11-PIE
|
|
BuildRequires: gcc11-c++
|
|
%endif
|
|
BuildRequires: desktop-file-utils
|
|
BuildRequires: fdupes
|
|
BuildRequires: hicolor-icon-theme
|
|
BuildRequires: itstool
|
|
BuildRequires: meson >= 0.59.0
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: pkgconfig(gio-2.0) >= %{glib_version}
|
|
BuildRequires: pkgconfig(gio-unix-2.0) >= %{glib_version}
|
|
BuildRequires: pkgconfig(glib-2.0) >= %{glib_version}
|
|
BuildRequires: pkgconfig(gtk4) >= 4.10
|
|
BuildRequires: pkgconfig(json-glib-1.0)
|
|
BuildRequires: pkgconfig(libadwaita-1) >= 1.4.alpha
|
|
BuildRequires: pkgconfig(libdazzle-1.0) >= 3.30.0
|
|
BuildRequires: pkgconfig(libdebuginfod)
|
|
BuildRequires: pkgconfig(libdex-1) >= 0.3
|
|
BuildRequires: pkgconfig(libdw)
|
|
BuildRequires: pkgconfig(libpanel-1) >= 1.3.0
|
|
BuildRequires: pkgconfig(libsystemd) >= 222
|
|
BuildRequires: pkgconfig(libunwind-generic)
|
|
BuildRequires: pkgconfig(polkit-gobject-1) >= 0.105
|
|
BuildRequires: pkgconfig(systemd)
|
|
Requires: hicolor-icon-theme
|
|
%{?systemd_ordering}
|
|
|
|
%description
|
|
Sysprof is a sampling CPU profiler for Linux that collects accurate,
|
|
high-precision data and provides efficient access to the sampled
|
|
calltrees.
|
|
|
|
%package gtk
|
|
Summary: Sysprof binary with GUI support
|
|
Obsoletes: sysprof-ui < 3.49
|
|
|
|
%description gtk
|
|
Sysprof is a sampling CPU profiler for Linux that collects accurate,
|
|
high-precision data and provides efficient access to the sampled
|
|
calltrees.
|
|
|
|
This package provides the sysprof binary with GUI support.
|
|
|
|
%package -n libsysprof-%{apiver}-%{sover}
|
|
Summary: Sysprof Shared Library
|
|
|
|
%description -n libsysprof-%{apiver}-%{sover}
|
|
The libsysprof-%{apiver}-%{sover} package contains the Sysprof shared
|
|
library.
|
|
|
|
%package devel
|
|
Summary: Development files for %{name}
|
|
Group: Development/Tools/Debuggers
|
|
Requires: %{name} = %{version}
|
|
Requires: libsysprof-%{apiver}-%{sover} = %{version}
|
|
Obsoletes: sysprof-capture-devel-static < 3.49
|
|
|
|
%description devel
|
|
The %{name}-devel package contains header files for developing
|
|
applications that use %{name}.
|
|
|
|
%lang_package
|
|
|
|
%prep
|
|
%autosetup -N -n sysprof-%{version}
|
|
%patch -P 0 -p1
|
|
%if 0%{?sle_version} && 0%{?sle_version} < 160000
|
|
%patch -P 1 -p1
|
|
%endif
|
|
|
|
%build
|
|
%if 0%{?sle_version} && 0%{?sle_version} < 160000
|
|
export CC=gcc-11
|
|
export CXX=g++-11
|
|
%endif
|
|
%global _lto_cflags %{?_lto_cflags} -ffat-lto-objects
|
|
%meson -Dgtk=true -Dtests=false
|
|
%meson_build
|
|
|
|
%install
|
|
%meson_install
|
|
%find_lang %{name} %{?no_lang_C}
|
|
%fdupes %{buildroot}%{_datadir}
|
|
|
|
%pre
|
|
%service_add_pre sysprof3.service
|
|
|
|
%preun
|
|
%service_del_preun sysprof3.service
|
|
|
|
%post
|
|
/sbin/ldconfig
|
|
%service_add_post sysprof3.service
|
|
|
|
%postun
|
|
/sbin/ldconfig
|
|
%service_del_postun sysprof3.service
|
|
|
|
%ldconfig_scriptlets -n libsysprof-%{apiver}-%{sover}
|
|
|
|
%check
|
|
%meson_test
|
|
|
|
%files
|
|
%license COPYING
|
|
%doc NEWS README.md
|
|
%{_bindir}/sysprof-agent
|
|
%{_bindir}/sysprof-cli
|
|
%{_bindir}/sysprof-cat
|
|
%{_datadir}/dbus-1/interfaces/org.gnome.Sysprof.Agent.xml
|
|
%{_datadir}/dbus-1/interfaces/org.gnome.Sysprof3.Profiler.xml
|
|
%{_datadir}/dbus-1/interfaces/org.gnome.Sysprof3.Service.xml
|
|
%dir %{_datadir}/dbus-1/system.d
|
|
%{_datadir}/dbus-1/system.d/org.gnome.Sysprof3.conf
|
|
%{_datadir}/dbus-1/services/org.gnome.Sysprof.service
|
|
%{_datadir}/dbus-1/system-services/org.gnome.Sysprof3.service
|
|
%{_datadir}/polkit-1/actions/org.gnome.sysprof3.policy
|
|
%{_libdir}/libsysprof-memory-%{apiver}.so
|
|
%{_libdir}/libsysprof-speedtrack-%{apiver}.so
|
|
%{_libdir}/libsysprof-tracer-%{apiver}.so
|
|
%{_libexecdir}/sysprofd
|
|
%{_libexecdir}/sysprof-live-unwinder
|
|
%{_unitdir}/sysprof3.service
|
|
%dir %{_datadir}/help/C/sysprof
|
|
%doc %{_datadir}/help/C/sysprof/*
|
|
|
|
%files gtk
|
|
%{_bindir}/sysprof
|
|
%{_datadir}/applications/*.desktop
|
|
%{_datadir}/icons/hicolor/*/*/*
|
|
%{_datadir}/metainfo/org.gnome.Sysprof.metainfo.xml
|
|
%{_datadir}/mime/packages/sysprof-mime.xml
|
|
|
|
%files -n libsysprof-%{apiver}-%{sover}
|
|
%{_libdir}/libsysprof-%{apiver}.so.%{sover}
|
|
%{_libdir}/libsysprof-%{apiver}.so.%{sover}.?.?
|
|
|
|
%files devel
|
|
%doc AUTHORS
|
|
%{_libdir}/libsysprof-%{apiver}.so
|
|
%{_libdir}/pkgconfig/sysprof-%{apiver}.pc
|
|
%{_libdir}/libsysprof-capture-4.a
|
|
%{_libdir}/pkgconfig/sysprof-capture-4.pc
|
|
%{_includedir}/sysprof-%{apiver}/
|
|
|
|
%files lang -f %{name}.lang
|
|
|
|
%changelog
|