119 lines
4.4 KiB
Diff
119 lines
4.4 KiB
Diff
|
|
From 2bbd07843e8ec34311cafab35f21b40c86e0dd7f Mon Sep 17 00:00:00 2001
|
||
|
|
From: Markus Volk <f_l_k@t-online.de>
|
||
|
|
Date: Tue, 12 Sep 2023 17:00:41 +0200
|
||
|
|
Subject: [PATCH] meson: fix reproducibility
|
||
|
|
|
||
|
|
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 | 20 ++++++++++----------
|
||
|
|
src/tracker-extract/meson.build | 2 +-
|
||
|
|
tests/tracker-miner-fs/meson.build | 2 +-
|
||
|
|
3 files changed, 12 insertions(+), 12 deletions(-)
|
||
|
|
|
||
|
|
diff --git a/meson.build b/meson.build
|
||
|
|
index 935584185..aa6126081 100644
|
||
|
|
--- a/meson.build
|
||
|
|
+++ b/meson.build
|
||
|
|
@@ -380,7 +380,7 @@ conf.set('PACKAGE_VERSION', '"@0@"'.format(meson.project_version()))
|
||
|
|
conf.set('TRACKER_VERSION', '"@0@"'.format(meson.project_version()))
|
||
|
|
|
||
|
|
# Config that goes in some other generated files (.desktop, .pc, etc)
|
||
|
|
-conf.set('abs_top_builddir', meson.current_build_dir())
|
||
|
|
+conf.set('abs_top_builddir', '')
|
||
|
|
conf.set('exec_prefix', get_option('prefix'))
|
||
|
|
conf.set('bindir', join_paths(get_option('prefix'), get_option('bindir')))
|
||
|
|
conf.set('datadir', datadir)
|
||
|
|
@@ -409,7 +409,7 @@ tracker_c_args = [
|
||
|
|
configinc = include_directories('./')
|
||
|
|
srcinc = include_directories('src/')
|
||
|
|
|
||
|
|
-build_root = meson.current_build_dir()
|
||
|
|
+build_root = ''
|
||
|
|
|
||
|
|
# We use tracker-miners-3.0 rather than tracker3-miners inside the lib64
|
||
|
|
# directory, following the existing convention in that directory.
|
||
|
|
@@ -438,8 +438,8 @@ subdir('data')
|
||
|
|
subdir('docs')
|
||
|
|
|
||
|
|
test_c_args = tracker_c_args + [
|
||
|
|
- '-DTOP_BUILDDIR="@0@/"'.format(meson.build_root()),
|
||
|
|
- '-DTOP_SRCDIR="@0@/"'.format(meson.source_root()),
|
||
|
|
+ '-DTOP_BUILDDIR="@0@/"'.format(''),
|
||
|
|
+ '-DTOP_SRCDIR="@0@/"'.format('/usr/src/debug/tracker'),
|
||
|
|
]
|
||
|
|
|
||
|
|
if get_option('tests_tap_protocol')
|
||
|
|
diff --git a/src/tracker-extract/meson.build b/src/tracker-extract/meson.build
|
||
|
|
index 4aaad5c41..d17cce221 100644
|
||
|
|
--- a/src/tracker-extract/meson.build
|
||
|
|
+++ b/src/tracker-extract/meson.build
|
||
|
|
@@ -159,7 +159,7 @@ endif
|
||
|
|
executable('tracker-extract-@0@'.format(tracker_api_major),
|
||
|
|
tracker_extract_sources,
|
||
|
|
# Manually add the root dir to work around https://github.com/mesonbuild/meson/issues/1387
|
||
|
|
- c_args: tracker_c_args + ['-I' + meson.build_root()],
|
||
|
|
+ c_args: tracker_c_args,
|
||
|
|
export_dynamic: true,
|
||
|
|
dependencies: tracker_extract_dependencies,
|
||
|
|
install: true,
|
||
|
|
diff --git a/tests/tracker-miner-fs/meson.build b/tests/tracker-miner-fs/meson.build
|
||
|
|
index e131b85ad..59e509fa6 100644
|
||
|
|
--- a/tests/tracker-miner-fs/meson.build
|
||
|
|
+++ b/tests/tracker-miner-fs/meson.build
|
||
|
|
@@ -19,7 +19,7 @@ libtracker_miner_test_c_args = [
|
||
|
|
]
|
||
|
|
|
||
|
|
libtracker_miner_test_environment = environment()
|
||
|
|
-libtracker_miner_test_environment.set('GSETTINGS_SCHEMA_DIR', join_paths(meson.build_root(), 'data'))
|
||
|
|
+libtracker_miner_test_environment.set('GSETTINGS_SCHEMA_DIR', '/usr/src/debug/tracker-miners/data')
|
||
|
|
|
||
|
|
libtracker_miner_test_deps = [tracker_miners_common_dep, tracker_miner_dep, tracker_sparql]
|
||
|
|
|
||
|
|
|
||
|
|
diff --git a/src/miners/fs/meson.build b/src/miners/fs/meson.build
|
||
|
|
index 6e5883288..04750f82b 100644
|
||
|
|
--- a/src/miners/fs/meson.build
|
||
|
|
+++ b/src/miners/fs/meson.build
|
||
|
|
@@ -67,8 +67,8 @@ executable('tracker-miner-fs-@0@'.format(tracker_api_major),
|
||
|
|
dependencies: tracker_miner_fs_deps,
|
||
|
|
c_args: [
|
||
|
|
tracker_c_args,
|
||
|
|
- '-DBUILDROOT="@0@"'.format(meson.global_build_root()),
|
||
|
|
- '-DBUILD_EXTRACTDIR="@0@"'.format(meson.build_root() / 'src' / 'tracker-extract'),
|
||
|
|
+ '-DBUILDROOT="@0@"'.format(get_option('prefix') / 'src'),
|
||
|
|
+ '-DBUILD_EXTRACTDIR="@0@"'.format(get_option('prefix') / 'src' / 'tracker-extract'),
|
||
|
|
'-DLIBEXECDIR="@0@"'.format(get_option('prefix') / get_option('libexecdir')),
|
||
|
|
],
|
||
|
|
install: true,
|
||
|
|
diff --git a/src/libtracker-miners-common/tracker-landlock.c b/src/libtracker-miners-common/tracker-landlock.c
|
||
|
|
index 27e7db65b..3021343eb 100644
|
||
|
|
--- a/src/libtracker-miners-common/tracker-landlock.c
|
||
|
|
+++ b/src/libtracker-miners-common/tracker-landlock.c
|
||
|
|
@@ -276,7 +276,7 @@
|
||
|
|
LANDLOCK_ACCESS_FS_READ_DIR);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
-
|
||
|
|
+#if 0
|
||
|
|
current_dir = g_get_current_dir ();
|
||
|
|
|
||
|
|
/* Detect running in-tree */
|
||
|
|
@@ -296,7 +296,7 @@
|
||
|
|
in_tree_rules[i].flags);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
-
|
||
|
|
+#endif
|
||
|
|
/* Add user cache for readonly databases */
|
||
|
|
#ifdef MINER_FS_CACHE_LOCATION
|
||
|
|
add_rule (landlock_fd, MINER_FS_CACHE_LOCATION,
|
||
|
|
--
|
||
|
|
2.41.0
|