zoom: use thread-safe RPN to CQL/Solr conversion MP-497
[metaproxy-moved-to-github.git] / metaproxy.spec
1 %define idmetaversion %(. ./IDMETA; echo $VERSION|tr -d '\n')
2 Summary: Z39.50/SRU router
3 Name: metaproxy
4 Version: %{idmetaversion}
5 Release: 1.indexdata
6 License: GPL
7 Group: Applications/Internet
8 Vendor: Index Data ApS <info@indexdata.dk>
9 Source: metaproxy-%{version}.tar.gz
10 BuildRoot: %{_tmppath}/%{name}-%{version}-root
11 Prefix: %{_prefix} /etc/metaproxy
12 BuildRequires: pkgconfig, libyaz5-devel >= 5.0.21, libyazpp6-devel >= 1.5.2
13 BuildRequires: libxslt-devel, boost-devel
14 Conflicts: cf-engine <= 2.12.5
15 Packager: Adam Dickmeiss <adam@indexdata.dk>
16 URL: http://www.indexdata.com/metaproxy
17 Group:  Applications/Internet
18 Requires:  libmetaproxy6 = %{version}
19 Provides: metaproxy6
20
21 %description
22 Metaproxy daemon.
23
24 %package doc
25 Summary: Metaproxy documentation
26 Group: Documentation
27
28 %description doc
29 Metaproxy documentation.
30
31 %package -n libmetaproxy6
32 Summary: Metaproxy library
33 Group: Libraries
34 Requires: libyazpp6 >= 1.5.2, libyaz5 >= 5.0.21
35
36 %description -n libmetaproxy6
37 The Metaproxy libraries.
38
39 %package -n libmetaproxy6-devel
40 Summary: Metaproxy development package
41 Group: Development/Libraries
42 Requires: libmetaproxy6 = %{version}, libyazpp6-devel, boost-devel
43 Conflicts: libmetaproxy3-devel, libmetaproxy4-devel, libmetaproxy5-devel
44
45 %description -n libmetaproxy6-devel
46 Development libraries and include files for the Metaproxy package.
47
48 %prep
49 %setup
50
51 %build
52
53 CFLAGS="$RPM_OPT_FLAGS" \
54  ./configure --prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} \
55         --enable-shared --with-yazpp=/usr/bin
56 make CFLAGS="$RPM_OPT_FLAGS"
57
58 %install
59 rm -fr ${RPM_BUILD_ROOT}
60 make install DESTDIR=${RPM_BUILD_ROOT}
61 rm ${RPM_BUILD_ROOT}/%{_libdir}/*.la
62 rm -fr ${RPM_BUILD_ROOT}/%{_prefix}/share/metaproxy
63 rm -f ${RPM_BUILD_ROOT}/%{_libdir}/metaproxy/*
64 mkdir -p ${RPM_BUILD_ROOT}/%{_libdir}/metaproxy6/modules
65 mkdir -p ${RPM_BUILD_ROOT}/etc/metaproxy/filters-enabled
66 mkdir -p ${RPM_BUILD_ROOT}/etc/metaproxy/filters-available
67 mkdir -p ${RPM_BUILD_ROOT}/etc/metaproxy/ports.d
68 mkdir -p ${RPM_BUILD_ROOT}/etc/metaproxy/routes.d
69 mkdir -p ${RPM_BUILD_ROOT}/etc/logrotate.d
70 mkdir -p ${RPM_BUILD_ROOT}/etc/init.d
71 mkdir -p ${RPM_BUILD_ROOT}/etc/sysconfig
72 install -m 644 rpm/metaproxy.xml ${RPM_BUILD_ROOT}/etc/metaproxy/metaproxy.xml
73 install -m 644 rpm/metaproxy.user ${RPM_BUILD_ROOT}/etc/metaproxy/metaproxy.user
74 install -m 755 rpm/metaproxy.init ${RPM_BUILD_ROOT}/etc/init.d/metaproxy
75 install -m 644 rpm/metaproxy.sysconfig ${RPM_BUILD_ROOT}/etc/sysconfig/metaproxy
76 install -m 644 rpm/metaproxy.logrotate  ${RPM_BUILD_ROOT}/etc/logrotate.d/metaproxy
77
78 %clean
79 rm -fr ${RPM_BUILD_ROOT}
80
81 %files -n libmetaproxy6
82 %doc README LICENSE NEWS
83 %defattr(-,root,root)
84 %{_libdir}/*.so.*
85 %dir %{_libdir}/metaproxy6/modules
86
87 %post -n libmetaproxy6 -p /sbin/ldconfig
88
89 %postun -n libmetaproxy6 -p /sbin/ldconfig
90
91 %files -n libmetaproxy6-devel
92 %defattr(-,root,root)
93 %{_includedir}/metaproxy
94 %{_libdir}/*.so
95 %{_libdir}/*.a
96 %{_bindir}/metaproxy-config
97 %{_mandir}/man1/metaproxy-config.*
98
99 %files doc
100 %defattr(-,root,root)
101 %{_prefix}/share/doc/metaproxy
102
103 %files
104 %defattr(-,root,root)
105 %{_bindir}/metaproxy
106 %{_mandir}/man3/*
107 %{_mandir}/man1/metaproxy.*
108 %config /etc/init.d/metaproxy
109 %config(noreplace) /etc/metaproxy/metaproxy.xml
110 %config /etc/metaproxy/metaproxy.user
111 %dir /etc/metaproxy/filters-available
112 %dir /etc/metaproxy/filters-enabled
113 %dir /etc/metaproxy/ports.d
114 %dir /etc/metaproxy/routes.d
115 %config(noreplace) /etc/logrotate.d/metaproxy
116 %config(noreplace) /etc/sysconfig/metaproxy
117
118 %post
119 . /etc/metaproxy/metaproxy.user
120
121  # 1. create group if not existing
122 if ! getent group | grep -q "^$SERVER_GROUP:" ; then
123         echo -n "Adding group $SERVER_GROUP.."
124         groupadd -r $SERVER_GROUP 2>/dev/null ||true
125         echo "..done"
126 fi
127 # 2. create user if not existing
128 if ! getent passwd | grep -q "^$SERVER_USER:"; then
129         echo -n "Adding system user $SERVER_USER.."
130         useradd \
131             -r \
132             -s /sbin/nologin \
133             -c "$SERVER_NAME" \
134             -d $SERVER_HOME \
135             -g $SERVER_GROUP \
136             $SERVER_USER 2>/dev/null || true
137         echo "..done"
138 fi
139
140 if test ! -d $SERVER_HOME; then
141         mkdir $SERVER_HOME
142         chown $SERVER_USER:$SERVER_GROUP $SERVER_HOME
143 fi
144
145 if [ $1 = 1 ]; then
146         /sbin/chkconfig --add metaproxy
147         /sbin/service metaproxy start > /dev/null 2>&1
148 else
149         /sbin/service metaproxy restart > /dev/null 2>&1
150 fi
151 %preun
152 if [ $1 = 0 ]; then
153         if test -f /etc/init.d/metaproxy; then
154                 /sbin/service metaproxy stop > /dev/null 2>&1
155                 /sbin/chkconfig --del metaproxy
156         fi
157         . /etc/metaproxy/metaproxy.user
158         test -d $SERVER_HOME && rm -fr $SERVER_HOME
159         userdel $SERVER_USER
160 fi