Message ID | 20230220090923.2155635-2-thomas.devoogdt@barco.com |
---|---|
State | Superseded, archived |
Headers | show |
Series | [v1,1/3] Revert "xorg-server: not available with musl on ARM" | expand |
>>>>> "Thomas" == Thomas Devoogdt <thomas@devoogdt.com> writes: > The reason why it was not used was that at-spi2-core and at-spi2-atk were not available, > since then, it is, so drop this patch. This will also avoid warnings in webkitgtk. > Signed-off-by: Thomas Devoogdt <thomas.devoogdt@barco.com> > --- > package/libgtk3/0001-disable-atk-bridge.patch | 41 ------------------- > package/libgtk3/Config.in | 2 + > package/libgtk3/libgtk3.mk | 4 +- > 3 files changed, 4 insertions(+), 43 deletions(-) > delete mode 100644 package/libgtk3/0001-disable-atk-bridge.patch > diff --git a/package/libgtk3/0001-disable-atk-bridge.patch b/package/libgtk3/0001-disable-atk-bridge.patch > deleted file mode 100644 > index f3e9bff2ba..0000000000 > --- a/package/libgtk3/0001-disable-atk-bridge.patch > +++ /dev/null > @@ -1,41 +0,0 @@ > -Remove atk-bridge support. > - > -atk-bridge doesn't seem useful for now in Buildroot and requires to > -add two new packages just for it: at-spi2-core and at-spi2-atk. > - > -Signed-off-by: Hadrien Boutteville <hadrien.boutteville@gmail.com> > - > ---- a/gtk/a11y/gtkaccessibility.c > -+++ b/gtk/a11y/gtkaccessibility.c > -@@ -37,10 +37,6 @@ > - #include <gtk/gtktogglebutton.h> > - #include <gtk/gtkaccessible.h> > - > --#ifdef GDK_WINDOWING_X11 > --#include <atk-bridge.h> > --#endif > -- > - static gboolean gail_focus_watcher (GSignalInvocationHint *ihint, > - guint n_param_values, > - const GValue *param_values, > -@@ -988,9 +984,5 @@ _gtk_accessibility_init (void) > - _gtk_accessibility_override_atk_util (); > - do_window_event_initialization (); > - > --#ifdef GDK_WINDOWING_X11 > -- atk_bridge_adaptor_init (NULL, NULL); > --#endif > -- > - atk_misc_instance = g_object_new (GTK_TYPE_MISC_IMPL, NULL); > - } > ---- a/meson.build > -+++ b/meson.build > -@@ -564,7 +564,7 @@ if x11_enabled > - xfixes_dep = dependency('xfixes', required: false) > - xcomposite_dep = dependency('xcomposite', required: false) > - fontconfig_dep = dependency('fontconfig', fallback: ['fontconfig', 'fontconfig_dep']) > -- atkbridge_dep = dependency('atk-bridge-2.0', version: at_spi2_atk_req) > -+ atkbridge_dep = dependency('atk-bridge-2.0', version: at_spi2_atk_req, required: false) > - > - backend_immodules += ['xim'] > - > diff --git a/package/libgtk3/Config.in b/package/libgtk3/Config.in > index 82ca68d2da..d921f79226 100644 > --- a/package/libgtk3/Config.in > +++ b/package/libgtk3/Config.in > @@ -24,6 +24,8 @@ config BR2_PACKAGE_LIBGTK3 > depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND || \ > BR2_PACKAGE_HAS_LIBGL > select BR2_PACKAGE_ATK > + select BR2_PACKAGE_AT_SPI2_ATK > + select BR2_PACKAGE_AT_SPI2_CORE at-spi2-core depends on xorg7 / xlib-libXtst, so that would mean that we would pull that in even for libgtk3 builds with the broadway/wayland backends, is that sensible? Maybe it is? Does at-spi2 work under wayland?
Hi, I see that X11 support is optional and is automatically detected: https://github.com/GNOME/at-spi2-core/blob/main/meson_options.txt#L31-L34 So it would be better to append a commit to this one to remove the Xorg dependency on at-spi2-core. Kr, Thomas Devoogdt Op ma 20 feb. 2023 om 18:22 schreef Peter Korsgaard <peter@korsgaard.com>: > > >>>>> "Thomas" == Thomas Devoogdt <thomas@devoogdt.com> writes: > > > The reason why it was not used was that at-spi2-core and at-spi2-atk were not available, > > since then, it is, so drop this patch. This will also avoid warnings in webkitgtk. > > > Signed-off-by: Thomas Devoogdt <thomas.devoogdt@barco.com> > > --- > > package/libgtk3/0001-disable-atk-bridge.patch | 41 ------------------- > > package/libgtk3/Config.in | 2 + > > package/libgtk3/libgtk3.mk | 4 +- > > 3 files changed, 4 insertions(+), 43 deletions(-) > > delete mode 100644 package/libgtk3/0001-disable-atk-bridge.patch > > > diff --git a/package/libgtk3/0001-disable-atk-bridge.patch b/package/libgtk3/0001-disable-atk-bridge.patch > > deleted file mode 100644 > > index f3e9bff2ba..0000000000 > > --- a/package/libgtk3/0001-disable-atk-bridge.patch > > +++ /dev/null > > @@ -1,41 +0,0 @@ > > -Remove atk-bridge support. > > - > > -atk-bridge doesn't seem useful for now in Buildroot and requires to > > -add two new packages just for it: at-spi2-core and at-spi2-atk. > > - > > -Signed-off-by: Hadrien Boutteville <hadrien.boutteville@gmail.com> > > - > > ---- a/gtk/a11y/gtkaccessibility.c > > -+++ b/gtk/a11y/gtkaccessibility.c > > -@@ -37,10 +37,6 @@ > > - #include <gtk/gtktogglebutton.h> > > - #include <gtk/gtkaccessible.h> > > - > > --#ifdef GDK_WINDOWING_X11 > > --#include <atk-bridge.h> > > --#endif > > -- > > - static gboolean gail_focus_watcher (GSignalInvocationHint *ihint, > > - guint n_param_values, > > - const GValue *param_values, > > -@@ -988,9 +984,5 @@ _gtk_accessibility_init (void) > > - _gtk_accessibility_override_atk_util (); > > - do_window_event_initialization (); > > - > > --#ifdef GDK_WINDOWING_X11 > > -- atk_bridge_adaptor_init (NULL, NULL); > > > --#endif > > -- > > - atk_misc_instance = g_object_new (GTK_TYPE_MISC_IMPL, NULL); > > - } > > ---- a/meson.build > > -+++ b/meson.build > > -@@ -564,7 +564,7 @@ if x11_enabled > > - xfixes_dep = dependency('xfixes', required: false) > > - xcomposite_dep = dependency('xcomposite', required: false) > > - fontconfig_dep = dependency('fontconfig', fallback: ['fontconfig', 'fontconfig_dep']) > > -- atkbridge_dep = dependency('atk-bridge-2.0', version: at_spi2_atk_req) > > -+ atkbridge_dep = dependency('atk-bridge-2.0', version: at_spi2_atk_req, required: false) > > - > > - backend_immodules += ['xim'] > > - > > > diff --git a/package/libgtk3/Config.in b/package/libgtk3/Config.in > > index 82ca68d2da..d921f79226 100644 > > --- a/package/libgtk3/Config.in > > +++ b/package/libgtk3/Config.in > > @@ -24,6 +24,8 @@ config BR2_PACKAGE_LIBGTK3 > > depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND || \ > > BR2_PACKAGE_HAS_LIBGL > > select BR2_PACKAGE_ATK > > + select BR2_PACKAGE_AT_SPI2_ATK > > + select BR2_PACKAGE_AT_SPI2_CORE > > at-spi2-core depends on xorg7 / xlib-libXtst, so that would mean that we > would pull that in even for libgtk3 builds with the broadway/wayland > backends, is that sensible? > > Maybe it is? Does at-spi2 work under wayland? > > -- > Bye, Peter Korsgaard >
>>>>> "Thomas" == Thomas Devoogdt <thomas@devoogdt.com> writes: > Hi, > I see that X11 support is optional and is automatically detected: > https://github.com/GNOME/at-spi2-core/blob/main/meson_options.txt#L31-L34 > So it would be better to append a commit to this one to remove the > Xorg dependency on at-spi2-core. Thanks, care to send a patch for that?
On Mon, 20 Feb 2023 18:22:16 +0100 Peter Korsgaard <peter@korsgaard.com> wrote: > at-spi2-core depends on xorg7 / xlib-libXtst, so that would mean that we > would pull that in even for libgtk3 builds with the broadway/wayland > backends, is that sensible? > > Maybe it is? Does at-spi2 work under wayland? Please note that we also have a series that removes atk, at-spi2-atk, and bumps at-spi2-core, which now replaces both atk and at-spi2-atk: https://patchwork.ozlabs.org/project/buildroot/list/?series=336254 Best regards, Thomas
On 20/02/2023 21.49, Thomas Petazzoni wrote: >> Maybe it is? Does at-spi2 work under wayland? > > Please note that we also have a series that removes atk, at-spi2-atk, > and bumps at-spi2-core, which now replaces both atk and at-spi2-atk: > > https://patchwork.ozlabs.org/project/buildroot/list/?series=336254 Ahh yes, that is probably the way to go.
Hi The reason for this patch was to fix this bug: ``` Package 'atk-bridge-2.0', required by 'gtk+-3.0', not found Package atk-bridge-2.0 was not found in the pkg-config search path. Perhaps you should add the directory containing `atk-bridge-2.0.pc' to the PKG_CONFIG_PATH environment variable ``` Right now, the upstream 2.38.5 is not compiling (or at least not my branch which is rebased on 2023.02-rc1). So it will be important to have the proposed patch series from Thomas Petazzoni merged into the master before 2023.02 lands. My original patch can be dropped then. Also, it would require Xorg to be built, even if build for e.g. Wayland. Unfortunately, I could not apply the patch series myself due to some weird encoding (UTF-16?). But if I find out how to do that, then I can double-check. Kr, Thomas ``` >>> webkitgtk 2.38.5 Building PATH="/home/thomas/buildroot/output/host/bin:/home/thomas/buildroot/output/host/sbin:/home/thomas/.local/bin:/home/thomas/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin:/home/thomas/.dotnet/tools:/home/thomas/.local/bin" /usr/bin/cmake --build /home/thomas/buildroot/output/build/webkitgtk-2.38.5/ [773/5265] Generating ../../WebCore/DerivedSources/CSSProperties.jso..., ../../WebCore/DerivedSources/CSSStyleDeclaration+PropertyNames.idl 1 input keys have identical hash values, examine output carefully... [995/5265] Building CXX object Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/API/glib/JSCOptions.cpp.o /home/thomas/buildroot/output/build/webkitgtk-2.38.5/Source/JavaScriptCore/API/glib/JSCOptions.cpp: In function ‘GOptionGroup* jsc_options_get_option_group()’: /home/thomas/buildroot/output/build/webkitgtk-2.38.5/Source/JavaScriptCore/API/glib/JSCOptions.cpp:703:84: warning: cast from ‘gchar*’ {aka ‘char*’} to ‘GOptionEntry*’ {aka ‘_GOptionEntry*’} increases required alignment of target type [-Wcast-align] g_option_group_add_entries(group, reinterpret_cast<GOptionEntry*>(entries->data)); ^ [1910/5265] Building CXX object Source/WebCore/PAL/pal/CMakeFiles/PAL.dir/text/TextCodecICU.cpp.o FAILED: Source/WebCore/PAL/pal/CMakeFiles/PAL.dir/text/TextCodecICU.cpp.o /home/thomas/buildroot/output/host/bin/arm-linux-g++ --sysroot=/home/thomas/buildroot/output/host/arm-buildroot-linux-gnueabi/sysroot -DBUILDING_GTK__=1 -DBUILDING_PAL -DBUILDING_WITH_CMAKE=1 -DGETTEXT_PACKAGE=\"WebKit2GTK-4.1\" -DHAVE_CONFIG_H=1 -DJSC_GLIB_API_ENABLED -DPAS_BMALLOC=1 -DWEBKITGTK_API_VERSION_STRING=\"4.1\" -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5 -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5/PAL/DerivedSources -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5/Source/WebCore/PAL -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5/Source/WebCore/PAL/pal -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5/Source/WebCore/PAL/pal/crypto -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5/Source/WebCore/PAL/pal/system -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5/Source/WebCore/PAL/pal/text -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5/JavaScriptCore/Headers -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5/JavaScriptCore/PrivateHeaders -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5/JavaScriptCoreGLib/Headers -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5/JavaScriptCoreGLib/DerivedSources -I/home/thomas/buildroot/output/build/webkitgtk-2.38.5/WTF/Headers -fdiagnostics-color=always -Wextra -Wall -pipe -Wno-odr -Wno-stringop-overflow -Wno-nonnull -Wno-array-bounds -Wno-expansion-to-defined -Wno-noexcept-type -Wno-psabi -Wno-misleading-indentation -Wno-maybe-uninitialized -Wwrite-strings -Wundef -Wpointer-arith -Wmissing-format-attribute -Wformat-security -Wcast-align -Wno-tautological-compare -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -g0 -fno-strict-aliasing -fno-exceptions -fno-rtti -DNDEBUG -fPIC -fvisibility=hidden -std=c++2a -MD -MT Source/WebCore/PAL/pal/CMakeFiles/PAL.dir/text/TextCodecICU.cpp.o -MF Source/WebCore/PAL/pal/CMakeFiles/PAL.dir/text/TextCodecICU.cpp.o.d -o Source/WebCore/PAL/pal/CMakeFiles/PAL.dir/text/TextCodecICU.cpp.o -c /home/thomas/buildroot/output/build/webkitgtk-2.38.5/Source/WebCore/PAL/pal/text/TextCodecICU.cpp In file included from /home/thomas/buildroot/output/build/webkitgtk-2.38.5/WTF/Headers/wtf/URL.h:31, from /home/thomas/buildroot/output/build/webkitgtk-2.38.5/Source/WebCore/PAL/pal/text/TextEncoding.h:29, from /home/thomas/buildroot/output/build/webkitgtk-2.38.5/Source/WebCore/PAL/pal/text/TextCodecICU.cpp:30: /home/thomas/buildroot/output/build/webkitgtk-2.38.5/WTF/Headers/wtf/glib/GRefPtr.h:28:10: fatal error: glib.h: No such file or directory #include <glib.h> ^~~~~~~~ compilation terminated. [1923/5265] Generating ../../inspector-resources.stamp ninja: build stopped: subcommand failed. make[1]: *** [package/pkg-generic.mk:293: /home/thomas/buildroot/output/build/webkitgtk-2.38.5/.stamp_built] Error 1 make: *** [Makefile:82: _all] Error 2 ``` Op ma 20 feb. 2023 om 21:57 schreef Peter Korsgaard <peter@korsgaard.com>: > > On 20/02/2023 21.49, Thomas Petazzoni wrote: > >> Maybe it is? Does at-spi2 work under wayland? > > > > Please note that we also have a series that removes atk, at-spi2-atk, > > and bumps at-spi2-core, which now replaces both atk and at-spi2-atk: > > > > https://patchwork.ozlabs.org/project/buildroot/list/?series=336254 > > Ahh yes, that is probably the way to go. > > -- > Bye, Peter Korsgaard > >
diff --git a/package/libgtk3/0001-disable-atk-bridge.patch b/package/libgtk3/0001-disable-atk-bridge.patch deleted file mode 100644 index f3e9bff2ba..0000000000 --- a/package/libgtk3/0001-disable-atk-bridge.patch +++ /dev/null @@ -1,41 +0,0 @@ -Remove atk-bridge support. - -atk-bridge doesn't seem useful for now in Buildroot and requires to -add two new packages just for it: at-spi2-core and at-spi2-atk. - -Signed-off-by: Hadrien Boutteville <hadrien.boutteville@gmail.com> - ---- a/gtk/a11y/gtkaccessibility.c -+++ b/gtk/a11y/gtkaccessibility.c -@@ -37,10 +37,6 @@ - #include <gtk/gtktogglebutton.h> - #include <gtk/gtkaccessible.h> - --#ifdef GDK_WINDOWING_X11 --#include <atk-bridge.h> --#endif -- - static gboolean gail_focus_watcher (GSignalInvocationHint *ihint, - guint n_param_values, - const GValue *param_values, -@@ -988,9 +984,5 @@ _gtk_accessibility_init (void) - _gtk_accessibility_override_atk_util (); - do_window_event_initialization (); - --#ifdef GDK_WINDOWING_X11 -- atk_bridge_adaptor_init (NULL, NULL); --#endif -- - atk_misc_instance = g_object_new (GTK_TYPE_MISC_IMPL, NULL); - } ---- a/meson.build -+++ b/meson.build -@@ -564,7 +564,7 @@ if x11_enabled - xfixes_dep = dependency('xfixes', required: false) - xcomposite_dep = dependency('xcomposite', required: false) - fontconfig_dep = dependency('fontconfig', fallback: ['fontconfig', 'fontconfig_dep']) -- atkbridge_dep = dependency('atk-bridge-2.0', version: at_spi2_atk_req) -+ atkbridge_dep = dependency('atk-bridge-2.0', version: at_spi2_atk_req, required: false) - - backend_immodules += ['xim'] - diff --git a/package/libgtk3/Config.in b/package/libgtk3/Config.in index 82ca68d2da..d921f79226 100644 --- a/package/libgtk3/Config.in +++ b/package/libgtk3/Config.in @@ -24,6 +24,8 @@ config BR2_PACKAGE_LIBGTK3 depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND || \ BR2_PACKAGE_HAS_LIBGL select BR2_PACKAGE_ATK + select BR2_PACKAGE_AT_SPI2_ATK + select BR2_PACKAGE_AT_SPI2_CORE select BR2_PACKAGE_CAIRO select BR2_PACKAGE_CAIRO_PS select BR2_PACKAGE_CAIRO_PDF diff --git a/package/libgtk3/libgtk3.mk b/package/libgtk3/libgtk3.mk index 283c129cef..fc2b501cb8 100644 --- a/package/libgtk3/libgtk3.mk +++ b/package/libgtk3/libgtk3.mk @@ -14,8 +14,8 @@ LIBGTK3_CPE_ID_VENDOR = gnome LIBGTK3_CPE_ID_PRODUCT = gtk LIBGTK3_INSTALL_STAGING = YES -LIBGTK3_DEPENDENCIES = host-pkgconf host-libgtk3 atk libglib2 cairo pango \ - gdk-pixbuf libepoxy $(TARGET_NLS_DEPENDENCIES) +LIBGTK3_DEPENDENCIES = host-pkgconf host-libgtk3 atk at-spi2-atk at-spi2-core libglib2 \ + cairo pango gdk-pixbuf libepoxy $(TARGET_NLS_DEPENDENCIES) ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) LIBGTK3_DEPENDENCIES += fontconfig xlib_libX11 xlib_libXext xlib_libXrandr xlib_libXrender xlib_libXi
The reason why it was not used was that at-spi2-core and at-spi2-atk were not available, since then, it is, so drop this patch. This will also avoid warnings in webkitgtk. Signed-off-by: Thomas Devoogdt <thomas.devoogdt@barco.com> --- package/libgtk3/0001-disable-atk-bridge.patch | 41 ------------------- package/libgtk3/Config.in | 2 + package/libgtk3/libgtk3.mk | 4 +- 3 files changed, 4 insertions(+), 43 deletions(-) delete mode 100644 package/libgtk3/0001-disable-atk-bridge.patch