From 7f9476091a6e388716ec884986e0cf22d4f49b66d7fd47c25cc55086dff35610 Mon Sep 17 00:00:00 2001 From: Martin Pluskal Date: Wed, 12 Feb 2025 15:59:17 +0000 Subject: [PATCH] - added patches https://github.com/indexdata/yaz/commit/5bfb9370f45de00203b5bc02f528fd96a832d17a + yaz-gcc15.patch OBS-URL: https://build.opensuse.org/package/show/Publishing/yaz?expand=0&rev=137 --- .gitattributes | 23 ++ .gitignore | 1 + yaz-5.34.1.tar.gz | 3 + yaz-5.34.2.tar.gz | 3 + yaz-gcc15.patch | 113 ++++++ yaz-icu-76.patch | 27 ++ yaz.changes | 962 ++++++++++++++++++++++++++++++++++++++++++++++ yaz.spec | 178 +++++++++ yaz.test | 4 + 9 files changed, 1314 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 yaz-5.34.1.tar.gz create mode 100644 yaz-5.34.2.tar.gz create mode 100644 yaz-gcc15.patch create mode 100644 yaz-icu-76.patch create mode 100644 yaz.changes create mode 100644 yaz.spec create mode 100644 yaz.test diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/yaz-5.34.1.tar.gz b/yaz-5.34.1.tar.gz new file mode 100644 index 0000000..08cf8da --- /dev/null +++ b/yaz-5.34.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7fd8e0222b3b0d1115ad8e7a2ee67be7a2807624d61d5b71854bf5e167ab7a9 +size 2596155 diff --git a/yaz-5.34.2.tar.gz b/yaz-5.34.2.tar.gz new file mode 100644 index 0000000..5b0bab1 --- /dev/null +++ b/yaz-5.34.2.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab45cf48036fc6da7493815c033b5db2b1e7a34632caed1a43e9cdef745b9618 +size 2601365 diff --git a/yaz-gcc15.patch b/yaz-gcc15.patch new file mode 100644 index 0000000..1aea8a5 --- /dev/null +++ b/yaz-gcc15.patch @@ -0,0 +1,113 @@ +From 1eb021946a9603de6c024aa3a5b937e84c5b2270 Mon Sep 17 00:00:00 2001 +From: Adam Dickmeiss +Date: Mon, 27 Jan 2025 14:10:20 +0100 +Subject: [PATCH] Fix compilation with c17 c23 (#136) + +Most importanty set _POSIX_C_SOURCE to ensure certain +calls, fdopen, strerror_r are available. + +diff --git a/client/tabcomplete.c b/client/tabcomplete.c +index 1137e8378..655c1bee5 100644 +--- a/client/tabcomplete.c ++++ b/client/tabcomplete.c +@@ -6,8 +6,7 @@ + #include + #endif + +-#include +- ++#include + #include + #include + #include +@@ -33,12 +32,7 @@ char *complete_from_list(const char** completions, + idx = 0; + for(; completions[idx]; ++ idx) { + if(! +-#ifdef WIN32 +- _strnicmp +-#else +- strncasecmp +-#endif +- (completions[idx],text,strlen(text))) { ++ yaz_strncasecmp(completions[idx],text,strlen(text))) { + ++idx; /* skip this entry on the next run */ + return xstrdup(completions[idx-1]); + }; +diff --git a/configure.ac b/configure.ac +index 3e3e6fd27..997e74dfa 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -8,6 +8,7 @@ AC_CONFIG_SRCDIR([configure.ac]) + AC_CONFIG_AUX_DIR([config]) + AM_INIT_AUTOMAKE([1.9 subdir-objects]) + dnl ++AC_DEFINE([_POSIX_C_SOURCE],[200809L],[Enable POSIX]) + AC_SUBST([READLINE_LIBS]) + AC_SUBST([YAZ_CONF_CFLAGS]) + dnl ------ Checking programs +diff --git a/src/errno.c b/src/errno.c +index 95af15505..e076dc44a 100644 +--- a/src/errno.c ++++ b/src/errno.c +@@ -18,11 +18,11 @@ + #define _REENTRANT + #endif + ++#include ++ + #include + #include + #include +-#include +-#include + + #ifdef WIN32 + #include +diff --git a/src/yaz/errno.h b/src/yaz/errno.h +index 00e67df86..ee2bfd808 100644 +--- a/src/yaz/errno.h ++++ b/src/yaz/errno.h +@@ -33,6 +33,7 @@ + #define YAZ_ERRNO_H + + #include ++#include + + YAZ_BEGIN_CDECL + +diff --git a/src/cql2ccl.c b/src/cql2ccl.c +index 4109175c..f74804cd 100644 +--- a/src/cql2ccl.c ++++ b/src/cql2ccl.c +@@ -83,7 +83,7 @@ static void pr_term(const char **cpp, int stop_at_space, + *cpp = cp; + } + +-static int node(struct cql_node *cn, ++static int node_st(struct cql_node *cn, + void (*pr)(const char *buf, void *client_data), + void *client_data) + { +@@ -159,7 +159,7 @@ static int node(struct cql_node *cn, + } + + +-static int bool(struct cql_node *cn, ++static int node_bool(struct cql_node *cn, + void (*pr)(const char *buf, void *client_data), + void *client_data) + { +@@ -237,9 +237,9 @@ static int cql_to_ccl_r(struct cql_node *cn, + switch (cn->which) + { + case CQL_NODE_ST: +- return node(cn, pr, client_data); ++ return node_st(cn, pr, client_data); + case CQL_NODE_BOOL: +- return bool(cn, pr, client_data); ++ return node_bool(cn, pr, client_data); + case CQL_NODE_SORT: + return cql_to_ccl_r(cn->u.sort.search, pr, client_data); + } + diff --git a/yaz-icu-76.patch b/yaz-icu-76.patch new file mode 100644 index 0000000..ca4bd2e --- /dev/null +++ b/yaz-icu-76.patch @@ -0,0 +1,27 @@ +Index: yaz-5.34.2/m4/ac_check_icu.m4 +=================================================================== +--- yaz-5.34.2.orig/m4/ac_check_icu.m4 ++++ yaz-5.34.2/m4/ac_check_icu.m4 +@@ -25,8 +25,8 @@ AC_DEFUN([AC_CHECK_ICU], + AC_MSG_RESULT([found]) + ICU_VERSION=`$pkgconfigpath --modversion icu-i18n` + ICU_CPPFLAGS="" +- ICU_CFLAGS=`$pkgconfigpath --cflags icu-i18n` +- ICU_LIBS=`$pkgconfigpath --libs icu-i18n` ++ ICU_CFLAGS=`$pkgconfigpath --cflags icu-i18n icu-uc` ++ ICU_LIBS=`$pkgconfigpath --libs icu-i18n icu-uc` + else + AC_MSG_RESULT([not found]) + fi +Index: yaz-5.34.2/yaz-icu.pc.in +=================================================================== +--- yaz-5.34.2.orig/yaz-icu.pc.in ++++ yaz-5.34.2/yaz-icu.pc.in +@@ -6,6 +6,6 @@ includedir=@includedir@ + Name: YAZ ICU + Version: @VERSION@ + Description: YAZ ICU library for building Z39.50 applications +-Requires: yaz libexslt icu-i18n ++Requires: yaz libexslt icu-i18n icu-uc + Libs: -L${libdir} -lyaz_icu @PTHREAD_LIBS@ + Cflags: @ICU_CPPFLAGS@ diff --git a/yaz.changes b/yaz.changes new file mode 100644 index 0000000..3c12e79 --- /dev/null +++ b/yaz.changes @@ -0,0 +1,962 @@ +------------------------------------------------------------------- +Wed Feb 12 15:52:05 UTC 2025 - pgajdos@suse.com + +- added patches + https://github.com/indexdata/yaz/commit/5bfb9370f45de00203b5bc02f528fd96a832d17a + + yaz-gcc15.patch + +------------------------------------------------------------------- +Fri Nov 22 08:53:43 UTC 2024 - Dominique Leuenberger + +- Update to version 5.34.2: + + Remove outdated distros: Debian Stretch and Ubuntu Trusty + + LICENSE: Update to match Index Data's online Revised BSD license + + Vscode XML editor settings + + YAZ 5.34.1 breaks search with OCLC's "Sisis InfoGuide" origin +- Add yaz-icu-76.patch: Fix build against ICU 76: most sources + found in the wild wrongly define the need on icu-i18n, when most + actually would need icu-uc. +- Add libtool BuildRequires and call autoreconf in build section, + as above patch touches the build system. + +------------------------------------------------------------------- +Wed Jun 19 20:58:22 UTC 2024 - Dirk Müller + +- update to 5.34.1: + * Build: fix implicit atoi/stdlib includes (libxml >2.12) #104 + * Build: fix libxml2 2.13 reorganizing headers #102 + * Build: fix always true pointer checks #108 + * Build: update m4 to fix cross-builds + +------------------------------------------------------------------- +Sat Jan 21 17:29:03 UTC 2023 - Dirk Müller + +- update to 5.34.0: + * Fixes to Solr response decoding. + * Fix compilation with Visual Studio Failed for YAZ 5.33.0. + * JSON pretty-printed same way as jq for yaz-json-parse and yaz-marcdump + * utilities. + +------------------------------------------------------------------- +Sun Dec 18 10:39:29 UTC 2022 - Dirk Müller + +- update to 5.33.0: + * yaz-marcdump: SAX based MARCXML parsing. This is about 3 times faster + * than before. + * yaz-marcdump: new option -r prints summary of number of records + processed. + * Document ZOOM option 'rpnCharset'. + * Fix cross-compiling with pkg-config. + +------------------------------------------------------------------- +Mon Aug 8 15:37:51 UTC 2022 - Dirk Müller + +- update to 5.32.0: + * backtrace: allow gdb to operate on this process. + * backtrace: hard exit if backtrace hangs. + * yaz-marcdump: limit, offset options. Limit(-L), offset(-O) allows records + in range to be processed. + +------------------------------------------------------------------- +Mon Jan 31 13:31:44 UTC 2022 - Dominique Leuenberger + +- Drop baselibs.conf: no apparent reason detected why we need + -32bit libaries and devel packages. The previously existing + package already was not installable, so defacto no loss. + +------------------------------------------------------------------- +Fri Jan 21 16:48:31 UTC 2022 - Avinesh Kumar + +- Update to version 5.31.1 + * Fixed #61: yaz-url redirect segfault in case of redirect host failure. + * Update yaz_encode_uri_component for RFC3986. Previous implementation + based on RFC2396. + +------------------------------------------------------------------- +Mon Jun 7 11:37:05 UTC 2021 - Jan Engelhardt + +- Drop --with-pic (no effect with --disable-static) + +------------------------------------------------------------------- +Thu May 6 12:13:38 UTC 2021 - Ferdinand Thiessen + +- Update to version 5.31.0 + * Fixed yaz-marcdump: json input and leader at end undefined behavior. + * Enable xi:include processing for yaz_xml_include_glob and + yaz_xml_include_simple + +------------------------------------------------------------------- +Wed Aug 26 08:21:31 UTC 2020 - Dirk Mueller + +- update to 5.30.3: + * Require getaddrinfo which has been available since 2003. + * Provide server host for SSL by using gnutls_server_name_set(3). + * Obey [host]:port notation for IPV6 + +------------------------------------------------------------------- +Wed May 6 08:34:14 UTC 2020 - Paolo Stivanin + +- Update to 5.30.2: + * Extend the record conversion routines to handle OPAC encoding + with outputcharset and leaderspec. + * Fix #54 in cql_strerror: incorrect call to yaz_diag_to_str YAZ-928. + * Partly revert UTF-8 records returned by yaz-ztest (introduced in 5.30.0) + * Fixes pazpar2 tests that relies on specific records being returned. + * Increase a few buffers due to compiler warning + * Buffers are involving %d-conversions. + +------------------------------------------------------------------- +Sat Mar 14 11:25:11 UTC 2020 - lars@linux-schulserver.de + +- Update to 5.29.0: + + Several fixes for danmarc(2) charset encoding and decoding. + YAZ-923 YAZ-924 + + Fix yaz-marcdump silently creates MARC-records with an + invalid director YAZ-926 + + Add pkg-config templates for YAZ ICU and YAZ server YAZ-925 + 5.28.0 2019/11/28 + + Element-set is case sensitive for yaz_retrieval. The element-set + name should be case insensitive, and thus, the name property + is matched in a case-insensive mannner. YAZ-922 + 5.27.2 2019/10/07 + + Fix hitting directory for docpath results in malloc failure YAZ-921 + + Fix attempt to write HTTP to a non-listening socket loops YAZ-919 + + Fix yaz-ztest SSL does not work when forking YAZ-918 + 5.27.1 2018/12/03 + + Use pkg-config to detect ICU . Closes #41 + + Describe ZOOM option timeout + + Fix typos in yaz-client man page and other typos + 5.27.0 2018/10/08 + + GFS: Allow External type TaskPackage response YAZ-915 + + zoomsh: fset command YAZ-916 + + Improve logging of extended service task type YAZ-914 + + yaz-client: document the third arg to the show command #37 + 5.26.1 2018/07/11 + + Fix segv with element-set=null and split YAZ-913 + 5.26.0 2018/07/09 + + Allow suffix split for retrieval element-set names YAZ-912 + + cql2ccl: case sensitive comparisons for ops etc YAZ-911 + 5.25.0 2018/05/04 + + ZOOM C: return extended services diagnostics separately YAZ-908 + The diagnostic code and additional info is saved in options + esError and esAddinfo respectively - as part of the ZOOM package. + 5.24.0 2018/04/25 + + New option for ZOOM C' record update: recordIdString (the string + variant of recordId). Until now only recordIdNumber and recordIdOpaque + was possible. YAZ-907 + + Update for Visual Studio 2017. Bundle runtime from that compiler. YAZ-905 + + yaz FTCBFS: uses the build architecture pkg-config YAZ-897 + 5.23.1 2017/09/04 + + Fix Omitted Content-Length not handled anymore YAZ-894 + This issue was introduced by work in YAZ-878 YAZ Version 5.20.0. + 5.23.0 2017/08/04 + + Allow for more Solr URL schemas YAZ-893 + If the Solr URL contains ? it will be treated as a URL that + includes request handler rather than hard-coded /select. For example + /solr/search? . You can also pass own arguments. For example + /solr/search?foo=bar . +- removed upstreamed patches: + + yaz-5.22.0-codecleanup.patch (yaz-5.1.2-codecleanup.diff) + + yaz-5.22.0-client.patch + +------------------------------------------------------------------- +Mon Jul 3 15:56:11 UTC 2017 - lars@linux-schulserver.de + +- Update to 5.22.0 + + rdf-lookup: Add timeout configuration option YAZ-891 + Add yaz_url_set_timeout + + rdf-lookup: report error if X-Path cannot be compiled YAZ-890 + + rdf-lookup: avoid double dash in generated XML comments + + rdf-lookup: fix misleading log on rdf-failures YAZ-884 + + Add documentation for tag in xslt retrieval facility doc + + comstack: Fix compilation error if getaddrinfo does not exist + + yaz-url: ignore content-length for HTTP method HEAD YAZ-878 + + retrieval: fix incorrect backend schema YAZ-877 + + record_conv: allow HTTP method to be set for authority lookup + + record_conv: change error for unsupported backend element + + New type, rdf-lookup, for record conversion system (retrieval) + + Fix yaz_url_exec sending same uri for 2nd call + + cql2pqf: relation modifiers with name and value are converted + to proximity with unit=element. Left operand is the the primary + index and term. Right operand is attribute index-name mapping of name + and value being the relation modifier value. For example, + dc.title =/dc.language=dk kirke + could be mapped to + @prox 0 0 0 0 k 8 @attr 1=4 "kirke" @attr 1=54 dk + + Add ProximityUnit map to/from string utility + + New functions z_ProxUnit_to_str and z_str_to_ProxUnit. + + Allow multi-byte indicators for MARC subsystem + + JSON: to the spec check of number + + JSON: strict \uxxxx sequence + + JSON: fail for nesting more than 1000 levels + + JSON: distinguish between EOF and error + + CCL: fix r=o, r=r WRT inherited attributes YAZ-864 + + ZOOM C: tweak when connection failed is returned + + ZOOM C: deal with excess bytes HTTPS case YAZ-833 + + Fix ZOOM: crash extended services diagnostics YAZ-846 + + Make yaz_log_reopen async-signal YAZ-845 + + Add lock/unlock for YAZ log writes YAZ-843 + + Fix yaz-client command args parsing broken YAZ-855 + + yaz-client: deal with excess bytes HTTPS case YAZ-833 + + Allow Content-Type application/sru+xml YAZ-840 + + New yaz_xml_get_prop utility YAZ-839 + + Extend get_org_info (snippets) to return original string YAZ-836 + + Deal with excess bytes in HTTP response for keepalive YAZ-830 + + Refactor ssl_put and tcpip_put to one function YAZ-832 + + Refactor ssl_get and tcpip_get to one function YAZ-831 + + Fix SEGV yaz-client for HTTP decoding error YAZ-829 + + Fix buffer overflow in cmd_elements in yaz-client YAZ-828 + + Use CONNECT for SSL backends and for Z39.50 thru HTTP proxy YAZ-825 + + Fix http proxy fails with yaz-client YAZ-824 + + Fix 0 ptr reference for OPAC records from XML YAZ-822 + + Extend yaz daemon facility to assist int log rotation YAZ-818 YAZ-819 + + Moved YAZ and many other software components to GitHub +- yaz-record-conv now installed and packaged +- Adjust and rename code cleanup patches (yaz-4.1.7-codecleanup.diff + and yaz-4.1.7-client.diff) +- removed yaz-4.2.47-implicit_definitions.patch: somehow fixed + upstream (no compiler warnings any more) + +------------------------------------------------------------------- +Thu Jan 15 11:36:33 UTC 2015 - lars@linux-schulserver.de + +- Update to 5.8.1: + + record conv: 'select' return org record if no x-path match YAZ-814 + + retrieval: pick matched element-set rule YAZ-813 + + Fix crash in record conv rule 'select' YAZ-812 + + record_conv: selection by X-Path YAZ-811 + That's a new step in record conversion system (