CCL: slight reformat
[yaz-moved-to-github.git] / yaz.spec
index e9a5c84..ae214f8 100644 (file)
--- a/yaz.spec
+++ b/yaz.spec
@@ -1,19 +1,58 @@
-Summary: Z39.50 Programs
+# This file is part of the YAZ toolkit
+# Copyright (C) Index Data
+# See the file LICENSE for details.
+#
+# spec file for YAZ
+
+%define idmetaversion %(. ./IDMETA; echo $VERSION|tr -d '\n')
 Name: yaz
-Version: 4.1.2
-Release: 1
-Requires: libxslt, gnutls, readline, libyaz4 = %{version}
+Summary: Z39.50 Programs
+Version: %{idmetaversion}
+Release: 1.indexdata
+
+# determine system
+%define is_redhat5 %(grep 'release 5' /etc/redhat-release >/dev/null 2>&1 && echo 1 || echo 0)
+%define is_mandrake %(test -e /etc/mandrake-release && echo 1 || echo 0)
+%define is_suse %(test -e /etc/SuSE-release >/dev/null && echo 1 || echo 0)
+%define is_suse11 %(grep 'VERSION = 11' /etc/SuSE-release >/dev/null 2>&1 && echo 1 || echo 0)
+%define is_fedora %(test -e /etc/fedora-release && echo 1 || echo 0)
+Requires: readline, libyaz5 = %{version}
 License: BSD
 Group: Applications/Internet
 Vendor: Index Data ApS <info@indexdata.dk>
 Source: yaz-%{version}.tar.gz
 BuildRoot: %{_tmppath}/%{name}-%{version}-root
-%define TCPWRAPPER tcpd-devel
-%if "%{_vendor}" == "redhat"
-# Fedora requires tcp_wrappers-devel .
+Prefix: %{_prefix}
+
+%define TCPWRAPPER tcp_wrappers-devel
+
+%if %is_redhat5
 %define TCPWRAPPER tcp_wrappers
 %endif
-BuildRequires: pkgconfig, libxml2-devel, libxslt-devel, gnutls-devel, readline-devel, libicu-devel, %{TCPWRAPPER}
+
+%if %is_suse
+%define TCPWRAPPER tcpd-devel
+%endif
+
+BuildRequires: %{TCPWRAPPER}
+
+%if %is_suse11
+BuildRequires: libgnutls-devel
+%else
+BuildRequires: gnutls-devel
+%endif
+
+BuildRequires: pkgconfig
+BuildRequires: libxml2-devel
+BuildRequires: libxslt-devel
+BuildRequires: readline-devel
+BuildRequires: libicu-devel
+BuildRequires: wget
+BuildRequires: libgcrypt-devel
+%if %is_redhat5
+%else
+BuildRequires: hiredis-devel
+%endif
 Packager: Adam Dickmeiss <adam@indexdata.dk>
 URL: http://www.indexdata.com/yaz
 
@@ -21,31 +60,35 @@ URL: http://www.indexdata.com/yaz
 This package contains both a test-server and clients (normal & ssl)
 for the ANSI/NISO Z39.50 protocol for Information Retrieval.
 
-%package -n libyaz4
+%package -n libyaz5
 Summary: Z39.50 Library
 Group: Libraries
-Requires: libxslt, gnutls, libicu
+Requires: libxslt, gnutls, libicu, libgcrypt
+%if %is_redhat5
+%else
+Requires: hiredis
+%endif
 
-%description -n libyaz4
+%description -n libyaz5
 YAZ is a library for the ANSI/NISO Z39.50 protocol for Information
 Retrieval.
 
-%post -n libyaz4 -p /sbin/ldconfig 
-%postun -n libyaz4 -p /sbin/ldconfig 
+%post -n libyaz5 -p /sbin/ldconfig 
+%postun -n libyaz5 -p /sbin/ldconfig 
 
-%package -n libyaz4-devel
+%package -n libyaz5-devel
 Summary: Z39.50 Library - development package
 Group: Development/Libraries
-Requires: libyaz4 = %{version}, libxml2-devel, libxslt-devel, libicu-devel
-Conflicts: libyaz-devel
+Requires: libyaz5 = %{version}, libxml2-devel, libxslt-devel, libicu-devel
+Conflicts: libyaz-devel, libyaz4-devel
 
-%description -n libyaz4-devel
+%description -n libyaz5-devel
 Development libraries and includes for the libyaz package.
 
 %package -n yaz-illclient
 Summary: ILL client
 Group: Applications/Communication
-Requires: readline, libyaz4 = %{version}
+Requires: readline, libyaz5 = %{version}
 
 %description -n yaz-illclient
 yaz-illclient: an ISO ILL client.
@@ -53,7 +96,7 @@ yaz-illclient: an ISO ILL client.
 %package -n yaz-icu
 Summary: Command line utility for ICU utilities of YAZ
 Group: Applications/Communication
-Requires: libyaz4 = %{version}
+Requires: libyaz5 = %{version}
 
 %description -n yaz-icu
 The yaz-icu program is a command-line based client which exposes the ICU
@@ -66,13 +109,13 @@ chain facility of YAZ.
 
 CFLAGS="$RPM_OPT_FLAGS" \
  ./configure --prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} \
-       --enable-shared --enable-tcpd --with-xslt --with-gnutls --with-icu
+       --enable-shared --enable-tcpd --with-xslt --with-gnutls --with-icu \
+       --without-memcached
 make CFLAGS="$RPM_OPT_FLAGS"
 
 %install
 rm -fr ${RPM_BUILD_ROOT}
-make prefix=${RPM_BUILD_ROOT}/%{_prefix} mandir=${RPM_BUILD_ROOT}/%{_mandir} \
-       libdir=${RPM_BUILD_ROOT}/%{_libdir} install
+make install DESTDIR=${RPM_BUILD_ROOT}
 rm ${RPM_BUILD_ROOT}/%{_libdir}/*.la
 
 %clean
@@ -87,8 +130,10 @@ rm -fr ${RPM_BUILD_ROOT}
 %{_bindir}/yaz-marcdump
 %{_bindir}/yaz-iconv
 %{_bindir}/yaz-json-parse
+%{_bindir}/yaz-url
 %{_mandir}/man1/yaz-client.*
 %{_mandir}/man1/yaz-json-parse.*
+%{_mandir}/man1/yaz-url.*
 %{_mandir}/man8/yaz-ztest.*
 %{_mandir}/man1/zoomsh.*
 %{_mandir}/man1/yaz-marcdump.*
@@ -96,11 +141,11 @@ rm -fr ${RPM_BUILD_ROOT}
 %{_mandir}/man7/yaz-log.*
 %{_mandir}/man7/bib1-attr.*
 
-%files -n libyaz4
+%files -n libyaz5
 %defattr(-,root,root)
 %{_libdir}/*.so.*
 
-%files -n libyaz4-devel
+%files -n libyaz5-devel
 %defattr(-,root,root)
 %{_bindir}/yaz-config
 %{_bindir}/yaz-asncomp