3 %bcond_with libonly # build package only with lib (needed bootstrap with ccs)
5 Summary: General-purpose symmetric cluster manager
6 Summary(pl.UTF-8): Zarządca symetrycznych klastrów ogólnego przeznaczenia
11 Group: Applications/System
12 Source0: ftp://sources.redhat.com/pub/cluster/releases/cluster-%{version}.tar.gz
13 # Source0-md5: 379b560096e315d4b52e238a5c72ba4a
15 Source2: %{name}.sysconfig
16 URL: http://sources.redhat.com/cluster/cman/
17 %{!?with_libonly:BuildRequires: ccs-devel}
18 BuildRequires: ncurses-devel
19 BuildRequires: openais-devel
20 BuildRequires: perl-base
21 Requires: %{name}-libs = %{version}-%{release}
22 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
24 %define _sbindir /sbin
26 # aliasing problems in qdisk/disk.c
27 %define specflags -fno-strict-aliasing
30 MAN is a symmetric, general-purpose, kernel-based cluster manager. It
31 has two parts. Connection Manager (cnxman) handles membership,
32 messaging, quorum, event notification and transitions. Service Manager
33 (sm) handles "service groups" which are a general way of representing
34 and managing instances of external systems that require cluster
35 management. The CMAN cluster manager is the foundational system upon
36 which DLM, GFS, CLVM, and Fence all depend. The CMAN API in the kernel
37 and userspace is general and available for other programs to use.
39 %description -l pl.UTF-8
40 MAN to zarządca opartych na jądrze symetrycznych klastrów ogólnego
41 przeznaczenia. Składa się z dwóch części. Zarządca połączeń
42 (Connection Manager, cnxman) obsługuje członkostwo, komunikację,
43 kworum, powiadamianie o zdarzeniach i przejścia. Zarządca usług
44 (Service Manager, sm) obsługuje "grupy usług", które są ogólnym
45 sposobem reprezentacji i zarządzania instancjami zewnętrznych systemów
46 wymagających zarządzania klastrem. Zarządca klastrów CMAN to
47 podstawowy system, na którym polegają DLM, GFS, CLVM i Fence. API
48 CMAN-a w jądrze i przestrzeni użytkownika jest ogólne i w całości
49 dostępne do wykorzystania w innych programach.
53 Summary(pl.UTF-8): Biblioteka CMAN
57 Obsoletes: gulm-static
60 Obsoletes: magma-devel
61 Obsoletes: magma-plugins
62 Obsoletes: magma-static
63 Conflicts: cman < 2.00.00-2
68 %description libs -l pl.UTF-8
72 Summary: CMAN header files
73 Summary(pl.UTF-8): Pliki nagłówkowe CMAN
74 Group: Development/Libraries
75 Requires: %{name}-libs = %{version}-%{release}
80 %description devel -l pl.UTF-8
81 Pliki nagłówkowe CMAN.
84 Summary: CMAN static library
85 Summary(pl.UTF-8): Biblioteka statyczna CMAN
86 Group: Development/Libraries
87 Requires: %{name}-devel = %{version}-%{release}
92 %description static -l pl.UTF-8
93 Biblioteka statyczna CMAN.
96 %setup -q -n cluster-%{version}
99 %{__perl} -pi -e 's/ -g/ %{rpmcflags}/' {lib,qdisk,tests}/Makefile
100 %{__perl} -pi -e 's/ -O2 /%{rpmcflags}/' {cman_tool,daemon}/Makefile
104 --without_kernel_modules \
108 --ccsincdir="$PWD/ccs/lib" \
109 --incdir=%{_includedir} \
110 --ncursesincdir=%{_includedir}/ncurses \
111 --libdir=%{_libdir} \
112 --libexecdir=%{_libdir} \
113 --mandir=%{_mandir} \
114 --prefix=%{_prefix} \
115 --sbindir=%{_sbindir}
117 %{__make} %{?with_libonly:-C lib} \
122 rm -rf $RPM_BUILD_ROOT
123 install -d $RPM_BUILD_ROOT{/etc/sysconfig,/etc/rc.d/init.d}
125 %{__make} -C %{name}%{?with_libonly:/lib} install \
126 DESTDIR=$RPM_BUILD_ROOT
128 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
129 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
132 rm -rf $RPM_BUILD_ROOT
135 /sbin/chkconfig --add %{name}
138 if [ "$1" = "0" ]; then
139 %service -q %{name} stop
140 /sbin/chkconfig --del %{name}
143 %post libs -p /sbin/ldconfig
144 %postun libs -p /sbin/ldconfig
146 %if %{without libonly}
148 %defattr(644,root,root,755)
149 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
150 %attr(754,root,root) /etc/rc.d/init.d/%{name}
151 #%attr(754,root,root) /etc/rc.d/init.d/qdiskd
152 %attr(755,root,root) %{_sbindir}/*
153 %attr(755,root,root) %{_libdir}/lcrso/service_cman.lcrso
154 %{_mandir}/man5/cman.5*
155 %{_mandir}/man5/qdisk.5*
156 %{_mandir}/man8/cman_tool.8*
157 %{_mandir}/man8/mkqdisk.8*
158 %{_mandir}/man8/qdiskd.8*
162 %defattr(644,root,root,755)
163 %attr(755,root,root) %{_libdir}/libcman.so.*.*
166 %defattr(644,root,root,755)
167 %attr(755,root,root) %{_libdir}/libcman.so
171 %defattr(644,root,root,755)