package/flutter-engine: fix build with pango >= 1.58.0

Buildroot commit c3aa677456 bumped pango
to 1.58.0 causing a build error with flutter-engine

../../flutter/shell/platform/linux/fl_accessible_text_field.cc:9:1:
 error: redefinition of 'glib_autoptr_clear_PangoContext'
    9 | G_DEFINE_AUTOPTR_CLEANUP_FUNC(PangoContext, g_object_unref)

../../flutter/shell/platform/linux/fl_accessible_text_field.cc:60:3:
 error: 'cleanup' argument is not a function
   60 |   g_autoptr(PangoContext) context = get_pango_context(self);

with this defconfig:

BR2_x86_64=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_PACKAGE_MESA3D=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SOFTPIPE=y
BR2_PACKAGE_MESA3D_OPENGL_EGL=y
BR2_PACKAGE_MESA3D_OPENGL_ES=y
BR2_PACKAGE_FLUTTER_ENGINE=y
BR2_PACKAGE_LIBGTK3=y

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
Signed-off-by: Julien Olivain <ju.o@free.fr>
This commit is contained in:
Bernd Kuhls
2026-09-22 23:04:50 +02:00
committed by Julien Olivain
parent 4919a5fecf
commit 08b06173bd

View File

@@ -0,0 +1,33 @@
From f1c316430713ae7d526f8abc1621b09958aef281 Mon Sep 17 00:00:00 2001
From: Bernd Kuhls <bernd@kuhls.net>
Date: Mon, 21 Sep 2026 22:06:06 +0200
Subject: [PATCH] Fix building on Pango 1.58.0
This version added the autoptr macros which we no longer need to define.
Upstream: https://github.com/flutter/flutter/pull/193119
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
.../flutter/shell/platform/linux/fl_accessible_text_field.cc | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/engine/src/flutter/shell/platform/linux/fl_accessible_text_field.cc b/engine/src/flutter/shell/platform/linux/fl_accessible_text_field.cc
index e99b123bbfd..f7955a32f07 100644
--- a/engine/src/flutter/shell/platform/linux/fl_accessible_text_field.cc
+++ b/engine/src/flutter/shell/platform/linux/fl_accessible_text_field.cc
@@ -6,7 +6,11 @@
#include "flutter/shell/platform/linux/public/flutter_linux/fl_standard_message_codec.h"
#include "flutter/shell/platform/linux/public/flutter_linux/fl_value.h"
+// PangoContext g_autoptr macro weren't added until 1.58.0. Add them manually.
+// https://gitlab.gnome.org/GNOME/pango/-/commit/223b147
+#if !PANGO_VERSION_CHECK(1, 58, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC(PangoContext, g_object_unref)
+#endif
// PangoLayout g_autoptr macro weren't added until 1.49.4. Add them manually.
// https://gitlab.gnome.org/GNOME/pango/-/commit/0b84e14
#if !PANGO_VERSION_CHECK(1, 49, 4)
--
2.47.3