Hello community, here is the log from the commit of package liblrdf for openSUSE:Factory checked in at Tue Sep 20 12:55:54 CEST 2011.
-------- --- liblrdf/liblrdf.changes 2011-05-02 02:24:33.000000000 +0200 +++ /mounts/work_src_done/STABLE/liblrdf/liblrdf.changes 2011-09-16 15:57:52.000000000 +0200 @@ -1,0 +2,5 @@ +Fri Sep 16 13:56:52 UTC 2011 - [email protected] + +- Added Raptor2 compatibility patch (upstream) + +------------------------------------------------------------------- calling whatdependson for head-i586 New: ---- raptor2-compat.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ liblrdf.spec ++++++ --- /var/tmp/diff_new_pack.yhhcDY/_old 2011-09-20 12:55:48.000000000 +0200 +++ /var/tmp/diff_new_pack.yhhcDY/_new 2011-09-20 12:55:48.000000000 +0200 @@ -26,7 +26,8 @@ License: GPL v2 or later Group: System/Libraries Source: %{name}-%{version}.tar.bz2 -Patch: liblrdf-symbol-conflict.diff +Patch1: liblrdf-symbol-conflict.diff +Patch2: raptor2-compat.diff Url: http://liblrdf.sf.net BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -81,10 +82,13 @@ %prep %setup -q -%patch -p1 +%patch1 -p1 +%patch2 -p0 %build export CFLAGS="$RPM_OPT_FLAGS" +# Required because of patch2 that updates configure.ac +./autogen.sh %configure --disable-static --with-pic make ++++++ raptor2-compat.diff ++++++ --- src/Makefile.am +++ src/Makefile.am @@ -4,5 +4,5 @@ lib_LTLIBRARIES = liblrdf.la noinst_HEADERS = lrdf_md5.h md5_loc.h ladspa.h liblrdf_la_SOURCES = lrdf.c lrdf_multi.c md5.c -liblrdf_la_LIBADD = -lraptor +liblrdf_la_LIBADD = -lraptor2 liblrdf_la_LDFLAGS = -version-info @LRDF_LIBTOOL_VERSION@ --- src/lrdf.c +++ src/lrdf.c @@ -18,6 +18,7 @@ static unsigned int lrdf_uid = 0; /* A unique(ish) id to append to genid's to * avoid clashses */ +static raptor_world *world = NULL; static lrdf_statement *triples = NULL; static lrdf_statement *free_triples; static lrdf_string_hash *resources_hash[LRDF_HASH_SIZE]; @@ -43,8 +44,7 @@ static void lrdf_remove_triple_hash(lrdf_triple_hash ** tbl, lrdf_hash hash, lrdf_statement * s); static void lrdf_add_closure_hash(lrdf_closure_hash ** tbl, lrdf_hash subject, lrdf_hash object); -static void lrdf_store(void *user_data, - const raptor_statement * statement); +static void lrdf_store(void *user_data, raptor_statement * statement); void lrdf_free_statements(lrdf_statement * s); void lrdf_copy_statement(lrdf_statement * from, lrdf_statement * to); void lrdf_rebuild_taxonomic_closure(lrdf_closure_hash ** fwd_tbl, @@ -71,7 +71,7 @@ void lrdf_init() unsigned int i; struct timeval tv; - raptor_init(); + world = raptor_new_world(); lrdf_more_triples(256); /* A UID to add to genids to make them safer */ @@ -112,7 +112,8 @@ void lrdf_more_triples(int count) void lrdf_cleanup() { - raptor_finish(); + raptor_free_world(world); + world = NULL; lrdf_free_string_hash(resources_hash); lrdf_free_string_hash(literals_hash); @@ -232,26 +233,29 @@ void lrdf_remove_matches(lrdf_statement *pattern) } } -static void lrdf_store(void *user_data, const raptor_statement * statement) +static const char *lrdf_term_as_string(char *tmp, int tmp_len, + const raptor_term *term) +{ + switch (term->type) { + case RAPTOR_TERM_TYPE_URI: + return (const char *) raptor_uri_as_string(term->value.uri); + case RAPTOR_TERM_TYPE_LITERAL: + return (const char *) term->value.literal.string; + case RAPTOR_TERM_TYPE_BLANK: + snprintf(tmp, tmp_len, "_:%s.%x", term->value.blank.string, lrdf_uid); + return tmp; + default: + return "(?)"; + } +} + +static void lrdf_store(void *user_data, raptor_statement * statement) { lrdf_statement *s = lrdf_alloc_statement(); char tmps[128], tmpp[128], tmpo[128]; - char *subj = (char *) statement->subject, - *pred = (char *) statement->predicate, - *obj = (char *) statement->object; - - if (statement->subject_type == RAPTOR_IDENTIFIER_TYPE_ANONYMOUS) { - snprintf(tmps, 127, "_:%s.%x", subj, lrdf_uid); - subj = tmps; - } - if (statement->predicate_type == RAPTOR_IDENTIFIER_TYPE_ANONYMOUS) { - snprintf(tmpp, 127, "_:%s.%x", pred, lrdf_uid); - pred = tmpp; - } - if (statement->object_type == RAPTOR_IDENTIFIER_TYPE_ANONYMOUS) { - snprintf(tmpo, 127, "_:%s.%x", obj, lrdf_uid); - obj = tmpo; - } + const char *subj = lrdf_term_as_string(tmps, 128, statement->subject), + *pred = lrdf_term_as_string(tmpp, 128, statement->predicate), + *obj = lrdf_term_as_string(tmpo, 128, statement->object); s->shash = lrdf_gen_hash(subj); s->phash = lrdf_gen_hash(pred); @@ -261,7 +265,7 @@ static void lrdf_store(void *user_data, const raptor_statement * statement) s->subject = lrdf_check_hash(resources_hash, s->shash, subj); s->predicate = lrdf_check_hash(resources_hash, s->phash, pred); - if (statement->object_type == RAPTOR_IDENTIFIER_TYPE_LITERAL) { + if (statement->object->type == RAPTOR_TERM_TYPE_LITERAL) { s->object = lrdf_check_hash(literals_hash, s->ohash, obj); s->object_type = lrdf_literal; } else { @@ -537,28 +541,22 @@ void lrdf_rebuild_taxonomic_closure(lrdf_closure_hash ** fwd_tbl, free(pathto); } -static void lrdf_error_handler(void *data, raptor_locator * locator, - const char *message); +static void lrdf_log_handler(void *data, raptor_log_message *message); -static void lrdf_error_handler(void *data, raptor_locator * locator, - const char *message) +static void lrdf_log_handler(void *data, raptor_log_message *message) { - fprintf(stderr, "liblrdf: error - "); - raptor_print_locator(stderr, locator); - fprintf(stderr, " - %s\n", message); - - raptor_parse_abort((raptor_parser*)data); -} + const char *severity = "error"; + if (message->level == RAPTOR_LOG_LEVEL_WARN) { + severity = "warning"; + } -static void lrdf_warning_handler(void *data, raptor_locator * locator, - const char *message); + fprintf(stderr, "liblrdf: %s - ", severity); + raptor_locator_print(message->locator, stderr); + fprintf(stderr, " - %s\n", message->text); -static void lrdf_warning_handler(void *data, raptor_locator * locator, - const char *message) -{ - fprintf(stderr, "liblrdf: warning - "); - raptor_print_locator(stderr, locator); - fprintf(stderr, " - %s\n", message); + if (message->level != RAPTOR_LOG_LEVEL_WARN) { + raptor_parser_parse_abort((raptor_parser*)data); + } } @@ -593,15 +591,15 @@ int lrdf_read_file_intl(const char *uri) lrdf_hash source; //printf("lrdf: reading %s\n", uri); - ruri = raptor_new_uri(uri); - furi = raptor_new_uri(uri); + ruri = raptor_new_uri(world, (const unsigned char *) uri); + furi = raptor_new_uri(world, (const unsigned char *) uri); source = lrdf_gen_hash(uri); lrdf_check_hash(resources_hash, source, uri); if (strstr(uri, ".rdf")) { - parser = raptor_new_parser("rdfxml"); + parser = raptor_new_parser(world, "rdfxml"); } else { - parser = raptor_new_parser("ntriples"); + parser = raptor_new_parser(world, "ntriples"); } if (!parser) { fprintf(stderr, "liblrdf: failed to create parser\n"); @@ -609,12 +607,11 @@ int lrdf_read_file_intl(const char *uri) return 1; } - raptor_set_error_handler(parser, parser, lrdf_error_handler); - raptor_set_warning_handler(parser, NULL, lrdf_warning_handler); - raptor_set_statement_handler(parser, &source, lrdf_store); - raptor_set_default_generate_id_parameters(parser, NULL, ++lrdf_uid); + raptor_world_set_log_handler(world, parser, lrdf_log_handler); + raptor_parser_set_statement_handler(parser, &source, lrdf_store); + raptor_world_set_generate_bnodeid_parameters(world, NULL, ++lrdf_uid); - if (raptor_parse_file(parser, furi, ruri)) { + if (raptor_parser_parse_file(parser, furi, ruri)) { raptor_free_uri(furi); raptor_free_uri(ruri); raptor_free_parser(parser); --- configure.ac +++ configure.ac @@ -18,7 +18,7 @@ AC_HEADER_STDC AC_CHECK_HEADERS([errno.h limits.h stdlib.h string.h unistd.h]) -PKG_CHECK_MODULES(RAPTOR, raptor >= 0.9.11) +PKG_CHECK_MODULES(RAPTOR, raptor2 >= 0.9.11) # Checks for typedefs, structures, and compiler characteristics. AC_C_CONST --- lrdf.h +++ lrdf.h @@ -5,7 +5,7 @@ extern "C" { #endif -#include <raptor.h> +#include <raptor2/raptor2.h> #include <string.h> #include <sys/types.h> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
