From aabb459e19e3fd0a2f883f06ab5258119c623657 Mon Sep 17 00:00:00 2001 From: Markus Volk Date: Tue, 16 Jul 2024 11:06:55 +0200 Subject: geary: update 44.1 -> 46.0 - Remove 0001-meson-Use-PKG_CONFIG_SYSROOT_DIR-when-using-pkg-conf.patch Using it pulls buildpath into the client library and thus breaks reproducibility - Add a patch to fix more reproducibility issues - Add soup3 dependency - inherit gsettings - remove CFLAGS:append, tested to be working with clang 18.1.6 for x86_64 musl Signed-off-by: Markus Volk Signed-off-by: Khem Raj --- ...plication-client.vala-hardcode-some-paths.patch | 40 ++++++++++++++ ...KG_CONFIG_SYSROOT_DIR-when-using-pkg-conf.patch | 51 ------------------ .../recipes-connectivity/geary/geary_44.1.bb | 61 ---------------------- .../recipes-connectivity/geary/geary_46.0.bb | 58 ++++++++++++++++++++ 4 files changed, 98 insertions(+), 112 deletions(-) create mode 100644 meta-gnome/recipes-connectivity/geary/geary/0001-application-client.vala-hardcode-some-paths.patch delete mode 100644 meta-gnome/recipes-connectivity/geary/geary/0001-meson-Use-PKG_CONFIG_SYSROOT_DIR-when-using-pkg-conf.patch delete mode 100644 meta-gnome/recipes-connectivity/geary/geary_44.1.bb create mode 100644 meta-gnome/recipes-connectivity/geary/geary_46.0.bb (limited to 'meta-gnome') diff --git a/meta-gnome/recipes-connectivity/geary/geary/0001-application-client.vala-hardcode-some-paths.patch b/meta-gnome/recipes-connectivity/geary/geary/0001-application-client.vala-hardcode-some-paths.patch new file mode 100644 index 0000000000..8162e50d9b --- /dev/null +++ b/meta-gnome/recipes-connectivity/geary/geary/0001-application-client.vala-hardcode-some-paths.patch @@ -0,0 +1,40 @@ +From 98243ca43e40116c22f7b867e32ad27ffd314505 Mon Sep 17 00:00:00 2001 +From: Markus Volk +Date: Tue, 16 Jul 2024 07:30:09 +0200 +Subject: [PATCH] application-client.vala: hardcode some paths + +Otherwise the build values will be stored in the binary and used if geary was not installed +https://gitlab.gnome.org/GNOME/geary/-/blob/main/src/client/application/application-client.vala?ref_type=heads#L798 +https://gitlab.gnome.org/GNOME/geary/-/blob/main/src/client/application/application-client.vala?ref_type=heads#L365 + +This breaks reproducibility +WARNING: geary-46.0-r0 do_package_qa: QA Issue: File /usr/lib/geary/libgeary-client-46.0.so in package geary contains reference to TMPDIR [buildpaths] +WARNING: geary-46.0-r0 do_package_qa: QA Issue: File /usr/lib/geary/.debug/libgeary-client-46.0.so in package geary-dbg contains reference to TMPDIR [buildpaths] + +Upstream-Status: Inappropriate [oe-specific] + +Signed-off-by: Markus Volk +--- + src/client/application/application-client.vala | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/client/application/application-client.vala b/src/client/application/application-client.vala +index 51d0f632e..acc53a65f 100644 +--- a/src/client/application/application-client.vala ++++ b/src/client/application/application-client.vala +@@ -39,9 +39,9 @@ public class Application.Client : Gtk.Application { + + public const string VERSION = _VERSION; + public const string INSTALL_PREFIX = _INSTALL_PREFIX; +- public const string GSETTINGS_DIR = _GSETTINGS_DIR; +- public const string SOURCE_ROOT_DIR = _SOURCE_ROOT_DIR; +- public const string BUILD_ROOT_DIR = _BUILD_ROOT_DIR; ++ public const string GSETTINGS_DIR = "/usr/share/applications"; ++ public const string SOURCE_ROOT_DIR = "/usr/src"; ++ public const string BUILD_ROOT_DIR = "/usr/src"; + + // keep these in sync with meson_options.txt + public const string PROFILE_RELEASE = "release"; +-- +2.45.2 + diff --git a/meta-gnome/recipes-connectivity/geary/geary/0001-meson-Use-PKG_CONFIG_SYSROOT_DIR-when-using-pkg-conf.patch b/meta-gnome/recipes-connectivity/geary/geary/0001-meson-Use-PKG_CONFIG_SYSROOT_DIR-when-using-pkg-conf.patch deleted file mode 100644 index 1e0640a666..0000000000 --- a/meta-gnome/recipes-connectivity/geary/geary/0001-meson-Use-PKG_CONFIG_SYSROOT_DIR-when-using-pkg-conf.patch +++ /dev/null @@ -1,51 +0,0 @@ -From a300be5877f35379bb569313eec901bda9c8d762 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sun, 30 Apr 2023 22:08:39 -0700 -Subject: [PATCH] meson: Use PKG_CONFIG_SYSROOT_DIR when using pkg-config - -OE cross-builds and absolute paths found by pkg-config points to -non-sysroot'ed locations which are not correct as they point into native -sysroot from build machine which is incorrect. - -Upstream-Status: Inappropriate [OE-specific] -Signed-off-by: Khem Raj ---- - meson.build | 8 +++++--- - 1 file changed, 5 insertions(+), 3 deletions(-) - -diff --git a/meson.build b/meson.build -index d563dd08..9b72aeb4 100644 ---- a/meson.build -+++ b/meson.build -@@ -38,6 +38,9 @@ metadata_dir = meson.project_source_root() / 'bindings'/ 'metadata' - po_dir = meson.project_source_root() / 'po' - vapi_dir = meson.project_source_root() / 'bindings' / 'vapi' - -+# pkg-config sysroot location -+pkgconf_sysroot = run_command('python3', '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip() -+ - # Compiler configuration - add_project_arguments([ - # Make sure Meson can find custom VAPIs -@@ -120,7 +123,7 @@ icu_uc = declare_dependency( - if libunwind_dep.found() - # We need to add native lib to the search path for these so Flatpak - # builds can find it. -- unwind_lib = libunwind_dep.get_variable(pkgconfig: 'libdir') -+ unwind_lib = pkgconf_sysroot + libunwind_dep.get_variable(pkgconfig: 'libdir') - libunwind = declare_dependency( - dependencies: [ - valac.find_library('libunwind', dirs: [vapi_dir, unwind_lib]), -@@ -207,8 +210,7 @@ vala_unit_proj = subproject( - vala_unit_dep = vala_unit_proj.get_variable('vala_unit_dep') - - # Language detection -- --iso_codes_dir = iso_codes.get_variable(pkgconfig: 'prefix')/'share'/'xml'/'iso-codes' -+iso_codes_dir = pkgconf_sysroot + iso_codes.get_variable(pkgconfig: 'prefix')/'share'/'xml'/'iso-codes' - - iso_639_xml = get_option('iso_639_xml') - if iso_639_xml == '' --- -2.40.1 - diff --git a/meta-gnome/recipes-connectivity/geary/geary_44.1.bb b/meta-gnome/recipes-connectivity/geary/geary_44.1.bb deleted file mode 100644 index decae6b2c7..0000000000 --- a/meta-gnome/recipes-connectivity/geary/geary_44.1.bb +++ /dev/null @@ -1,61 +0,0 @@ -SUMMARY = "Geary is an email application built around conversations, for the GNOME 3 desktop." -SECTION = "network" -LICENSE = "LGPL-2.1-only" -LIC_FILES_CHKSUM = "file://COPYING;md5=2a2244d5a13871ad950c55877546a6a2" - -DEPENDS = " \ - appstream-glib \ - cairo \ - desktop-file-utils-native \ - enchant2 \ - evolution-data-server \ - folks \ - gcr3 \ - gmime \ - gnome-online-accounts \ - gsound \ - gspell \ - gtk+3 \ - icu \ - iso-codes \ - json-glib \ - libhandy \ - libical \ - libpeas \ - libsecret \ - libstemmer \ - libxml2 \ - sqlite3 \ - webkitgtk3 \ -" - -RDEPENDS:${PN} = "gnome-keyring" - -inherit meson pkgconfig mime-xdg gtk-icon-cache gobject-introspection vala features_check - -SRC_URI = " \ - git://github.com/GNOME/geary.git;nobranch=1;protocol=https \ - file://0001-meson-Use-PKG_CONFIG_SYSROOT_DIR-when-using-pkg-conf.patch \ -" - -S = "${WORKDIR}/git" -SRCREV = "37c378a563d5b1c269d57c34671edc940d1cd180" - -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" -REQUIRED_DISTRO_FEATURES = "gobject-introspection-data opengl" - -GIR_MESON_OPTION = "" -EXTRA_OEMESON = "-Dprofile=release" - -PACKAGECONFIG[libunwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind" -PACKAGECONFIG[tnef] = "-Dtnef=enabled,-Dtnef=disabled,libytnef" -PACKAGECONFIG[valadoc] = "-Dvaladoc=enabled,-Dvaladoc=disabled" - -PACKAGECONFIG ??= "" -# rfc822/rfc822-message.c:2097:12: error: incompatible pointer to integer conversion returning 'void *' from a function with result type 'gboolean' (aka 'int') [-Wint-conversion] -#| return NULL; -#| ^~~~ -CFLAGS:append:toolchain-clang = " -Wno-error=int-conversion" - -FILES:${PN} += "${datadir}" - diff --git a/meta-gnome/recipes-connectivity/geary/geary_46.0.bb b/meta-gnome/recipes-connectivity/geary/geary_46.0.bb new file mode 100644 index 0000000000..d8d48ef513 --- /dev/null +++ b/meta-gnome/recipes-connectivity/geary/geary_46.0.bb @@ -0,0 +1,58 @@ +SUMMARY = "Geary is an email application built around conversations, for the GNOME 3 desktop." +SECTION = "network" +LICENSE = "LGPL-2.1-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=2a2244d5a13871ad950c55877546a6a2" + +DEPENDS = " \ + appstream-glib \ + cairo \ + desktop-file-utils-native \ + enchant2 \ + evolution-data-server \ + folks \ + gcr3 \ + gmime \ + gnome-online-accounts \ + gsound \ + gspell \ + gtk+3 \ + icu \ + iso-codes \ + json-glib \ + libhandy \ + libical \ + libpeas \ + libsecret \ + libsoup \ + libstemmer \ + libxml2 \ + sqlite3 \ + webkitgtk3 \ +" + +RDEPENDS:${PN} = "gnome-keyring" + +inherit meson pkgconfig mime-xdg gsettings gtk-icon-cache gobject-introspection vala features_check + +SRC_URI = " \ + git://github.com/GNOME/geary.git;nobranch=1;protocol=https \ + file://0001-application-client.vala-hardcode-some-paths.patch \ +" + +S = "${WORKDIR}/git" +SRCREV = "46e93c0c0dafc381e8a308b1befb07e908121722" + +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data opengl" + +GIR_MESON_OPTION = "" +EXTRA_OEMESON = "-Dprofile=release" + +PACKAGECONFIG[libunwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind" +PACKAGECONFIG[tnef] = "-Dtnef=enabled,-Dtnef=disabled,libytnef" +PACKAGECONFIG[valadoc] = "-Dvaladoc=enabled,-Dvaladoc=disabled" + +PACKAGECONFIG ??= "" + +FILES:${PN} += "${datadir}" + -- cgit v1.2.3-54-g00ecf