From: Thomas Petazzoni via buildroot <buildroot@buildroot.org>
To: Thomas Devoogdt <thomas@devoogdt.com>
Cc: buildroot@buildroot.org, Fabrice Fontaine <fontaine.fabrice@gmail.com>
Subject: Re: [Buildroot] [PATCH v1 2/2] package/libgtk4: bump to version 4.24.1
Date: Sun, 1 Nov 2026 17:43:44 +0100 [thread overview]
Message-ID: <audrTUDPjZfZpyNG@windsurf> (raw)
In-Reply-To: <20261031183632.1561453-2-thomas@devoogdt.com>
On Sat, Oct 31, 2026 at 07:36:32PM +0100, Thomas Devoogdt wrote:
> Changelog: https://gitlab.gnome.org/GNOME/gtk/-/blob/4.24.1/NEWS
>
> Highlights of the changes since 4.21.0:
> - librsvg is no longer a dependency, as GTK can now render SVG
> images natively; this also drops the rustc host requirement
> - New GtkSvgWidget for displaying (interactive) SVG, used for all
> SVG icons and GtkSpinner
> - Wayland: support for text protocol v3.2 and
> xdg-session-management-v1
> - GSK: 10bit image formats support, rewritten cache allocator,
> clip masks to reduce the number of offscreens
> - Session saving support is back
>
> Since 4.24, GTK unconditionally links against libpng and libjpeg
> (previously only needed via the gdk-pixbuf loaders), so select
> BR2_PACKAGE_LIBPNG and BR2_PACKAGE_JPEG.
>
> Also list cairo, harfbuzz and libfribidi in LIBGTK4_DEPENDENCIES
> as GTK links against them directly, and add the X11 libraries
> (GTK links against x11, xext, xrender, xi, xcursor, xdamage,
> xfixes, xrandr, xinerama, fontconfig) that are missing from the
> X11 backend dependency list, so that all direct dependencies are
> correctly built before libgtk4.
>
> Finally, added two patches to fix fenv usage on uclibc toolchains.
>
> Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
Thanks for this update! I have a number of questions/comments below.
> diff --git a/package/libgtk4/0001-meson.build-add-a-check-for-the-fenv-header.patch b/package/libgtk4/0001-meson.build-add-a-check-for-the-fenv-header.patch
> new file mode 100644
> index 00000000000..788c190d865
> --- /dev/null
> +++ b/package/libgtk4/0001-meson.build-add-a-check-for-the-fenv-header.patch
> @@ -0,0 +1,26 @@
> +From d126fca3178004ab7d540d067e8c39745b69820f Mon Sep 17 00:00:00 2001
> +From: Thomas Devoogdt <thomas@devoogdt.com>
> +Date: Fri, 15 Nov 2024 08:22:23 +0100
> +Subject: [PATCH] meson.build: add a check for the fenv header
> +
> +Upstream: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/7925
> +Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
> diff --git a/package/libgtk4/0002-gtk-gtkcssnumbervalue.c-fix-compilation-if-fenv.h-is.patch b/package/libgtk4/0002-gtk-gtkcssnumbervalue.c-fix-compilation-if-fenv.h-is.patch
> new file mode 100644
> index 00000000000..38c5b7573e1
> --- /dev/null
> +++ b/package/libgtk4/0002-gtk-gtkcssnumbervalue.c-fix-compilation-if-fenv.h-is.patch
> @@ -0,0 +1,106 @@
> +From 734fcd35e1d82a9b68b7c6aff7cd2b27d557b29e Mon Sep 17 00:00:00 2001
> +From: Thomas Devoogdt <thomas@devoogdt.com>
> +Date: Fri, 15 Nov 2024 08:22:40 +0100
> +Subject: [PATCH] gtk/gtkcssnumbervalue.c: fix compilation if fenv.h is missing
> +
> +../gtk/gtkcssnumbervalue.c:29:10: fatal error: fenv.h: No such file or directory
> + 29 | #include <fenv.h>
> + |
> +
> +Upstream: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/7925
> +Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
These two patches should probably have been squashed together in one
commit, because they form one single logical change. That being said,
if you submitted upstream as-is, fair enough, that is mostly a
suggestion.
> diff --git a/package/libgtk4/libgtk4.hash b/package/libgtk4/libgtk4.hash
> index dff32c57b48..ffa90911e58 100644
> --- a/package/libgtk4/libgtk4.hash
> +++ b/package/libgtk4/libgtk4.hash
> @@ -1,5 +1,5 @@
> -# From https://download.gnome.org/sources/gtk/4.21/gtk-4.21.0.sha256sum
> -sha256 f52475c5041dfd02cc4eed22ee94f12ec310c16a68fda9203dc54ffd5daa6e6f gtk-4.21.0.tar.xz
> +# From https://download.gnome.org/sources/gtk/4.24/gtk-4.24.1.sha256sum
> +sha256 e98abe720e16129c8c0f50761dee0a2e9ae2478055e31018f6cf977fcf6513e9 gtk-4.24.1.tar.xz
>
> # Hash for license file:
> sha256 b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c COPYING
> diff --git a/package/libgtk4/libgtk4.mk b/package/libgtk4/libgtk4.mk
> index 9a5ed651a82..26346dad29d 100644
> --- a/package/libgtk4/libgtk4.mk
> +++ b/package/libgtk4/libgtk4.mk
> @@ -4,8 +4,8 @@
> #
> ################################################################################
>
> -LIBGTK4_VERSION_MAJOR = 4.21
> -LIBGTK4_VERSION = $(LIBGTK4_VERSION_MAJOR).0
> +LIBGTK4_VERSION_MAJOR = 4.24
> +LIBGTK4_VERSION = $(LIBGTK4_VERSION_MAJOR).1
> LIBGTK4_SOURCE = gtk-$(LIBGTK4_VERSION).tar.xz
> LIBGTK4_SITE = https://download.gnome.org/sources/gtk/$(LIBGTK4_VERSION_MAJOR)
> LIBGTK4_LICENSE = LGPL-2.0+
> @@ -17,12 +17,17 @@ LIBGTK4_INSTALL_STAGING = YES
> LIBGTK4_DEPENDENCIES = \
> host-pkgconf \
> host-libgtk4 \
> + cairo \
This already had a "select" in Config.in. Was it a bug that it wasn't
in the DEPENDENCIES? Should this be considered a fix? If this is
unrelated to the bump, should ideally be a separate commit.
> gdk-pixbuf \
> graphene \
> + harfbuzz \
harfbuzz is not selected by BR2_PACKAGE_LIBGTK4, so a select should be
added if libgtk4 directly links against it. If this was already the
case prior to the bump, should be a separate patch.
> + jpeg \
> libepoxy \
> + libfribidi \
libfribidi is not selected by BR2_PACKAGE_LIBGTK4, so a select should
be added if libgtk4 links against it. If this was already the
case prior to the bump, should be a separate patch.
> libglib2 \
> - librsvg \
> + libpng \
> pango \
> + tiff \
Same question as for cairo.
> $(TARGET_NLS_DEPENDENCIES)
>
> LIBGTK4_CONF_OPTS = \
> @@ -46,7 +51,17 @@ LIBGTK4_CONF_OPTS += -Dintrospection=disabled
> endif
>
> ifeq ($(BR2_PACKAGE_LIBGTK4_X11),y)
> -LIBGTK4_DEPENDENCIES += xlib_libXcursor xlib_libXi xlib_libXinerama
> +LIBGTK4_DEPENDENCIES += \
> + fontconfig \
> + xlib_libX11 \
> + xlib_libXcursor \
> + xlib_libXdamage \
> + xlib_libXext \
> + xlib_libXfixes \
> + xlib_libXi \
> + xlib_libXinerama \
> + xlib_libXrandr \
> + xlib_libXrender
All these new packages need to be selected in Config.in. Also, is this
related to the bump, or already the case with the current version of
libgtk4 in Buildroot?
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:[~2026-11-01 16:43 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-31 18:36 [Buildroot] [PATCH v1 1/2] package/libglib2: bump to version 2.90.1 Thomas Devoogdt
2026-10-31 18:36 ` [Buildroot] [PATCH v1 2/2] package/libgtk4: bump to version 4.24.1 Thomas Devoogdt
2026-11-01 16:43 ` Thomas Petazzoni via buildroot [this message]
2026-11-02 16:05 ` [Buildroot] [PATCH v2] package/libgtk4: add missing direct dependencies Thomas Devoogdt
2026-11-02 16:05 ` [Buildroot] [PATCH v2] package/libgtk4: bump to version 4.24.1 Thomas Devoogdt
2026-11-04 20:32 ` Thomas Petazzoni via buildroot
2026-11-02 16:05 ` [Buildroot] [PATCH v2] package/libgtk3: add missing direct dependencies Thomas Devoogdt
2026-11-04 20:34 ` Thomas Petazzoni via buildroot
2026-11-04 22:14 ` Thomas Devoogdt
2026-11-04 22:15 ` Thomas Devoogdt
2026-11-04 20:31 ` [Buildroot] [PATCH v2] package/libgtk4: " Thomas Petazzoni via buildroot
2026-11-04 21:53 ` Thomas Devoogdt
2026-11-04 22:42 ` Thomas Petazzoni via buildroot
2026-11-01 16:39 ` [Buildroot] [PATCH v1 1/2] package/libglib2: bump to version 2.90.1 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=audrTUDPjZfZpyNG@windsurf \
--to=buildroot@buildroot.org \
--cc=fontaine.fabrice@gmail.com \
--cc=thomas.petazzoni@bootlin.com \
--cc=thomas@devoogdt.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.