mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-23 12:10:06 +02:00
yaz, new recipe (#10133)
This commit is contained in:
187
dev-libs/yaz/patches/yaz-5.34.0.patchset
Normal file
187
dev-libs/yaz/patches/yaz-5.34.0.patchset
Normal file
@@ -0,0 +1,187 @@
|
||||
From 2ea7588c18ef673137062804b1ecb50e32748ae9 Mon Sep 17 00:00:00 2001
|
||||
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
|
||||
Date: Tue, 21 Nov 2023 23:39:48 +0900
|
||||
Subject: FIX: fix build error with libxml2 2.12.0
|
||||
|
||||
libxml2 2.12.0 changed which header file to define functions
|
||||
and header inclusion. Due to this refactoring, some yaz source
|
||||
files need additional inclusion of libxml2 header file,
|
||||
especially for libxml/parser.h .
|
||||
|
||||
Closes #102 .
|
||||
|
||||
diff --git a/client/client.c b/client/client.c
|
||||
index 34e6a77..369564a 100644
|
||||
--- a/client/client.c
|
||||
+++ b/client/client.c
|
||||
@@ -73,6 +73,10 @@
|
||||
#include <readline/history.h>
|
||||
#endif
|
||||
|
||||
+#if YAZ_HAVE_XML2
|
||||
+#include <libxml/parser.h>
|
||||
+#endif
|
||||
+
|
||||
|
||||
#include "admin.h"
|
||||
#include "tabcomplete.h"
|
||||
diff --git a/src/record_render.c b/src/record_render.c
|
||||
index 82fa698..654aca4 100644
|
||||
--- a/src/record_render.c
|
||||
+++ b/src/record_render.c
|
||||
@@ -23,6 +23,7 @@
|
||||
#include <yaz/base64.h>
|
||||
|
||||
#if YAZ_HAVE_XML2
|
||||
+#include <libxml/parser.h>
|
||||
#include <libxml/xpath.h>
|
||||
#include <libxml/xpathInternals.h>
|
||||
#endif
|
||||
diff --git a/test/test_ccl.c b/test/test_ccl.c
|
||||
index bb3e932..b970870 100644
|
||||
--- a/test/test_ccl.c
|
||||
+++ b/test/test_ccl.c
|
||||
@@ -11,6 +11,9 @@
|
||||
#include <yaz/log.h>
|
||||
#include <yaz/test.h>
|
||||
|
||||
+#if YAZ_HAVE_XML2
|
||||
+#include <libxml/parser.h>
|
||||
+#endif
|
||||
|
||||
static int tst_ccl_query(CCL_bibset bibset,
|
||||
const char *query,
|
||||
diff --git a/test/test_icu.c b/test/test_icu.c
|
||||
index 18e2866..309621a 100644
|
||||
--- a/test/test_icu.c
|
||||
+++ b/test/test_icu.c
|
||||
@@ -28,6 +28,7 @@
|
||||
#endif
|
||||
|
||||
#if YAZ_HAVE_XML2
|
||||
+#include <libxml/parser.h>
|
||||
#include <libxml/xmlmemory.h>
|
||||
#endif
|
||||
|
||||
diff --git a/test/test_xml_include.c b/test/test_xml_include.c
|
||||
index aec8308..ff1f1a1 100644
|
||||
--- a/test/test_xml_include.c
|
||||
+++ b/test/test_xml_include.c
|
||||
@@ -12,6 +12,9 @@
|
||||
|
||||
#include <yaz/xml_include.h>
|
||||
#include <yaz/test.h>
|
||||
+#if YAZ_HAVE_XML2
|
||||
+#include <libxml/parser.h>
|
||||
+#endif
|
||||
|
||||
static void tst_xml_include1(void)
|
||||
{
|
||||
diff --git a/util/cclsh.c b/util/cclsh.c
|
||||
index 419fcb7..c40061c 100644
|
||||
--- a/util/cclsh.c
|
||||
+++ b/util/cclsh.c
|
||||
@@ -20,6 +20,9 @@
|
||||
#include <readline/history.h>
|
||||
#endif
|
||||
|
||||
+#if YAZ_HAVE_XML2
|
||||
+#include <libxml/parser.h>
|
||||
+#endif
|
||||
|
||||
static int debug = 0;
|
||||
static char *prog;
|
||||
diff --git a/util/yaz-icu.c b/util/yaz-icu.c
|
||||
index 3087e13..767cb20 100644
|
||||
--- a/util/yaz-icu.c
|
||||
+++ b/util/yaz-icu.c
|
||||
@@ -17,6 +17,8 @@
|
||||
|
||||
#if YAZ_HAVE_ICU
|
||||
|
||||
+#include <libxml/parser.h>
|
||||
+
|
||||
#include <unicode/ucnv.h>
|
||||
#include <unicode/ustring.h>
|
||||
#include <unicode/ucol.h>
|
||||
diff --git a/util/yaz-record-conv.c b/util/yaz-record-conv.c
|
||||
index 75be066..b386e2a 100644
|
||||
--- a/util/yaz-record-conv.c
|
||||
+++ b/util/yaz-record-conv.c
|
||||
@@ -13,6 +13,10 @@
|
||||
#include <yaz/record_conv.h>
|
||||
#include <yaz/backtrace.h>
|
||||
|
||||
+#if YAZ_HAVE_XML2
|
||||
+#include <libxml/parser.h>
|
||||
+#endif
|
||||
+
|
||||
const char *prog = "yaz-record-conv";
|
||||
|
||||
static void usage(void)
|
||||
--
|
||||
2.42.1
|
||||
|
||||
|
||||
From 5e57b3aa8a468e3cc8ff56795a8448021d1f3f8a Mon Sep 17 00:00:00 2001
|
||||
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
|
||||
Date: Tue, 21 Nov 2023 23:47:18 +0900
|
||||
Subject: FIX: fix build error with glibc 2.39
|
||||
|
||||
glibc 2.39 does some refactoring for header file inclusion
|
||||
and some additional header inclusion is needed for yaz
|
||||
source.
|
||||
|
||||
Closes #104 .
|
||||
|
||||
diff --git a/src/record_conv.c b/src/record_conv.c
|
||||
index 6ec066f..6daaa9a 100644
|
||||
--- a/src/record_conv.c
|
||||
+++ b/src/record_conv.c
|
||||
@@ -11,6 +11,7 @@
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
+#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <yaz/log.h>
|
||||
#include <yaz/yaz-iconv.h>
|
||||
diff --git a/src/xmlquery.c b/src/xmlquery.c
|
||||
index 543be2a..dc2bfd3 100644
|
||||
--- a/src/xmlquery.c
|
||||
+++ b/src/xmlquery.c
|
||||
@@ -10,6 +10,7 @@
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
+#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <assert.h>
|
||||
|
||||
diff --git a/test/test_record_conv.c b/test/test_record_conv.c
|
||||
index bb417a5..7fdca22 100644
|
||||
--- a/test/test_record_conv.c
|
||||
+++ b/test/test_record_conv.c
|
||||
@@ -9,6 +9,7 @@
|
||||
#include <yaz/record_conv.h>
|
||||
#include <yaz/test.h>
|
||||
#include <yaz/wrbuf.h>
|
||||
+#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <yaz/log.h>
|
||||
#include <yaz/proto.h>
|
||||
diff --git a/test/test_retrieval.c b/test/test_retrieval.c
|
||||
index 25711af..6065c5c 100644
|
||||
--- a/test/test_retrieval.c
|
||||
+++ b/test/test_retrieval.c
|
||||
@@ -9,6 +9,7 @@
|
||||
#include <yaz/retrieval.h>
|
||||
#include <yaz/test.h>
|
||||
#include <yaz/wrbuf.h>
|
||||
+#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <yaz/log.h>
|
||||
#include <yaz/oid_db.h>
|
||||
--
|
||||
2.42.1
|
||||
|
||||
189
dev-libs/yaz/yaz-5.34.0.recipe
Normal file
189
dev-libs/yaz/yaz-5.34.0.recipe
Normal file
@@ -0,0 +1,189 @@
|
||||
SUMMARY="C/C++ toolkit for Z39.50v3 clients and servers"
|
||||
DESCRIPTION="YAZ is a C/C++ library for information retrieval applications using the Z39.50/SRU/\
|
||||
Solr protocols for information retrieval.
|
||||
|
||||
Properties of YAZ:
|
||||
* Complete Z39.50 version 3 support. Amendments and Z39.50-2002 revision is supported.
|
||||
* Supports SRU GET/POST/SOAP version 1.1, 1.2 and 2.0 (over HTTP and HTTPS).
|
||||
* Includes BER encoders/decoders for the ISO ILL protocol.
|
||||
* Supports Apache Solr Web Service version 1.4.x (client side only)
|
||||
* Supports the following transports: BER over TCP/IP (RFC1729), BER over Unix local socket, and \
|
||||
HTTP 1.1.
|
||||
* Secure Socket Layer support using GnuTLS. If enabled, YAZ uses HTTPS transport (for SOAP) or \
|
||||
'Secure BER' (for Z39.50).
|
||||
* Offers ZOOM C API implementing Z39.50, SRU and Solr Web Service.
|
||||
* The YAZ library offers a set of useful utilities related to the protocols, such as MARC \
|
||||
(ISO2709) parser, CCL (ISO8777) parser, CQL parser, memory management routines, character set \
|
||||
conversion.
|
||||
* Portable code. YAZ compiles out-of-the box on most Unixes and on Windows using Microsoft Visual \
|
||||
C++.
|
||||
* Fast operation. The C based BER encoders/decoders as well as the server component of YAZ is \
|
||||
very fast.
|
||||
* Liberal license that allows for commercial use of YAZ."
|
||||
HOMEPAGE="http://www.indexdata.com/yaz"
|
||||
COPYRIGHT="1995-2023 Index Data"
|
||||
LICENSE="BSD (3-clause)"
|
||||
REVISION="1"
|
||||
SOURCE_URI="https://download.indexdata.com/pub/yaz/yaz-$portVersion.tar.gz"
|
||||
CHECKSUM_SHA256="bcbea894599a13342910003401c17576f0fb910092aecb51cb54065d0cd2d613"
|
||||
PATCHES="yaz-$portVersion.patchset"
|
||||
|
||||
ARCHITECTURES="all x86_gcc2"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
commandSuffix=$secondaryArchSuffix
|
||||
commandBinDir=$binDir
|
||||
if [ "$targetArchitecture" = x86_gcc2 ]; then
|
||||
commandSuffix=
|
||||
commandBinDir=$prefix/bin
|
||||
fi
|
||||
|
||||
libVersion="5.0.0"
|
||||
libVersionCompat="$libVersion compat >= ${libVersion%.*}"
|
||||
|
||||
PROVIDES="
|
||||
yaz$secondaryArchSuffix = $portVersion
|
||||
cmd:yaz_client$commandSuffix
|
||||
lib:libyaz_icu$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libyaz_server$secondaryArchSuffix = $libVersionCompat
|
||||
lib:libyaz$secondaryArchSuffix = $libVersionCompat
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libexslt$secondaryArchSuffix
|
||||
lib:libgnutls$secondaryArchSuffix
|
||||
lib:libhiredis$secondaryArchSuffix
|
||||
lib:libhistory$secondaryArchSuffix
|
||||
lib:libiconv$secondaryArchSuffix
|
||||
lib:libicudata$secondaryArchSuffix
|
||||
lib:libicui18n$secondaryArchSuffix
|
||||
lib:libicuuc$secondaryArchSuffix
|
||||
lib:libncurses$secondaryArchSuffix
|
||||
lib:libreadline$secondaryArchSuffix
|
||||
lib:libxml2$secondaryArchSuffix
|
||||
lib:libxslt$secondaryArchSuffix
|
||||
"
|
||||
|
||||
PROVIDES_devel="
|
||||
yaz${secondaryArchSuffix}_devel = $portVersion
|
||||
cmd:yaz_config$commandSuffix
|
||||
devel:libyaz_icu$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libyaz_server$secondaryArchSuffix = $libVersionCompat
|
||||
devel:libyaz$secondaryArchSuffix = $libVersionCompat
|
||||
"
|
||||
REQUIRES_devel="
|
||||
yaz$secondaryArchSuffix == $portVersion base
|
||||
devel:libxml2$secondaryArchSuffix
|
||||
devel:libxslt$secondaryArchSuffix
|
||||
devel:libz$secondaryArchSuffix
|
||||
"
|
||||
|
||||
PROVIDES_tools="
|
||||
yaz${secondaryArchSuffix}_tools = $portVersion
|
||||
cmd:yaz_asncomp$commandSuffix
|
||||
cmd:yaz_iconv$commandSuffix
|
||||
cmd:yaz_icu$commandSuffix
|
||||
cmd:yaz_illclient$commandSuffix
|
||||
cmd:yaz_json_parse$commandSuffix
|
||||
cmd:yaz_marcdump$commandSuffix
|
||||
cmd:yaz_record_conv$commandSuffix
|
||||
cmd:yaz_url$commandSuffix
|
||||
cmd:yaz_ztest$commandSuffix
|
||||
cmd:zoomsh$commandSuffix
|
||||
"
|
||||
REQUIRES_tools="
|
||||
yaz$secondaryArchSuffix == $portVersion
|
||||
$REQUIRES
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
devel:libgnutls$secondaryArchSuffix
|
||||
devel:libhiredis$secondaryArchSuffix
|
||||
devel:libiconv$secondaryArchSuffix
|
||||
devel:libicui18n$secondaryArchSuffix >= 74
|
||||
devel:libncurses$secondaryArchSuffix
|
||||
devel:libreadline$secondaryArchSuffix
|
||||
devel:libtclstub8.6$secondaryArchSuffix
|
||||
devel:libxml2$secondaryArchSuffix
|
||||
devel:libxslt$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:awk
|
||||
cmd:bison
|
||||
cmd:autoreconf
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:libtoolize$secondaryArchSuffix
|
||||
cmd:make
|
||||
cmd:pkg_config$secondaryArchSuffix
|
||||
cmd:xsltproc
|
||||
"
|
||||
|
||||
defineDebugInfoPackage yaz$secondaryArchSuffix \
|
||||
$libDir/libyaz_icu.so.$libVersion \
|
||||
$libDir/libyaz_server.so.$libVersion \
|
||||
$libDir/libyaz.so.$libVersion
|
||||
|
||||
PATCH()
|
||||
{
|
||||
# Hardcoded assumption of libraries residing in lib/,
|
||||
sed -i -e "s|/lib\"|/$libDir\"|" configure.ac
|
||||
}
|
||||
|
||||
BUILD()
|
||||
{
|
||||
export LDFLAGS="-lnetwork"
|
||||
autoreconf -fi
|
||||
runConfigure --omit-dirs "binDir" ./configure \
|
||||
--bindir=$commandBinDir \
|
||||
--with-gnutls \
|
||||
--disable-static
|
||||
make $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
make install
|
||||
|
||||
# remove libtool files
|
||||
rm -f $libDir/*.la
|
||||
|
||||
prepareInstalledDevelLibs \
|
||||
libyaz_icu \
|
||||
libyaz_server \
|
||||
libyaz
|
||||
fixPkgconfig
|
||||
|
||||
packageEntries devel \
|
||||
$developDir \
|
||||
$commandBinDir/yaz-config \
|
||||
$manDir/man1/yaz-config.1 \
|
||||
$dataDir/doc
|
||||
|
||||
packageEntries tools \
|
||||
$commandBinDir/yaz-asncomp \
|
||||
$commandBinDir/yaz-iconv \
|
||||
$commandBinDir/yaz-icu \
|
||||
$commandBinDir/yaz-illclient \
|
||||
$commandBinDir/yaz-json-parse \
|
||||
$commandBinDir/yaz-marcdump \
|
||||
$commandBinDir/yaz-record-conv \
|
||||
$commandBinDir/yaz-url \
|
||||
$commandBinDir/yaz-ztest \
|
||||
$commandBinDir/zoomsh \
|
||||
$manDir/man8 \
|
||||
$manDir/man1/yaz-asncomp.1 \
|
||||
$manDir/man1/yaz-iconv.1 \
|
||||
$manDir/man1/yaz-icu.1 \
|
||||
$manDir/man1/yaz-illclient.1 \
|
||||
$manDir/man1/yaz-json-parse.1 \
|
||||
$manDir/man1/yaz-marcdump.1 \
|
||||
$manDir/man1/yaz-record-conv.1 \
|
||||
$manDir/man1/yaz-url.1 \
|
||||
$manDir/man1/zoomsh.1
|
||||
}
|
||||
|
||||
TEST()
|
||||
{
|
||||
make check
|
||||
}
|
||||
Reference in New Issue
Block a user