Fix idmetaversion strips n SA-743
[pazpar2-moved-to-github.git] / pazpar2.spec
1 %define idmetaversion %(. ./IDMETA; echo $VERSION)
2 Summary: Metasearcher
3 Name: pazpar2
4 Version: %{idmetaversion}
5 Release: 1.indexdata
6 License: GPL
7 Group: Applications/Internet
8 Vendor: Index Data ApS <info@indexdata.dk>
9 Source: pazpar2-%{version}.tar.gz
10 BuildRoot: %{_tmppath}/%{name}-%{version}-root
11 BuildRequires: libyaz5-devel >= 5.12.0
12 Packager: Adam Dickmeiss <adam@indexdata.dk>
13 URL: http://www.indexdata.com/pazpar2
14 Summary: pazpar2 daemon
15 Requires: libyaz5 >= 5.12.0
16 Requires: pazpar2-xsl
17
18 %description
19 Pazpar2 is a high-performance, user interface-independent, data
20 model-independent metasearching middleware featuring merging, relevance
21 ranking, record sorting, and faceted results.
22
23 %package -n pazpar2-js
24 Summary: pazpar2 JS
25 Group: Data
26 Requires: pazpar2
27
28 %post
29 for f in /usr/share/pazpar2/xsl/*.xsl; do
30         e=/etc/pazpar2/`basename $f`
31         if test -f $e; then
32                 if diff $e $f >/dev/null; then
33                         rm $e
34                 fi
35         fi
36 done
37 if [ $1 = 1 ]; then
38         /sbin/chkconfig --add pazpar2
39         /sbin/service pazpar2 start > /dev/null 2>&1
40 else
41         /sbin/service pazpar2 restart > /dev/null 2>&1
42 fi
43 %preun
44 if [ $1 = 0 ]; then
45         /sbin/service pazpar2 stop > /dev/null 2>&1
46         /sbin/chkconfig --del pazpar2
47 fi
48
49 %description -n pazpar2-js
50 This package includes the Java Script library pz2.js. It also adds an
51 Alias for Apache2 so that this library and other demo portals are
52 available.
53
54 %posttrans -n pazpar2-js
55 if [ -d /etc/httpd/conf.d ]; then
56         ln -sf /etc/pazpar2/ap2pazpar2-js.cfg /etc/httpd/conf.d/pazpar2-js.conf
57 fi
58 %preun -n pazpar2-js
59 if [ $1 = 0 ]; then
60         if [ -L /etc/httpd/conf.d/pazpar2-js.conf ]; then
61                 rm /etc/httpd/conf.d/pazpar2-js.conf
62         fi
63 fi
64 %package -n pazpar2-xsl
65 Summary: XSLTs for converting to pz2 format
66 Group: Data
67
68 %description -n pazpar2-xsl
69 This package includes XSLTs for converting from various input XML formats
70 to Pazpar2's internal XML format.
71
72 %package -n pazpar2-doc
73 Summary: pazpar2 documentation
74 Group: Data
75
76 %description -n pazpar2-doc
77 This package includes documentation for Pazpar2 - the metasearcher.
78
79 %prep
80 %setup
81
82 %build
83
84 CFLAGS="$RPM_OPT_FLAGS" \
85  ./configure --prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} \
86         --with-yaz=/usr/bin
87 make CFLAGS="$RPM_OPT_FLAGS"
88
89 %install
90 rm -fr ${RPM_BUILD_ROOT}
91 make install DESTDIR=${RPM_BUILD_ROOT}
92 mkdir -p ${RPM_BUILD_ROOT}/etc/pazpar2
93 mkdir -p ${RPM_BUILD_ROOT}/etc/pazpar2/settings
94 mkdir -p ${RPM_BUILD_ROOT}/etc/pazpar2/services-enabled
95 mkdir -p ${RPM_BUILD_ROOT}/etc/pazpar2/services-available
96 cp etc/server.xml ${RPM_BUILD_ROOT}/etc/pazpar2/
97 cp etc/default.xml ${RPM_BUILD_ROOT}/etc/pazpar2/services-available/
98 cp etc/services/*.xml ${RPM_BUILD_ROOT}/etc/pazpar2/services-available/
99 cp etc/settings/*.xml ${RPM_BUILD_ROOT}/etc/pazpar2/settings/
100 cp -r etc/settings/mkc ${RPM_BUILD_ROOT}/etc/pazpar2/settings
101 mkdir -p ${RPM_BUILD_ROOT}/usr/share/pazpar2/xsl
102 cp etc/xsl/*.xsl ${RPM_BUILD_ROOT}/usr/share/pazpar2/xsl
103 mkdir -p ${RPM_BUILD_ROOT}/etc/rc.d/init.d
104 install -m755 rpm/pazpar2.init ${RPM_BUILD_ROOT}/etc/rc.d/init.d/pazpar2
105 echo "Alias /pazpar2 /usr/share/pazpar2" >${RPM_BUILD_ROOT}/etc/pazpar2/ap2pazpar2-js.cfg
106 mkdir -p ${RPM_BUILD_ROOT}/etc/logrotate.d
107 install -m644 rpm/pazpar2.logrotate ${RPM_BUILD_ROOT}/etc/logrotate.d/pazpar2
108
109 %clean
110 rm -fr ${RPM_BUILD_ROOT}
111
112 %files
113 %defattr(-,root,root)
114 %doc README LICENSE NEWS
115 %{_sbindir}/pazpar2
116 %dir %{_sysconfdir}/pazpar2
117 %dir %{_sysconfdir}/pazpar2/settings
118 %dir %{_sysconfdir}/pazpar2/settings/mkc
119 %dir %{_sysconfdir}/pazpar2/services-enabled
120 %dir %{_sysconfdir}/pazpar2/services-available
121 %config %{_sysconfdir}/pazpar2/*.xml
122 %config %{_sysconfdir}/pazpar2/settings/*.xml
123 %config %{_sysconfdir}/pazpar2/settings/*/*.xml
124 %config %{_sysconfdir}/pazpar2/services-available/*.xml
125 %config %{_sysconfdir}/rc.d/init.d/pazpar2
126 %config(noreplace) /etc/logrotate.d/pazpar2
127 %{_mandir}/man5/pazpar2*
128 %{_mandir}/man7/pazpar2*
129 %{_mandir}/man8/pazpar2*
130
131 %files -n pazpar2-js
132 %defattr(-,root,root)
133 %{_datadir}/pazpar2/js/pz2.js
134 %config %{_sysconfdir}/pazpar2/ap2pazpar2-js.cfg
135
136 %files -n pazpar2-xsl
137 %defattr(-,root,root)
138 %{_datadir}/pazpar2/xsl
139
140 %files -n pazpar2-doc
141 %defattr(-,root,root)
142 %{_defaultdocdir}/pazpar2