Commit 668b48eb authored by Martyn Russell's avatar Martyn Russell Committed by Jürg Billeter

build: Fixed a myriad of build issues

- Removed examples/tracker-steroids, unused now.
- Fixed all tracker-extract/*.c includes using libtracker-client
- Fixed TRACKER_IS_SPARQL_BUILDER for _SPARQL_IS_BUILDER
- Fixed Makefile.am includes and linking with libtracker-client were
  not needed
parent 5d25a190
......@@ -1956,7 +1956,6 @@ AC_CONFIG_FILES([
examples/libtracker-extract/Makefile
examples/libtracker-miner/Makefile
examples/rss-reader/Makefile
examples/tracker-steroids/Makefile
])
AC_OUTPUT
......
......@@ -34,6 +34,7 @@ tracker_text_normalize
tracker_text_validate_utf8
tracker_date_format_to_iso8601
tracker_date_guess
tracker_keywords_parse
</SECTION>
<SECTION>
......
......@@ -3,5 +3,4 @@ include $(top_srcdir)/Makefile.decl
SUBDIRS = \
libtracker-extract \
libtracker-miner \
rss-reader \
tracker-steroids
rss-reader
......@@ -6,7 +6,7 @@ modulesdir = $(libdir)/tracker-$(TRACKER_API_VERSION)/extract-modules
INCLUDES = \
-I$(top_srcdir)/src \
-I$(top_builddir)/src \
-I$(top_builddir)/src/libtracker-client \
-I$(top_builddir)/src/libtracker-sparql \
$(WARN_CFLAGS) \
$(GLIB2_CFLAGS) \
$(GCOV_CFLAGS)
......@@ -17,6 +17,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 \
$(GLIB2_LIBS) \
$(GCOV_LIBS)
......@@ -24,7 +24,7 @@
#include <gio/gio.h>
#include <libtracker-extract/tracker-extract.h>
#include <libtracker-client/tracker-client.h>
#include <libtracker-sparql/tracker-sparql.h>
static void extract_mockup (const gchar *uri,
TrackerSparqlBuilder *preupdate,
......
benchmark
benchmark-update
steroids-sparql
steroids-sparql-async
steroids-sparql-update-async
include $(top_srcdir)/Makefile.decl
INCLUDES = \
-DSHAREDIR=\""$(datadir)"\" \
-DG_LOG_DOMAIN=\"Tracker\" \
-DTRACKER_COMPILATION \
-I$(top_srcdir)/src \
-I$(top_builddir)/src \
-I$(top_builddir)/src/libtracker-client \
$(WARN_CFLAGS) \
$(GLIB2_CFLAGS) \
$(GCOV_CFLAGS) \
$(GIO_CFLAGS) \
$(DBUS_CFLAGS)
noinst_PROGRAMS = \
steroids-sparql \
steroids-sparql-async \
steroids-sparql-update-async \
benchmark \
benchmark-update
steroids_sparql_SOURCES = \
steroids-sparql.c
steroids_sparql_update_async_SOURCES = steroids-sparql-update-async.c
benchmark_SOURCES = benchmark.c
benchmark_update_SOURCES = benchmark-update.c
steroids_sparql_LDADD = \
$(top_builddir)/src/libtracker-client/libtracker-client-@TRACKER_API_VERSION@.la \
$(top_builddir)/src/libtracker-common/libtracker-common.la \
$(DBUS_LIBS) \
$(GMODULE_LIBS) \
$(GTHREAD_LIBS) \
$(GIO_LIBS) \
$(GCOV_LIBS) \
$(GLIB2_LIBS) \
-lz \
-lm
steroids_sparql_async_LDADD = $(steroids_sparql_LDADD)
steroids_sparql_update_async_LDADD = $(steroids_sparql_LDADD)
benchmark_LDADD = $(steroids_sparql_LDADD)
benchmark_update_LDADD = $(steroids_sparql_LDADD)
/*
* Copyright (C) 2010, Codeminded BVBA <abustany@gnome.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public
* License as published by the Free Software Foundation; either
* version 2 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
* General Public License for more details.
*
* You should have received a copy of the GNU 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.
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <libtracker-client/tracker-client.h>
int
main (int argc, char **argv)
{
const gchar *query;
TrackerClient *client;
GError *error = NULL;
GPtrArray *results;
TrackerResultIterator *iterator;
gchar buffer[1024 * 1024];
GTimer *timer;
gint i, j;
gdouble time_normal, time_steroids;
if (argc != 2) {
g_printerr ("Usage: %s query\n", argv[0]);
return EXIT_FAILURE;
}
query = argv[1];
client = tracker_client_new (0, 0);
timer = g_timer_new ();
results = tracker_resources_sparql_query (client, query, &error);
if (error) {
g_critical ("Query error: %s", error->message);
g_error_free (error);
g_timer_destroy (timer);
return EXIT_FAILURE;
}
for (i = 0; i < results->len; i++) {
GStrv row = g_ptr_array_index (results, i);
for (j = 0; row[j]; j++) {
memcpy (buffer, row[j], g_utf8_strlen (row[j], -1));
}
}
time_normal = g_timer_elapsed (timer, NULL);
g_ptr_array_free (results, TRUE);
iterator = tracker_resources_sparql_query_iterate (client, query, &error);
while (tracker_result_iterator_next (iterator)) {
for (i = 0; i < tracker_result_iterator_n_columns (iterator); i++) {
const char *data;
data = tracker_result_iterator_value (iterator, i);
memcpy (buffer, data, g_utf8_strlen (data, -1));
}
}
time_steroids = g_timer_elapsed (timer, NULL);
tracker_result_iterator_free (iterator);
g_print ("Normal: %f seconds\n", time_normal);
g_print ("Steroids: %f seconds\n", time_steroids);
g_print ("Speedup: %f %%\n", 100 * (time_normal / time_steroids - 1));
return EXIT_SUCCESS;
}
/*
* Copyright (C) 2010, Codeminded BVBA <abustany@gnome.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public
* License as published by the Free Software Foundation; either
* version 2 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
* General Public License for more details.
*
* You should have received a copy of the GNU 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.
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <libtracker-client/tracker-client.h>
#define N_TRIES 500
int
main (int argc, char **argv)
{
const gchar *query;
TrackerClient *client;
GError *error = NULL;
GTimer *timer;
gint i;
gdouble time_normal, time_steroids;
if (argc != 2) {
g_printerr ("Usage: %s query\n", argv[0]);
return EXIT_FAILURE;
}
query = argv[1];
client = tracker_client_new (0, 0);
/* Run a first time to warm cache */
for (i = 0; i < N_TRIES; i++) {
tracker_resources_sparql_update (client, query, &error);
if (error) {
g_critical ("Query error: %s", error->message);
g_error_free (error);
return EXIT_FAILURE;
}
}
timer = g_timer_new ();
for (i = 0; i < N_TRIES; i++) {
/* FIXME disable FD passing */
tracker_resources_sparql_update (client, query, &error);
if (error) {
g_critical ("Query error: %s", error->message);
g_error_free (error);
g_timer_destroy (timer);
return EXIT_FAILURE;
}
}
time_normal = g_timer_elapsed (timer, NULL);
for (i = 0; i < N_TRIES; i++) {
tracker_resources_sparql_update (client, query, &error);
if (error) {
g_critical ("Query error: %s", error->message);
g_error_free (error);
g_timer_destroy (timer);
return EXIT_FAILURE;
}
}
time_steroids = g_timer_elapsed (timer, NULL);
g_print ("Normal: %f seconds\n", time_normal/N_TRIES);
g_print ("Steroids: %f seconds\n", time_steroids/N_TRIES);
g_print ("Speedup: %f %%\n", 100 * (time_normal / time_steroids - 1));
return EXIT_SUCCESS;
}
/*
* Copyright (C) 2010, Codeminded BVBA <abustany@gnome.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public
* License as published by the Free Software Foundation; either
* version 2 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
* General Public License for more details.
*
* You should have received a copy of the GNU 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.
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <libtracker-client/tracker-client.h>
int
main (int argc, char **argv)
{
const gchar *query;
TrackerClient *client;
GError *error = NULL;
GPtrArray *results;
TrackerResultIterator *iterator;
gchar buffer[1024 * 1024];
GTimer *timer;
gint i, j;
gdouble time_normal, time_steroids;
if (argc != 2) {
fprintf (stderr, "Usage: %s query\n", argv[0]);
return EXIT_FAILURE;
}
query = argv[1];
client = tracker_client_new (0, 0);
timer = g_timer_new ();
results = tracker_resources_sparql_query (client, query, &error);
if (error) {
g_critical ("Query error: %s", error->message);
g_error_free (error);
g_timer_destroy (timer);
return EXIT_FAILURE;
}
for (i = 0; i < results->len; i++) {
GStrv row = g_ptr_array_index (results, i);
for (j = 0; row[j]; j++) {
memcpy (buffer, row[j], g_utf8_strlen (row[j], -1));
}
}
time_normal = g_timer_elapsed (timer, NULL);
g_ptr_array_free (results, TRUE);
iterator = tracker_resources_sparql_query_iterate (client, query, &error);
while (tracker_result_iterator_next (iterator)) {
for (i = 0; i < tracker_result_iterator_n_columns (iterator); i++) {
const char *data;
data = tracker_result_iterator_value (iterator, i);
memcpy (buffer, data, g_utf8_strlen (data, -1));
}
}
time_steroids = g_timer_elapsed (timer, NULL);
tracker_result_iterator_free (iterator);
g_print ("Normal: %f seconds\n", time_normal);
g_print ("Steroids: %f seconds\n", time_steroids);
g_print ("Speedup: %f %%\n", 100 * (time_normal / time_steroids - 1));
return EXIT_SUCCESS;
}
/*
* Copyright (C) 2010, Codeminded BVBA <abustany@gnome.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public
* License as published by the Free Software Foundation; either
* version 2 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
* General Public License for more details.
*
* You should have received a copy of the GNU 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.
*/
#include <stdio.h>
#include <stdlib.h>
#include <libtracker-client/tracker-client.h>
static TrackerClient *client;
static GMainLoop *main_loop;
static void
query_cb (TrackerResultIterator *iterator,
GError *error,
gpointer user_data)
{
if (!iterator) {
g_printerr ("Query preparation failed, %s\n", error->message);
g_error_free (error);
exit (EXIT_FAILURE);
}
while (tracker_result_iterator_next (iterator)) {
int i;
for (i = 0; i < tracker_result_iterator_n_columns (iterator); i++) {
g_print ("%s", tracker_result_iterator_value (iterator, i));
if (i != tracker_result_iterator_n_columns (iterator) - 1) {
g_print (", ");
}
}
g_print ("\n");
}
tracker_result_iterator_free (iterator);
g_object_unref (client);
g_main_loop_quit (main_loop);
}
int
main (int argc, char **argv)
{
const gchar *query;
if (argc != 2) {
g_printerr ("Usage: %s query\n", argv[0]);
return EXIT_FAILURE;
}
query = argv[1];
main_loop = g_main_loop_new (NULL, FALSE);
client = tracker_client_new (0, 0);
tracker_resources_sparql_query_iterate_async (client, query, query_cb, NULL);
g_main_loop_run (main_loop);
return EXIT_SUCCESS;
}
/*
* Copyright (C) 2010, Codeminded BVBA <abustany@gnome.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public
* License as published by the Free Software Foundation; either
* version 2 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
* General Public License for more details.
*
* You should have received a copy of the GNU 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.
*/
#include <stdio.h>
#include <stdlib.h>
#include <libtracker-client/tracker-client.h>
#include <glib.h>
static TrackerClient *client;
static GMainLoop *main_loop;
static void
query_cb (GPtrArray *results,
GError *error,
gpointer user_data)
{
gint i, j;
if (error) {
g_critical ("Update failed: %s", error->message);
g_error_free (error);
g_object_unref (client);
g_main_loop_quit (main_loop);
return;
}
for (i = 0; i < results->len; i++) {
GPtrArray *inner_array;
inner_array = g_ptr_array_index (results, i);
for (j = 0; j < inner_array->len; j++) {
GHashTable *hash;
GHashTableIter iter;
gpointer key, value;
hash = g_ptr_array_index (inner_array, j);
g_hash_table_iter_init (&iter, hash);
while (g_hash_table_iter_next (&iter, &key, &value)) {
g_print ("%s -> %s\n", (gchar*) key, (gchar*) value);
}
g_hash_table_unref (hash);
}
}
g_ptr_array_free (results, TRUE);
g_object_unref (client);
g_main_loop_quit (main_loop);
}
int
main (int argc, char **argv)
{
const gchar *query;
if (argc != 2) {
g_printerr ("Usage: %s query\n", argv[0]);
return EXIT_FAILURE;
}
query = argv[1];
main_loop = g_main_loop_new (NULL, FALSE);
client = tracker_client_new (0, 0);
if (tracker_resources_sparql_update_blank_async (client, query, query_cb, NULL) == 0) {
g_critical ("error running update");
return EXIT_FAILURE;
}
g_main_loop_run (main_loop);
return EXIT_SUCCESS;
}
/*
* Copyright (C) 2010, Codeminded BVBA <abustany@gnome.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public
* License as published by the Free Software Foundation; either
* version 2 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
* General Public License for more details.
*
* You should have received a copy of the GNU 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.
*/
#include <stdio.h>
#include <stdlib.h>
#include <libtracker-client/tracker-client.h>
int
main (int argc, char **argv)
{
const gchar *query;
TrackerClient *client;
GError *error = NULL;
TrackerResultIterator *iterator;
if (argc != 2) {
g_printerr ( "Usage: %s query\n", argv[0]);
return EXIT_FAILURE;
}
query = argv[1];
client = tracker_client_new (0, 0);
iterator = tracker_resources_sparql_query_iterate (client, query, &error);
if (!iterator) {
g_printerr ("Query preparation failed, %s\n", error->message);
g_error_free (error);
return EXIT_FAILURE;
}
while (tracker_result_iterator_next (iterator)) {
gint i;
for (i = 0; i < tracker_result_iterator_n_columns (iterator); i++) {
g_print ("%s", tracker_result_iterator_value (iterator, i));
if (i != tracker_result_iterator_n_columns (iterator) - 1) {
g_print (", ");
}
}
g_print ("\n");
}
tracker_result_iterator_free (iterator);
g_object_unref (client);
return EXIT_SUCCESS;
}
......@@ -6,6 +6,7 @@ INCLUDES = \
-DTRACKER_COMPILATION \
-I$(top_srcdir)/src \
-I$(top_builddir)/src \
-I$(top_builddir)/src/libtracker-sparql \
$(WARN_CFLAGS) \
$(GLIB2_CFLAGS) \
$(GCOV_CFLAGS) \
......
......@@ -24,9 +24,7 @@
#error "only <libtracker-extract/tracker-extract.h> must be included directly."
#endif
#include <glib.h>
#include <libtracker-client/tracker-sparql-builder.h>
#include <libtracker-sparql/tracker-sparql.h>
G_BEGIN_DECLS
......
......@@ -662,7 +662,7 @@ tracker_xmp_apply (TrackerSparqlBuilder *metadata,
GPtrArray *keywords;
guint i;
g_return_val_if_fail (TRACKER_IS_SPARQL_BUILDER (metadata), FALSE);
g_return_val_if_fail (TRACKER_SPARQL_IS_BUILDER (metadata), FALSE);
g_return_val_if_fail (uri != NULL, FALSE);
g_return_val_if_fail (data != NULL, FALSE);
......
......@@ -25,7 +25,7 @@
#error "only <libtracker-extract/tracker-extract.h> must be included directly."
#endif
#include <libtracker-client/tracker-sparql-builder.h>
#include <libtracker-sparql/tracker-sparql.h>
G_BEGIN_DECLS
......
......@@ -28,9 +28,7 @@
#include <FLAC/metadata.h>
#include <libtracker-common/tracker-file-utils.h>
#include <libtracker-client/tracker.h>
#include <libtracker-common/tracker-common.h>
#include <libtracker-extract/tracker-extract.h>
......
......@@ -26,8 +26,8 @@
#include <gif_lib.h>
#include <libtracker-common/tracker-file-utils.h>
#include <libtracker-client/tracker-client.h>
#include <libtracker-common/tracker-common.h>
#include <libtracker-extract/tracker-extract.h>
#define XMP_MAGIC_TRAILER_LENGTH 256
......
......@@ -35,8 +35,6 @@ long long int llroundl(long double x);
#include <gst/gst.h>
#include <gst/tag/tag.h>
#include <libtracker-client/tracker.h>
#include <libtracker-extract/tracker-extract.h>
#include "tracker-albumart.h"
......
......@@ -29,8 +29,8 @@
#include <jpeglib.h>
#include <libtracker-common/tracker-file-utils.h>
#include <libtracker-client/tracker-client.h>
#include <libtracker-common/tracker-common.h>
#include <libtracker-extract/tracker-extract.h>
#include "tracker-main.h"
......