[tracker] Fixes GB#614449 - tracker-extract module directory should be environment configurable
- From: Martyn James Russell <mr src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker] Fixes GB#614449 - tracker-extract module directory should be environment configurable
- Date: Wed, 31 Mar 2010 11:24:12 +0000 (UTC)
commit 7033ca74a57e54fe7a59f7c6d49c73505197a84f
Author: Martyn Russell <martyn lanedo com>
Date: Wed Mar 31 12:22:12 2010 +0100
Fixes GB#614449 - tracker-extract module directory should be environment configurable
docs/manpages/tracker-extract.1 | 8 ++++++++
src/tracker-extract/Makefile.am | 2 +-
src/tracker-extract/tracker-extract.c | 12 ++++++++++--
3 files changed, 19 insertions(+), 3 deletions(-)
---
diff --git a/docs/manpages/tracker-extract.1 b/docs/manpages/tracker-extract.1
index 69e510c..8d0385b 100644
--- a/docs/manpages/tracker-extract.1
+++ b/docs/manpages/tracker-extract.1
@@ -72,6 +72,14 @@ Using a specific module to extract metadata from a file:
.BR
$ tracker-extract -v 3 -f /path/to/some/file.mp3 -m mymodule
+.SH ENVIRONMENT
+.TP
+.B TRACKER_EXTRACTORS_DIR
+This is the directory which tracker uses to load the shared libraries
+from (used for extracting metadata for specific file types). These are
+needed on each invocation of tracker-store. If unset it will default
+to the correct place. This is used mainly for testing purposes.
+
.SH FILES
.I $HOME/.config/tracker/tracker-extract.cfg
diff --git a/src/tracker-extract/Makefile.am b/src/tracker-extract/Makefile.am
index 47d7397..1346b0b 100644
--- a/src/tracker-extract/Makefile.am
+++ b/src/tracker-extract/Makefile.am
@@ -5,7 +5,7 @@ modulesdir = $(libdir)/tracker-$(TRACKER_API_VERSION)/extract-modules
INCLUDES = \
-DLOCALEDIR=\""$(localedir)"\" \
- -DMODULESDIR=\"$(modulesdir)\" \
+ -DTRACKER_EXTRACTORS_DIR=\"$(modulesdir)\" \
-DG_LOG_DOMAIN=\"Tracker\" \
-DTRACKER_COMPILATION \
-I$(top_srcdir)/src \
diff --git a/src/tracker-extract/tracker-extract.c b/src/tracker-extract/tracker-extract.c
index 3d79ae5..ab9c8a9 100644
--- a/src/tracker-extract/tracker-extract.c
+++ b/src/tracker-extract/tracker-extract.c
@@ -113,8 +113,16 @@ load_modules (const gchar *force_module,
const gchar *name;
gchar *force_module_checked;
gboolean success;
+ const gchar *extractors_dir;
- dir = g_dir_open (MODULESDIR, 0, &error);
+ extractors_dir = g_getenv ("TRACKER_EXTRACTORS_DIR");
+ if (G_LIKELY (extractors_dir == NULL)) {
+ extractors_dir = TRACKER_EXTRACTORS_DIR;
+ } else {
+ g_message ("Extractor modules directory is '%s' (set in env)", extractors_dir);
+ }
+
+ dir = g_dir_open (extractors_dir, 0, &error);
if (!dir) {
g_error ("Error opening modules directory: %s", error->message);
@@ -166,7 +174,7 @@ load_modules (const gchar *force_module,
continue;
}
- module_path = g_build_filename (MODULESDIR, name, NULL);
+ module_path = g_build_filename (extractors_dir, name, NULL);
module = g_module_open (module_path, G_MODULE_BIND_LOCAL);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]