diff --git a/67bcd63bda9d7b095489a09b9880aa730ddb5488.patch b/67bcd63bda9d7b095489a09b9880aa730ddb5488.patch deleted file mode 100644 index 8c107f4..0000000 --- a/67bcd63bda9d7b095489a09b9880aa730ddb5488.patch +++ /dev/null @@ -1,158 +0,0 @@ -From 67bcd63bda9d7b095489a09b9880aa730ddb5488 Mon Sep 17 00:00:00 2001 -From: David Robillard -Date: Fri, 7 Oct 2022 12:07:51 -0400 -Subject: [PATCH] Port sord_validate to pcre2 - ---- - meson.build | 6 ++--- - src/sord_config.h | 14 +++++------ - src/sord_validate.c | 61 +++++++++++++++++++++++++++------------------ - 4 files changed, 49 insertions(+), 35 deletions(-) - -Index: sord-0.16.14/meson.build -=================================================================== ---- sord-0.16.14.orig/meson.build -+++ sord-0.16.14/meson.build -@@ -116,14 +116,14 @@ if not get_option('tools').disabled() - - meson.override_find_program('sordi', sordi) - -- pcre_dep = dependency('libpcre', required: false) -+ pcre2_dep = dependency('libpcre2-8', required: false) - -- if pcre_dep.found() -+ if pcre2_dep.found() - sord_validate = executable('sord_validate', - files('src/sord_validate.c'), - c_args: c_suppressions, - install: true, -- dependencies: [sord_dep, pcre_dep]) -+ dependencies: [sord_dep, pcre2_dep]) - - meson.override_find_program('sord_validate', sord_validate) - endif -Index: sord-0.16.14/src/sord_config.h -=================================================================== ---- sord-0.16.14.orig/src/sord_config.h -+++ sord-0.16.14/src/sord_config.h -@@ -20,11 +20,11 @@ - - #if !defined(SORD_NO_DEFAULT_CONFIG) - --// The validator uses PCRE for literal pattern matching --# ifndef HAVE_PCRE -+// The validator uses PCRE2 for literal pattern matching -+# ifndef HAVE_PCRE2 - # ifdef __has_include --# if __has_include() --# define HAVE_PCRE 1 -+# if __has_include() -+# define HAVE_PCRE2 1 - # endif - # endif - # endif -@@ -39,10 +39,10 @@ - if the build system defines them all. - */ - --#ifdef HAVE_PCRE --# define USE_PCRE 1 -+#ifdef HAVE_PCRE2 -+# define USE_PCRE2 1 - #else --# define USE_PCRE 0 -+# define USE_PCRE2 0 - #endif - - #endif // SORD_CONFIG_H -Index: sord-0.16.14/src/sord_validate.c -=================================================================== ---- sord-0.16.14.orig/src/sord_validate.c -+++ sord-0.16.14/src/sord_validate.c -@@ -8,8 +8,9 @@ - #include "sord/sord.h" - #include "sord_config.h" - --#if USE_PCRE --# include -+#if USE_PCRE2 -+# define PCRE2_CODE_UNIT_WIDTH 8 -+# include - #endif - - #ifdef _WIN32 -@@ -176,31 +177,43 @@ is_descendant_of(SordModel* model, - } - - static bool --regexp_match(const uint8_t* pat, const char* str) -+regexp_match(const uint8_t* const pattern, const char* const str) - { --#if USE_PCRE -- // Append a $ to the pattern so we only match if the entire string matches -- const size_t len = strlen((const char*)pat); -- char* const regx = (char*)malloc(len + 2); -- memcpy(regx, pat, len); -- regx[len] = '$'; -- regx[len + 1] = '\0'; -- -- const char* err; -- int erroffset; -- pcre* re = pcre_compile(regx, PCRE_ANCHORED, &err, &erroffset, NULL); -- free(regx); -+#if USE_PCRE2 -+ static const uint32_t options = PCRE2_ANCHORED | PCRE2_ENDANCHORED; -+ -+ int err = 0; -+ size_t erroffset = 0U; -+ -+ pcre2_code* const re = pcre2_compile( -+ pattern, PCRE2_ZERO_TERMINATED, options, &err, &erroffset, NULL); -+ - if (!re) { -- fprintf( -- stderr, "Error in pattern `%s' at offset %d (%s)\n", pat, erroffset, err); -+ fprintf(stderr, -+ "Error in pattern `%s' at offset %lu (%d)\n", -+ pattern, -+ erroffset, -+ err); - return false; - } - -- const bool ret = -- pcre_exec(re, NULL, str, (int)strlen(str), 0, 0, NULL, 0) >= 0; -- pcre_free(re); -- return ret; --#endif // USE_PCRE -+ pcre2_match_data* const match_data = -+ pcre2_match_data_create_from_pattern(re, NULL); -+ -+ const int rc = pcre2_match(re, -+ (const uint8_t*)str, -+ PCRE2_ZERO_TERMINATED, -+ 0, -+ options, -+ match_data, -+ NULL); -+ -+ pcre2_match_data_free(match_data); -+ -+ pcre2_code_free(re); -+ return rc > 0; -+#endif // USE_PCRE2 -+ - return true; - } - -@@ -776,8 +789,8 @@ main(int argc, char** argv) - URI(xsd, pattern); - URI(xsd, string); - --#if !USE_PCRE -- fprintf(stderr, "warning: Built without PCRE, datatypes not checked.\n"); -+#if !USE_PCRE2 -+ fprintf(stderr, "warning: Built without PCRE2, datatypes not checked.\n"); - #endif - - const int prop_st = check_properties(model, &uris); diff --git a/sord-0.16.14.tar.xz b/sord-0.16.14.tar.xz deleted file mode 100644 index 2294309..0000000 --- a/sord-0.16.14.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:220fd97d5fcb216e7b85db66f685bfdaad7dc58a50d1f96dfb2558dbc6c4731b -size 112748 diff --git a/sord-0.16.14.tar.xz.sig b/sord-0.16.14.tar.xz.sig deleted file mode 100644 index a41d2af..0000000 Binary files a/sord-0.16.14.tar.xz.sig and /dev/null differ diff --git a/sord-0.16.16.tar.xz b/sord-0.16.16.tar.xz new file mode 100644 index 0000000..141f43d --- /dev/null +++ b/sord-0.16.16.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:257f876d756143da02ee84c9260af93559d6249dd87f317e70ab5fffcc975fd0 +size 107148 diff --git a/sord-0.16.16.tar.xz.sig b/sord-0.16.16.tar.xz.sig new file mode 100644 index 0000000..b1dd7c1 Binary files /dev/null and b/sord-0.16.16.tar.xz.sig differ diff --git a/sord.changes b/sord.changes index 212fc8d..d91404b 100644 --- a/sord.changes +++ b/sord.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Sun Jan 19 00:15:11 UTC 2025 - Konstantin Voinov + +- remove 67bcd63bda9d7b095489a09b9880aa730ddb5488.patch now upstream +- update to 0.16.16 + * Allow SORD_API to be defined by the user + * Fix command line help interface of sord_validate + * Fix dependencies in pkg-config file + * Override pkg-config dependency within meson + * Port sord_validate to pcre2 + * Switch to external zix dependency + ------------------------------------------------------------------- Mon Feb 26 13:42:34 UTC 2024 - Dominique Leuenberger diff --git a/sord.spec b/sord.spec index e4ba483..d956f96 100644 --- a/sord.spec +++ b/sord.spec @@ -1,7 +1,7 @@ # # spec file for package sord # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2025 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,7 +18,7 @@ %define sover 0 Name: sord -Version: 0.16.14 +Version: 0.16.16 Release: 0 Summary: Utilities to work with RDF data License: ISC @@ -28,8 +28,6 @@ Source0: https://download.drobilla.net/sord-%{version}.tar.xz Source1: https://download.drobilla.net/sord-%{version}.tar.xz.sig Source2: sord.keyring Source3: baselibs.conf -# https://github.com/drobilla/sord/commit/67bcd63bda9d7b095489a09b9880aa730ddb5488 -Patch0: 67bcd63bda9d7b095489a09b9880aa730ddb5488.patch BuildRequires: doxygen BuildRequires: graphviz BuildRequires: meson @@ -37,6 +35,7 @@ BuildRequires: pcre2-devel BuildRequires: pkgconfig BuildRequires: python3 BuildRequires: pkgconfig(serd-0) >= 0.30.10 +BuildRequires: pkgconfig(zix-0) >= 0.4.0 %description Utilities to work with RDF data. @@ -65,15 +64,15 @@ Sord is a lightweight C library for storing RDF data in memory. %autosetup -p1 %build -%{meson} -Ddocs=enabled -Dtests=enabled -%{meson_build} +%meson -Ddocs=enabled -Dtests=enabled +%meson_build %install -%{meson_install} +%meson_install rm -rf %{buildroot}%{_datadir}/doc/sord-0/html %check -%{meson_test} +%meson_test %post -n libsord-0-%{sover} -p /sbin/ldconfig %postun -n libsord-0-%{sover} -p /sbin/ldconfig