]> git.pld-linux.org Git - packages/gfs2.git/blob - gfs2.spec
74f0488ff88a7a3e70a9f11088913e15da466b67
[packages/gfs2.git] / gfs2.spec
1 #
2 # TODO:
3 #       - update patch0
4 #       - cleanup files section
5 #       - change from gfs2 to cluster
6 #       - move to cluster-3 (for kernels 2.6.29+)
7 #       - split cluster pkg to gfs2, gfs, fence, dlm, rmanager,
8 #         ccs, cman, group
9 #       - more kernel stuff (gnbd, ...), but gnbd looks dead,
10 #         use iscsi, fc, aoe, nbd or sth instead
11 #       - optflags
12 #   - fixup -n cluster package mess, subpackages, duplicate files, external libs and so on
13 #   - is this pkg obsolete by gfs.spec with 2.03?
14 # INFO:
15 #       - gfs2 and dlm kernel modules are in the kernel package
16 #         (2.6.28.9-3 for example); gfs is the old GFS.
17 #
18 # Conditional build:
19 %bcond_without  dist_kernel     # without distribution kernel
20 %bcond_with     kernel          # don't build kernel module
21 %bcond_without  userspace       # don't build userspace package
22 %bcond_with     verbose
23
24 %if %{without kernel}
25 %undefine       with_dist_kernel
26 %endif
27 %if "%{_alt_kernel}" != "%{nil}"
28 %undefine       with_userspace
29 %endif
30 %if %{without userspace}
31 # nothing to be placed to debuginfo package
32 %define         _enable_debug_packages  0
33 %endif
34
35 %define         rel     1
36 Summary:        Shared-disk cluster file system
37 Summary(pl.UTF-8):      Klastrowy system plików na współdzielonym dysku
38 Name:           gfs2
39 Version:        2.03.10
40 Release:        %{rel}
41 Epoch:          1
42 License:        GPL v2
43 Group:          Applications/System
44 Source0:        ftp://sources.redhat.com/pub/cluster/releases/cluster-%{version}.tar.gz
45 # Source0-md5:  379b560096e315d4b52e238a5c72ba4a
46 Patch0:         %{name}-install.patch
47 Patch1:         %{name}-kernel-2.6.28.patch
48 URL:            http://sources.redhat.com/cluster/gfs/
49 BuildRequires:  libvolume_id-devel
50 BuildRequires:  linux-libc-headers >= 7:2.6.20
51 BuildRequires:  ncurses-devel
52 BuildRequires:  openais-devel
53 BuildRequires:  perl-base
54 %if %{with dist_kernel}
55 BuildRequires:  kernel%{_alt_kernel}-module-build >= 3:2.6.27
56 %endif
57
58 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
59
60 %define         _sbindir        /sbin
61
62 %description
63 GFS (Global File System) is a cluster file system. It allows a cluster
64 of computers to simultaneously use a block device that is shared
65 between them (with FC, iSCSI, NBD, etc...). GFS reads and writes to
66 the block device like a local filesystem, but also uses a lock module
67 to allow the computers coordinate their I/O so filesystem consistency
68 is maintained. One of the nifty features of GFS is perfect consistency
69 -- changes made to the filesystem on one machine show up immediately on all
70 other machines in the cluster.
71
72 %description -l pl.UTF-8
73 GFS (Global File System) to klastrowy system plików. Pozwala klastrowi
74 komputerów na jednoczesne korzystanie z urządzenia blokowego
75 dzielonego między nimi (poprzez FC, iSCSI, NBD itp.). GFS odczytuje i
76 zapisuje urządzenie blokowe jak lokalny system plików, ale używa
77 dodatkowo modułu blokującego, aby umożliwić komputerom koordynowanie
78 ich operacji I/O w celu zachowania spójności systemu plików. Jedną z
79 szykownych możliwości GFS-a jest idealna spójność - zmiany wykonane w
80 systemie plików na jednej maszynie natychmiast pokazują się na
81 wszystkich innych maszynach w klastrze.
82
83 %package -n cluster
84 Summary:        Cluster stuff
85 Group:          Applications/System
86
87 %description -n cluster
88 The rest of the cluster stuff.
89
90 %package -n kernel%{_alt_kernel}-misc-gfs
91 Summary:        gfs kernel module
92 Release:        %{rel}@%{_kernel_ver_str}
93 Group:          Base/Kernel
94 Requires(post,postun):  /sbin/depmod
95 %if %{with dist_kernel}
96 %requires_releq_kernel
97 Requires(postun):       %releq_kernel
98 %endif
99 Provides:       kernel(gfs) = %{version}-%{rel}
100
101 %description -n kernel%{_alt_kernel}-misc-gfs
102 gfs kernel module.
103
104 %package -n kernel%{_alt_kernel}-misc-gnbd
105 Summary:        gnbd kernel module
106 Release:        %{rel}@%{_kernel_ver_str}
107 Group:          Base/Kernel
108 Requires(post,postun):  /sbin/depmod
109 %if %{with dist_kernel}
110 %requires_releq_kernel
111 Requires(postun):       %releq_kernel
112 %endif
113 Provides:       kernel(gnbd) = %{version}-%{rel}
114
115 %description -n kernel%{_alt_kernel}-misc-gnbd
116 gnbd kernel module.
117
118 %prep
119 %setup -q -n cluster-%{version}
120 #patch0 -p1
121 %patch1 -p1
122
123 sed -i -e 's,-Wall,%{rpmcflags} -I/usr/include/ncurses -Wall,' make/defines.mk.input
124 sed -i -e 's/ -ggdb / %{rpmcflags} /' gfs2/libgfs2/Makefile
125 sed -i -e 's/ -O2 -ggdb / %{rpmcflags} /' gfs2/mkfs/Makefile
126 %if %{with kernel}
127 # gfs
128 sed -i -e "s,\.\./\.\./\.\.,$PWD," gfs-kernel/src/gfs/Makefile
129 sed -i -e "s,\$(OBJDIR),$PWD," gfs-kernel/src/gfs/Makefile
130 # gnbd
131 sed -i -e "s,\.\./\.\.,$PWD," gnbd-kernel/src/Makefile
132 sed -i -e "s,\$(OBJDIR),$PWD," gnbd-kernel/src/Makefile
133 %endif
134
135 %build
136 ./configure \
137         --libdir=%{_libdir} \
138         --mandir=%{_mandir} \
139         --prefix=%{_prefix} \
140         --sbindir=%{_sbindir} \
141         --ncursesincdir=/usr/include/ncurses \
142         --without_kernel_modules
143
144 %if %{with userspace}
145 %{__make}
146 %endif
147
148 %if %{with kernel}
149 export KBUILD_NOPEDANTIC=1
150 %build_kernel_modules -C gfs-kernel/src/gfs -m gfs
151 #build_kernel_modules -C gnbd-kernel/src -m gnbd
152 %endif
153
154 %install
155 rm -rf $RPM_BUILD_ROOT
156
157 %if %{with userspace}
158 %{__make} install \
159         DESTDIR=$RPM_BUILD_ROOT
160
161 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
162 mv $RPM_BUILD_ROOT/''etc/init.d/* $RPM_BUILD_ROOT/etc/rc.d/init.d
163 %endif
164
165 %if %{with kernel}
166 %install_kernel_modules -m gfs-kernel/src/gfs/gfs -d misc
167 #install_kernel_modules -m gnbd-kernel/src/gnbd -d misc
168 %endif
169
170 %clean
171 rm -rf $RPM_BUILD_ROOT
172
173 %if %{with userspace}
174 %files
175 %defattr(644,root,root,755)
176 %attr(755,root,root) %{_sbindir}/*gfs2*
177 %attr(754,root,root) /etc/rc.d/init.d/gfs2
178 %{_mandir}/man?/*gfs2*
179 %{_docdir}/cluster/gfs2.txt
180
181 %files -n cluster
182 %defattr(644,root,root,755)
183 %attr(754,root,root) /etc/rc.d/init.d/cman
184 %attr(754,root,root) /etc/rc.d/init.d/gfs
185 %attr(754,root,root) /etc/rc.d/init.d/qdiskd
186 %attr(754,root,root) /etc/rc.d/init.d/rgmanager
187 %attr(754,root,root) /etc/rc.d/init.d/scsi_reserve
188 %attr(755,root,root) %{_libdir}/libcman.so
189 %attr(755,root,root) %{_libdir}/libcman.so.2
190 %attr(755,root,root) %{_libdir}/libcman.so.2.3
191 %attr(755,root,root) %{_libdir}/libdlm_lt.so
192 %attr(755,root,root) %{_libdir}/libdlm_lt.so.2
193 %attr(755,root,root) %{_libdir}/libdlm_lt.so.2.3
194 %attr(755,root,root) %{_libdir}/libdlm.so
195 %attr(755,root,root) %{_libdir}/libdlm.so.2
196 %attr(755,root,root) %{_libdir}/libdlm.so.2.3
197 %attr(755,root,root) %{_sbindir}/ccsd
198 %attr(755,root,root) %{_sbindir}/ccs_test
199 %attr(755,root,root) %{_sbindir}/ccs_tool
200 %attr(755,root,root) %{_sbindir}/clubufflush
201 %attr(755,root,root) %{_sbindir}/clufindhostname
202 %attr(755,root,root) %{_sbindir}/clulog
203 %attr(755,root,root) %{_sbindir}/clunfslock
204 %attr(755,root,root) %{_sbindir}/clurgmgrd
205 %attr(755,root,root) %{_sbindir}/clurmtabd
206 %attr(755,root,root) %{_sbindir}/clustat
207 %attr(755,root,root) %{_sbindir}/clusvcadm
208 %attr(755,root,root) %{_sbindir}/cman_tool
209 %attr(755,root,root) %{_sbindir}/dlm_controld
210 %attr(755,root,root) %{_sbindir}/dlm_tool
211 %attr(755,root,root) %{_sbindir}/fence_ack_manual
212 %attr(755,root,root) %{_sbindir}/fence_alom
213 %attr(755,root,root) %{_sbindir}/fence_apc
214 %attr(755,root,root) %{_sbindir}/fence_apc_snmp
215 %attr(755,root,root) %{_sbindir}/fence_baytech
216 %attr(755,root,root) %{_sbindir}/fence_bladecenter
217 %attr(755,root,root) %{_sbindir}/fence_brocade
218 %attr(755,root,root) %{_sbindir}/fence_bullpap
219 %attr(755,root,root) %{_sbindir}/fence_cpint
220 %attr(755,root,root) %{_sbindir}/fenced
221 %attr(755,root,root) %{_sbindir}/fence_drac
222 %attr(755,root,root) %{_sbindir}/fence_drac5
223 %attr(755,root,root) %{_sbindir}/fence_egenera
224 %attr(755,root,root) %{_sbindir}/fence_eps
225 %attr(755,root,root) %{_sbindir}/fence_gnbd
226 %attr(755,root,root) %{_sbindir}/fence_ibmblade
227 %attr(755,root,root) %{_sbindir}/fence_ifmib
228 %attr(755,root,root) %{_sbindir}/fence_ilo
229 %attr(755,root,root) %{_sbindir}/fence_ipmilan
230 %attr(755,root,root) %{_sbindir}/fence_ldom
231 %attr(755,root,root) %{_sbindir}/fence_lpar
232 %attr(755,root,root) %{_sbindir}/fence_mcdata
233 %attr(755,root,root) %{_sbindir}/fence_node
234 %attr(755,root,root) %{_sbindir}/fence_rackswitch
235 %attr(755,root,root) %{_sbindir}/fence_rps10
236 %attr(755,root,root) %{_sbindir}/fence_rsa
237 %attr(755,root,root) %{_sbindir}/fence_rsb
238 %attr(755,root,root) %{_sbindir}/fence_sanbox2
239 %attr(755,root,root) %{_sbindir}/fence_scsi
240 %attr(755,root,root) %{_sbindir}/fence_scsi_test
241 %attr(755,root,root) %{_sbindir}/fence_tool
242 %attr(755,root,root) %{_sbindir}/fence_virsh
243 %attr(755,root,root) %{_sbindir}/fence_vixel
244 %attr(755,root,root) %{_sbindir}/fence_vmware
245 %attr(755,root,root) %{_sbindir}/fence_wti
246 %attr(755,root,root) %{_sbindir}/fence_xcat
247 %attr(755,root,root) %{_sbindir}/fence_zvm
248 %attr(755,root,root) %{_sbindir}/fsck.gfs
249 %attr(755,root,root) %{_sbindir}/gfs_controld
250 %attr(755,root,root) %{_sbindir}/gfs_debug
251 %attr(755,root,root) %{_sbindir}/gfs_edit
252 %attr(755,root,root) %{_sbindir}/gfs_fsck
253 %attr(755,root,root) %{_sbindir}/gfs_grow
254 %attr(755,root,root) %{_sbindir}/gfs_jadd
255 %attr(755,root,root) %{_sbindir}/gfs_mkfs
256 %attr(755,root,root) %{_sbindir}/gfs_quota
257 %attr(755,root,root) %{_sbindir}/gfs_tool
258 %attr(755,root,root) %{_sbindir}/gnbd_clusterd
259 %attr(755,root,root) %{_sbindir}/gnbd_export
260 %attr(755,root,root) %{_sbindir}/gnbd_get_uid
261 %attr(755,root,root) %{_sbindir}/gnbd_import
262 %attr(755,root,root) %{_sbindir}/gnbd_monitor
263 %attr(755,root,root) %{_sbindir}/gnbd_recvd
264 %attr(755,root,root) %{_sbindir}/gnbd_serv
265 %attr(755,root,root) %{_sbindir}/groupd
266 %attr(755,root,root) %{_sbindir}/group_tool
267 %attr(755,root,root) %{_sbindir}/mkfs.gfs
268 %attr(755,root,root) %{_sbindir}/mkqdisk
269 %attr(755,root,root) %{_sbindir}/mount.gfs
270 %attr(755,root,root) %{_sbindir}/qdiskd
271 %attr(755,root,root) %{_sbindir}/rg_test
272 %attr(755,root,root) %{_sbindir}/umount.gfs
273 %{_datadir}/cluster/apache.metadata
274 %{_datadir}/cluster/apache.sh
275 %{_datadir}/cluster/ASEHAagent.sh
276 %{_datadir}/cluster/clusterfs.sh
277 %{_datadir}/cluster/default_event_script.sl
278 %{_datadir}/cluster/fs.sh
279 %{_datadir}/cluster/ip.sh
280 %{_datadir}/cluster/lvm_by_lv.sh
281 %{_datadir}/cluster/lvm_by_vg.sh
282 %{_datadir}/cluster/lvm.metadata
283 %{_datadir}/cluster/lvm.sh
284 %{_datadir}/cluster/mysql.metadata
285 %{_datadir}/cluster/mysql.sh
286 %{_datadir}/cluster/named.metadata
287 %{_datadir}/cluster/named.sh
288 %{_datadir}/cluster/netfs.sh
289 %{_datadir}/cluster/nfsclient.sh
290 %{_datadir}/cluster/nfsexport.sh
291 %{_datadir}/cluster/ocf-shellfuncs
292 %{_datadir}/cluster/openldap.metadata
293 %{_datadir}/cluster/openldap.sh
294 %{_datadir}/cluster/oracledb.sh
295 %{_datadir}/cluster/postgres-8.metadata
296 %{_datadir}/cluster/postgres-8.sh
297 %{_datadir}/cluster/samba.metadata
298 %{_datadir}/cluster/samba.sh
299 %{_datadir}/cluster/SAPDatabase
300 %{_datadir}/cluster/SAPInstance
301 %{_datadir}/cluster/script.sh
302 %{_datadir}/cluster/service.sh
303 %{_datadir}/cluster/smb.sh
304 %{_datadir}/cluster/svclib_nfslock
305 %{_datadir}/cluster/tomcat-5.metadata
306 %{_datadir}/cluster/tomcat-5.sh
307 %{_datadir}/cluster/utils/config-utils.sh
308 %{_datadir}/cluster/utils/httpd-parse-config.pl
309 %{_datadir}/cluster/utils/member_util.sh
310 %{_datadir}/cluster/utils/messages.sh
311 %{_datadir}/cluster/utils/ra-skelet.sh
312 %{_datadir}/cluster/utils/tomcat-parse-config.pl
313 %{_datadir}/cluster/vm.sh
314 %{_datadir}/fence/fencing.py
315 %{_datadir}/fence/telnet_ssl
316 %{_datadir}/snmp/mibs/powernet369.mib
317 %{_docdir}/cluster/COPYING.applications
318 %{_docdir}/cluster/COPYING.libraries
319 %{_docdir}/cluster/COPYRIGHT
320 %{_docdir}/cluster/journaling.txt
321 %{_docdir}/cluster/min-gfs.txt
322 %{_docdir}/cluster/README.licence
323 %{_docdir}/cluster/usage.txt
324 /etc/udev/rules.d/51-dlm.rules
325 %{_includedir}/ccs.h
326 %{_includedir}/libcman.h
327 %{_includedir}/libdlm.h
328 %{_libdir}/libccs.a
329 %{_libdir}/libcman.a
330 %{_libdir}/libdlm.a
331 %{_libdir}/libdlm_lt.a
332 %{_mandir}/man3/dlm_cleanup.3
333 %{_mandir}/man3/dlm_close_lockspace.3
334 %{_mandir}/man3/dlm_create_lockspace.3*
335 %{_mandir}/man3/dlm_dispatch.3
336 %{_mandir}/man3/dlm_get_fd.3
337 %{_mandir}/man3/dlm_lock.3*
338 %{_mandir}/man3/dlm_lock_wait.3
339 %{_mandir}/man3/dlm_ls_lock.3
340 %{_mandir}/man3/dlm_ls_lock_wait.3
341 %{_mandir}/man3/dlm_ls_lockx.3
342 %{_mandir}/man3/dlm_ls_pthread_init.3
343 %{_mandir}/man3/dlm_ls_unlock.3
344 %{_mandir}/man3/dlm_ls_unlock_wait.3
345 %{_mandir}/man3/dlm_new_lockspace.3
346 %{_mandir}/man3/dlm_open_lockspace.3
347 %{_mandir}/man3/dlm_pthread_init.3
348 %{_mandir}/man3/dlm_release_lockspace.3
349 %{_mandir}/man3/dlm_unlock.3*
350 %{_mandir}/man3/dlm_unlock_wait.3
351 %{_mandir}/man3/libdlm.3*
352 %{_mandir}/man5/cluster.conf.5*
353 %{_mandir}/man5/cman.5*
354 %{_mandir}/man5/qdisk.5*
355 %{_mandir}/man7/ccs.7*
356 %{_mandir}/man8/ccsd.8*
357 %{_mandir}/man8/ccs_test.8*
358 %{_mandir}/man8/ccs_tool.8*
359 %{_mandir}/man8/clubufflush.8*
360 %{_mandir}/man8/clufindhostname.8*
361 %{_mandir}/man8/clulog.8*
362 %{_mandir}/man8/clurgmgrd.8*
363 %{_mandir}/man8/clurmtabd.8*
364 %{_mandir}/man8/clustat.8*
365 %{_mandir}/man8/clusvcadm.8*
366 %{_mandir}/man8/cman_tool.8*
367 %{_mandir}/man8/dlm_controld.8*
368 %{_mandir}/man8/dlm_tool.8*
369 %{_mandir}/man8/fence.8*
370 %{_mandir}/man8/fence_ack_manual.8*
371 %{_mandir}/man8/fence_alom.8*
372 %{_mandir}/man8/fence_apc.8*
373 %{_mandir}/man8/fence_bladecenter.8*
374 %{_mandir}/man8/fence_brocade.8*
375 %{_mandir}/man8/fence_bullpap.8*
376 %{_mandir}/man8/fenced.8*
377 %{_mandir}/man8/fence_drac.8*
378 %{_mandir}/man8/fence_egenera.8*
379 %{_mandir}/man8/fence_eps.8*
380 %{_mandir}/man8/fence_gnbd.8*
381 %{_mandir}/man8/fence_ifmib.8*
382 %{_mandir}/man8/fence_ilo.8*
383 %{_mandir}/man8/fence_ipmilan.8*
384 %{_mandir}/man8/fence_ldom.8*
385 %{_mandir}/man8/fence_manual.8*
386 %{_mandir}/man8/fence_mcdata.8*
387 %{_mandir}/man8/fence_node.8*
388 %{_mandir}/man8/fence_rib.8*
389 %{_mandir}/man8/fence_rsa.8*
390 %{_mandir}/man8/fence_sanbox2.8*
391 %{_mandir}/man8/fence_tool.8*
392 %{_mandir}/man8/fence_virsh.8*
393 %{_mandir}/man8/fence_vixel.8*
394 %{_mandir}/man8/fence_vmware.8*
395 %{_mandir}/man8/fence_wti.8*
396 %{_mandir}/man8/fence_xvm.8*
397 %{_mandir}/man8/fence_xvmd.8*
398 %{_mandir}/man8/gfs.8*
399 %{_mandir}/man8/gfs_controld.8*
400 %{_mandir}/man8/gfs_edit.8
401 %{_mandir}/man8/gfs_fsck.8*
402 %{_mandir}/man8/gfs_grow.8*
403 %{_mandir}/man8/gfs_jadd.8*
404 %{_mandir}/man8/gfs_mkfs.8*
405 %{_mandir}/man8/gfs_mount.8*
406 %{_mandir}/man8/gfs_quota.8*
407 %{_mandir}/man8/gfs_tool.8*
408 %{_mandir}/man8/gnbd.8*
409 %{_mandir}/man8/gnbd_export.8*
410 %{_mandir}/man8/gnbd_import.8*
411 %{_mandir}/man8/gnbd_serv.8*
412 %{_mandir}/man8/groupd.8*
413 %{_mandir}/man8/group_tool.8*
414 %{_mandir}/man8/mkqdisk.8*
415 %{_mandir}/man8/qdiskd.8*
416 %{_prefix}/libexec/lcrso/service_cman.lcrso
417 %endif
418
419 %if %{with kernel}
420 %files -n kernel%{_alt_kernel}-misc-gfs
421 %defattr(644,root,root,755)
422 /lib/modules/%{_kernel_ver}/misc/gfs.ko*
423 #/lib/modules/%{_kernel_ver}/misc/gnbd.ko*
424 %endif
This page took 0.091189 seconds and 3 git commands to generate.