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