]> git.pld-linux.org Git - packages/glusterfs.git/blame - glusterfs.spec
-up to 3.5.3
[packages/glusterfs.git] / glusterfs.spec
CommitLineData
5a0c6d94
JB
1# TODO:
2# - Find pidfiles killproc --pidfile ${PIDFILE} -TERM instead of kill -TERM ${PID}
3# - Check transport-ibverbs package and ibverbs bcond
4# - Add passing options from /etc/sysconfig/glusterfsd to glusterfsd
5# - package /etc/glusterfs/glusterfs-logrotate as logrotate config
6# - package in proper emacs/vim locations:
7# /usr/share/doc/glusterfs/glusterfs-mode.el
8# /usr/share/doc/glusterfs/glusterfs.vim
4d40ce33
JB
9#
10# Conditional build:
4163e7ad 11%bcond_without ibverbs # ib-verbs transport
65d9dbc4 12%bcond_without systemtap # systemtap/dtrace support
7f75179c 13#
d6a0cdd1 14Summary: Clustered File Storage that can scale to peta bytes
dae7af53 15Summary(pl.UTF-8): Klastrowy system przechowywania plików skalujący się do petabajtów
d6a0cdd1 16Name: glusterfs
f277eaaa 17Version: 3.5.3
7b2c6d20 18Release: 1
4d40ce33 19License: LGPL v3+ or GPL v2 (libraries), GPL v3+ (programs)
dae7af53 20Group: Applications/System
f277eaaa
GP
21Source0: http://download.gluster.org/pub/gluster/glusterfs/3.5/LATEST/glusterfs-%{version}.tar.gz
22# Source0-md5: 359f9f565fedd3069e1ff4f81fcb14e7
824dab89 23Source1: glusterfsd.init
65d9dbc4
JB
24Patch0: %{name}-link.patch
25Patch1: %{name}-noquiet.patch
6c386b20 26URL: http://www.gluster.org/
4163e7ad
JB
27BuildRequires: autoconf >= 2.50
28BuildRequires: automake
d6a0cdd1 29BuildRequires: bison
65d9dbc4 30BuildRequires: device-mapper-devel >= 2.02.79
d6a0cdd1 31BuildRequires: flex
7813606f 32BuildRequires: glib2-devel >= 2.0
4d40ce33 33BuildRequires: libaio-devel
7f75179c
JB
34BuildRequires: libfuse-devel >= 2.6
35%{?with_ibverbs:BuildRequires: libibverbs-devel >= 1.0.4}
abcc847c 36BuildRequires: libtool
4d40ce33
JB
37BuildRequires: libxml2-devel >= 1:2.6.19
38BuildRequires: openssl-devel
39BuildRequires: pkgconfig
40BuildRequires: python >= 1:2.4
abcc847c 41BuildRequires: readline-devel
42BuildRequires: rpm-pythonprov
d6a0cdd1 43BuildRequires: rpmbuild(macros) >= 1.228
65d9dbc4 44%{?with_systemtap:BuildRequires: systemtap-sdt-devel}
ba9a736a 45BuildRequires: zlib-devel >= 1.2.0
d6a0cdd1 46BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47
48%description
49GlusterFS is a clustered file-system capable of scaling to several
50peta-bytes. It aggregates various storage bricks over Infiniband RDMA
51or TCP/IP interconnect into one large parallel network file system.
52GlusterFS is one of the most sophisticated file system in terms of
53features and extensibility. It borrows a powerful concept called
54Translators from GNU Hurd kernel. Much of the code in GlusterFS is in
55userspace and easily manageable.
56
dae7af53
JB
57%description -l pl.UTF-8
58GlusterFS to klastrowy system plików skalujący się do petabajtów.
abcc847c 59Scala różne kawałki miejsca po łączach Infiniband RDMA lub TCP/IP w
60jeden duży, równoległy sieciowy system plików. GlusterFS to jeden z
61najbardziej wyszukanych systemów plików jeśli chodzi o możliwości i
62rozszerzalność. Zapożycza potężną ideę o nazwie Translators z jądra
63GNU Hurd. Duża część kodu GlusterFS działa w przestrzeni użytkownika i
64jest łatwo zarządzalna.
11c9e8ee
MK
65
66%package common
65d9dbc4
JB
67Summary: GlusterFS common files including Translators
68Summary(pl.UTF-8): Wspólne pliki GlusterFS-a, w tym translatory
5f2d10ee 69Group: Libraries
4d40ce33 70Requires: libxml2 >= 1:2.6.19
ba9a736a 71Requires: zlib >= 1.2.0
11c9e8ee
MK
72
73%description common
74GlusterFS is a clustered file-system capable of scaling to several
75peta-bytes. It aggregates various storage bricks over Infiniband RDMA
76or TCP/IP interconnect into one large parallel network file system.
77GlusterFS is one of the most sophisticated file system in terms of
78features and extensibility. It borrows a powerful concept called
79Translators from GNU Hurd kernel. Much of the code in GlusterFS is in
80userspace and easily manageable.
81
82This package includes libglusterfs and glusterfs translator modules
83common to both GlusterFS server and client framework.
84
85%description common -l pl.UTF-8
5f2d10ee 86GlusterFS to klastrowy system plików skalujący się do petabajtów.
abcc847c 87Scala różne kawałki miejsca po łączach Infiniband RDMA lub TCP/IP w
88jeden duży, równoległy sieciowy system plików. GlusterFS to jeden z
89najbardziej wyszukanych systemów plików jeśli chodzi o możliwości i
90rozszerzalność. Zapożycza potężną ideę o nazwie Translators z jądra
91GNU Hurd. Duża część kodu GlusterFS działa w przestrzeni użytkownika i
92jest łatwo zarządzalna.
5f2d10ee
JB
93
94Ten pakiet zawiera libglusterfs i moduły translatorów glusterfs
95wspólne dla klienta jak i serwera GlusterFS-a.
11c9e8ee 96
65d9dbc4
JB
97%package libs
98Summary: GlusterFS libraries
99Summary(pl.UTF-8): Biblioteki GlusterFS-a
100Group: Libraries
101Conflicts: glusterfs-common < 3.4.0
102
103%description libs
104GlusterFS libraries.
105
106%description libs -l pl.UTF-8
107Biblioteki GlusterFS-a.
108
4163e7ad
JB
109%package devel
110Summary: GlusterFS development files
111Summary(pl.UTF-8): Pliki programistyczne GlusterFS-a
112Group: Development/Libraries
65d9dbc4 113Requires: %{name}-libs = %{version}-%{release}
4d40ce33
JB
114# -lfl
115Requires: flex
116Requires: openssl-devel
117Obsoletes: glusterfs-static
4163e7ad
JB
118
119%description devel
120This package provides the development files for GlusterFS library.
121
122%description devel -l pl.UTF-8
123Ten pakiet udostępnia pliki programistyczne biblioteki GlusterFS-a.
124
ba9a736a
JB
125%package -n python-gluster
126Summary: Python interface to GlusterFS libraries
127Summary(pl.UTF-8): Interfejs Pythona do bibliotek GlusterFS
128Group: Libraries/Python
129Requires: %{name}-libs = %{version}-%{release}
130
131%description -n python-gluster
132Python interface to GlusterFS libraries.
133
134%description -n python-gluster -l pl.UTF-8
135Interfejs Pythona do bibliotek GlusterFS.
136
4163e7ad
JB
137%package transport-ibverbs
138Summary: InfiniBand "verbs" transport plugins for GlusterFS
139Summary(pl.UTF-8): Wtyczki transportu "verbs" InfiniBand dla GlusterFS-a
140Group: Libraries
141Requires: %{name}-common = %{version}-%{release}
142Requires: libibverbs >= 1.0.4
143
144%description transport-ibverbs
145InfiniBand "verbs" transport plugins for GlusterFS.
146
147%description transport-ibverbs -l pl.UTF-8
148Wtyczki transportu "verbs" InfiniBand dla GlusterFS-a.
149
11c9e8ee
MK
150%package server
151Summary: GlusterFS Server
5f2d10ee
JB
152Summary(pl.UTF-8): Serwer GlusterFS-a
153Group: Daemons
6c386b20 154Requires: %{name}-client = %{version}-%{release}
5f2d10ee
JB
155Requires: %{name}-common = %{version}-%{release}
156Requires(post,preun): /sbin/chkconfig
157Requires: rc-scripts
11c9e8ee
MK
158
159%description server
11c9e8ee
MK
160This package provides the glusterfs server daemon.
161
162%description server -l pl.UTF-8
5f2d10ee 163Ten pakiet zawiera część serwerową GlusterFS-a.
11c9e8ee
MK
164
165%package client
166Summary: GlusterFS Client
5f2d10ee 167Summary(pl.UTF-8): Klient GlusterFS
11c9e8ee 168Group: Applications/System
5f2d10ee 169Requires: %{name}-common = %{version}-%{release}
7f75179c 170Requires: libfuse >= 2.6
11c9e8ee
MK
171
172%description client
11c9e8ee
MK
173This package provides the FUSE based GlusterFS client.
174
175%description client -l pl.UTF-8
5f2d10ee 176Ten pakiet udostępnia opartego na FUSE klienta GlusterFS-a.
11c9e8ee 177
65d9dbc4
JB
178%package resource-agents
179Summary: OCF Resource Agents for GlusterFS processes
180Summary(pl.UTF-8): Agenci OCF do monitorowania procesów GlusterFS-a
181Group: Applications/System
182Requires: %{name}-server = %{version}-%{release}
183Requires: resource-agents
184
185%description resource-agents
186OCF Resource Agents for GlusterFS processes.
187
188%description resource-agents -l pl.UTF-8
189Agenci OCF do monitorowania procesów GlusterFS-a.
190
d6a0cdd1 191%prep
4d40ce33 192%setup -q
65d9dbc4 193%patch0 -p1
cfcff11b 194%patch1 -p1
cfcff11b 195
d6a0cdd1 196%build
4163e7ad
JB
197%{__libtoolize}
198%{__aclocal}
199%{__autoconf}
7813606f 200%{__autoheader}
4163e7ad 201%{__automake}
7813606f
JB
202#%{__python} gen-headers.py
203#%{__mv} gf-error-codes.h libglusterfs/src
1293e304 204%configure \
4d40ce33 205 --disable-silent-rules \
abcc847c 206 --enable-fusermount \
65d9dbc4
JB
207 %{!?with_ibverbs:--disable-ibverbs} \
208 --enable-systemtap%{!?with_systemtap:=no} \
209 --with-initdir=/etc/rc.d/init.d
cfcff11b 210
a53022f4 211%{__make} -j1
d6a0cdd1 212
213%install
214rm -rf $RPM_BUILD_ROOT
4d40ce33 215install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_var}/lib/glusterd}
824dab89 216
a53022f4 217%{__make} -j1 install \
d6a0cdd1 218 DESTDIR=$RPM_BUILD_ROOT
abcc847c 219
cfcff11b
MK
220# No idea why installs elsewhere than later expects to be
221mv $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterd.vol $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterfsd.vol
d6a0cdd1 222
5f2d10ee 223install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/glusterfsd
65d9dbc4
JB
224install -d $RPM_BUILD_ROOT%{systemdtmpfilesdir}
225cat >>$RPM_BUILD_ROOT%{systemdtmpfilesdir}/gluster.conf <<EOF
226d /var/run/gluster 0755 root root -
227EOF
5f2d10ee 228
4d40ce33
JB
229%{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*.la
230%{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*/*.la
231%{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*/*/*.la
7f75179c 232
5a0c6d94
JB
233%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/glusterfs/benchmarking
234%{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/python/syncdaemon/README.md
235
ba9a736a
JB
236%py_postclean
237
d6a0cdd1 238%clean
239rm -rf $RPM_BUILD_ROOT
240
65d9dbc4
JB
241%post libs -p /sbin/ldconfig
242%postun libs -p /sbin/ldconfig
d34394d5 243
11c9e8ee
MK
244%files common
245%defattr(644,root,root,755)
ba9a736a 246%doc ChangeLog NEWS README THANKS
3abbc79a 247%dir %{_sysconfdir}/%{name}
7813606f 248%attr(755,root,root) %{_sbindir}/glfsheal
abcc847c 249# NOTE: glusterfs is link to glusterfsd and is needed by client mount
dca0f35d
MK
250%attr(755,root,root) %{_sbindir}/glusterfs
251%attr(755,root,root) %{_sbindir}/glusterfsd
13bdb3c9 252
796930f1 253%dir %{_libdir}/glusterfs
4d40ce33
JB
254
255%dir %{_libdir}/glusterfs/%{version}
256%dir %{_libdir}/glusterfs/%{version}/auth
257%attr(755,root,root) %{_libdir}/glusterfs/%{version}/auth/addr.so
258%attr(755,root,root) %{_libdir}/glusterfs/%{version}/auth/login.so
259
260%dir %{_libdir}/glusterfs/%{version}/rpc-transport
261%attr(755,root,root) %{_libdir}/glusterfs/%{version}/rpc-transport/socket.so
262
263%dir %{_libdir}/glusterfs/%{version}/xlator
264%dir %{_libdir}/glusterfs/%{version}/xlator/cluster
265%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/cluster/*.so
266%dir %{_libdir}/glusterfs/%{version}/xlator/debug
267%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/debug/*.so
268%dir %{_libdir}/glusterfs/%{version}/xlator/encryption
ba9a736a 269%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/encryption/*.so*
4d40ce33 270%dir %{_libdir}/glusterfs/%{version}/xlator/features
ba9a736a
JB
271%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/features/*.so*
272%dir %{_libdir}/glusterfs/%{version}/xlator/features/glupy
273%{_libdir}/glusterfs/%{version}/xlator/features/glupy/*.py*
4d40ce33
JB
274%dir %{_libdir}/glusterfs/%{version}/xlator/mgmt
275%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mgmt/glusterd.so
276%dir %{_libdir}/glusterfs/%{version}/xlator/mount
65d9dbc4 277%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mount/api.so
4d40ce33
JB
278%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mount/fuse.so
279%dir %{_libdir}/glusterfs/%{version}/xlator/nfs
280%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/nfs/server.so
281%dir %{_libdir}/glusterfs/%{version}/xlator/performance
ba9a736a 282%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/performance/*.so*
4d40ce33
JB
283%dir %{_libdir}/glusterfs/%{version}/xlator/protocol
284%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/protocol/*.so
285%dir %{_libdir}/glusterfs/%{version}/xlator/storage
286%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/storage/*.so
287%dir %{_libdir}/glusterfs/%{version}/xlator/system
288%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/system/posix-acl.so
289%dir %{_libdir}/glusterfs/%{version}/xlator/testing
ba9a736a
JB
290%dir %{_libdir}/glusterfs/%{version}/xlator/testing/features
291%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/testing/features/*.so
4d40ce33
JB
292%dir %{_libdir}/glusterfs/%{version}/xlator/testing/performance
293%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/testing/performance/*.so
294
295%attr(755,root,root) %{_libdir}/glusterfs/gsyncd
ba9a736a
JB
296%attr(755,root,root) %{_libdir}/glusterfs/gverify.sh
297%attr(755,root,root) %{_libdir}/glusterfs/peer_add_secret_pub
298%attr(755,root,root) %{_libdir}/glusterfs/peer_gsec_create
4d40ce33
JB
299
300%dir %{_libdir}/glusterfs/python
301%dir %{_libdir}/glusterfs/python/syncdaemon
302# gsyncd.py is a script, the rest probably don't require *.py
303%{_libdir}/glusterfs/python/syncdaemon/*.py*
304
ba9a736a
JB
305%dir %{_datadir}/glusterfs
306%dir %{_datadir}/glusterfs/scripts
307%attr(755,root,root) %{_datadir}/glusterfs/scripts/generate-gfid-file.sh
308%attr(755,root,root) %{_datadir}/glusterfs/scripts/get-gfid.sh
309%attr(755,root,root) %{_datadir}/glusterfs/scripts/gsync-sync-gfid
310%attr(755,root,root) %{_datadir}/glusterfs/scripts/gsync-upgrade.sh
311%attr(755,root,root) %{_datadir}/glusterfs/scripts/post-upgrade-script-for-quota.sh
312%attr(755,root,root) %{_datadir}/glusterfs/scripts/pre-upgrade-script-for-quota.sh
313%attr(755,root,root) %{_datadir}/glusterfs/scripts/slave-upgrade.sh
314
65d9dbc4
JB
315%{_mandir}/man8/glusterfs.8*
316%{_mandir}/man8/glusterfsd.8*
cfcff11b 317%dir %{_var}/log/glusterfs
11c9e8ee 318
65d9dbc4
JB
319%files libs
320%defattr(644,root,root,755)
321%attr(755,root,root) %{_libdir}/libgfapi.so.*.*.*
322%attr(755,root,root) %ghost %{_libdir}/libgfapi.so.0
ba9a736a
JB
323%attr(755,root,root) %{_libdir}/libgfchangelog.so.*.*.*
324%attr(755,root,root) %ghost %{_libdir}/libgfchangelog.so.0
65d9dbc4
JB
325%attr(755,root,root) %{_libdir}/libgfrpc.so.*.*.*
326%attr(755,root,root) %ghost %{_libdir}/libgfrpc.so.0
327%attr(755,root,root) %{_libdir}/libgfxdr.so.*.*.*
328%attr(755,root,root) %ghost %{_libdir}/libgfxdr.so.0
329%attr(755,root,root) %{_libdir}/libglusterfs.so.*.*.*
330%attr(755,root,root) %ghost %{_libdir}/libglusterfs.so.0
331
4163e7ad
JB
332%files devel
333%defattr(644,root,root,755)
65d9dbc4 334%attr(755,root,root) %{_libdir}/libgfapi.so
ba9a736a 335%attr(755,root,root) %{_libdir}/libgfchangelog.so
37b19a82 336%attr(755,root,root) %{_libdir}/libgfrpc.so
37b19a82 337%attr(755,root,root) %{_libdir}/libgfxdr.so
65d9dbc4
JB
338%attr(755,root,root) %{_libdir}/libglusterfs.so
339%{_libdir}/libgfapi.la
ba9a736a 340%{_libdir}/libgfchangelog.la
65d9dbc4 341%{_libdir}/libgfrpc.la
37b19a82 342%{_libdir}/libgfxdr.la
65d9dbc4
JB
343%{_libdir}/libglusterfs.la
344%dir %{_includedir}/glusterfs
345%{_includedir}/glusterfs/api
ba9a736a 346%{_includedir}/glusterfs/gfchangelog
65d9dbc4 347%{_pkgconfigdir}/glusterfs-api.pc
ba9a736a
JB
348%{_pkgconfigdir}/libgfchangelog.pc
349
350%files -n python-gluster
351%defattr(644,root,root,755)
352%dir %{py_sitescriptdir}/gluster
353%{py_sitescriptdir}/gluster/*.py[co]
37b19a82 354
9891d861 355%if %{with ibverbs}
4163e7ad
JB
356%files transport-ibverbs
357%defattr(644,root,root,755)
4d40ce33 358%attr(755,root,root) %{_libdir}/glusterfs/%{version}/rpc-transport/rdma.so
9891d861 359%endif
4163e7ad 360
11c9e8ee
MK
361%files server
362%defattr(644,root,root,755)
cfcff11b 363%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/glusterfsd.vol
824dab89 364%attr(754,root,root) /etc/rc.d/init.d/glusterfsd
37b19a82 365%attr(755,root,root) %{_sbindir}/glusterd
65d9dbc4
JB
366%{systemdtmpfilesdir}/gluster.conf
367%{_mandir}/man8/glusterd.8*
4d40ce33 368%dir %{_var}/lib/glusterd
65d9dbc4 369%dir %{_var}/run/gluster
11c9e8ee 370
11c9e8ee
MK
371%files client
372%defattr(644,root,root,755)
cfcff11b 373%attr(755,root,root) %{_bindir}/fusermount-glusterfs
11c9e8ee 374%attr(755,root,root) /sbin/mount.glusterfs
37b19a82 375%attr(755,root,root) %{_sbindir}/gluster
4d40ce33 376%{_mandir}/man8/gluster.8*
65d9dbc4
JB
377%{_mandir}/man8/mount.glusterfs.8*
378
379%files resource-agents
380%defattr(644,root,root,755)
381%dir %{_prefix}/lib/ocf/resource.d/glusterfs
382%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/glusterfs/glusterd
383%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/glusterfs/volume
This page took 0.289491 seconds and 4 git commands to generate.