Gentoo Archives: gentoo-commits

From: Mart Raudsepp <leio@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/sysprof/
Date: Sat, 04 Jul 2020 12:00:37
Message-Id: 1593863997.52bd3c8929880d933c2f832f5c86461b23a500cb.leio@gentoo
1 commit: 52bd3c8929880d933c2f832f5c86461b23a500cb
2 Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
3 AuthorDate: Sun Jun 28 11:32:30 2020 +0000
4 Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
5 CommitDate: Sat Jul 4 11:59:57 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=52bd3c89
7
8 dev-util/sysprof: bump to 3.36.0
9
10 Package-Manager: Portage-2.3.84, Repoman-2.3.20
11 Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
12
13 dev-util/sysprof/Manifest | 1 +
14 dev-util/sysprof/metadata.xml | 3 ++
15 dev-util/sysprof/sysprof-3.36.0.ebuild | 78 ++++++++++++++++++++++++++++++++++
16 3 files changed, 82 insertions(+)
17
18 diff --git a/dev-util/sysprof/Manifest b/dev-util/sysprof/Manifest
19 index c718e91a09e..153e4d5187a 100644
20 --- a/dev-util/sysprof/Manifest
21 +++ b/dev-util/sysprof/Manifest
22 @@ -1 +1,2 @@
23 DIST sysprof-3.34.1.tar.xz 372612 BLAKE2B 3a50a00f29866ae8bf03cc7a57b598e40a6a37ad88ac2159087e4f2a8a6a5cef09b345dc5332fb1df9036c4e159e98f19adda45588150b059af313878b9b554c SHA512 5f2d820935291a3b578222d5daa87b0a2f74cd16d14daca19065495be61cf7359f00f12f452a5c0b4e05dfeb94e2376017c2288cad92dc0c4bb9bca51b903d19
24 +DIST sysprof-3.36.0.tar.xz 435956 BLAKE2B 990a6c6c28339594df915ed1fb98f504bf6b080a5e3c31af0cc4bcfd208027361f02a9068291692d082787a6fd42ab414079122a63e4706aee2511040379f0c8 SHA512 41f99cc3446a6624ea74fcdecd7a29a2e5e2d4086383d59a9064c4a3df5d9b8d08f4903ff4dcc85ffa9c6d42bd84dec5c03f6010fffd4415cc8fecf4dc0b23f4
25
26 diff --git a/dev-util/sysprof/metadata.xml b/dev-util/sysprof/metadata.xml
27 index 7b2b574988e..dea417a2e62 100644
28 --- a/dev-util/sysprof/metadata.xml
29 +++ b/dev-util/sysprof/metadata.xml
30 @@ -5,6 +5,9 @@
31 <email>gnome@g.o</email>
32 <name>Gentoo GNOME Desktop</name>
33 </maintainer>
34 +<use>
35 + <flag name="unwind">Use <pkg>sys-libs/libunwind</pkg> to unwind the stack</flag>
36 +</use>
37 <longdescription lang="en">
38 Sysprof is a sampling CPU profiler for Linux that profiles the entire system,
39 not just a single application.
40
41 diff --git a/dev-util/sysprof/sysprof-3.36.0.ebuild b/dev-util/sysprof/sysprof-3.36.0.ebuild
42 new file mode 100644
43 index 00000000000..f177e8ac828
44 --- /dev/null
45 +++ b/dev-util/sysprof/sysprof-3.36.0.ebuild
46 @@ -0,0 +1,78 @@
47 +# Copyright 1999-2020 Gentoo Authors
48 +# Distributed under the terms of the GNU General Public License v2
49 +
50 +EAPI=7
51 +
52 +inherit gnome.org gnome2-utils meson systemd xdg
53 +
54 +DESCRIPTION="System-wide Linux Profiler"
55 +HOMEPAGE="http://sysprof.com/"
56 +
57 +LICENSE="GPL-3+ GPL-2+"
58 +API_VERSION="3"
59 +SLOT="0/${API_VERSION}"
60 +KEYWORDS="~amd64 ~x86"
61 +IUSE="gtk +unwind"
62 +
63 +RDEPEND="
64 + >=dev-libs/glib-2.61.3:2
65 + gtk? (
66 + >=x11-libs/gtk+-3.22.0:3
67 + >=dev-libs/libdazzle-3.30.0
68 + )
69 + >=sys-auth/polkit-0.114
70 + unwind? ( sys-libs/libunwind:= )
71 + >=dev-util/sysprof-capture-${PV}:${API_VERSION}
72 +"
73 +DEPEND="${RDEPEND}"
74 +BDEPEND="
75 + dev-libs/appstream-glib
76 + dev-util/gdbus-codegen
77 + dev-util/itstool
78 + >=sys-devel/gettext-0.19.8
79 + >=sys-kernel/linux-headers-2.6.32
80 + virtual/pkgconfig
81 +"
82 +
83 +src_prepare() {
84 + xdg_src_prepare
85 + # These are installed by dev-util/sysprof-capture
86 + sed -i -e '/install/d' src/libsysprof-capture/meson.build || die
87 + sed -i -e 's/pkgconfig\.generate/subdir_done()\npkgconfig\.generate/' src/libsysprof-capture/meson.build || die
88 + # We want to ship org.gnome.Sysprof3.Profiler.xml in sysprof-capture for the benefit of x11-wm/mutter
89 + sed -i -e "s|if get_option('libsysprof')|if false|g" src/meson.build || die
90 +}
91 +
92 +src_configure() {
93 + # -Dwith_sysprofd=host currently unavailable from ebuild
94 + local emesonargs=(
95 + $(meson_use gtk enable_gtk)
96 + -Dlibsysprof=true
97 + -Dwith_sysprofd=bundled
98 + -Dsystemdunitdir=$(systemd_get_systemunitdir)
99 + # -Ddebugdir
100 + -Dhelp=true
101 + $(meson_use unwind libunwind)
102 + )
103 + meson_src_configure
104 +}
105 +
106 +pkg_postinst() {
107 + xdg_pkg_postinst
108 + gnome2_schemas_update
109 +
110 + elog "On many systems, especially amd64, it is typical that with a modern"
111 + elog "toolchain -fomit-frame-pointer for gcc is the default, because"
112 + elog "debugging is still possible thanks to gcc4/gdb location list feature."
113 + elog "However sysprof is not able to construct call trees if frame pointers"
114 + elog "are not present. Therefore -fno-omit-frame-pointer CFLAGS is suggested"
115 + elog "for the libraries and applications involved in the profiling. That"
116 + elog "means a CPU register is used for the frame pointer instead of other"
117 + elog "purposes, which means a very minimal performance loss when there is"
118 + elog "register pressure."
119 +}
120 +
121 +pkg_postrm() {
122 + xdg_pkg_postrm
123 + gnome2_schemas_update
124 +}