aboutsummaryrefslogtreecommitdiffstats
path: root/meta-gnome/recipes-gnome/tracker/tracker/0001-fix-reproducibility.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-gnome/recipes-gnome/tracker/tracker/0001-fix-reproducibility.patch')
-rw-r--r--meta-gnome/recipes-gnome/tracker/tracker/0001-fix-reproducibility.patch77
1 files changed, 77 insertions, 0 deletions
diff --git a/meta-gnome/recipes-gnome/tracker/tracker/0001-fix-reproducibility.patch b/meta-gnome/recipes-gnome/tracker/tracker/0001-fix-reproducibility.patch
new file mode 100644
index 0000000000..4527f9efa3
--- /dev/null
+++ b/meta-gnome/recipes-gnome/tracker/tracker/0001-fix-reproducibility.patch
@@ -0,0 +1,77 @@
+From ae34fb111e1f2498f37b21c0c32ace6c9928ad66 Mon Sep 17 00:00:00 2001
+From: Markus Volk <f_l_k@t-online.de>
+Date: Mon, 18 Sep 2023 02:47:55 +0200
+Subject: [PATCH] tracker: fix reproducibility issue
+
+Tracker's design seems to be strictly for non-cross builds and leaks buildpaths into the
+binaries at various places. Avoid this to improve binary reproducibility.
+
+todo: Some of these paths may need to be adjusted to make the test environment work
+
+Upstream-Status: Inappropriate [oe-specific]
+
+Signed-off-by: Markus Volk <f_l_k@t-online.de>
+---
+ meson.build | 6 +++---
+ src/libtracker-common/meson.build | 4 ++--
+ src/libtracker-sparql/meson.build | 4 ++--
+ 3 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index bc9f93a..6c86e5a 100644
+--- a/meson.build
++++ b/meson.build
+@@ -357,7 +357,7 @@ have_rtld_noload = cc.has_header_symbol('dlfcn.h', 'RTLD_NOLOAD')
+ conf.set('HAVE_RTLD_NOLOAD', have_rtld_noload)
+
+ # Config that goes in some other generated files (.desktop, .service, etc)
+-conf.set('abs_top_builddir', meson.current_build_dir())
++conf.set('abs_top_builddir', '/usr/src/debug/tracker')
+ conf.set('libexecdir', join_paths(get_option('prefix'), get_option('libexecdir')))
+
+ configure_file(input: 'config.h.meson.in',
+@@ -396,8 +396,8 @@ subdir('docs')
+ subdir('utils')
+
+ test_c_args = tracker_c_args + [
+- '-DTOP_BUILDDIR="@0@"'.format(build_root),
+- '-DTOP_SRCDIR="@0@"'.format(source_root),
++ '-DTOP_BUILDDIR="@0@/"'.format('/usr/src/debug/tracker'),
++ '-DTOP_SRCDIR="@0@/"'.format('/usr/src/debug/tracker'),
+ ]
+
+ tracker_uninstalled_cli_dir = join_paths(meson.current_build_dir(), 'src', 'tracker')
+diff --git a/src/libtracker-common/meson.build b/src/libtracker-common/meson.build
+index 9355d1c..cdbc05f 100644
+--- a/src/libtracker-common/meson.build
++++ b/src/libtracker-common/meson.build
+@@ -51,10 +51,10 @@ libtracker_common = static_library('tracker-common',
+ dependencies: [tracker_common_dependencies, gmodule],
+ c_args: [
+ '-DPRIVATE_LIBDIR="@0@"'.format(tracker_internal_libs_dir),
+- '-DBUILD_LIBDIR="@0@"'.format(meson.current_build_dir()),
++ '-DBUILD_LIBDIR="@0@"'.format('/usr/src/debug/tracker'),
+ # Global build root is required to detect noinst situations (tests/introspection),
+ # event when built as a subproject
+- '-DBUILDROOT="@0@"'.format(meson.global_build_root()),
++ '-DBUILDROOT="@0@"'.format('/usr/src/debug/tracker'),
+ ] + tracker_c_args,
+ include_directories: [configinc, srcinc],
+ gnu_symbol_visibility: 'hidden',
+diff --git a/src/libtracker-sparql/meson.build b/src/libtracker-sparql/meson.build
+index 4143eac..b73f1c9 100644
+--- a/src/libtracker-sparql/meson.build
++++ b/src/libtracker-sparql/meson.build
+@@ -98,10 +98,10 @@ libtracker_sparql_private = static_library('tracker-sparql-private',
+ c_args: [
+ '-include', 'libtracker-sparql/tracker-private.h',
+ '-DPRIVATE_LIBDIR="@0@"'.format(tracker_internal_libs_dir),
+- '-DBUILD_LIBDIR="@0@"'.format(meson.current_build_dir()),
++ '-DBUILD_LIBDIR="@0@"'.format('/usr/src/debug/tracker'),
+ # Global build root is required to detect noinst situations (tests/introspection),
+ # event when built as a subproject
+- '-DBUILDROOT="@0@"'.format(meson.global_build_root()),
++ '-DBUILDROOT="@0@"'.format('/usr/src/debug/tracker'),
+ ] + tracker_c_args,
+
+ dependencies: [libtracker_sparql_dependencies, gvdb_dep],