From: Thomas Petazzoni via buildroot <buildroot@buildroot.org>
To: Adrian Perez de Castro <aperez@igalia.com>
Cc: Eric Le Bihan <eric.le.bihan.dev@free.fr>,
Will Newton <will.newton@gmail.com>,
buildroot@buildroot.org
Subject: Re: [Buildroot] [PATCH 2/2] package/sysprof: update to version 46.0
Date: Fri, 12 Jul 2024 17:37:34 +0200 [thread overview]
Message-ID: <20240712173734.30592e67@windsurf> (raw)
In-Reply-To: <20240627220223.6687-3-aperez@igalia.com>
Hello Adrian,
On Fri, 28 Jun 2024 01:02:19 +0300
Adrian Perez de Castro <aperez@igalia.com> wrote:
> Bring Sysprof twelve years into the future by updating it to the most
> recent release. The GUI now uses GTK4, for which there is not yet a
> package, so for now the option is removed.
>
> Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
Would you want to be added in the DEVELOPERS file for this package? You
just did a big bump, it would make sense if you helped fixing the build
failures that might results for this bump :-)
> diff --git a/package/sysprof/0001-define-NT_GNU_BUILD_ID.patch b/package/sysprof/0001-define-NT_GNU_BUILD_ID.patch
> deleted file mode 100644
> index dcc2cbe67cc..00000000000
> --- a/package/sysprof/0001-define-NT_GNU_BUILD_ID.patch
> +++ /dev/null
Dropping this patch required an updated in .checkpackageignore.
> diff --git a/package/sysprof/Config.in b/package/sysprof/Config.in
> index 3913274be4f..4ea1d3ebf1d 100644
> --- a/package/sysprof/Config.in
> +++ b/package/sysprof/Config.in
> @@ -1,31 +1,26 @@
> config BR2_PACKAGE_SYSPROF
> bool "sysprof"
> - depends on BR2_USE_WCHAR # glib2
> - depends on BR2_TOOLCHAIN_HAS_THREADS # glib2
> - depends on BR2_USE_MMU # glib2
> - # In its util.h file, sysprof contains architecture-specific
> - # code
> - depends on BR2_i386 || BR2_x86_64 || BR2_powerpc || BR2_sh4a || BR2_sh4aeb
> + depends on BR2_USE_WCHAR # glib2, libdex, json-glib
> + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2, libdex, json-glib, polkit
> + depends on BR2_USE_MMU # glib2, libdex, json-glib
> + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # libunwind, polkit
> + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS
> + depends on !BR2_STATIC_LIBS # polkit
Also because of libunwind.
> + depends on !BR2_OPTIMIZE_FAST # polkit
> + select BR2_PACKAGE_JSON_GLIB
> + select BR2_PACKAGE_LIBDEX
> select BR2_PACKAGE_LIBGLIB2
> + select BR2_PACKAGE_LIBUNWIND
> + select BR2_PACKAGE_POLKIT
> help
> Sysprof is a statistical, system-wide profiler that can
> profile user and kernel code using the perf API.
>
> http://sysprof.com
>
> -if BR2_PACKAGE_SYSPROF
> -
> -config BR2_PACKAGE_SYSPROF_GUI
> - bool "sysprof GUI"
> - depends on BR2_PACKAGE_LIBGTK2
> - select BR2_PACKAGE_LIBGLADE
> - select BR2_PACKAGE_GDK_PIXBUF
> - help
> - GUI for the sysprof system-wide statistical profiler.
> -
> -endif
> -
> -comment "sysprof needs a toolchain w/ wchar, threads"
> +comment "sysprof needs a toolchain w/ dynamic libraray, wchar, threads, gcc >= 7"
> depends on BR2_USE_MMU
> - depends on BR2_i386 || BR2_x86_64 || BR2_powerpc || BR2_sh4a || BR2_sh4aeb
> - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
> + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
> + !BR2_TOOLCHAIN_GCC_AT_LEAST_7 || \
> + !BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS || \
BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS is an architecture dependency, so
it should have been handled like BR2_USE_MMU.
> + BR2_STATIC_LIBS || BR2_OPTIMIZE_FAST
I changed the handling of BR2_OPTIMIZE_FAST to be like what polkit does:
comment "sysprof can't be built with Optimize for fast"
depends on BR2_OPTIMIZE_FAST
not amazing, but at least consistent with polkit.
BTW, pretty mind-blowing that sysprof absolutely requires polkit...
> -SYSPROF_VERSION = 1.2.0
> -SYSPROF_SITE = http://sysprof.com
> -SYSPROF_DEPENDENCIES = libglib2
> -SYSPROF_LICENSE = GPL-2.0+
> +SYSPROF_VERSION_MAJOR = 46
> +SYSPROF_VERSION = $(SYSPROF_VERSION_MAJOR).0
> +SYSPROF_SOURCE = sysprof-$(SYSPROF_VERSION).tar.xz
> +SYSPROF_SITE = https://download.gnome.org/sources/sysprof/$(SYSPROF_VERSION_MAJOR)
> +SYSPROF_LICENSE = GPL-3.0+
> SYSPROF_LICENSE_FILES = COPYING
> +SYSPROF_DEPENDENCIES = libglib2 libdex libunwind json-glib polkit
> +SYSPROF_CONF_OPTS += \
= instead of +=
Applied with those changes. Thanks!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2024-07-12 15:37 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-27 22:02 [Buildroot] [PATCH 0/2] Update Sysprof to the latest release Adrian Perez de Castro
2024-06-27 22:02 ` [Buildroot] [PATCH 1/2] package/libdex: new package Adrian Perez de Castro
2024-07-12 15:35 ` Thomas Petazzoni via buildroot
2024-06-27 22:02 ` [Buildroot] [PATCH 2/2] package/sysprof: update to version 46.0 Adrian Perez de Castro
2024-07-12 15:37 ` Thomas Petazzoni via buildroot [this message]
2024-08-05 13:24 ` Adrian Perez de Castro
2024-08-05 13:46 ` Thomas Petazzoni via buildroot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240712173734.30592e67@windsurf \
--to=buildroot@buildroot.org \
--cc=aperez@igalia.com \
--cc=eric.le.bihan.dev@free.fr \
--cc=thomas.petazzoni@bootlin.com \
--cc=will.newton@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.