Merge branch 'master' of ssh://git.indexdata.com:222/home/git/pub/yaz
[yaz-moved-to-github.git] / yaz.spec
1 # This file is part of the YAZ toolkit
2 # Copyright (C) Index Data
3 # See the file LICENSE for details.
4 #
5 # spec file for YAZ
6
7 %define idmetaversion %(. ./IDMETA; echo $VERSION)
8 Name: yaz
9 Summary: Z39.50 Programs
10 Version: %{idmetaversion}
11 Release: 1.indexdata
12
13 # determine system
14 %define is_redhat5 %(grep 'release 5' /etc/redhat-release >/dev/null 2>&1 && echo 1 || echo 0)
15 %define is_mandrake %(test -e /etc/mandrake-release && echo 1 || echo 0)
16 %define is_suse %(test -e /etc/SuSE-release >/dev/null && echo 1 || echo 0)
17 %define is_suse11 %(grep 'VERSION = 11' /etc/SuSE-release >/dev/null 2>&1 && echo 1 || echo 0)
18 %define is_fedora %(test -e /etc/fedora-release && echo 1 || echo 0)
19 Requires: readline, libyaz5 = %{version}
20 License: BSD
21 Group: Applications/Internet
22 Vendor: Index Data ApS <info@indexdata.dk>
23 Source: yaz-%{version}.tar.gz
24 BuildRoot: %{_tmppath}/%{name}-%{version}-root
25 Prefix: %{_prefix}
26
27 %define TCPWRAPPER tcp_wrappers-devel
28
29 %if %is_redhat5
30 %define TCPWRAPPER tcp_wrappers
31 %endif
32
33 %if %is_suse
34 %define TCPWRAPPER tcpd-devel
35 %endif
36
37 BuildRequires: %{TCPWRAPPER}
38
39 %if %is_suse11
40 BuildRequires: libgnutls-devel
41 %else
42 BuildRequires: gnutls-devel
43 %endif
44
45 BuildRequires: pkgconfig
46 BuildRequires: libxml2-devel
47 BuildRequires: libxslt-devel
48 BuildRequires: readline-devel
49 BuildRequires: libicu-devel
50 BuildRequires: wget
51 %if %is_redhat5
52 %else
53 BuildRequires: hiredis-devel
54 %endif
55 Packager: Adam Dickmeiss <adam@indexdata.dk>
56 URL: http://www.indexdata.com/yaz
57
58 %description
59 This package contains both a test-server and clients (normal & ssl)
60 for the ANSI/NISO Z39.50 protocol for Information Retrieval.
61
62 %package -n libyaz5
63 Summary: Z39.50 Library
64 Group: Libraries
65 Requires: libxslt, gnutls, libicu
66 %if %is_redhat5
67 %else
68 Requires: hiredis
69 %endif
70
71 %description -n libyaz5
72 YAZ is a library for the ANSI/NISO Z39.50 protocol for Information
73 Retrieval.
74
75 %post -n libyaz5 -p /sbin/ldconfig 
76 %postun -n libyaz5 -p /sbin/ldconfig 
77
78 %package -n libyaz5-devel
79 Summary: Z39.50 Library - development package
80 Group: Development/Libraries
81 Requires: libyaz5 = %{version}, libxml2-devel, libxslt-devel, libicu-devel
82 Conflicts: libyaz-devel, libyaz4-devel
83
84 %description -n libyaz5-devel
85 Development libraries and includes for the libyaz package.
86
87 %package -n yaz-illclient
88 Summary: ILL client
89 Group: Applications/Communication
90 Requires: readline, libyaz5 = %{version}
91
92 %description -n yaz-illclient
93 yaz-illclient: an ISO ILL client.
94
95 %package -n yaz-icu
96 Summary: Command line utility for ICU utilities of YAZ
97 Group: Applications/Communication
98 Requires: libyaz5 = %{version}
99
100 %description -n yaz-icu
101 The yaz-icu program is a command-line based client which exposes the ICU
102 chain facility of YAZ.
103
104 %prep
105 %setup
106
107 %build
108
109 CFLAGS="$RPM_OPT_FLAGS" \
110  ./configure --prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} \
111         --enable-shared --enable-tcpd --with-xslt --with-gnutls --with-icu \
112         --without-memcached
113 make CFLAGS="$RPM_OPT_FLAGS"
114
115 %install
116 rm -fr ${RPM_BUILD_ROOT}
117 make install DESTDIR=${RPM_BUILD_ROOT}
118 rm ${RPM_BUILD_ROOT}/%{_libdir}/*.la
119
120 %clean
121 rm -fr ${RPM_BUILD_ROOT}
122
123 %files
124 %defattr(-,root,root)
125 %doc README.md LICENSE NEWS
126 %{_bindir}/yaz-client
127 %{_bindir}/yaz-ztest
128 %{_bindir}/zoomsh
129 %{_bindir}/yaz-marcdump
130 %{_bindir}/yaz-iconv
131 %{_bindir}/yaz-json-parse
132 %{_bindir}/yaz-url
133 %{_mandir}/man1/yaz-client.*
134 %{_mandir}/man1/yaz-json-parse.*
135 %{_mandir}/man1/yaz-url.*
136 %{_mandir}/man8/yaz-ztest.*
137 %{_mandir}/man1/zoomsh.*
138 %{_mandir}/man1/yaz-marcdump.*
139 %{_mandir}/man1/yaz-iconv.*
140 %{_mandir}/man7/yaz-log.*
141 %{_mandir}/man7/bib1-attr.*
142
143 %files -n libyaz5
144 %defattr(-,root,root)
145 %{_libdir}/*.so.*
146
147 %files -n libyaz5-devel
148 %defattr(-,root,root)
149 %{_bindir}/yaz-config
150 %{_bindir}/yaz-asncomp
151 %{_includedir}/yaz
152 %{_libdir}/pkgconfig/yaz.pc
153 %{_libdir}/*.so
154 %{_libdir}/*.a
155 %{_datadir}/aclocal/yaz.m4
156 %{_mandir}/man1/yaz-asncomp.*
157 %{_mandir}/man7/yaz.*
158 %{_mandir}/man?/yaz-config.*
159 %{_datadir}/doc/yaz
160 %{_datadir}/yaz
161
162 %files -n yaz-illclient
163 %defattr(-,root,root)
164 %{_bindir}/yaz-illclient
165 %{_mandir}/man1/yaz-illclient.*
166
167 %files -n yaz-icu
168 %defattr(-,root,root)
169 %{_bindir}/yaz-icu
170 %{_mandir}/man1/yaz-icu.*