| Message ID | 20260922072619.228493-3-f_l_k@t-online.de |
|---|---|
| State | Under Review |
| Headers | show |
| Series | [meta-gnome,PATCHv2,1/3] rclone: add recipe | expand |
when built for qemuarm64 on an arm64 build host it ends up with https://errors.yoctoproject.org/Errors/Details/972887/ On Tue, Sep 22, 2026 at 12:26 AM Markus Volk via lists.openembedded.org <f_l_k=t-online.de@lists.openembedded.org> wrote: > Convey is a fork of geary ported to GTK4, libadwaita, gcr-4 and > webkitgtk 6.0. The patches keep build paths out of the binary, drop > host checks that do not apply when cross-compiling and let the vala-unit > subproject find g-ir-compiler through the cross file. > > AI-Generated: Uses Claude Code (Claude Fable 5.1) > Signed-off-by: Markus Volk <f_l_k@t-online.de> > --- > ...-not-store-build-paths-in-the-binary.patch | 40 +++++++++++++ > ...ck-for-the-iso-xml-files-and-the-C.u.patch | 39 ++++++++++++ > ...k-up-g-ir-compiler-with-find_program.patch | 34 +++++++++++ > .../convey/convey_50.2.bb | 59 +++++++++++++++++++ > 4 files changed, 172 insertions(+) > create mode 100644 > meta-gnome/recipes-connectivity/convey/convey/0001-meson-do-not-store-build-paths-in-the-binary.patch > create mode 100644 > meta-gnome/recipes-connectivity/convey/convey/0002-meson-do-not-check-for-the-iso-xml-files-and-the-C.u.patch > create mode 100644 > meta-gnome/recipes-connectivity/convey/convey/0003-vala-unit-look-up-g-ir-compiler-with-find_program.patch > create mode 100644 meta-gnome/recipes-connectivity/convey/convey_50.2.bb > > diff --git > a/meta-gnome/recipes-connectivity/convey/convey/0001-meson-do-not-store-build-paths-in-the-binary.patch > b/meta-gnome/recipes-connectivity/convey/convey/0001-meson-do-not-store-build-paths-in-the-binary.patch > new file mode 100644 > index 0000000000..91e21fd0ec > --- /dev/null > +++ > b/meta-gnome/recipes-connectivity/convey/convey/0001-meson-do-not-store-build-paths-in-the-binary.patch > @@ -0,0 +1,40 @@ > +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 > +From: Markus Volk <f_l_k@t-online.de> > +Date: Tue, 22 Sep 2026 07:43:41 +0200 > +Subject: [PATCH] meson: do not store build paths in the binary > + > +The build root and source root are only used when convey runs > +uninstalled, but storing them puts TMPDIR into the binary and breaks > +reproducibility. Point them to /usr/src and the schema directory to the > +installed location instead. > + > +AI-Generated: Uses Claude Code (Claude Fable 5.1) > +Upstream-Status: Inappropriate [oe-specific] > +--- > + src/meson.build | 6 +++--- > + 1 file changed, 3 insertions(+), 3 deletions(-) > + > +diff --git a/src/meson.build b/src/meson.build > +index 87690ada..ce722126 100644 > +--- a/src/meson.build > ++++ b/src/meson.build > +@@ -4,8 +4,8 @@ conf = configuration_data() > + conf.set_quoted('GETTEXT_PACKAGE', meson.project_name()) > + conf.set_quoted('G_LOG_DOMAIN', meson.project_name()) > + conf.set_quoted('APP_ID', convey_id) > +-conf.set_quoted('BUILD_ROOT_DIR', meson.project_build_root()) > +-conf.set_quoted('GSETTINGS_DIR', meson.project_build_root() / 'desktop') > ++conf.set_quoted('BUILD_ROOT_DIR', '/usr/src') > ++conf.set_quoted('GSETTINGS_DIR', data_dir / 'glib-2.0' / 'schemas') > + conf.set_quoted('INSTALL_PREFIX', convey_prefix) > + conf.set_quoted('ISO_CODE_3166_XML', iso_3166_xml) > + conf.set_quoted('ISO_CODE_639_XML', iso_639_xml) > +@@ -14,7 +14,7 @@ conf.set_quoted('NAME_SUFFIX', name_suffix) > + conf.set_quoted('PLUGINS_DIR', plugins_dir) > + conf.set_quoted('PROFILE', profile) > + conf.set_quoted('REVNO', revno) > +-conf.set_quoted('SOURCE_ROOT_DIR', meson.project_source_root()) > ++conf.set_quoted('SOURCE_ROOT_DIR', '/usr/src') > + conf.set_quoted('VERSION', convey_version) > + conf.set_quoted('WEB_EXTENSIONS_DIR', web_extensions_dir) > + config_h = configure_file(output: 'config.h', configuration: conf) > diff --git > a/meta-gnome/recipes-connectivity/convey/convey/0002-meson-do-not-check-for-the-iso-xml-files-and-the-C.u.patch > b/meta-gnome/recipes-connectivity/convey/convey/0002-meson-do-not-check-for-the-iso-xml-files-and-the-C.u.patch > new file mode 100644 > index 0000000000..15836a7c52 > --- /dev/null > +++ > b/meta-gnome/recipes-connectivity/convey/convey/0002-meson-do-not-check-for-the-iso-xml-files-and-the-C.u.patch > @@ -0,0 +1,39 @@ > +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 > +From: Markus Volk <f_l_k@t-online.de> > +Date: Tue, 22 Sep 2026 09:15:56 +0200 > +Subject: [PATCH] meson: do not check for the iso xml files and the C.utf8 > + locale during build > + > +The iso xml files are needed at runtime and live in the staging area > +when cross-compiling, and the locale check runs the host's locale > +command against the host's locales. Neither says anything about the > +target, so drop both build-time checks. > + > +AI-Generated: Uses Claude Code (Claude Fable 5.1) > +Upstream-Status: Pending > +--- > + meson.build | 11 ----------- > + 1 file changed, 11 deletions(-) > + > +diff --git a/meson.build b/meson.build > +index dfd919a7..51ab9015 100644 > +--- a/meson.build > ++++ b/meson.build > +@@ -195,17 +195,6 @@ if iso_3166_xml == '' > + iso_3166_xml = iso_codes_dir / 'iso_3166.xml' > + endif > + > +-files(iso_639_xml, iso_3166_xml) # Check to make sure these exist > +- > +-# Make sure the locale C.UTF-8 is installed on the system > +- > +-c_utf8_check = run_command('locale', '-a', check: true).stdout() > +-have_c_utf8 = 'C.utf8' in c_utf8_check.split('\n') > +- > +-if not have_c_utf8 > +- warning('C.utf8 locale not available on this system.') > +-endif > +- > + # Post-install script > + gnome.post_install( > + gtk_update_icon_cache: true, > diff --git > a/meta-gnome/recipes-connectivity/convey/convey/0003-vala-unit-look-up-g-ir-compiler-with-find_program.patch > b/meta-gnome/recipes-connectivity/convey/convey/0003-vala-unit-look-up-g-ir-compiler-with-find_program.patch > new file mode 100644 > index 0000000000..a07887c67c > --- /dev/null > +++ > b/meta-gnome/recipes-connectivity/convey/convey/0003-vala-unit-look-up-g-ir-compiler-with-find_program.patch > @@ -0,0 +1,34 @@ > +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 > +From: Markus Volk <f_l_k@t-online.de> > +Date: Tue, 22 Sep 2026 09:15:10 +0200 > +Subject: [PATCH] vala-unit: look up g-ir-compiler with find_program > + > +The path taken from the g_ir_compiler pkg-config variable is the > +target path and is not usable when cross-compiling. find_program > +honours the cross file, which is where the wrapper is set. > + > +AI-Generated: Uses Claude Code (Claude Fable 5.1) > +Upstream-Status: Pending > +--- > + subprojects/vala-unit/meson.build | 8 +------- > + 1 file changed, 1 insertion(+), 7 deletions(-) > + > +diff --git a/subprojects/vala-unit/meson.build > b/subprojects/vala-unit/meson.build > +index a1822aa8..d04cc307 100644 > +--- a/subprojects/vala-unit/meson.build > ++++ b/subprojects/vala-unit/meson.build > +@@ -31,13 +31,7 @@ gee = dependency('gee-0.8') > + gio = dependency('gio-2.0') > + glib = dependency('glib-2.0', version: '>=' + target_glib) > + gobject = dependency('gobject-2.0') > +-gobject_introspection = dependency('gobject-introspection-1.0', > required: false) > +- > +-if gobject_introspection.found() > +- g_ir_compiler = gobject_introspection.get_variable('g_ir_compiler') > +-else > +- g_ir_compiler = find_program('g-ir-compiler') > +-endif > ++g_ir_compiler = find_program('g-ir-compiler') > + if enable_valadoc > + valadoc = find_program('valadoc') > + endif > diff --git a/meta-gnome/recipes-connectivity/convey/convey_50.2.bb > b/meta-gnome/recipes-connectivity/convey/convey_50.2.bb > new file mode 100644 > index 0000000000..2a28f5aef5 > --- /dev/null > +++ b/meta-gnome/recipes-connectivity/convey/convey_50.2.bb > @@ -0,0 +1,59 @@ > +SUMMARY = "Email application built around conversations for the GNOME > desktop" > +HOMEPAGE = "https://gitlab.gnome.org/donnybeelo/convey" > +SECTION = "network" > +LICENSE = "LGPL-2.1-only" > +LIC_FILES_CHKSUM = "file://COPYING;md5=2a2244d5a13871ad950c55877546a6a2" > + > +DEPENDS = " \ > + appstream-native \ > + cairo \ > + desktop-file-utils-native \ > + enchant2 \ > + folks \ > + gcr \ > + gmime \ > + gnome-online-accounts \ > + gstreamer1.0 \ > + gstreamer1.0-plugins-bad \ > + gtk4 \ > + icu \ > + iso-codes \ > + json-glib \ > + libadwaita \ > + libpeas \ > + libsecret \ > + libsoup \ > + libstemmer \ > + libxml2 \ > + sqlite3 \ > + webkitgtk \ > +" > + > +inherit meson pkgconfig mime-xdg gsettings gtk-icon-cache > gobject-introspection gnome-help vala features_check > + > +SRC_URI = " \ > + git:// > gitlab.gnome.org/donnybeelo/convey.git;protocol=https;branch=main;tag=${PV}-1 > <http://gitlab.gnome.org/donnybeelo/convey.git;protocol=https;branch=main;tag=$%7BPV%7D-1> > \ > + file://0001-meson-do-not-store-build-paths-in-the-binary.patch \ > + > file://0002-meson-do-not-check-for-the-iso-xml-files-and-the-C.u.patch \ > + file://0003-vala-unit-look-up-g-ir-compiler-with-find_program.patch \ > +" > +SRCREV = "2a0b661bf1d7fde57b6dfcb7e09ce33d7b4b9f42" > + > +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data opengl" > + > +GTKIC_VERSION = "4" > +GIR_MESON_OPTION = "" > + > +EXTRA_OEMESON = " \ > + -Dprofile=release \ > + -Drevno=${PV} \ > + -Diso_639_xml=${datadir}/xml/iso-codes/iso_639.xml \ > + -Diso_3166_xml=${datadir}/xml/iso-codes/iso_3166.xml \ > + -Dvaladoc=disabled \ > +" > + > +PACKAGECONFIG ??= "" > +PACKAGECONFIG[libunwind] = > "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind" > +PACKAGECONFIG[tnef] = "-Dtnef=enabled,-Dtnef=disabled,libytnef" > + > +FILES:${PN} += "${datadir}" > -- > 2.55.0 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#130175): > https://lists.openembedded.org/g/openembedded-devel/message/130175 > Mute This Topic: https://lists.openembedded.org/mt/121371091/1997914 > Group Owner: openembedded-devel+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [ > raj.khem@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- > >
diff --git a/meta-gnome/recipes-connectivity/convey/convey/0001-meson-do-not-store-build-paths-in-the-binary.patch b/meta-gnome/recipes-connectivity/convey/convey/0001-meson-do-not-store-build-paths-in-the-binary.patch new file mode 100644 index 0000000000..91e21fd0ec --- /dev/null +++ b/meta-gnome/recipes-connectivity/convey/convey/0001-meson-do-not-store-build-paths-in-the-binary.patch @@ -0,0 +1,40 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Markus Volk <f_l_k@t-online.de> +Date: Tue, 22 Sep 2026 07:43:41 +0200 +Subject: [PATCH] meson: do not store build paths in the binary + +The build root and source root are only used when convey runs +uninstalled, but storing them puts TMPDIR into the binary and breaks +reproducibility. Point them to /usr/src and the schema directory to the +installed location instead. + +AI-Generated: Uses Claude Code (Claude Fable 5.1) +Upstream-Status: Inappropriate [oe-specific] +--- + src/meson.build | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/meson.build b/src/meson.build +index 87690ada..ce722126 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -4,8 +4,8 @@ conf = configuration_data() + conf.set_quoted('GETTEXT_PACKAGE', meson.project_name()) + conf.set_quoted('G_LOG_DOMAIN', meson.project_name()) + conf.set_quoted('APP_ID', convey_id) +-conf.set_quoted('BUILD_ROOT_DIR', meson.project_build_root()) +-conf.set_quoted('GSETTINGS_DIR', meson.project_build_root() / 'desktop') ++conf.set_quoted('BUILD_ROOT_DIR', '/usr/src') ++conf.set_quoted('GSETTINGS_DIR', data_dir / 'glib-2.0' / 'schemas') + conf.set_quoted('INSTALL_PREFIX', convey_prefix) + conf.set_quoted('ISO_CODE_3166_XML', iso_3166_xml) + conf.set_quoted('ISO_CODE_639_XML', iso_639_xml) +@@ -14,7 +14,7 @@ conf.set_quoted('NAME_SUFFIX', name_suffix) + conf.set_quoted('PLUGINS_DIR', plugins_dir) + conf.set_quoted('PROFILE', profile) + conf.set_quoted('REVNO', revno) +-conf.set_quoted('SOURCE_ROOT_DIR', meson.project_source_root()) ++conf.set_quoted('SOURCE_ROOT_DIR', '/usr/src') + conf.set_quoted('VERSION', convey_version) + conf.set_quoted('WEB_EXTENSIONS_DIR', web_extensions_dir) + config_h = configure_file(output: 'config.h', configuration: conf) diff --git a/meta-gnome/recipes-connectivity/convey/convey/0002-meson-do-not-check-for-the-iso-xml-files-and-the-C.u.patch b/meta-gnome/recipes-connectivity/convey/convey/0002-meson-do-not-check-for-the-iso-xml-files-and-the-C.u.patch new file mode 100644 index 0000000000..15836a7c52 --- /dev/null +++ b/meta-gnome/recipes-connectivity/convey/convey/0002-meson-do-not-check-for-the-iso-xml-files-and-the-C.u.patch @@ -0,0 +1,39 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Markus Volk <f_l_k@t-online.de> +Date: Tue, 22 Sep 2026 09:15:56 +0200 +Subject: [PATCH] meson: do not check for the iso xml files and the C.utf8 + locale during build + +The iso xml files are needed at runtime and live in the staging area +when cross-compiling, and the locale check runs the host's locale +command against the host's locales. Neither says anything about the +target, so drop both build-time checks. + +AI-Generated: Uses Claude Code (Claude Fable 5.1) +Upstream-Status: Pending +--- + meson.build | 11 ----------- + 1 file changed, 11 deletions(-) + +diff --git a/meson.build b/meson.build +index dfd919a7..51ab9015 100644 +--- a/meson.build ++++ b/meson.build +@@ -195,17 +195,6 @@ if iso_3166_xml == '' + iso_3166_xml = iso_codes_dir / 'iso_3166.xml' + endif + +-files(iso_639_xml, iso_3166_xml) # Check to make sure these exist +- +-# Make sure the locale C.UTF-8 is installed on the system +- +-c_utf8_check = run_command('locale', '-a', check: true).stdout() +-have_c_utf8 = 'C.utf8' in c_utf8_check.split('\n') +- +-if not have_c_utf8 +- warning('C.utf8 locale not available on this system.') +-endif +- + # Post-install script + gnome.post_install( + gtk_update_icon_cache: true, diff --git a/meta-gnome/recipes-connectivity/convey/convey/0003-vala-unit-look-up-g-ir-compiler-with-find_program.patch b/meta-gnome/recipes-connectivity/convey/convey/0003-vala-unit-look-up-g-ir-compiler-with-find_program.patch new file mode 100644 index 0000000000..a07887c67c --- /dev/null +++ b/meta-gnome/recipes-connectivity/convey/convey/0003-vala-unit-look-up-g-ir-compiler-with-find_program.patch @@ -0,0 +1,34 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Markus Volk <f_l_k@t-online.de> +Date: Tue, 22 Sep 2026 09:15:10 +0200 +Subject: [PATCH] vala-unit: look up g-ir-compiler with find_program + +The path taken from the g_ir_compiler pkg-config variable is the +target path and is not usable when cross-compiling. find_program +honours the cross file, which is where the wrapper is set. + +AI-Generated: Uses Claude Code (Claude Fable 5.1) +Upstream-Status: Pending +--- + subprojects/vala-unit/meson.build | 8 +------- + 1 file changed, 1 insertion(+), 7 deletions(-) + +diff --git a/subprojects/vala-unit/meson.build b/subprojects/vala-unit/meson.build +index a1822aa8..d04cc307 100644 +--- a/subprojects/vala-unit/meson.build ++++ b/subprojects/vala-unit/meson.build +@@ -31,13 +31,7 @@ gee = dependency('gee-0.8') + gio = dependency('gio-2.0') + glib = dependency('glib-2.0', version: '>=' + target_glib) + gobject = dependency('gobject-2.0') +-gobject_introspection = dependency('gobject-introspection-1.0', required: false) +- +-if gobject_introspection.found() +- g_ir_compiler = gobject_introspection.get_variable('g_ir_compiler') +-else +- g_ir_compiler = find_program('g-ir-compiler') +-endif ++g_ir_compiler = find_program('g-ir-compiler') + if enable_valadoc + valadoc = find_program('valadoc') + endif diff --git a/meta-gnome/recipes-connectivity/convey/convey_50.2.bb b/meta-gnome/recipes-connectivity/convey/convey_50.2.bb new file mode 100644 index 0000000000..2a28f5aef5 --- /dev/null +++ b/meta-gnome/recipes-connectivity/convey/convey_50.2.bb @@ -0,0 +1,59 @@ +SUMMARY = "Email application built around conversations for the GNOME desktop" +HOMEPAGE = "https://gitlab.gnome.org/donnybeelo/convey" +SECTION = "network" +LICENSE = "LGPL-2.1-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=2a2244d5a13871ad950c55877546a6a2" + +DEPENDS = " \ + appstream-native \ + cairo \ + desktop-file-utils-native \ + enchant2 \ + folks \ + gcr \ + gmime \ + gnome-online-accounts \ + gstreamer1.0 \ + gstreamer1.0-plugins-bad \ + gtk4 \ + icu \ + iso-codes \ + json-glib \ + libadwaita \ + libpeas \ + libsecret \ + libsoup \ + libstemmer \ + libxml2 \ + sqlite3 \ + webkitgtk \ +" + +inherit meson pkgconfig mime-xdg gsettings gtk-icon-cache gobject-introspection gnome-help vala features_check + +SRC_URI = " \ + git://gitlab.gnome.org/donnybeelo/convey.git;protocol=https;branch=main;tag=${PV}-1 \ + file://0001-meson-do-not-store-build-paths-in-the-binary.patch \ + file://0002-meson-do-not-check-for-the-iso-xml-files-and-the-C.u.patch \ + file://0003-vala-unit-look-up-g-ir-compiler-with-find_program.patch \ +" +SRCREV = "2a0b661bf1d7fde57b6dfcb7e09ce33d7b4b9f42" + +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data opengl" + +GTKIC_VERSION = "4" +GIR_MESON_OPTION = "" + +EXTRA_OEMESON = " \ + -Dprofile=release \ + -Drevno=${PV} \ + -Diso_639_xml=${datadir}/xml/iso-codes/iso_639.xml \ + -Diso_3166_xml=${datadir}/xml/iso-codes/iso_3166.xml \ + -Dvaladoc=disabled \ +" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[libunwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind" +PACKAGECONFIG[tnef] = "-Dtnef=enabled,-Dtnef=disabled,libytnef" + +FILES:${PN} += "${datadir}"
Convey is a fork of geary ported to GTK4, libadwaita, gcr-4 and webkitgtk 6.0. The patches keep build paths out of the binary, drop host checks that do not apply when cross-compiling and let the vala-unit subproject find g-ir-compiler through the cross file. AI-Generated: Uses Claude Code (Claude Fable 5.1) Signed-off-by: Markus Volk <f_l_k@t-online.de> --- ...-not-store-build-paths-in-the-binary.patch | 40 +++++++++++++ ...ck-for-the-iso-xml-files-and-the-C.u.patch | 39 ++++++++++++ ...k-up-g-ir-compiler-with-find_program.patch | 34 +++++++++++ .../convey/convey_50.2.bb | 59 +++++++++++++++++++ 4 files changed, 172 insertions(+) create mode 100644 meta-gnome/recipes-connectivity/convey/convey/0001-meson-do-not-store-build-paths-in-the-binary.patch create mode 100644 meta-gnome/recipes-connectivity/convey/convey/0002-meson-do-not-check-for-the-iso-xml-files-and-the-C.u.patch create mode 100644 meta-gnome/recipes-connectivity/convey/convey/0003-vala-unit-look-up-g-ir-compiler-with-find_program.patch create mode 100644 meta-gnome/recipes-connectivity/convey/convey_50.2.bb