]>
Commit | Line | Data |
---|---|---|
cfcff11b | 1 | # TODO: Find pidfiles killproc --pidfile ${PIDFILE} -TERM |
abcc847c | 2 | # instead of kill -TERM ${PID} |
cfcff11b MK |
3 | # TODO: Check transport-ibverbs package and ibverbs bcond |
4 | # TODO: Add passing options from /etc/sysconfig/glusterfsd | |
5 | # to glusterfsd | |
4d40ce33 JB |
6 | # |
7 | # Conditional build: | |
4163e7ad | 8 | %bcond_without ibverbs # ib-verbs transport |
7f75179c | 9 | # |
d6a0cdd1 | 10 | Summary: Clustered File Storage that can scale to peta bytes |
dae7af53 | 11 | Summary(pl.UTF-8): Klastrowy system przechowywania plików skalujący się do petabajtów |
d6a0cdd1 | 12 | Name: glusterfs |
4d40ce33 | 13 | Version: 3.3.1 |
7b2c6d20 | 14 | Release: 1 |
4d40ce33 | 15 | License: LGPL v3+ or GPL v2 (libraries), GPL v3+ (programs) |
dae7af53 | 16 | Group: Applications/System |
4d40ce33 JB |
17 | Source0: http://download.gluster.org/pub/gluster/glusterfs/LATEST/glusterfs-%{version}.tar.gz |
18 | # Source0-md5: 4c9f291de887b1193d5d1acac4003360 | |
824dab89 | 19 | Source1: glusterfsd.init |
abcc847c | 20 | Patch0: %{name}-parallel-build.patch |
21 | Patch1: %{name}-workdir.patch | |
4d40ce33 | 22 | Patch2: %{name}-link.patch |
6c386b20 | 23 | URL: http://www.gluster.org/ |
4163e7ad JB |
24 | BuildRequires: autoconf >= 2.50 |
25 | BuildRequires: automake | |
d6a0cdd1 | 26 | BuildRequires: bison |
27 | BuildRequires: flex | |
4d40ce33 | 28 | BuildRequires: libaio-devel |
7f75179c JB |
29 | BuildRequires: libfuse-devel >= 2.6 |
30 | %{?with_ibverbs:BuildRequires: libibverbs-devel >= 1.0.4} | |
abcc847c | 31 | BuildRequires: libtool |
4d40ce33 JB |
32 | BuildRequires: libxml2-devel >= 1:2.6.19 |
33 | BuildRequires: openssl-devel | |
34 | BuildRequires: pkgconfig | |
35 | BuildRequires: python >= 1:2.4 | |
abcc847c | 36 | BuildRequires: readline-devel |
37 | BuildRequires: rpm-pythonprov | |
d6a0cdd1 | 38 | BuildRequires: rpmbuild(macros) >= 1.228 |
d6a0cdd1 | 39 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
40 | ||
41 | %description | |
42 | GlusterFS is a clustered file-system capable of scaling to several | |
43 | peta-bytes. It aggregates various storage bricks over Infiniband RDMA | |
44 | or TCP/IP interconnect into one large parallel network file system. | |
45 | GlusterFS is one of the most sophisticated file system in terms of | |
46 | features and extensibility. It borrows a powerful concept called | |
47 | Translators from GNU Hurd kernel. Much of the code in GlusterFS is in | |
48 | userspace and easily manageable. | |
49 | ||
dae7af53 JB |
50 | %description -l pl.UTF-8 |
51 | GlusterFS to klastrowy system plików skalujący się do petabajtów. | |
abcc847c | 52 | Scala różne kawałki miejsca po łączach Infiniband RDMA lub TCP/IP w |
53 | jeden duży, równoległy sieciowy system plików. GlusterFS to jeden z | |
54 | najbardziej wyszukanych systemów plików jeśli chodzi o możliwości i | |
55 | rozszerzalność. Zapożycza potężną ideę o nazwie Translators z jądra | |
56 | GNU Hurd. Duża część kodu GlusterFS działa w przestrzeni użytkownika i | |
57 | jest łatwo zarządzalna. | |
11c9e8ee MK |
58 | |
59 | %package common | |
60 | Summary: GlusterFS Library and Translators | |
5f2d10ee JB |
61 | Summary(pl.UTF-8): Biblioteka i translatory GlusterFS-a |
62 | Group: Libraries | |
4d40ce33 | 63 | Requires: libxml2 >= 1:2.6.19 |
11c9e8ee MK |
64 | |
65 | %description common | |
66 | GlusterFS is a clustered file-system capable of scaling to several | |
67 | peta-bytes. It aggregates various storage bricks over Infiniband RDMA | |
68 | or TCP/IP interconnect into one large parallel network file system. | |
69 | GlusterFS is one of the most sophisticated file system in terms of | |
70 | features and extensibility. It borrows a powerful concept called | |
71 | Translators from GNU Hurd kernel. Much of the code in GlusterFS is in | |
72 | userspace and easily manageable. | |
73 | ||
74 | This package includes libglusterfs and glusterfs translator modules | |
75 | common to both GlusterFS server and client framework. | |
76 | ||
77 | %description common -l pl.UTF-8 | |
5f2d10ee | 78 | GlusterFS to klastrowy system plików skalujący się do petabajtów. |
abcc847c | 79 | Scala różne kawałki miejsca po łączach Infiniband RDMA lub TCP/IP w |
80 | jeden duży, równoległy sieciowy system plików. GlusterFS to jeden z | |
81 | najbardziej wyszukanych systemów plików jeśli chodzi o możliwości i | |
82 | rozszerzalność. Zapożycza potężną ideę o nazwie Translators z jądra | |
83 | GNU Hurd. Duża część kodu GlusterFS działa w przestrzeni użytkownika i | |
84 | jest łatwo zarządzalna. | |
5f2d10ee JB |
85 | |
86 | Ten pakiet zawiera libglusterfs i moduły translatorów glusterfs | |
87 | wspólne dla klienta jak i serwera GlusterFS-a. | |
11c9e8ee | 88 | |
4163e7ad JB |
89 | %package devel |
90 | Summary: GlusterFS development files | |
91 | Summary(pl.UTF-8): Pliki programistyczne GlusterFS-a | |
92 | Group: Development/Libraries | |
93 | Requires: %{name}-common = %{version}-%{release} | |
4d40ce33 JB |
94 | # -lfl |
95 | Requires: flex | |
96 | Requires: openssl-devel | |
97 | Obsoletes: glusterfs-static | |
4163e7ad JB |
98 | |
99 | %description devel | |
100 | This package provides the development files for GlusterFS library. | |
101 | ||
102 | %description devel -l pl.UTF-8 | |
103 | Ten pakiet udostępnia pliki programistyczne biblioteki GlusterFS-a. | |
104 | ||
4163e7ad JB |
105 | %package transport-ibverbs |
106 | Summary: InfiniBand "verbs" transport plugins for GlusterFS | |
107 | Summary(pl.UTF-8): Wtyczki transportu "verbs" InfiniBand dla GlusterFS-a | |
108 | Group: Libraries | |
109 | Requires: %{name}-common = %{version}-%{release} | |
110 | Requires: libibverbs >= 1.0.4 | |
111 | ||
112 | %description transport-ibverbs | |
113 | InfiniBand "verbs" transport plugins for GlusterFS. | |
114 | ||
115 | %description transport-ibverbs -l pl.UTF-8 | |
116 | Wtyczki transportu "verbs" InfiniBand dla GlusterFS-a. | |
117 | ||
11c9e8ee MK |
118 | %package server |
119 | Summary: GlusterFS Server | |
5f2d10ee JB |
120 | Summary(pl.UTF-8): Serwer GlusterFS-a |
121 | Group: Daemons | |
6c386b20 | 122 | Requires: %{name}-client = %{version}-%{release} |
5f2d10ee JB |
123 | Requires: %{name}-common = %{version}-%{release} |
124 | Requires(post,preun): /sbin/chkconfig | |
125 | Requires: rc-scripts | |
11c9e8ee MK |
126 | |
127 | %description server | |
11c9e8ee MK |
128 | This package provides the glusterfs server daemon. |
129 | ||
130 | %description server -l pl.UTF-8 | |
5f2d10ee | 131 | Ten pakiet zawiera część serwerową GlusterFS-a. |
11c9e8ee MK |
132 | |
133 | %package client | |
134 | Summary: GlusterFS Client | |
5f2d10ee | 135 | Summary(pl.UTF-8): Klient GlusterFS |
11c9e8ee | 136 | Group: Applications/System |
5f2d10ee | 137 | Requires: %{name}-common = %{version}-%{release} |
7f75179c | 138 | Requires: libfuse >= 2.6 |
11c9e8ee MK |
139 | |
140 | %description client | |
11c9e8ee MK |
141 | This package provides the FUSE based GlusterFS client. |
142 | ||
143 | %description client -l pl.UTF-8 | |
5f2d10ee | 144 | Ten pakiet udostępnia opartego na FUSE klienta GlusterFS-a. |
11c9e8ee | 145 | |
d6a0cdd1 | 146 | %prep |
4d40ce33 | 147 | %setup -q |
cfcff11b MK |
148 | %patch0 -p0 |
149 | %patch1 -p1 | |
4d40ce33 JB |
150 | %patch2 -p1 |
151 | find xlators rpc -name Makefile.am | xargs %{__sed} -i -e 's|-avoidversion|-avoid-version|g' | |
cfcff11b | 152 | |
d6a0cdd1 | 153 | %build |
4163e7ad JB |
154 | %{__libtoolize} |
155 | %{__aclocal} | |
156 | %{__autoconf} | |
157 | %{__automake} | |
1293e304 | 158 | %configure \ |
4d40ce33 | 159 | --disable-silent-rules \ |
abcc847c | 160 | --enable-fusermount \ |
7f75179c | 161 | %{!?with_ibverbs:--disable-ibverbs} |
cfcff11b | 162 | |
4d40ce33 | 163 | %{__make} |
d6a0cdd1 | 164 | |
165 | %install | |
166 | rm -rf $RPM_BUILD_ROOT | |
4d40ce33 | 167 | install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_var}/lib/glusterd} |
824dab89 | 168 | |
d6a0cdd1 | 169 | %{__make} install \ |
170 | DESTDIR=$RPM_BUILD_ROOT | |
abcc847c | 171 | |
cfcff11b MK |
172 | # No idea why installs elsewhere than later expects to be |
173 | mv $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterd.vol $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterfsd.vol | |
d6a0cdd1 | 174 | |
5f2d10ee JB |
175 | install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/glusterfsd |
176 | ||
4d40ce33 JB |
177 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*.la |
178 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*/*.la | |
179 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*/*/*.la | |
7f75179c | 180 | |
d6a0cdd1 | 181 | %clean |
182 | rm -rf $RPM_BUILD_ROOT | |
183 | ||
d34394d5 | 184 | %post common -p /sbin/ldconfig |
185 | %postun common -p /sbin/ldconfig | |
186 | ||
11c9e8ee MK |
187 | %files common |
188 | %defattr(644,root,root,755) | |
4d40ce33 | 189 | %doc ChangeLog NEWS README THANKS doc/*.vol.sample |
3abbc79a | 190 | %dir %{_sysconfdir}/%{name} |
37b19a82 MK |
191 | %attr(755,root,root) %{_libdir}/libgfrpc.so.*.*.* |
192 | %attr(755,root,root) %ghost %{_libdir}/libgfrpc.so.0 | |
193 | %attr(755,root,root) %{_libdir}/libgfxdr.so.*.*.* | |
194 | %attr(755,root,root) %ghost %{_libdir}/libgfxdr.so.0 | |
4163e7ad JB |
195 | %attr(755,root,root) %{_libdir}/libglusterfs.so.*.*.* |
196 | %attr(755,root,root) %ghost %{_libdir}/libglusterfs.so.0 | |
abcc847c | 197 | # NOTE: glusterfs is link to glusterfsd and is needed by client mount |
dca0f35d MK |
198 | %attr(755,root,root) %{_sbindir}/glusterfs |
199 | %attr(755,root,root) %{_sbindir}/glusterfsd | |
13bdb3c9 | 200 | |
796930f1 | 201 | %dir %{_libdir}/glusterfs |
4d40ce33 JB |
202 | |
203 | %dir %{_libdir}/glusterfs/%{version} | |
204 | %dir %{_libdir}/glusterfs/%{version}/auth | |
205 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/auth/addr.so | |
206 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/auth/login.so | |
207 | ||
208 | %dir %{_libdir}/glusterfs/%{version}/rpc-transport | |
209 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/rpc-transport/socket.so | |
210 | ||
211 | %dir %{_libdir}/glusterfs/%{version}/xlator | |
212 | %dir %{_libdir}/glusterfs/%{version}/xlator/cluster | |
213 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/cluster/*.so | |
214 | %dir %{_libdir}/glusterfs/%{version}/xlator/debug | |
215 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/debug/*.so | |
216 | %dir %{_libdir}/glusterfs/%{version}/xlator/encryption | |
217 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/encryption/*.so | |
218 | %dir %{_libdir}/glusterfs/%{version}/xlator/features | |
219 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/features/*.so | |
220 | %dir %{_libdir}/glusterfs/%{version}/xlator/mount | |
221 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mount/fuse.so | |
222 | %dir %{_libdir}/glusterfs/%{version}/xlator/mgmt | |
223 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mgmt/glusterd.so | |
224 | %dir %{_libdir}/glusterfs/%{version}/xlator/mount | |
225 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mount/fuse.so | |
226 | %dir %{_libdir}/glusterfs/%{version}/xlator/nfs | |
227 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/nfs/server.so | |
228 | %dir %{_libdir}/glusterfs/%{version}/xlator/performance | |
229 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/performance/*.so | |
230 | %dir %{_libdir}/glusterfs/%{version}/xlator/protocol | |
231 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/protocol/*.so | |
232 | %dir %{_libdir}/glusterfs/%{version}/xlator/storage | |
233 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/storage/*.so | |
234 | %dir %{_libdir}/glusterfs/%{version}/xlator/system | |
235 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/system/posix-acl.so | |
236 | %dir %{_libdir}/glusterfs/%{version}/xlator/testing | |
237 | %dir %{_libdir}/glusterfs/%{version}/xlator/testing/performance | |
238 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/testing/performance/*.so | |
239 | ||
240 | %attr(755,root,root) %{_libdir}/glusterfs/gsyncd | |
241 | ||
242 | %dir %{_libdir}/glusterfs/python | |
243 | %dir %{_libdir}/glusterfs/python/syncdaemon | |
244 | # gsyncd.py is a script, the rest probably don't require *.py | |
245 | %{_libdir}/glusterfs/python/syncdaemon/*.py* | |
246 | ||
247 | # disabled in sources | |
248 | #%{_mandir}/man8/glusterfs.8* | |
249 | #%{_mandir}/man8/glusterfsd.8* | |
cfcff11b | 250 | %dir %{_var}/log/glusterfs |
11c9e8ee | 251 | |
4163e7ad JB |
252 | %files devel |
253 | %defattr(644,root,root,755) | |
254 | %attr(755,root,root) %{_libdir}/libglusterfs.so | |
255 | %{_libdir}/libglusterfs.la | |
37b19a82 MK |
256 | %attr(755,root,root) %{_libdir}/libgfrpc.so |
257 | %{_libdir}/libgfrpc.la | |
37b19a82 MK |
258 | %attr(755,root,root) %{_libdir}/libgfxdr.so |
259 | %{_libdir}/libgfxdr.la | |
260 | ||
9891d861 | 261 | %if %{with ibverbs} |
4163e7ad JB |
262 | %files transport-ibverbs |
263 | %defattr(644,root,root,755) | |
4d40ce33 | 264 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/rpc-transport/rdma.so |
9891d861 | 265 | %endif |
4163e7ad | 266 | |
11c9e8ee MK |
267 | %files server |
268 | %defattr(644,root,root,755) | |
cfcff11b | 269 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/glusterfsd.vol |
824dab89 | 270 | %attr(754,root,root) /etc/rc.d/init.d/glusterfsd |
37b19a82 | 271 | %attr(755,root,root) %{_sbindir}/glusterd |
4d40ce33 JB |
272 | # disabled in sources |
273 | #%{_mandir}/man8/glusterd.8* | |
274 | %dir %{_var}/lib/glusterd | |
11c9e8ee | 275 | |
11c9e8ee MK |
276 | %files client |
277 | %defattr(644,root,root,755) | |
cfcff11b | 278 | %attr(755,root,root) %{_bindir}/fusermount-glusterfs |
11c9e8ee | 279 | %attr(755,root,root) /sbin/mount.glusterfs |
37b19a82 | 280 | %attr(755,root,root) %{_sbindir}/gluster |
4d40ce33 JB |
281 | %{_mandir}/man8/gluster.8* |
282 | # disabled in sources | |
283 | #%{_mandir}/man8/mount.glusterfs.8* |