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 <f_l_k@t-online.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Markus Volk 2024-07-16 11:06:55 +02:00 committed by Khem Raj
parent 975c047a1f
commit aabb459e19
No known key found for this signature in database
GPG Key ID: BB053355919D3314
3 changed files with 44 additions and 58 deletions

View File

@ -0,0 +1,40 @@
From 98243ca43e40116c22f7b867e32ad27ffd314505 Mon Sep 17 00:00:00 2001
From: Markus Volk <f_l_k@t-online.de>
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 <f_l_k@t-online.de>
---
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

View File

@ -1,51 +0,0 @@
From a300be5877f35379bb569313eec901bda9c8d762 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
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 <raj.khem@gmail.com>
---
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

View File

@ -23,6 +23,7 @@ DEPENDS = " \
libical \
libpeas \
libsecret \
libsoup \
libstemmer \
libxml2 \
sqlite3 \
@ -31,15 +32,15 @@ DEPENDS = " \
RDEPENDS:${PN} = "gnome-keyring"
inherit meson pkgconfig mime-xdg gtk-icon-cache gobject-introspection vala features_check
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-meson-Use-PKG_CONFIG_SYSROOT_DIR-when-using-pkg-conf.patch \
file://0001-application-client.vala-hardcode-some-paths.patch \
"
S = "${WORKDIR}/git"
SRCREV = "37c378a563d5b1c269d57c34671edc940d1cd180"
SRCREV = "46e93c0c0dafc381e8a308b1befb07e908121722"
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
REQUIRED_DISTRO_FEATURES = "gobject-introspection-data opengl"
@ -52,10 +53,6 @@ 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}"