SHA256
1
0
forked from pool/yaz

Compare commits

...

4 Commits

Author SHA256 Message Date
Ana Guerrero
1fd23f50b7 Accepting request 1245424 from Publishing
OBS-URL: https://build.opensuse.org/request/show/1245424
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/yaz?expand=0&rev=53
2025-02-12 20:39:09 +00:00
Martin Pluskal
7f9476091a - added patches
5bfb9370f4
  + yaz-gcc15.patch

OBS-URL: https://build.opensuse.org/package/show/Publishing/yaz?expand=0&rev=137
2025-02-12 15:59:17 +00:00
Ana Guerrero
a6d1814222 Accepting request 1226341 from Publishing
OBS-URL: https://build.opensuse.org/request/show/1226341
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/yaz?expand=0&rev=52
2024-11-26 19:55:44 +00:00
Martin Pluskal
99b0514e9a - 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.

OBS-URL: https://build.opensuse.org/package/show/Publishing/yaz?expand=0&rev=135
2024-11-25 19:57:25 +00:00
6 changed files with 174 additions and 6 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c7fd8e0222b3b0d1115ad8e7a2ee67be7a2807624d61d5b71854bf5e167ab7a9
size 2596155

3
yaz-5.34.2.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ab45cf48036fc6da7493815c033b5db2b1e7a34632caed1a43e9cdef745b9618
size 2601365

113
yaz-gcc15.patch Normal file
View File

@ -0,0 +1,113 @@
From 1eb021946a9603de6c024aa3a5b937e84c5b2270 Mon Sep 17 00:00:00 2001
From: Adam Dickmeiss <adam@indexdata.dk>
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 <config.h>
#endif
-#include <yaz/yconfig.h>
-
+#include <yaz/matchstr.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
@@ -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 <yaz/errno.h>
+
#include <stdlib.h>
#include <string.h>
#include <errno.h>
-#include <stddef.h>
-#include <yaz/errno.h>
#ifdef WIN32
#include <windows.h>
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 <yaz/yconfig.h>
+#include <stddef.h>
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);
}

27
yaz-icu-76.patch Normal file
View File

@ -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@

View File

@ -1,3 +1,24 @@
-------------------------------------------------------------------
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 <dimstar@opensuse.org>
- 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 <dmueller@suse.com>

View File

@ -1,7 +1,7 @@
#
# spec file for package yaz
#
# Copyright (c) 2024 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,16 +18,21 @@
%define libname libyaz5
Name: yaz
Version: 5.34.1
Version: 5.34.2
Release: 0
Summary: Z39.50 protocol server and client
License: BSD-3-Clause
Group: Development/Libraries/C and C++
URL: https://www.indexdata.com/resources/software/yaz/
Source: http://ftp.indexdata.dk/pub/yaz/yaz-%{version}.tar.gz
Patch0: yaz-icu-76.patch
# https://github.com/indexdata/yaz/commit/1eb021946a9603de6c024aa3a5b937e84c5b2270
# https://github.com/indexdata/yaz/commit/5bfb9370f45de00203b5bc02f528fd96a832d17a
Patch1: yaz-gcc15.patch
BuildRequires: gnutls-devel
BuildRequires: libicu-devel
BuildRequires: libpcap-devel
BuildRequires: libtool
BuildRequires: libxslt-devel
BuildRequires: openssl-devel
BuildRequires: pkgconfig
@ -76,9 +81,10 @@ YAZ is a C library for developing client and server applications
using the ANSI/NISO Z39.50 protocol for Information Retrieval.
%prep
%autosetup
%autosetup -p1
%build
autoreconf -fiv
# --with-dsssl=/usr/share/sgml/docbook/dsssl-stylesheets \
# --with-dtd=/usr/share/sgml/db41xml
%configure --enable-shared \
@ -97,6 +103,7 @@ rm -fr %{buildroot}%{_datadir}/doc
rm -fr html
mkdir html
cp -a doc/*.html html
chmod 644 html/*.html
# cp doc/*pdf .
ln -sf introduction.html html/index.html
# yaz.pdf