summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJürg Billeter <j@bitron.ch>2011-04-01 15:35:10 +0200
committerJürg Billeter <j@bitron.ch>2011-04-04 12:12:35 +0200
commit0ec9878654c9b233de2193043870dd9f2e1fab9e (patch)
tree679dfac82552790f584e19fc994ff206d49b872e
parent8c9074f17d235301ff5767d09b87323e091fffa0 (diff)
downloadtracker-0ec9878654c9b233de2193043870dd9f2e1fab9e.tar.gz
libtracker-sparql: Use static linking instead of plugins
Plugin loading in threads may be problematic in certain environments. As we do not currently support external plugins anyway, this changes libtracker-bus and libtracker-direct to be part of libtracker-sparql. This will also slightly improve initialization performance. Fixes NB#241659.
-rw-r--r--configure.ac3
-rw-r--r--docs/reference/libtracker-miner/Makefile.am2
-rw-r--r--docs/reference/libtracker-sparql/Makefile.am2
-rw-r--r--docs/reference/libtracker-sparql/overview.sgml11
-rw-r--r--docs/tools/Makefile.am1
-rw-r--r--examples/libtracker-extract/Makefile.am2
-rw-r--r--examples/libtracker-miner/Makefile.am2
-rw-r--r--examples/libtracker-sparql/Makefile.am2
-rw-r--r--src/Makefile.am1
-rw-r--r--src/libtracker-bus/Makefile.am8
-rw-r--r--src/libtracker-bus/tracker-bus.vala5
-rw-r--r--src/libtracker-data/Makefile.am1
-rw-r--r--src/libtracker-direct/Makefile.am7
-rw-r--r--src/libtracker-direct/tracker-direct.vala5
-rw-r--r--src/libtracker-extract/Makefile.am2
-rw-r--r--src/libtracker-miner/Makefile.am2
-rw-r--r--src/libtracker-sparql-backend/.gitignore1
-rw-r--r--src/libtracker-sparql-backend/Makefile.am31
-rw-r--r--src/libtracker-sparql-backend/tracker-backend.vala (renamed from src/libtracker-sparql/tracker-backend.vala)229
-rw-r--r--src/libtracker-sparql/Makefile.am18
-rw-r--r--src/libtracker-sparql/config.vapi23
-rw-r--r--src/libtracker-sparql/tracker-connection.vala160
-rw-r--r--src/miners/flickr/Makefile.am2
-rw-r--r--src/miners/fs/Makefile.am2
-rw-r--r--src/miners/rss/Makefile.am2
-rw-r--r--src/plugins/evolution/Makefile.am2
-rw-r--r--src/plugins/nautilus/Makefile.am2
-rw-r--r--src/tracker-control/Makefile.am2
-rw-r--r--src/tracker-extract/Makefile.am2
-rw-r--r--src/tracker-needle/Makefile.am2
-rw-r--r--src/tracker-search-bar/Makefile.am2
-rw-r--r--src/tracker-store/Makefile.am2
-rw-r--r--src/tracker-utils/Makefile.am2
-rw-r--r--src/tracker-writeback/Makefile.am2
-rw-r--r--tests/functional-tests/ipc/Makefile.am2
-rw-r--r--tests/functional-tests/ipc/test-update-array-performance.c3
-rw-r--r--tests/libtracker-data/Makefile.am2
-rw-r--r--tests/libtracker-extract/Makefile.am2
-rw-r--r--tests/libtracker-fts/Makefile.am2
-rw-r--r--tests/libtracker-miner/Makefile.am2
-rw-r--r--tests/libtracker-sparql/Makefile.am2
-rw-r--r--tests/libtracker-sparql/tracker-test.c3
-rw-r--r--tests/tracker-steroids/Makefile.am2
-rw-r--r--tests/tracker-steroids/tracker-test.c3
-rw-r--r--utils/mtp/Makefile.am2
-rw-r--r--utils/services/Makefile.am2
-rw-r--r--utils/tracker-resdump/Makefile.am2
-rw-r--r--utils/tracker-sql/Makefile.am2
48 files changed, 236 insertions, 337 deletions
diff --git a/configure.ac b/configure.ac
index c93a2aa18..2eff9b9f9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2012,8 +2012,9 @@ AC_CONFIG_FILES([
src/libtracker-common/Makefile
src/libtracker-sparql/Makefile
src/libtracker-bus/Makefile
- src/libtracker-direct/Makefile
src/libtracker-data/Makefile
+ src/libtracker-direct/Makefile
+ src/libtracker-sparql-backend/Makefile
src/libtracker-fts/Makefile
src/libtracker-extract/Makefile
src/libtracker-miner/Makefile
diff --git a/docs/reference/libtracker-miner/Makefile.am b/docs/reference/libtracker-miner/Makefile.am
index b4174fd48..cf1744bcb 100644
--- a/docs/reference/libtracker-miner/Makefile.am
+++ b/docs/reference/libtracker-miner/Makefile.am
@@ -46,7 +46,7 @@ AM_CPPFLAGS = \
GTKDOC_LIBS = \
$(top_builddir)/src/libtracker-miner/libtracker-miner-@TRACKER_API_VERSION@.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(LIBTRACKER_MINER_LIBS)
diff --git a/docs/reference/libtracker-sparql/Makefile.am b/docs/reference/libtracker-sparql/Makefile.am
index 3649b66d0..308ac394e 100644
--- a/docs/reference/libtracker-sparql/Makefile.am
+++ b/docs/reference/libtracker-sparql/Makefile.am
@@ -32,7 +32,7 @@ AM_CPPFLAGS = \
$(LIBTRACKER_SPARQL_CFLAGS)
GTKDOC_LIBS = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(LIBTRACKER_SPARQL_LIBS)
diff --git a/docs/reference/libtracker-sparql/overview.sgml b/docs/reference/libtracker-sparql/overview.sgml
index 47707b936..0c6673f4e 100644
--- a/docs/reference/libtracker-sparql/overview.sgml
+++ b/docs/reference/libtracker-sparql/overview.sgml
@@ -116,17 +116,6 @@ $ pkg-config --libs tracker-sparql-0.10
</para>
</listitem>
<listitem>
- <emphasis>TRACKER_SPARQL_MODULE_PATH</emphasis>
- <para>
- As explained in the last paragraph, the backends are
- dynamically loaded at run time. The location for these
- backends is usually in a set
- place: <emphasis>$prefix/lib/tracker-$version/sparql-modules</emphasis>.
- This environment variable is mostly useful for the unit
- tests and general debugging to override this location.
- </para>
- </listitem>
- <listitem>
<emphasis>TRACKER_SPARQL_CACHE_SIZE</emphasis>
<para>
Tracker caches database statements which occur frequently to make
diff --git a/docs/tools/Makefile.am b/docs/tools/Makefile.am
index 18b7796a6..008b21b29 100644
--- a/docs/tools/Makefile.am
+++ b/docs/tools/Makefile.am
@@ -12,6 +12,7 @@ AM_CPPFLAGS = \
LDADD = \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(top_builddir)/src/libtracker-data/libtracker-data.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(LIBTRACKER_DATA_LIBS)
ontology_graph_SOURCES = \
diff --git a/examples/libtracker-extract/Makefile.am b/examples/libtracker-extract/Makefile.am
index 74cdc435f..bba35a11e 100644
--- a/examples/libtracker-extract/Makefile.am
+++ b/examples/libtracker-extract/Makefile.am
@@ -15,7 +15,7 @@ libextract_mockup_la_SOURCES = tracker-extract-mockup.c
libextract_mockup_la_LDFLAGS = $(module_flags)
libextract_mockup_la_LIBADD = \
$(top_builddir)/src/libtracker-extract/libtracker-extract-@TRACKER_API_VERSION@.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(BUILD_LIBS) \
$(LIBTRACKER_EXTRACT_LIBS)
diff --git a/examples/libtracker-miner/Makefile.am b/examples/libtracker-miner/Makefile.am
index 46ba1a268..0e241906b 100644
--- a/examples/libtracker-miner/Makefile.am
+++ b/examples/libtracker-miner/Makefile.am
@@ -11,7 +11,7 @@ AM_CPPFLAGS = \
LDADD = \
$(top_builddir)/src/libtracker-miner/libtracker-miner-@TRACKER_API_VERSION@.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
$(LIBTRACKER_MINER_LIBS)
diff --git a/examples/libtracker-sparql/Makefile.am b/examples/libtracker-sparql/Makefile.am
index aaecc6afb..ef417f9fe 100644
--- a/examples/libtracker-sparql/Makefile.am
+++ b/examples/libtracker-sparql/Makefile.am
@@ -6,7 +6,7 @@ AM_CPPFLAGS = $(BUILD_CFLAGS) \
-I$(top_srcdir)/src \
$(LIBTRACKER_SPARQL_CFLAGS)
-LDADD = $(top_builddir)/src/libtracker-sparql/libtracker-sparql-$(TRACKER_API_VERSION).la \
+LDADD = $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-$(TRACKER_API_VERSION).la \
$(BUILD_LIBS) \
$(LIBTRACKER_SPARQL_LIBS)
diff --git a/src/Makefile.am b/src/Makefile.am
index 3145d58e9..86a85a5ce 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -17,6 +17,7 @@ SUBDIRS = \
libtracker-bus \
libtracker-data \
libtracker-direct \
+ libtracker-sparql-backend \
libtracker-extract \
libtracker-miner \
miners \
diff --git a/src/libtracker-bus/Makefile.am b/src/libtracker-bus/Makefile.am
index 05af4f81b..704d95667 100644
--- a/src/libtracker-bus/Makefile.am
+++ b/src/libtracker-bus/Makefile.am
@@ -1,8 +1,6 @@
include $(top_srcdir)/Makefile.decl
-modulesdir = $(libdir)/tracker-$(TRACKER_API_VERSION)/sparql-modules
-
-modules_LTLIBRARIES = libtracker-bus.la
+noinst_LTLIBRARIES = libtracker-bus.la
AM_VALAFLAGS = \
--includedir=libtracker-bus \
@@ -26,14 +24,10 @@ libtracker_bus_la_SOURCES = \
tracker-bus-fd-cursor.vala
libtracker_bus_la_LIBADD = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-$(TRACKER_API_VERSION).la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
$(LIBTRACKER_BUS_LIBS)
-libtracker_bus_la_LDFLAGS = \
- -module -avoid-version -no-undefined
-
noinst_HEADERS = \
tracker-bus.h
diff --git a/src/libtracker-bus/tracker-bus.vala b/src/libtracker-bus/tracker-bus.vala
index c46fe2d3c..03ae3f3ca 100644
--- a/src/libtracker-bus/tracker-bus.vala
+++ b/src/libtracker-bus/tracker-bus.vala
@@ -349,8 +349,3 @@ public class Tracker.Bus.Connection : Tracker.Sparql.Connection {
types);
}
}
-
-public Tracker.Sparql.Connection? module_init () throws GLib.Error {
- Tracker.Sparql.Connection plugin = new Tracker.Bus.Connection ();
- return plugin;
-}
diff --git a/src/libtracker-data/Makefile.am b/src/libtracker-data/Makefile.am
index 4434b1b51..cf7ba92be 100644
--- a/src/libtracker-data/Makefile.am
+++ b/src/libtracker-data/Makefile.am
@@ -47,7 +47,6 @@ libtracker_data_la_SOURCES = \
libtracker_data_la_LIBADD = \
$(top_builddir)/src/gvdb/libgvdb.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(BUILD_LIBS) \
$(LIBTRACKER_DATA_LIBS)
diff --git a/src/libtracker-direct/Makefile.am b/src/libtracker-direct/Makefile.am
index 64fe2b423..c315adcee 100644
--- a/src/libtracker-direct/Makefile.am
+++ b/src/libtracker-direct/Makefile.am
@@ -1,8 +1,6 @@
include $(top_srcdir)/Makefile.decl
-modulesdir = $(libdir)/tracker-$(TRACKER_API_VERSION)/sparql-modules
-
-modules_LTLIBRARIES = libtracker-direct.la
+noinst_LTLIBRARIES = libtracker-direct.la
AM_VALAFLAGS = \
--includedir=libtracker-direct \
@@ -29,9 +27,6 @@ libtracker_direct_la_LIBADD = \
$(BUILD_LIBS) \
$(LIBTRACKER_DIRECT_LIBS)
-libtracker_direct_la_LDFLAGS = \
- -module -avoid-version -no-undefined
-
noinst_HEADERS = \
tracker-direct.h
diff --git a/src/libtracker-direct/tracker-direct.vala b/src/libtracker-direct/tracker-direct.vala
index 9abf5b72e..87aa6ccd4 100644
--- a/src/libtracker-direct/tracker-direct.vala
+++ b/src/libtracker-direct/tracker-direct.vala
@@ -120,8 +120,3 @@ public class Tracker.Direct.Connection : Tracker.Sparql.Connection {
}
}
}
-
-public Tracker.Sparql.Connection? module_init () throws GLib.Error {
- Tracker.Sparql.Connection plugin = new Tracker.Direct.Connection ();
- return plugin;
-}
diff --git a/src/libtracker-extract/Makefile.am b/src/libtracker-extract/Makefile.am
index 8c722b233..b3af27c86 100644
--- a/src/libtracker-extract/Makefile.am
+++ b/src/libtracker-extract/Makefile.am
@@ -43,7 +43,7 @@ libtracker_extract_@TRACKER_API_VERSION@_la_LDFLAGS = \
-export-symbols-regex '^tracker_.*'
libtracker_extract_@TRACKER_API_VERSION@_la_LIBADD = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
$(LIBTRACKER_EXTRACT_LIBS)
diff --git a/src/libtracker-miner/Makefile.am b/src/libtracker-miner/Makefile.am
index a9667bf7d..c41c176c7 100644
--- a/src/libtracker-miner/Makefile.am
+++ b/src/libtracker-miner/Makefile.am
@@ -66,7 +66,7 @@ libtracker_miner_@TRACKER_API_VERSION@_la_LDFLAGS = \
libtracker_miner_@TRACKER_API_VERSION@_la_LIBADD = \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
-lm \
$(BUILD_LIBS) \
$(LIBTRACKER_MINER_LIBS)
diff --git a/src/libtracker-sparql-backend/.gitignore b/src/libtracker-sparql-backend/.gitignore
new file mode 100644
index 000000000..f8e59d4d9
--- /dev/null
+++ b/src/libtracker-sparql-backend/.gitignore
@@ -0,0 +1 @@
+tracker-backend.c
diff --git a/src/libtracker-sparql-backend/Makefile.am b/src/libtracker-sparql-backend/Makefile.am
new file mode 100644
index 000000000..b7d16fbfa
--- /dev/null
+++ b/src/libtracker-sparql-backend/Makefile.am
@@ -0,0 +1,31 @@
+include $(top_srcdir)/Makefile.decl
+
+lib_LTLIBRARIES = libtracker-sparql-@TRACKER_API_VERSION@.la
+
+AM_VALAFLAGS = \
+ --pkg gio-2.0 \
+ $(BUILD_VALAFLAGS) \
+ $(top_srcdir)/src/libtracker-sparql/tracker-sparql-$(TRACKER_API_VERSION).vapi \
+ $(top_srcdir)/src/libtracker-bus/tracker-bus.vapi \
+ $(top_srcdir)/src/libtracker-direct/tracker-direct.vapi
+
+AM_CPPFLAGS = \
+ $(BUILD_CFLAGS) \
+ -I$(top_srcdir)/src \
+ -I$(top_builddir)/src \
+ $(LIBTRACKER_SPARQL_CFLAGS)
+
+libtracker_sparql_@TRACKER_API_VERSION@_la_SOURCES = \
+ tracker-backend.vala
+
+libtracker_sparql_@TRACKER_API_VERSION@_la_LIBADD = \
+ $(top_builddir)/src/libtracker-sparql/libtracker-sparql.la \
+ $(top_builddir)/src/libtracker-bus/libtracker-bus.la \
+ $(top_builddir)/src/libtracker-direct/libtracker-direct.la \
+ $(BUILD_LIBS) \
+ $(LIBTRACKER_SPARQL_LIBS)
+
+libtracker_sparql_@TRACKER_API_VERSION@_la_LDFLAGS = \
+ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
+ -export-symbols-regex '^tracker_sparql_(connection|cursor|builder|escape|error|value|get)_.*'
+
diff --git a/src/libtracker-sparql/tracker-backend.vala b/src/libtracker-sparql-backend/tracker-backend.vala
index b8b120fcd..d68b2c6fe 100644
--- a/src/libtracker-sparql/tracker-backend.vala
+++ b/src/libtracker-sparql-backend/tracker-backend.vala
@@ -23,8 +23,6 @@ interface Tracker.Backend.Status : DBusProxy {
}
class Tracker.Sparql.Backend : Connection {
- bool direct_only;
-
Tracker.Sparql.Connection direct = null;
Tracker.Sparql.Connection bus = null;
enum Backend {
@@ -33,19 +31,11 @@ class Tracker.Sparql.Backend : Connection {
BUS
}
- [CCode (has_target = false)]
- private delegate Tracker.Sparql.Connection? ModuleInitFunc () throws GLib.Error;
-
- public Backend (bool direct_only = false) throws Sparql.Error
- requires (Module.supported ()) {
- this.direct_only = direct_only;
- }
-
public override void init () throws Sparql.Error, IOError, DBusError, SpawnError {
- Tracker.Backend.Status status = Bus.get_proxy_sync (BusType.SESSION,
- TRACKER_DBUS_SERVICE,
- TRACKER_DBUS_OBJECT_STATUS,
- DBusProxyFlags.DO_NOT_LOAD_PROPERTIES | DBusProxyFlags.DO_NOT_CONNECT_SIGNALS);
+ Tracker.Backend.Status status = GLib.Bus.get_proxy_sync (BusType.SESSION,
+ TRACKER_DBUS_SERVICE,
+ TRACKER_DBUS_OBJECT_STATUS,
+ DBusProxyFlags.DO_NOT_LOAD_PROPERTIES | DBusProxyFlags.DO_NOT_CONNECT_SIGNALS);
status.set_default_timeout (int.MAX);
// Makes sure the sevice is available
@@ -146,18 +136,6 @@ class Tracker.Sparql.Backend : Connection {
// Plugin loading functions
private bool load_plugins (bool direct_only) throws GLib.Error {
- string env_path = Environment.get_variable ("TRACKER_SPARQL_MODULE_PATH");
- string path;
-
- if (env_path != null && env_path.length > 0) {
- path = env_path;
- } else {
- path = Config.SPARQL_MODULES_DIR;
- }
-
- File dir = File.new_for_path (path);
- string dir_path = dir.get_path ();
-
string env_backend = Environment.get_variable ("TRACKER_SPARQL_BACKEND");
Backend backend = Backend.AUTO;
@@ -186,80 +164,193 @@ class Tracker.Sparql.Backend : Connection {
debug ("Backend set in environment contradicts requested connection type, using environment to override");
}
- debug ("Searching for modules in folder '%s' ..", dir_path);
-
Tracker.Sparql.Connection connection;
switch (backend) {
case backend.AUTO:
- string direct_path = Module.build_path (dir_path, "tracker-direct");
- direct = load_plugins_from_path (direct_path, false /* required */);
+ try {
+ direct = new Tracker.Direct.Connection ();
+ } catch (Error e) {
+ debug ("Unable to initialize direct backend");
+ }
- string bus_path = Module.build_path (dir_path, "tracker-bus");
- bus = load_plugins_from_path (bus_path, true /* required */);
+ bus = new Tracker.Bus.Connection ();
connection = bus;
break;
case backend.DIRECT:
- string direct_path = Module.build_path (dir_path, "tracker-direct");
- connection = direct = load_plugins_from_path (direct_path, true /* required */);
+ connection = direct = new Tracker.Direct.Connection ();
break;
case backend.BUS:
- string bus_path = Module.build_path (dir_path, "tracker-bus");
- connection = bus = load_plugins_from_path (bus_path, true /* required */);
+ connection = bus = new Tracker.Bus.Connection ();
break;
default:
assert_not_reached ();
}
- debug ("Finished searching for modules");
-
return connection != null;
}
- private Tracker.Sparql.Connection? load_plugins_from_path (string path, bool required) throws GLib.Error {
- try {
- // lazy resolving reduces initialization time
- Module module = Module.open (path, ModuleFlags.BIND_LOCAL | ModuleFlags.BIND_LAZY);
- if (module == null) {
- throw new IOError.FAILED ("Failed to load module from path '%s': %s",
- path,
- Module.error ());
- }
+ static bool direct_only;
+ static weak Connection? singleton;
+ static bool log_initialized;
+ static StaticMutex door;
- void *function;
+ public static new Connection get_internal (bool is_direct_only = false, Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError {
+ door.lock ();
- if (!module.symbol ("module_init", out function)) {
- throw new IOError.FAILED ("Failed to find entry point function '%s' in '%s': %s",
- "module_init",
- path,
- Module.error ());
- }
+ // assign to owned variable to ensure it doesn't get freed between unlock and return
+ var result = singleton;
+ if (result != null) {
+ assert (direct_only == is_direct_only);
+ door.unlock ();
+ return result;
+ }
- ModuleInitFunc module_init = (ModuleInitFunc) function;
-
- assert (module_init != null);
+ log_init ();
- // We don't want our modules to ever unload
- module.make_resident ();
+ direct_only = is_direct_only;
- // Call module init function
- Tracker.Sparql.Connection c = module_init ();
+ result = new Tracker.Sparql.Backend ();
+ result.init ();
- debug ("Loaded module source: '%s'", module.name ());
+ if (cancellable != null && cancellable.is_cancelled ()) {
+ door.unlock ();
+ throw new IOError.CANCELLED ("Operation was cancelled");
+ }
- return c;
- } catch (GLib.Error e) {
- if (required) {
- // plugin required => error is fatal
- throw e;
- } else {
- return null;
+ singleton = result;
+ result.add_weak_pointer ((void**) (&singleton));
+
+ door.unlock ();
+
+ return singleton;
+ }
+
+ public async static new Connection get_internal_async (bool is_direct_only = false, Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError {
+ // fast path: avoid extra thread if connection is already available
+ if (door.trylock ()) {
+ // assign to owned variable to ensure it doesn't get freed between unlock and return
+ var result = singleton;
+
+ door.unlock ();
+
+ if (result != null) {
+ assert (direct_only == is_direct_only);
+ return result;
}
}
+
+ // run in a separate thread
+ Sparql.Error sparql_error = null;
+ IOError io_error = null;
+ DBusError dbus_error = null;
+ SpawnError spawn_error = null;
+ Connection result = null;
+ var context = MainContext.get_thread_default ();
+
+ g_io_scheduler_push_job (job => {
+ try {
+ result = get_internal (is_direct_only, cancellable);
+ } catch (IOError e_io) {
+ io_error = e_io;
+ } catch (Sparql.Error e_spql) {
+ sparql_error = e_spql;
+ } catch (DBusError e_dbus) {
+ dbus_error = e_dbus;
+ } catch (SpawnError e_spawn) {
+ spawn_error = e_spawn;
+ }
+
+ var source = new IdleSource ();
+ source.set_callback (() => {
+ get_internal_async.callback ();
+ return false;
+ });
+ source.attach (context);
+
+ return false;
+ });
+ yield;
+
+ if (sparql_error != null) {
+ throw sparql_error;
+ } else if (io_error != null) {
+ throw io_error;
+ } else if (dbus_error != null) {
+ throw dbus_error;
+ } else if (spawn_error != null) {
+ throw spawn_error;
+ } else {
+ return result;
+ }
+ }
+
+ private static void log_init () {
+ if (log_initialized) {
+ return;
+ }
+
+ log_initialized = true;
+
+ // Avoid debug messages
+ int verbosity = 0;
+ string env_verbosity = Environment.get_variable ("TRACKER_VERBOSITY");
+ if (env_verbosity != null)
+ verbosity = env_verbosity.to_int ();
+
+ LogLevelFlags remove_levels = 0;
+
+ switch (verbosity) {
+ // Log level 3: EVERYTHING
+ case 3:
+ break;
+
+ // Log level 2: CRITICAL/ERROR/WARNING/INFO/MESSAGE only
+ case 2:
+ remove_levels = LogLevelFlags.LEVEL_DEBUG;
+ break;
+
+ // Log level 1: CRITICAL/ERROR/WARNING/INFO only
+ case 1:
+ remove_levels = LogLevelFlags.LEVEL_DEBUG |
+ LogLevelFlags.LEVEL_MESSAGE;
+ break;
+
+ // Log level 0: CRITICAL/ERROR/WARNING only (default)
+ default:
+ case 0:
+ remove_levels = LogLevelFlags.LEVEL_DEBUG |
+ LogLevelFlags.LEVEL_MESSAGE |
+ LogLevelFlags.LEVEL_INFO;
+ break;
+ }
+
+ if (remove_levels != 0) {
+ GLib.Log.set_handler ("Tracker", remove_levels, remove_log_handler);
+ }
+ }
+
+ private static void remove_log_handler (string? log_domain, LogLevelFlags log_level, string message) {
+ /* do nothing */
}
}
+public async static Tracker.Sparql.Connection tracker_sparql_connection_get_async (Cancellable? cancellable = null) throws Tracker.Sparql.Error, IOError, DBusError, SpawnError {
+ return yield Tracker.Sparql.Backend.get_internal_async (false, cancellable);
+}
+
+public static Tracker.Sparql.Connection tracker_sparql_connection_get (Cancellable? cancellable = null) throws Tracker.Sparql.Error, IOError, DBusError, SpawnError {
+ return Tracker.Sparql.Backend.get_internal (false, cancellable);
+}
+
+public async static Tracker.Sparql.Connection tracker_sparql_connection_get_direct_async (Cancellable? cancellable = null) throws Tracker.Sparql.Error, IOError, DBusError, SpawnError {
+ return yield Tracker.Sparql.Backend.get_internal_async (true, cancellable);
+}
+
+public static Tracker.Sparql.Connection tracker_sparql_connection_get_direct (Cancellable? cancellable = null) throws Tracker.Sparql.Error, IOError, DBusError, SpawnError {
+ return Tracker.Sparql.Backend.get_internal (true, cancellable);
+}
diff --git a/src/libtracker-sparql/Makefile.am b/src/libtracker-sparql/Makefile.am
index 38f951201..e863868b0 100644
--- a/src/libtracker-sparql/Makefile.am
+++ b/src/libtracker-sparql/Makefile.am
@@ -1,8 +1,6 @@
include $(top_srcdir)/Makefile.decl
-modulesdir = $(libdir)/tracker-$(TRACKER_API_VERSION)/sparql-modules
-
-lib_LTLIBRARIES = libtracker-sparql-@TRACKER_API_VERSION@.la
+noinst_LTLIBRARIES = libtracker-sparql.la
AM_VALAFLAGS = \
--includedir=libtracker-sparql \
@@ -10,35 +8,28 @@ AM_VALAFLAGS = \
--vapi tracker-sparql-$(TRACKER_API_VERSION).vapi \
--pkg gio-2.0 --pkg gmodule-2.0 --pkg posix \
$(BUILD_VALAFLAGS) \
- config.vapi \
$(top_srcdir)/src/vapi/glib-2.0-fixes.vapi
AM_CPPFLAGS = \
$(BUILD_CFLAGS) \
- -DSPARQL_MODULES_DIR=\""$(modulesdir)"\" \
-I$(top_srcdir)/src \
-I$(top_builddir)/src \
$(LIBTRACKER_SPARQL_CFLAGS)
libtracker_sparqlincludedir = $(includedir)/tracker-$(TRACKER_API_VERSION)/libtracker-sparql
-libtracker_sparql_@TRACKER_API_VERSION@_la_SOURCES = \
+libtracker_sparql_la_SOURCES = \
tracker-builder.vala \
tracker-connection.vala \
tracker-cursor.vala \
- tracker-backend.vala \
tracker-utils.vala \
tracker-uri.c \
tracker-init.c
-libtracker_sparql_@TRACKER_API_VERSION@_la_LIBADD = \
+libtracker_sparql_la_LIBADD = \
$(BUILD_LIBS) \
$(LIBTRACKER_SPARQL_LIBS)
-libtracker_sparql_@TRACKER_API_VERSION@_la_LDFLAGS = \
- -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
- -export-symbols-regex '^tracker_sparql_(connection|cursor|builder|escape|error|value|get)_.*'
-
libtracker_sparqlinclude_HEADERS = \
tracker-sparql.h
@@ -52,7 +43,7 @@ vapi_DATA = \
tracker-sparql-$(TRACKER_API_VERSION).deps
BUILT_SOURCES = \
- libtracker_sparql_$(TRACKER_API_VERSION)_la_vala.stamp
+ libtracker_sparql_la_vala.stamp
MAINTAINERCLEANFILES = \
tracker-sparql-$(TRACKER_API_VERSION).vapi \
@@ -60,7 +51,6 @@ MAINTAINERCLEANFILES = \
tracker-sparql.h
EXTRA_DIST = \
- config.vapi \
tracker-sparql-$(TRACKER_API_VERSION).vapi \
tracker-sparql-$(TRACKER_API_VERSION).deps \
tracker-sparql.deps
diff --git a/src/libtracker-sparql/config.vapi b/src/libtracker-sparql/config.vapi
deleted file mode 100644
index 2e593e713..000000000
--- a/src/libtracker-sparql/config.vapi
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (C) 2010, Nokia <ivan.frade@nokia.com>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-[CCode (cprefix = "", lower_case_cprefix = "")]
-namespace Config {
- public const string SPARQL_MODULES_DIR;
-}
diff --git a/src/libtracker-sparql/tracker-connection.vala b/src/libtracker-sparql/tracker-connection.vala
index 8cd708681..030836b1d 100644
--- a/src/libtracker-sparql/tracker-connection.vala
+++ b/src/libtracker-sparql/tracker-connection.vala
@@ -80,101 +80,6 @@ public errordomain Tracker.Sparql.Error {
* non-direct requests.
*/
public abstract class Tracker.Sparql.Connection : Object {
- static bool direct_only;
- static weak Connection? singleton;
- static bool log_initialized;
- static StaticMutex door;
-
- private static new Connection get_internal (bool is_direct_only = false, Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError {
- door.lock ();
-
- // assign to owned variable to ensure it doesn't get freed between unlock and return
- var result = singleton;
- if (result != null) {
- assert (direct_only == is_direct_only);
- door.unlock ();
- return result;
- }
-
- log_init ();
-
- /* the True is to assert that direct only is required */
- result = new Backend (is_direct_only);
- result.init ();
-
- if (cancellable != null && cancellable.is_cancelled ()) {
- door.unlock ();
- throw new IOError.CANCELLED ("Operation was cancelled");
- }
-
- direct_only = is_direct_only;
- singleton = result;
- result.add_weak_pointer ((void**) (&singleton));
-
- door.unlock ();
-
- return singleton;
- }
-
- private async static new Connection get_internal_async (bool is_direct_only = false, Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError {
- // fast path: avoid extra thread if connection is already available
- if (door.trylock ()) {
- // assign to owned variable to ensure it doesn't get freed between unlock and return
- var result = singleton;
-
- door.unlock ();
-
- if (result != null) {
- assert (direct_only == is_direct_only);
- return result;
- }
- }
-
- // run in a separate thread
- Sparql.Error sparql_error = null;
- IOError io_error = null;
- DBusError dbus_error = null;
- SpawnError spawn_error = null;
- Connection result = null;
- var context = MainContext.get_thread_default ();
-
- g_io_scheduler_push_job (job => {
- try {
- result = get_internal (is_direct_only, cancellable);
- } catch (IOError e_io) {
- io_error = e_io;
- } catch (Sparql.Error e_spql) {
- sparql_error = e_spql;
- } catch (DBusError e_dbus) {
- dbus_error = e_dbus;
- } catch (SpawnError e_spawn) {
- spawn_error = e_spawn;
- }
-
- var source = new IdleSource ();
- source.set_callback (() => {
- get_internal_async.callback ();
- return false;
- });
- source.attach (context);
-
- return false;
- });
- yield;
-
- if (sparql_error != null) {
- throw sparql_error;
- } else if (io_error != null) {
- throw io_error;
- } else if (dbus_error != null) {
- throw dbus_error;
- } else if (spawn_error != null) {
- throw spawn_error;
- } else {
- return result;
- }
- }
-
/**
* tracker_sparql_connection_get_finish:
* @_res_: The #GAsyncResult from the callback used to return the #TrackerSparqlConnection
@@ -205,9 +110,7 @@ public abstract class Tracker.Sparql.Connection : Object {
*
* Since: 0.10
*/
- public async static new Connection get_async (Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError {
- return yield get_internal_async (false, cancellable);
- }
+ public extern async static new Connection get_async (Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError;
/**
* tracker_sparql_connection_get:
@@ -244,9 +147,7 @@ public abstract class Tracker.Sparql.Connection : Object {
*
* Since: 0.10
*/
- public static new Connection get (Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError {
- return get_internal (false, cancellable);
- }
+ public extern static new Connection get (Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError;
/**
* tracker_sparql_connection_get_direct_finish:
@@ -279,9 +180,7 @@ public abstract class Tracker.Sparql.Connection : Object {
*
* Since: 0.10
*/
- public async static Connection get_direct_async (Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError {
- return yield get_internal_async (true, cancellable);
- }
+ public extern async static Connection get_direct_async (Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError;
/**
* tracker_sparql_connection_get_direct:
@@ -299,58 +198,7 @@ public abstract class Tracker.Sparql.Connection : Object {
*
* Since: 0.10
*/
- public static new Connection get_direct (Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError {
- return get_internal (true, cancellable);
- }
-
- private static void log_init () {
- if (log_initialized) {
- return;
- }
-
- log_initialized = true;
-
- // Avoid debug messages
- int verbosity = 0;
- string env_verbosity = Environment.get_variable ("TRACKER_VERBOSITY");
- if (env_verbosity != null)
- verbosity = env_verbosity.to_int ();
-
- LogLevelFlags remove_levels = 0;
-
- switch (verbosity) {
- // Log level 3: EVERYTHING
- case 3:
- break;
-
- // Log level 2: CRITICAL/ERROR/WARNING/INFO/MESSAGE only
- case 2:
- remove_levels = LogLevelFlags.LEVEL_DEBUG;
- break;
-
- // Log level 1: CRITICAL/ERROR/WARNING/INFO only
- case 1:
- remove_levels = LogLevelFlags.LEVEL_DEBUG |
- LogLevelFlags.LEVEL_MESSAGE;
- break;
-
- // Log level 0: CRITICAL/ERROR/WARNING only (default)
- default:
- case 0:
- remove_levels = LogLevelFlags.LEVEL_DEBUG |
- LogLevelFlags.LEVEL_MESSAGE |
- LogLevelFlags.LEVEL_INFO;
- break;
- }
-
- if (remove_levels != 0) {
- GLib.Log.set_handler ("Tracker", remove_levels, remove_log_handler);
- }
- }
-
- private static void remove_log_handler (string? log_domain, LogLevelFlags log_level, string message) {
- /* do nothing */
- }
+ public extern static new Connection get_direct (Cancellable? cancellable = null) throws Sparql.Error, IOError, DBusError, SpawnError;
public virtual void init () throws Sparql.Error, IOError, DBusError, SpawnError {
warning ("Interface 'init' not implemented");
diff --git a/src/miners/flickr/Makefile.am b/src/miners/flickr/Makefile.am
index c053eca33..6c26c321d 100644
--- a/src/miners/flickr/Makefile.am
+++ b/src/miners/flickr/Makefile.am
@@ -21,7 +21,7 @@ AM_CPPFLAGS = \
LDADD = \
$(top_builddir)/src/libtracker-miner/libtracker-miner-@TRACKER_API_VERSION@.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(BUILD_LIBS) \
$(TRACKER_MINER_FLICKR_LIBS)
diff --git a/src/miners/fs/Makefile.am b/src/miners/fs/Makefile.am
index e7667eac2..4c6c9f292 100644
--- a/src/miners/fs/Makefile.am
+++ b/src/miners/fs/Makefile.am
@@ -43,7 +43,7 @@ tracker_miner_fs_SOURCES = \
tracker_miner_fs_LDADD = \
$(top_builddir)/src/libtracker-miner/libtracker-miner-@TRACKER_API_VERSION@.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-extract/libtracker-extract-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-data/libtracker-data.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
diff --git a/src/miners/rss/Makefile.am b/src/miners/rss/Makefile.am
index c752cec53..d38566bb5 100644
--- a/src/miners/rss/Makefile.am
+++ b/src/miners/rss/Makefile.am
@@ -17,7 +17,7 @@ tracker_miner_rss_SOURCES = \
tracker-miner-rss.c
tracker_miner_rss_LDADD = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-miner/libtracker-miner-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
diff --git a/src/plugins/evolution/Makefile.am b/src/plugins/evolution/Makefile.am
index 2c5d7bb90..9717511c6 100644
--- a/src/plugins/evolution/Makefile.am
+++ b/src/plugins/evolution/Makefile.am
@@ -31,7 +31,7 @@ liborg_freedesktop_Tracker_evolution_plugin_la_SOURCES = \
liborg_freedesktop_Tracker_evolution_plugin_la_LDFLAGS = -module -avoid-version
liborg_freedesktop_Tracker_evolution_plugin_la_LIBADD = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-miner/libtracker-miner-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
diff --git a/src/plugins/nautilus/Makefile.am b/src/plugins/nautilus/Makefile.am
index 9581fd81d..cfe229c9d 100644
--- a/src/plugins/nautilus/Makefile.am
+++ b/src/plugins/nautilus/Makefile.am
@@ -19,6 +19,6 @@ libnautilus_tracker_tags_la_SOURCES = \
libnautilus_tracker_tags_la_LDFLAGS = -module -avoid-version
libnautilus_tracker_tags_la_LIBADD = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(BUILD_LIBS) \
$(TRACKER_NAUTILUS_EXTENSION_LIBS)
diff --git a/src/tracker-control/Makefile.am b/src/tracker-control/Makefile.am
index 69f6bf9a7..6bcb0f2e1 100644
--- a/src/tracker-control/Makefile.am
+++ b/src/tracker-control/Makefile.am
@@ -18,7 +18,7 @@ tracker_control_SOURCES = \
tracker_control_LDADD = \
$(top_builddir)/src/libtracker-miner/libtracker-miner-@TRACKER_API_VERSION@.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-data/libtracker-data.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
diff --git a/src/tracker-extract/Makefile.am b/src/tracker-extract/Makefile.am
index ade617111..12bebd370 100644
--- a/src/tracker-extract/Makefile.am
+++ b/src/tracker-extract/Makefile.am
@@ -443,7 +443,7 @@ tracker_extract_SOURCES = \
tracker_extract_LDADD = \
$(top_builddir)/src/libtracker-extract/libtracker-extract-@TRACKER_API_VERSION@.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-miner/libtracker-miner-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
diff --git a/src/tracker-needle/Makefile.am b/src/tracker-needle/Makefile.am
index b8e5aedeb..cdbf4c147 100644
--- a/src/tracker-needle/Makefile.am
+++ b/src/tracker-needle/Makefile.am
@@ -20,7 +20,7 @@ AM_CPPFLAGS = \
-include config.h
LDADD = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-$(TRACKER_API_VERSION).la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-$(TRACKER_API_VERSION).la \
$(BUILD_LIBS) \
$(TRACKER_NEEDLE_LIBS)
diff --git a/src/tracker-search-bar/Makefile.am b/src/tracker-search-bar/Makefile.am
index b5772dc26..8ba006f92 100644
--- a/src/tracker-search-bar/Makefile.am
+++ b/src/tracker-search-bar/Makefile.am
@@ -23,7 +23,7 @@ tracker_search_bar_CFLAGS = \
$(TRACKER_SEARCH_BAR_CFLAGS)
tracker_search_bar_LDADD = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
$(TRACKER_SEARCH_BAR_LIBS)
diff --git a/src/tracker-store/Makefile.am b/src/tracker-store/Makefile.am
index 77c060b36..6ef35326e 100644
--- a/src/tracker-store/Makefile.am
+++ b/src/tracker-store/Makefile.am
@@ -58,7 +58,7 @@ tracker_store_VALAFLAGS = \
tracker_store_LDADD = \
$(top_builddir)/src/libtracker-data/libtracker-data.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(BUILD_LIBS) \
$(TRACKER_STORE_LIBS)
diff --git a/src/tracker-utils/Makefile.am b/src/tracker-utils/Makefile.am
index ef7ad973b..7795fb8fd 100644
--- a/src/tracker-utils/Makefile.am
+++ b/src/tracker-utils/Makefile.am
@@ -8,7 +8,7 @@ AM_CPPFLAGS = \
$(TRACKER_UTILS_CFLAGS)
libs = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-miner/libtracker-miner-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
diff --git a/src/tracker-writeback/Makefile.am b/src/tracker-writeback/Makefile.am
index 7afd682c3..f0d0f7c53 100644
--- a/src/tracker-writeback/Makefile.am
+++ b/src/tracker-writeback/Makefile.am
@@ -63,7 +63,7 @@ tracker_writeback_SOURCES = \
tracker-main.c
tracker_writeback_LDADD = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-miner/libtracker-miner-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
diff --git a/tests/functional-tests/ipc/Makefile.am b/tests/functional-tests/ipc/Makefile.am
index 4b5335be3..3ca28a27a 100644
--- a/tests/functional-tests/ipc/Makefile.am
+++ b/tests/functional-tests/ipc/Makefile.am
@@ -28,7 +28,7 @@ LDADD =\
$(top_builddir)/src/libtracker-data/libtracker-data.la \
$(top_builddir)/src/libtracker-direct/libtracker-direct.la \
$(top_builddir)/src/libtracker-bus/libtracker-bus.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-$(TRACKER_API_VERSION).la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-$(TRACKER_API_VERSION).la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS)\
$(LIBTRACKER_SPARQL_LIBS)
diff --git a/tests/functional-tests/ipc/test-update-array-performance.c b/tests/functional-tests/ipc/test-update-array-performance.c
index 3f0d7262c..9d3c60f90 100644
--- a/tests/functional-tests/ipc/test-update-array-performance.c
+++ b/tests/functional-tests/ipc/test-update-array-performance.c
@@ -222,9 +222,6 @@ main (gint argc, gchar **argv)
g_type_init ();
- /* do not require prior installation */
- g_setenv ("TRACKER_SPARQL_MODULE_PATH", "../../src/libtracker-bus/.libs", TRUE);
-
connection = tracker_sparql_connection_get (NULL, NULL);
g_print ("First run (first update then array)\n");
diff --git a/tests/libtracker-data/Makefile.am b/tests/libtracker-data/Makefile.am
index 0ec6d4bbc..916578d6a 100644
--- a/tests/libtracker-data/Makefile.am
+++ b/tests/libtracker-data/Makefile.am
@@ -44,7 +44,7 @@ AM_CPPFLAGS = \
LDADD = \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(top_builddir)/src/libtracker-data/libtracker-data.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/tests/common/libtracker-testcommon.la \
$(BUILD_LIBS) \
$(LIBTRACKER_DATA_LIBS)
diff --git a/tests/libtracker-extract/Makefile.am b/tests/libtracker-extract/Makefile.am
index 25b81c40c..d9146d3e6 100644
--- a/tests/libtracker-extract/Makefile.am
+++ b/tests/libtracker-extract/Makefile.am
@@ -17,7 +17,7 @@ LDADD = \
$(top_builddir)/tests/common/libtracker-testcommon.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(top_builddir)/src/libtracker-extract/libtracker-extract-@TRACKER_API_VERSION@.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(BUILD_LIBS) \
$(LIBTRACKER_EXTRACT_LIBS)
diff --git a/tests/libtracker-fts/Makefile.am b/tests/libtracker-fts/Makefile.am
index 3535ceccb..d27b15a20 100644
--- a/tests/libtracker-fts/Makefile.am
+++ b/tests/libtracker-fts/Makefile.am
@@ -24,7 +24,7 @@ AM_CPPFLAGS = \
LDADD = \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(top_builddir)/src/libtracker-data/libtracker-data.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/tests/common/libtracker-testcommon.la \
$(BUILD_LIBS) \
$(LIBTRACKER_FTS_LIBS)
diff --git a/tests/libtracker-miner/Makefile.am b/tests/libtracker-miner/Makefile.am
index fee07878b..13b5f082f 100644
--- a/tests/libtracker-miner/Makefile.am
+++ b/tests/libtracker-miner/Makefile.am
@@ -36,7 +36,7 @@ AM_CPPFLAGS = \
LDADD = \
$(top_builddir)/src/libtracker-miner/libtracker-miner-@TRACKER_API_VERSION@.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
$(LIBTRACKER_MINER_LIBS)
diff --git a/tests/libtracker-sparql/Makefile.am b/tests/libtracker-sparql/Makefile.am
index def341f98..84c0d6ddd 100644
--- a/tests/libtracker-sparql/Makefile.am
+++ b/tests/libtracker-sparql/Makefile.am
@@ -13,7 +13,7 @@ AM_CPPFLAGS = \
$(LIBTRACKER_SPARQL_CFLAGS)
LDADD = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(BUILD_LIBS) \
$(LIBTRACKER_SPARQL_LIBS)
diff --git a/tests/libtracker-sparql/tracker-test.c b/tests/libtracker-sparql/tracker-test.c
index 0d0f1d8b7..73f381a82 100644
--- a/tests/libtracker-sparql/tracker-test.c
+++ b/tests/libtracker-sparql/tracker-test.c
@@ -329,9 +329,6 @@ main (gint argc, gchar **argv)
g_type_init ();
g_test_init (&argc, &argv, NULL);
- /* do not require prior installation */
- g_setenv ("TRACKER_SPARQL_MODULE_PATH", "../../src/libtracker-bus/.libs", TRUE);
-
#if HAVE_TRACKER_FTS
main_loop = g_main_loop_new (NULL, FALSE);
g_assert (main_loop != NULL);
diff --git a/tests/tracker-steroids/Makefile.am b/tests/tracker-steroids/Makefile.am
index 2311d1e56..f17383373 100644
--- a/tests/tracker-steroids/Makefile.am
+++ b/tests/tracker-steroids/Makefile.am
@@ -13,7 +13,7 @@ AM_CPPFLAGS = \
$(LIBTRACKER_SPARQL_CFLAGS)
LDADD = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
$(LIBTRACKER_SPARQL_LIBS)
diff --git a/tests/tracker-steroids/tracker-test.c b/tests/tracker-steroids/tracker-test.c
index 2870cc25c..7ce2f55d5 100644
--- a/tests/tracker-steroids/tracker-test.c
+++ b/tests/tracker-steroids/tracker-test.c
@@ -679,9 +679,6 @@ main (gint argc, gchar **argv)
g_type_init ();
g_test_init (&argc, &argv, NULL);
- /* do not require prior installation */
- g_setenv ("TRACKER_SPARQL_MODULE_PATH", "../../src/libtracker-bus/.libs", TRUE);
-
connection = tracker_sparql_connection_get (NULL, NULL);
insert_test_data ();
diff --git a/utils/mtp/Makefile.am b/utils/mtp/Makefile.am
index 8f2ab95eb..1b98cada0 100644
--- a/utils/mtp/Makefile.am
+++ b/utils/mtp/Makefile.am
@@ -11,7 +11,7 @@ noinst_PROGRAMS = mtp-dummy
mtp_dummy_SOURCES = mtp-dummy.c
mtp_dummy_LDADD = \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS) \
$(LIBTRACKER_SPARQL_LIBS)
diff --git a/utils/services/Makefile.am b/utils/services/Makefile.am
index 9460f78b2..78dd9bec2 100644
--- a/utils/services/Makefile.am
+++ b/utils/services/Makefile.am
@@ -12,7 +12,7 @@ AM_CPPFLAGS = \
LDADD = \
$(top_builddir)/src/libtracker-data/libtracker-data.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(BUILD_LIBS) \
$(LIBTRACKER_DATA_LIBS)
diff --git a/utils/tracker-resdump/Makefile.am b/utils/tracker-resdump/Makefile.am
index d2c63efe1..b26b59ef5 100644
--- a/utils/tracker-resdump/Makefile.am
+++ b/utils/tracker-resdump/Makefile.am
@@ -20,7 +20,7 @@ LDADD =\
$(top_builddir)/src/libtracker-data/libtracker-data.la \
$(top_builddir)/src/libtracker-direct/libtracker-direct.la \
$(top_builddir)/src/libtracker-bus/libtracker-bus.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-$(TRACKER_API_VERSION).la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-$(TRACKER_API_VERSION).la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(BUILD_LIBS)\
$(LIBTRACKER_SPARQL_LIBS) \
diff --git a/utils/tracker-sql/Makefile.am b/utils/tracker-sql/Makefile.am
index ceb6a0d48..b86feca2c 100644
--- a/utils/tracker-sql/Makefile.am
+++ b/utils/tracker-sql/Makefile.am
@@ -11,7 +11,7 @@ INCLUDES = \
LDADD = \
$(top_builddir)/src/libtracker-data/libtracker-data.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
- $(top_builddir)/src/libtracker-sparql/libtracker-sparql-@TRACKER_API_VERSION@.la \
+ $(top_builddir)/src/libtracker-sparql-backend/libtracker-sparql-@TRACKER_API_VERSION@.la \
$(TRACKER_UTILS_LIBS)
tracker_sql_SOURCES = tracker-sql.c