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