]> git.pld-linux.org Git - packages/corosync.git/blob - corosync.spec
Include /var/lib/corosync
[packages/corosync.git] / corosync.spec
1 #
2 # Conditional build:
3 %bcond_without  apidocs         # build apidocs (some man3 pages are provided anyway)
4 %bcond_without  dbus            # DBus events
5 %bcond_without  rdma            # RDMA support
6 %bcond_without  snmp            # SNMP protocol support
7 %bcond_without  testagents
8 %bcond_without  watchdog
9 %bcond_without  monitoring
10 %bcond_without  xmlconf
11 #
12 Summary:        Corosync - OSI Certified implementation of a complete cluster engine
13 Summary(pl.UTF-8):      Corosync - implementacja silnika klastrowego certyfikowana przez OSI
14 Name:           corosync
15 Version:        2.1.0
16 Release:        1
17 License:        BSD
18 Group:          Base
19 Source0:        https://github.com/downloads/corosync/corosync/corosync-2.1.0.tar.gz
20 # Source0-md5:  dc5152e6dfdb4638ab544e587884483a
21 Source1:        %{name}.init
22 Source2:        %{name}-notifyd.init
23 Source3:        %{name}-notifyd.sysconfig
24 Patch0:         %{name}-lib_deps.patch
25 Patch1:         %{name}-install.patch
26 URL:            http://www.corosync.org/
27 BuildRequires:  autoconf >= 2.61
28 BuildRequires:  automake
29 %{?with_dbus:BuildRequires:     dbus-devel}
30 %{?with_apidocs:BuildRequires:  doxygen}
31 BuildRequires:  libqb-devel
32 %{?with_monitoring:BuildRequires:       libstatgrab-devel}
33 %if %{with rdma}
34 BuildRequires:  libibverbs-devel
35 BuildRequires:  libtool
36 BuildRequires:  librdmacm-devel
37 %endif
38 %{?with_xmlconf:BuildRequires:  libxslt}
39 %{?with_snmp:BuildRequires:     net-snmp-devel}
40 BuildRequires:  nss-devel
41 BuildRequires:  pkgconfig
42 Requires:       %{name}-libs = %{version}-%{release}
43 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
44
45 # short_service_name_get() is defined in executable
46 %define         skip_post_check_so      libcoroipcs\.so.*
47
48 %description
49 The Corosync Cluster Engine is an OSI Certified implementation of a
50 complete cluster engine.
51
52 %description -l pl.UTF-8
53 Corosync Cluster Engine to implementacja pełnego silnika klastrowego
54 certyfikowana przez OSI.
55
56 %package libs
57 Summary:        Corosync Cluster Engine libraries
58 Summary(pl.UTF-8):      Biblioteki silnika klastrowego Corosync
59 Group:          Libraries
60
61 %description libs
62 This package contains the libraries of Corosync Cluster Engine, an OSI
63 Certified implementation of a complete cluster engine.
64
65 %description libs -l pl.UTF-8
66 Ten pakiet zawiera biblioteki Corosync Cluster Engine - pełnego
67 silnika klastrowego certyfikowanego przez OSI.
68
69 %package devel
70 Summary:        Header files for Corosync libraries
71 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek Corosync
72 Group:          Development/Libraries
73 Requires:       %{name}-libs = %{version}-%{release}
74 Conflicts:      openais-devel < 1.0
75
76 %description devel
77 This package contains the include files used to develop using Corosync
78 APIs.
79
80 %description devel -l pl.UTF-8
81 Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów z
82 użyciem API Corosync.
83
84 %package static
85 Summary:        Corosync static libraries
86 Summary(pl.UTF-8):      Statyczne biblioteki Corosync
87 Group:          Development/Libraries
88 Requires:       %{name}-devel = %{version}-%{release}
89
90 %description static
91 This package contains the Corosync static libraries.
92
93 %description static -l pl.UTF-8
94 Ten pakiet zawiera statyczne biblioteki Corosync.
95
96 %package -n mibs-corosync
97 Summary:        Corosync SNMP MIB data
98 Summary(pl.UTF-8):      Dane SNMP MIB dla Corosync
99 Group:          Applications/System
100 Requires:       mibs-dirs
101
102 %description -n mibs-corosync
103 Corosync SNMP MIB data.
104
105 %description -n mibs-corosync -l pl.UTF-8
106 Dane SNMP MIB dla Corosync.
107
108 %package -n corosync-testagents
109 Summary:        The Corosync Cluster Engine Test Agents
110 Group:          Development/Libraries
111 Requires:       %{name} = %{version}-%{release}
112
113 %description -n corosync-testagents
114 This package contains corosync test agents.
115
116 %prep
117 %setup -q
118 %patch0 -p1
119 %patch1 -p1
120
121 %build
122 %{__libtoolize}
123 %{__aclocal}
124 %{__autoconf}
125 %{__autoheader}
126 %{__automake}
127 %configure \
128         %{?with_testagents:--enable-testagents} \
129         %{?with_watchdog:--enable-watchdog} \
130         %{?with_monitoring:--enable-monitoring} \
131         %{?with_xmlconf:--enable-xmlconf} \
132         %{?with_dbus:--enable-dbus} \
133         %{?with_rdma:--enable-rdma} \
134         %{?with_snmp:--enable-snmp} \
135         --enable-systemd \
136         --with-systemddir=%{systemdunitdir} \
137         --with-initddir=/etc/rc.d/init.d
138
139 %{__make}
140
141 %{?with_apidocs:%{__make} doxygen}
142
143 %install
144 rm -rf $RPM_BUILD_ROOT
145 install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/etc/sysconfig}
146
147 %{__make} install \
148         DESTDIR=$RPM_BUILD_ROOT
149
150 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/corosync
151
152 sed -e 's/^/#/' $RPM_BUILD_ROOT%{_sysconfdir}/corosync/corosync.conf.example \
153         >$RPM_BUILD_ROOT%{_sysconfdir}/corosync/corosync.conf
154 %{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/corosync/corosync.conf.example*
155
156 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
157 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-notifyd
158 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-notifyd
159
160 %clean
161 rm -rf $RPM_BUILD_ROOT
162
163 %post
164 /sbin/chkconfig --add %{name}
165 /sbin/chkconfig --add %{name}-notifyd
166 %service %{name} restart
167 %service %{name}-notifyd restart
168 %systemd_post %{name}.service
169 %systemd_post %{name}-notifyd.service
170
171 %preun
172 if [ "$1" = "0" ]; then
173         %service -q %{name} stop
174         /sbin/chkconfig --del %{name}
175         %service -q %{name}-notifyd stop
176         /sbin/chkconfig --del %{name}-notifyd
177 fi
178 %systemd_preun %{name}.service
179 %systemd_preun %{name}-notifyd.service
180
181 %postun
182 %systemd_reload
183
184 %post   libs -p /sbin/ldconfig
185 %postun libs -p /sbin/ldconfig
186
187 %files
188 %defattr(644,root,root,755)
189 %doc AUTHORS ChangeLog LICENSE README.recovery SECURITY TODO conf/corosync.conf.example*
190 %if %{with xmlconf}
191 %doc conf/corosync.xml.example*
192 %endif
193 %attr(754,root,root) /etc/rc.d/init.d/corosync
194 %attr(754,root,root) /etc/rc.d/init.d/corosync-notifyd
195 %verify(not md5 mtime size) %config(noreplace) /etc/sysconfig/%{name}-notifyd
196 %dir %{_sysconfdir}/corosync
197 %{systemdunitdir}/corosync.service
198 %{systemdunitdir}/corosync-notifyd.service
199 %verify(not md5 mtime size) %config(noreplace) %{_sysconfdir}/corosync/corosync.conf
200 %attr(755,root,root) %{_bindir}/corosync-blackbox
201 %attr(755,root,root) %{_sbindir}/corosync
202 %attr(755,root,root) %{_sbindir}/corosync-cfgtool
203 %attr(755,root,root) %{_sbindir}/corosync-cmapctl
204 %attr(755,root,root) %{_sbindir}/corosync-cpgtool
205 %attr(755,root,root) %{_sbindir}/corosync-keygen
206 %attr(755,root,root) %{_sbindir}/corosync-notifyd
207 %attr(755,root,root) %{_sbindir}/corosync-quorumtool
208 %{_mandir}/man5/corosync.conf.5*
209 %{_mandir}/man8/corosync.8*
210 %{_mandir}/man8/corosync-blackbox.8*
211 %{_mandir}/man8/corosync-cmapctl.8*
212 %{_mandir}/man8/corosync-cfgtool.8*
213 %{_mandir}/man8/corosync-cpgtool.8*
214 %{_mandir}/man8/corosync-keygen.8*
215 %{_mandir}/man8/corosync-notifyd.8*
216 %{_mandir}/man8/corosync-quorumtool.8*
217 %dir %{_datadir}/corosync
218 %attr(755,root,root) %{_datadir}/%{name}/corosync
219 %attr(755,root,root) %{_datadir}/%{name}/corosync-notifyd
220 %if %{with xmlconf}
221 %attr(755,root,root) %{_bindir}/corosync-xmlproc
222 %config(noreplace) %{_sysconfdir}/corosync/corosync.xml.example
223 %dir %{_datadir}/corosync/xml2conf.xsl
224 %{_mandir}/man8/corosync-xmlproc.8*
225 %{_mandir}/man5/corosync.xml.5*
226 %endif
227 %if %{with dbus}
228 /etc/dbus-1/system.d/corosync-signals.conf
229 %endif
230 /var/lib/corosync
231
232 %files libs
233 %defattr(644,root,root,755)
234 %attr(755,root,root) %{_libdir}/libcfg.so.6.*.*
235 %attr(755,root,root) %ghost %{_libdir}/libcfg.so.6
236 %attr(755,root,root) %{_libdir}/libcmap.so.4.*.*
237 %attr(755,root,root) %ghost %{_libdir}/libcmap.so.4
238 %attr(755,root,root) %{_libdir}/libcorosync_common.so.4.*.*
239 %attr(755,root,root) %ghost %{_libdir}/libcorosync_common.so.4
240 %attr(755,root,root) %{_libdir}/libcpg.so.4.*.*
241 %attr(755,root,root) %ghost %{_libdir}/libcpg.so.4
242 %attr(755,root,root) %{_libdir}/libsam.so.4.*.*
243 %attr(755,root,root) %ghost %{_libdir}/libsam.so.4
244 %attr(755,root,root) %{_libdir}/libquorum.so.5.*.*
245 %attr(755,root,root) %ghost %{_libdir}/libquorum.so.5
246 %attr(755,root,root) %{_libdir}/libtotem_pg.so.5.*.*
247 %attr(755,root,root) %ghost %{_libdir}/libtotem_pg.so.5
248 %attr(755,root,root) %{_libdir}/libvotequorum.so.6.*.*
249 %attr(755,root,root) %ghost %{_libdir}/libvotequorum.so.6
250
251 %files devel
252 %defattr(644,root,root,755)
253 %{?with_apidocs:%doc doc/api/html/*}
254 %attr(755,root,root) %{_libdir}/libcfg.so
255 %attr(755,root,root) %{_libdir}/libcmap.so
256 %attr(755,root,root) %{_libdir}/libcorosync_common.so
257 %attr(755,root,root) %{_libdir}/libcpg.so
258 %attr(755,root,root) %{_libdir}/libsam.so
259 %attr(755,root,root) %{_libdir}/libquorum.so
260 %attr(755,root,root) %{_libdir}/libtotem_pg.so
261 %attr(755,root,root) %{_libdir}/libvotequorum.so
262 %{_includedir}/corosync
263 %{_pkgconfigdir}/corosync.pc
264 %{_pkgconfigdir}/libcfg.pc
265 %{_pkgconfigdir}/libcmap.pc
266 %{_pkgconfigdir}/libcorosync_common.pc
267 %{_pkgconfigdir}/libcpg.pc
268 %{_pkgconfigdir}/libquorum.pc
269 %{_pkgconfigdir}/libsam.pc
270 %{_pkgconfigdir}/libtotem_pg.pc
271 %{_pkgconfigdir}/libvotequorum.pc
272 %{_mandir}/man3/cmap_*.3*
273 %{_mandir}/man3/cpg_*.3*
274 %{_mandir}/man3/quorum_*.3*
275 %{_mandir}/man3/sam_*.3*
276 %{_mandir}/man3/votequorum_*.3*
277 %{_mandir}/man5/votequorum.5*
278 # should be man7...
279 %{_mandir}/man8/cmap_keys.8*
280 %{_mandir}/man8/cmap_overview.8*
281 %{_mandir}/man8/corosync_overview.8*
282 %{_mandir}/man8/cpg_overview.8*
283 %{_mandir}/man8/sam_overview.8*
284 %{_mandir}/man8/votequorum_overview.8*
285 %{_mandir}/man8/quorum_overview.8*
286 %files static
287 %defattr(644,root,root,755)
288 %{_libdir}/libcfg.a
289 %{_libdir}/libcmap.a
290 %{_libdir}/libcorosync_common.a
291 %{_libdir}/libcpg.a
292 %{_libdir}/libsam.a
293 %{_libdir}/libquorum.a
294 %{_libdir}/libtotem_pg.a
295 %{_libdir}/libvotequorum.a
296
297 %if %{with snmp}
298 %files -n mibs-corosync
299 %defattr(644,root,root,755)
300 %{_datadir}/snmp/mibs/COROSYNC-MIB.txt
301 %endif
302
303 %if %{with testagents}
304 %files -n corosync-testagents
305 %defattr(644,root,root,755)
306 %{_datadir}/corosync/tests/mem_leak_test.sh
307 %{_datadir}/corosync/tests/net_breaker.sh
308 %{_datadir}/corosync/tests/cmap-dispatch-deadlock.sh
309 %{_datadir}/corosync/tests/shm_leak_audit.sh
310 %attr(755,root,root) %{_bindir}/cpg_test_agent
311 %attr(755,root,root) %{_bindir}/sam_test_agent
312 %attr(755,root,root) %{_bindir}/votequorum_test_agent
313 %endif
This page took 0.088496 seconds and 4 git commands to generate.