]> git.pld-linux.org Git - packages/ceph.git/blob - ceph.spec
- more docs, clarified License
[packages/ceph.git] / ceph.spec
1 #
2 # Conditional build:
3 %bcond_with     hadoop  # Hadoop client (requires JNI)
4 #
5 Summary:        User space components of the Ceph file system
6 Summary(pl.UTF-8):      Działające w przestrzeni użytkownika elementy systemu plików Ceph
7 Name:           ceph
8 Version:        0.52
9 Release:        1
10 License:        LGPL v2.1 (libraries), GPL v2 (some programs)
11 Group:          Base
12 Source0:        http://ceph.newdream.net/download/%{name}-%{version}.tar.bz2
13 # Source0-md5:  b3b9c8e7160d69cdf735628342a8dee0
14 Patch0:         %{name}-init-fix.patch
15 Patch1:         %{name}.logrotate.patch
16 Patch2:         %{name}-link.patch
17 URL:            http://ceph.newdream.net/
18 BuildRequires:  autoconf >= 2.59
19 BuildRequires:  automake
20 BuildRequires:  boost-devel >= 1.34
21 BuildRequires:  cryptopp-devel
22 BuildRequires:  curl-devel
23 BuildRequires:  expat-devel >= 1.95
24 BuildRequires:  fcgi-devel
25 BuildRequires:  gdbm-devel
26 %{?with_hadoop:BuildRequires:   jdk}
27 BuildRequires:  keyutils-devel
28 BuildRequires:  libaio-devel
29 BuildRequires:  libatomic_ops
30 BuildRequires:  libedit-devel >= 2.11
31 BuildRequires:  libfuse-devel
32 BuildRequires:  libltdl-devel
33 BuildRequires:  libstdc++-devel
34 BuildRequires:  libtcmalloc-devel
35 BuildRequires:  libtool >= 2:1.5
36 BuildRequires:  libuuid-devel
37 BuildRequires:  perl-base
38 BuildRequires:  pkgconfig
39 BuildRequires:  python >= 1:2.4
40 BuildRequires:  rpmbuild(macros) >= 1.228
41 BuildRequires:  sed >= 4.0
42 Requires(post,preun):   /sbin/chkconfig
43 Requires(preun):        rc-scripts
44 Requires:       %{name}-libs = %{version}-%{release}
45 Obsoletes:      gcephtool
46 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47
48 %define         skip_post_check_so      libcls_.*.so.*
49
50 %description
51 Ceph is a distributed network file system designed to provide
52 excellent performance, reliability, and scalability.
53
54 %description -l pl.UTF-8
55 Ceph to rozproszony sieciowy system plików zaprojektowany z myślą o
56 dobrej wydajności, wiarygodności i skalowalności.
57
58 %package libs
59 Summary:        Ceph shared libraries
60 Summary(pl.UTF-8):      Biblioteki współdzielone Cepha
61 Group:          Libraries
62
63 %description libs
64 Ceph shared libraries.
65
66 %description libs -l pl.UTF-8
67 Biblioteki współdzielone Cepha.
68
69 %package devel
70 Summary:        Ceph header files
71 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek Cepha
72 Group:          Development/Libraries
73 Requires:       %{name}-libs = %{version}-%{release}
74
75 %description devel
76 This package contains the headers needed to develop programs that use
77 Ceph.
78
79 %description devel -l pl.UTF-8
80 Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów
81 wykorzystujących Cepha.
82
83 %package static
84 Summary:        Ceph static libraries
85 Summary(pl.UTF-8):      Biblioteki statyczne Cepha
86 License:        LGPLv2
87 Group:          Development/Libraries
88 Requires:       %{name}-devel = %{version}-%{release}
89
90 %description static
91 This package contains static Ceph libraries.
92
93 %description static -l pl.UTF-8
94 Ten pakiet zawiera biblioteki statyczne Cepha.
95
96 %package -n python-ceph
97 Summary:        Ceph Python bindings
98 Summary(pl.UTF-8):      Wiązania Pythona do bibliotek Cepha
99 Group:          Development/Languages/Python
100 Requires:       %{name}-libs = %{version}-%{release}
101
102 %description -n python-ceph
103 Ceph Python bindings.
104
105 %description -n python-ceph -l pl.UTF-8
106 Wiązania Pythona do bibliotek Cepha.
107
108 %package fuse
109 Summary:        Ceph FUSE-based client
110 Summary(pl.UTF-8):      Klient Cepha oparty na FUSE
111 Group:          Base
112 Requires:       %{name} = %{version}-%{release}
113
114 %description fuse
115 FUSE based client for Ceph distributed network file system.
116
117 %description fuse -l pl.UTF-8
118 Oparty na FUSE klient rozproszonego sieciowego systemu plików Ceph.
119
120 %package radosgw
121 Summary:        rados REST gateway
122 Summary(pl.UTF-8):      Bramka REST-owa rados
123 Group:          Applications/System
124 #Requires:      apache-mod_fcgid
125
126 %description radosgw
127 radosgw is an S3 HTTP REST gateway for the RADOS object store. It is
128 implemented as a FastCGI module using libfcgi, and can be used in
129 conjunction with any FastCGI capable web server.
130
131 %description radosgw -l pl.UTF-8
132 radosgw to REST-owa bramka HTTP S3 do przechowalni obiektów RADOS.
133 Jest zaimplementowana jako moduł FastCGI wykorzystujący libfcgi i może
134 być używana w połączeniu z dowolnym serwerem WWW obsługującym FastCGI.
135
136 %package obsync
137 Summary:        Synchronize data between cloud object storage providers or a local directory
138 Summary(pl.UTF-8):      Synchronizacja danych między obiektami przechowywanymi w chmurze i katalogami lokalnymi
139 Group:          Applications/Networking
140 Requires:       python
141 Requires:       python-boto
142
143 %description obsync
144 obsync is a tool to synchronize objects between cloud object storage
145 providers, such as Amazon S3 (or compatible services), a Ceph RADOS
146 cluster, or a local directory.
147
148 %description obsync -l pl.UTF-8
149 obsync to narzędzie do synchronizacji obiektów między systemami
150 przechowującymi obiekty w chmurze, takimi jak Amazon S3 (lub serwisy
151 kompatybilne) a klastrem Ceph RADOS lub katalogiem lokalnym.
152
153 %prep
154 %setup -q
155 %patch0 -p1
156 %patch1 -p0
157 %patch2 -p1
158
159 %{__sed} -i -e '1s,/usr/bin/env python,/usr/bin/python,' src/obsync/obsync
160
161 %build
162 %{__libtoolize}
163 %{__aclocal}
164 %{__autoconf}
165 %{__autoheader}
166 %{__automake}
167 %configure \
168         --sbindir=/sbin \
169         --with-cryptopp \
170         --with-hadoop%{!?with_hadoop:=no} \
171         --with-radosgw \
172         --disable-silent-rules
173 # --with-ocf ?
174 # --with-system-leveldb (BR: libleveldb, snappy-devel)
175 # --with-system-libs3 (BR: libs3)
176
177 %{__make}
178
179 %install
180 rm -rf $RPM_BUILD_ROOT
181 install -d $RPM_BUILD_ROOT%{_localstatedir}/{lib/ceph/tmp,log/ceph/stat} \
182         $RPM_BUILD_ROOT%{_sysconfdir}/{ceph,bash_completion.d,logrotate.d,rc.d/init.d}
183 %{__make} install \
184         DESTDIR=$RPM_BUILD_ROOT
185
186 install -p src/init-ceph $RPM_BUILD_ROOT/etc/rc.d/init.d/ceph
187 install -p src/logrotate.conf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/ceph
188
189 %{__rm} $RPM_BUILD_ROOT%{_libdir}/rados-classes/*.{a,la}
190 %py_postclean
191
192 %clean
193 rm -rf $RPM_BUILD_ROOT
194
195 %post
196 /sbin/chkconfig --add ceph
197 %service ceph restart
198
199 %preun
200 if [ "$1" = "0" ] ; then
201         %service ceph stop
202         /sbin/chkconfig --del ceph
203 fi
204
205 %post   libs -p /sbin/ldconfig
206 %postun libs -p /sbin/ldconfig
207
208 %files
209 %defattr(644,root,root,755)
210 # COPYING specifies licenses of individual parts
211 %doc AUTHORS COPYING README src/sample.ceph.conf src/sample.fetch_config
212 %attr(754,root,root) /etc/rc.d/init.d/ceph
213 %dir %{_sysconfdir}/ceph
214 %attr(755,root,root) %{_bindir}/ceph
215 %attr(755,root,root) %{_bindir}/cephfs
216 %attr(755,root,root) %{_bindir}/ceph-conf
217 %attr(755,root,root) %{_bindir}/ceph-clsinfo
218 %attr(755,root,root) %{_bindir}/ceph-dencoder
219 %attr(755,root,root) %{_bindir}/crushtool
220 %attr(755,root,root) %{_bindir}/monmaptool
221 %attr(755,root,root) %{_bindir}/osdmaptool
222 %attr(755,root,root) %{_bindir}/ceph-authtool
223 %attr(755,root,root) %{_bindir}/ceph-syn
224 %attr(755,root,root) %{_bindir}/ceph-run
225 %attr(755,root,root) %{_bindir}/ceph-mon
226 %attr(755,root,root) %{_bindir}/ceph-mds
227 %attr(755,root,root) %{_bindir}/ceph-osd
228 %attr(755,root,root) %{_bindir}/ceph-rbdnamer
229 %attr(755,root,root) %{_bindir}/librados-config
230 %attr(755,root,root) %{_bindir}/rados
231 %attr(755,root,root) %{_bindir}/rbd
232 %attr(755,root,root) %{_bindir}/ceph-debugpack
233 %attr(755,root,root) %{_bindir}/ceph-coverage
234 %dir %{_libdir}/rados-classes
235 %attr(755,root,root) %{_libdir}/rados-classes/libcls_lock.so*
236 %attr(755,root,root) %{_libdir}/rados-classes/libcls_rbd.so*
237 %attr(755,root,root) %{_libdir}/rados-classes/libcls_rgw.so*
238 %attr(755,root,root) /sbin/ceph-disk-activate
239 %attr(755,root,root) /sbin/ceph-disk-prepare
240 %attr(755,root,root) /sbin/mkcephfs
241 %attr(755,root,root) /sbin/mount.ceph
242 %dir %{_libdir}/ceph
243 %attr(755,root,root) %{_libdir}/ceph/ceph_common.sh
244 %config(noreplace) /etc/logrotate.d/ceph
245 %config(noreplace) %{_sysconfdir}/bash_completion.d/rados
246 %config(noreplace) %{_sysconfdir}/bash_completion.d/ceph
247 %config(noreplace) %{_sysconfdir}/bash_completion.d/rbd
248 %{_mandir}/man8/ceph.8*
249 %{_mandir}/man8/ceph-authtool.8*
250 %{_mandir}/man8/ceph-clsinfo.8*
251 %{_mandir}/man8/ceph-conf.8*
252 %{_mandir}/man8/ceph-debugpack.8*
253 %{_mandir}/man8/ceph-dencoder.8*
254 %{_mandir}/man8/ceph-mds.8*
255 %{_mandir}/man8/ceph-mon.8*
256 %{_mandir}/man8/ceph-osd.8*
257 %{_mandir}/man8/ceph-rbdnamer.8*
258 %{_mandir}/man8/ceph-run.8*
259 %{_mandir}/man8/ceph-syn.8*
260 %{_mandir}/man8/cephfs.8*
261 %{_mandir}/man8/crushtool.8*
262 %{_mandir}/man8/librados-config.8*
263 %{_mandir}/man8/mkcephfs.8*
264 %{_mandir}/man8/monmaptool.8*
265 %{_mandir}/man8/mount.ceph.8*
266 %{_mandir}/man8/osdmaptool.8*
267 %{_mandir}/man8/rados.8*
268 %{_mandir}/man8/radosgw.8*
269 %{_mandir}/man8/radosgw-admin.8*
270 %{_mandir}/man8/rbd.8*
271
272 %dir %{_localstatedir}/lib/ceph
273 %dir %{_localstatedir}/lib/ceph/tmp
274 %dir %{_localstatedir}/log/ceph
275
276 %files libs
277 %defattr(644,root,root,755)
278 %attr(755,root,root) %{_libdir}/libcephfs.so.*.*.*
279 %attr(755,root,root) %ghost %{_libdir}/libcephfs.so.1
280 %attr(755,root,root) %{_libdir}/librados.so.*.*.*
281 %attr(755,root,root) %ghost %{_libdir}/librados.so.2
282 %attr(755,root,root) %{_libdir}/librbd.so.*.*.*
283 %attr(755,root,root) %ghost %{_libdir}/librbd.so.1
284
285 %files devel
286 %defattr(644,root,root,755)
287 %attr(755,root,root) %{_libdir}/libcephfs.so
288 %attr(755,root,root) %{_libdir}/librados.so
289 %attr(755,root,root) %{_libdir}/librbd.so
290 %{_libdir}/libcephfs.la
291 %{_libdir}/librados.la
292 %{_libdir}/librbd.la
293 %{_includedir}/cephfs
294 %{_includedir}/rados
295 %{_includedir}/rbd
296
297 %files static
298 %defattr(644,root,root,755)
299 %{_libdir}/libcephfs.a
300 %{_libdir}/librados.a
301 %{_libdir}/librbd.a
302
303 %files -n python-ceph
304 %defattr(644,root,root,755)
305 %{py_sitescriptdir}/rados.py[co]
306 %{py_sitescriptdir}/rbd.py[co]
307
308 %files fuse
309 %defattr(644,root,root,755)
310 %attr(755,root,root) %{_bindir}/ceph-fuse
311 %{_mandir}/man8/ceph-fuse.8*
312
313 %files radosgw
314 %defattr(644,root,root,755)
315 %attr(755,root,root) %{_bindir}/radosgw
316 %attr(755,root,root) %{_bindir}/radosgw-admin
317 %{_sysconfdir}/bash_completion.d/radosgw-admin
318
319 %files obsync
320 %defattr(644,root,root,755)
321 %attr(755,root,root) %{_bindir}/obsync
322 %attr(755,root,root) %{_bindir}/boto_tool
323 %{_mandir}/man1/obsync.1*
This page took 0.068123 seconds and 4 git commands to generate.