summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gentoo.org>2022-03-25 11:17:19 -0700
committerMatt Turner <mattst88@gentoo.org>2022-03-25 11:23:21 -0700
commit5df5a6d607da051c8638c3537fdf0e4058a1cbcf (patch)
tree8298671488ab768d8dc4fae7a44f6221771bef35 /dev-util
parentdev-util/sysprof-capture: Version bump to 3.44.0 (diff)
downloadgentoo-5df5a6d607da051c8638c3537fdf0e4058a1cbcf.tar.gz
gentoo-5df5a6d607da051c8638c3537fdf0e4058a1cbcf.tar.bz2
gentoo-5df5a6d607da051c8638c3537fdf0e4058a1cbcf.zip
dev-util/sysprof: Version bump to 3.44.0
Signed-off-by: Matt Turner <mattst88@gentoo.org>
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/sysprof/Manifest1
-rw-r--r--dev-util/sysprof/sysprof-3.44.0.ebuild81
2 files changed, 82 insertions, 0 deletions
diff --git a/dev-util/sysprof/Manifest b/dev-util/sysprof/Manifest
index c56101e75324..e353bcf77ee7 100644
--- a/dev-util/sysprof/Manifest
+++ b/dev-util/sysprof/Manifest
@@ -1 +1,2 @@
DIST sysprof-3.42.1.tar.xz 484096 BLAKE2B bc1124651f6323d6757050ef3225df222039ac7a5c6a6e2a0e170354a0e89705ea03173302ac7fa2bc172b27485d4e4cdee0f7504a548d51e88b88a19cc8cc9d SHA512 15bf7efadfc88c1342200009e4b74ecd23a320ca272b4ca3736dd41baf9cb4e0a1fd75e0aa20ee784b98c6fee7f86a2b52e63bc4769b6ca9759f58b64cba0dcd
+DIST sysprof-3.44.0.tar.xz 493924 BLAKE2B c3d9558df99ba23f63fbde0df54e201afce83da8f7d64166b44fcc2c70ec9e54a4abfbd0ac64171b1538af7e9d608b0f618559aba9444a3d884cd4944c4d595f SHA512 64bfe4d39e71954f7982ef06caffc39ff60d2d6005f8392a7918f83263d7c5b11bafdf7234ed86d52063586919a4dbe742c498b6f1f9db91d481337cf568451c
diff --git a/dev-util/sysprof/sysprof-3.44.0.ebuild b/dev-util/sysprof/sysprof-3.44.0.ebuild
new file mode 100644
index 000000000000..4d11d4646eaa
--- /dev/null
+++ b/dev-util/sysprof/sysprof-3.44.0.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit gnome.org gnome2-utils meson systemd xdg
+
+DESCRIPTION="System-wide Linux Profiler"
+HOMEPAGE="http://sysprof.com/"
+
+LICENSE="GPL-3+ GPL-2+"
+API_VERSION="4"
+SLOT="0/${API_VERSION}"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="gtk +unwind"
+
+RDEPEND="
+ >=dev-libs/glib-2.67.4:2
+ gtk? (
+ >=x11-libs/gtk+-3.22.0:3
+ >=dev-libs/libdazzle-3.30.0
+ )
+ dev-libs/json-glib
+ >=sys-auth/polkit-0.114
+ unwind? ( sys-libs/libunwind:= )
+ >=dev-util/sysprof-common-${PV}
+ >=dev-util/sysprof-capture-${PV}:${API_VERSION}
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-libs/appstream-glib
+ dev-util/gdbus-codegen
+ dev-util/itstool
+ >=sys-devel/gettext-0.19.8
+ >=sys-kernel/linux-headers-2.6.32
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ default
+ xdg_environment_reset
+ # These are installed by dev-util/sysprof-capture
+ sed -i -e '/install/d' src/libsysprof-capture/meson.build || die
+ sed -i -e 's/pkgconfig\.generate/subdir_done()\npkgconfig\.generate/' src/libsysprof-capture/meson.build || die
+ # We want to ship org.gnome.Sysprof3.Profiler.xml in sysprof-common for the benefit of x11-wm/mutter
+ sed -i -e "s|if get_option('libsysprof')|if false|g" src/meson.build || die
+}
+
+src_configure() {
+ # -Dwith_sysprofd=host currently unavailable from ebuild
+ local emesonargs=(
+ $(meson_use gtk enable_gtk)
+ -Dlibsysprof=true
+ -Dwith_sysprofd=bundled
+ -Dsystemdunitdir=$(systemd_get_systemunitdir)
+ # -Ddebugdir
+ -Dhelp=true
+ $(meson_use unwind libunwind)
+ )
+ meson_src_configure
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ gnome2_schemas_update
+
+ elog "On many systems, especially amd64, it is typical that with a modern"
+ elog "toolchain -fomit-frame-pointer for gcc is the default, because"
+ elog "debugging is still possible thanks to gcc4/gdb location list feature."
+ elog "However sysprof is not able to construct call trees if frame pointers"
+ elog "are not present. Therefore -fno-omit-frame-pointer CFLAGS is suggested"
+ elog "for the libraries and applications involved in the profiling. That"
+ elog "means a CPU register is used for the frame pointer instead of other"
+ elog "purposes, which means a very minimal performance loss when there is"
+ elog "register pressure."
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_schemas_update
+}