]> git.pld-linux.org Git - packages/ceph.git/blame - ceph.spec
- added system-xsimd patch from Fedora; updated some dependencies
[packages/ceph.git] / ceph.spec
CommitLineData
b6163d67 1# TODO:
674529cb 2# - system arrow, parquet (WITH_SYSTEM_ARROW=ON, arrow>=4, parquet>=4)?
682d6dd5 3# - brotli? (WITH_BROTLI=ON, uses internal brotli as downloaded subproject)
737284c4 4# - proper init scripts if non-systemd boot is to be supported
bbcdc7ce
JB
5# (upstream scripts seem overcomplicated and hardly useful)
6# - run as non-root user
f7926bf0
JB
7# - build selinux policy (-DWITH_SELINUX=ON)
8# - package sphinx docs (from doc/)
b6163d67 9#
19c20e80
JR
10# Note on versioning: http://docs.ceph.com/docs/master/releases/
11#
714b93ed 12# Conditional build:
7f577810 13%bcond_without java # Java binding
f7926bf0 14%bcond_with angular # Angular-based mgr/dashboard frontend (built using npm, too outdated currently)
32e4d0ff 15%bcond_without bluefs # BlueFS library
d8321c07 16%bcond_with dpdk # DPDK messaging
737284c4
JB
17# 15.2.x/16.2.x build fails with:
18# src/rgw/rgw_fcgi_process.cc:92:53: error: 'class rgw::sal::RGWRadosStore' has no member named 'get_new_req_id'
d5cae1aa 19%bcond_with fcgi # RADOS Gateway FCGI frontend
737284c4 20%bcond_with fio # FIO engines support (16.x: downloads fio as internal subproject)
682d6dd5 21%bcond_with kerberos # GSSAPI/KRB5 support
1b11728e 22%bcond_without pmem # PMDK (persistent memory) support
32e4d0ff
JB
23%bcond_without qat # QAT driver
24%bcond_without qatzip # QATZIP
682d6dd5 25%bcond_without rdma # RDMA transport support
6d7dd22f 26%bcond_with seastar # seastar components (64-bit pointers required)
1b11728e
JB
27%bcond_with spdk # Ceph SPDK support (DPDK based)
28%bcond_without system_rocksdb # system RocksDB storage support
32e4d0ff 29%bcond_without zbd # ZBD bluestore backend
737284c4 30# 15.2.x/16.2.x: "fallthrough" define from OpenZFS's spl breaks "[[fallthrough]]" in src/include/blobhash.h
d5cae1aa 31%bcond_with zfs # ZFS support [not ready for zfs 0.8.x]
7f577810
JB
32%bcond_without lttng # LTTng tracing
33%bcond_without babeltrace # Babeltrace traces support
34%bcond_without tcmalloc # tcmalloc allocator
c37aec31 35%bcond_with tests # build tests
6fce7056
JR
36
37%ifarch x32
38%undefine with_tcmalloc
39%endif
1b11728e
JB
40%ifnarch %{x8664} aarch64
41%undefine with_pmem
42%endif
32e4d0ff
JB
43%ifnarch %{x8664} aarch64 mips64 ppc64 sparc64 s390x
44%undefine with_seastar
45%endif
714b93ed 46#
2a1a6301 47Summary: User space components of the Ceph file system
e5fc70df 48Summary(pl.UTF-8): Działające w przestrzeni użytkownika elementy systemu plików Ceph
2a1a6301 49Name: ceph
dc8b799e 50Version: 17.2.3
2b3ddb3f 51Release: 1
9e1f65de 52License: LGPL v2.1 (libraries), GPL v2 (some programs)
2a1a6301 53Group: Base
4447516f 54Source0: http://download.ceph.com/tarballs/%{name}-%{version}.tar.gz
dc8b799e 55# Source0-md5: 96f10fa942ec0db4008993cddaec88ec
b6163d67 56Source1: ceph.sysconfig
bbcdc7ce 57Source3: ceph.tmpfiles
f8bb146f 58Patch0: %{name}-python.patch
737284c4 59Patch1: %{name}-fio.patch
f8f6a16f
JB
60Patch2: %{name}-cmake-static.patch
61Patch3: %{name}-arrow-pld.patch
f8bb146f 62Patch4: no-virtualenvs.patch
32e4d0ff 63Patch5: %{name}-libdir.patch
c8d4a223 64Patch6: types.patch
bbe36688
JR
65Patch7: use-provided-cpu-flag-values.patch
66Patch8: ix86-no-asm.patch
67Patch9: long-int-time_t.patch
32e4d0ff 68Patch10: %{name}-qat.patch
682d6dd5 69Patch11: %{name}-liburing.patch
cc053f74
JB
70Patch12: %{name}-glibc.patch
71Patch13: %{name}-libfmt.patch
c5b31b08 72Patch14: %{name}-system-rocksdb.patch
a74f78a4
JB
73# https://src.fedoraproject.org/rpms/ceph/blob/rawhide/f/0017-gcc-12-omnibus.patch
74Patch15: %{name}-gcc12.patch
674529cb
JB
75# https://src.fedoraproject.org/rpms/ceph/blob/rawhide/f/0020-src-arrow-cpp-cmake_modules-ThirdpartyToolchain.cmake.patch
76Patch16: %{name}-system-xsimd.patch
e3919159 77URL: https://ceph.io/
32e4d0ff 78%{?with_qatzip:BuildRequires: QATzip-devel}
7f577810 79%{?with_babeltrace:BuildRequires: babeltrace-devel}
674529cb
JB
80BuildRequires: boost-devel >= 1.73
81BuildRequires: boost-python3-devel >= 1.73
32e4d0ff 82%{?with_seastar:BuildRequires: c-ares-devel >= 1.13.0}
d5cae1aa 83BuildRequires: cmake >= 3.22.2
32e4d0ff 84%{?with_seastar:BuildRequires: cryptopp-devel >= 5.6.5}
682d6dd5 85BuildRequires: cryptsetup-devel >= 2.0.5
2a1a6301 86BuildRequires: curl-devel
cc053f74
JB
87%if %{with dpdk} || %{with spdk}
88# also seastar with dpdk support
1b11728e
JB
89BuildRequires: dpdk-devel
90%endif
682d6dd5 91BuildRequires: doxygen
714b93ed 92BuildRequires: expat-devel >= 1.95
1b11728e 93%{?with_fcgi:BuildRequires: fcgi-devel}
682d6dd5 94%{?with_fio:BuildRequires: fio-devel >= 3.15}
2a1a6301 95BuildRequires: gdbm-devel
32e4d0ff 96%{?with_seastar:BuildRequires: gnutls-devel >= 3.3.26}
d8321c07 97BuildRequires: gperf
682d6dd5
JB
98%{?with_tcmalloc:BuildRequires: gperftools-devel >= 2.6.2}
99%{?with_kerberos:BuildRequires: heimdal-devel}
32e4d0ff 100%{?with_seastar:BuildRequires: hwloc-devel >= 1.11.2}
7db8c214 101%if %{with java}
4f42482b 102BuildRequires: jdk
b5d07312 103BuildRequires: jre-X11
4f42482b 104%endif
2a1a6301 105BuildRequires: keyutils-devel
b44a3efd 106BuildRequires: leveldb-devel >= 1.23-2
714b93ed 107BuildRequires: libaio-devel
2a1a6301 108BuildRequires: libatomic_ops
548e0d3f 109BuildRequires: libblkid-devel >= 2.17
682d6dd5 110BuildRequires: libcap-ng-devel
714b93ed 111BuildRequires: libedit-devel >= 2.11
682d6dd5
JB
112BuildRequires: libfmt-devel >= 6.0.0
113BuildRequires: libfuse3-devel >= 3
114%{?with_rdma:BuildRequires: libibverbs-devel}
115BuildRequires: libicu-devel >= 52.0
2a1a6301 116BuildRequires: libltdl-devel
682d6dd5
JB
117BuildRequires: libnl-devel >= 3.2
118BuildRequires: librdkafka-devel >= 0.9.2
119%{?with_rdma:BuildRequires: librdmacm-devel}
32e4d0ff 120%{?with_seastar:BuildRequires: libsctp-devel}
682d6dd5
JB
121BuildRequires: libstdc++-devel >= 6:7
122%{?with_tcmalloc:BuildRequires: libtcmalloc-devel >= 2.6.2}
714b93ed 123BuildRequires: libtool >= 2:1.5
682d6dd5 124BuildRequires: liburing-devel
674529cb 125BuildRequires: libutf8proc-devel >= 2.2.0
2a1a6301 126BuildRequires: libuuid-devel
bbcdc7ce 127BuildRequires: libxml2-devel >= 2.0
32e4d0ff 128%{?with_zbd:BuildRequires: libzbd-devel}
7f577810 129%{?with_lttng:BuildRequires: lttng-ust-devel}
682d6dd5 130BuildRequires: lua-devel >= 5.3
32e4d0ff 131BuildRequires: lz4-devel >= 1:1.7.3
682d6dd5 132BuildRequires: ncurses-devel
f7926bf0 133%{?with_angular:BuildRequires: npm}
d8321c07
JB
134BuildRequires: nspr-devel >= 4
135BuildRequires: nss-devel >= 3
32e4d0ff 136%{?with_seastar:BuildRequires: numactl-devel}
d5cae1aa 137BuildRequires: oath-toolkit-devel
bbcdc7ce 138BuildRequires: openldap-devel
682d6dd5 139BuildRequires: openssl-devel >= 1.1
e5fc70df 140BuildRequires: perl-base
2a1a6301 141BuildRequires: pkgconfig
f8f6a16f 142%{?with_pmem:BuildRequires: pmdk-devel >= 1.10.0}
62624566 143BuildRequires: python3 >= 1:3.2
dc8b799e
JB
144BuildRequires: python3-Cython
145BuildRequires: python3-PyYAML
62624566 146BuildRequires: python3-devel >= 1:3.2
682d6dd5 147%{?with_tests:BuildRequires: python3-tox >= 2.9.1}
682d6dd5 148BuildRequires: rabbitmq-c-devel
32e4d0ff 149%{?with_seastar:BuildRequires: ragel >= 6.10}
6b8625f1 150%{?with_system_rocksdb:BuildRequires: rocksdb-devel >= 5.14}
bef2a0ad 151BuildRequires: rpmbuild(macros) >= 1.671
32e4d0ff 152%{?with_qat:BuildRequires: qatlib-devel}
e3919159 153BuildRequires: sed >= 4.0
f965be58 154BuildRequires: snappy-devel
2b3ddb3f 155BuildRequires: sphinx-pdg >= 4.4.0
682d6dd5 156BuildRequires: sqlite3-devel >= 3
dc8b799e
JB
157# >= 0.13.0 wanted, but seems to build with 0.11.0
158BuildRequires: thrift-devel
548e0d3f 159BuildRequires: udev-devel
b1fa8ffe 160%{?with_dpdk:BuildRequires: xorg-lib-libpciaccess-devel}
fa260b6c 161BuildRequires: xfsprogs-devel
674529cb 162BuildRequires: xsimd-devel
32e4d0ff 163%{?with_seastar:BuildRequires: yaml-cpp-devel >= 0.5.1}
7db8c214
JB
164%ifarch %{x8664}
165BuildRequires: yasm
166%endif
101b8bdd 167%{?with_zfs:BuildRequires: zfs-devel >= 0.8.0}
bbcdc7ce 168BuildRequires: zlib-devel
d8321c07 169BuildRequires: zstd-devel >= 1.4.4
2a1a6301
JR
170Requires(post,preun): /sbin/chkconfig
171Requires(preun): rc-scripts
172Requires: %{name}-libs = %{version}-%{release}
32e4d0ff 173Requires: lz4 >= 1:1.7.3
d5cae1aa 174Requires: python3-%{name} = %{version}-%{release}
6b8625f1 175%{?with_system_rocksdb:Requires: rocksdb >= 5.14}
bef2a0ad 176Requires: systemd-units >= 38
d8321c07 177Requires: zstd >= 1.4.4
c89c1ad8
JB
178Obsoletes: gcephtool < 0.51
179Obsoletes: hadoop-cephfs < 0.71
2a1a6301
JR
180BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
181
cc053f74 182%define skip_post_check_so libceph_crypto_isal.so.* libceph_crypto_qat.so.* libceph_lz4.so.* libceph_snappy.so.* libceph_zlib.so.* libceph_zstd.so.* libcls_.*.so.* libec_.*.so.*
2a1a6301
JR
183
184%description
185Ceph is a distributed network file system designed to provide
186excellent performance, reliability, and scalability.
187
e5fc70df
JB
188%description -l pl.UTF-8
189Ceph to rozproszony sieciowy system plików zaprojektowany z myślą o
190dobrej wydajności, wiarygodności i skalowalności.
191
2a1a6301
JR
192%package libs
193Summary: Ceph shared libraries
e5fc70df 194Summary(pl.UTF-8): Biblioteki współdzielone Cepha
2a1a6301 195Group: Libraries
737284c4 196Requires: libfmt >= 6.0.0
6b8625f1 197Requires: librdkafka >= 0.9.2
d8321c07 198Requires: openssl >= 1.1
2a1a6301
JR
199
200%description libs
201Ceph shared libraries.
202
e5fc70df
JB
203%description libs -l pl.UTF-8
204Biblioteki współdzielone Cepha.
2a1a6301
JR
205
206%package devel
e5fc70df
JB
207Summary: Ceph header files
208Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Cepha
96c29907 209License: LGPL v2.1
2a1a6301
JR
210Group: Development/Libraries
211Requires: %{name}-libs = %{version}-%{release}
674529cb 212Requires: boost-devel >= 1.73
bbcdc7ce 213Requires: curl-devel
6b8625f1 214Requires: expat-devel >= 1.95
bbcdc7ce
JB
215Requires: fcgi-devel
216Requires: nss-devel >= 3
b44a3efd 217Requires: leveldb-devel >= 1.23-2
96c29907 218Requires: libatomic_ops
bbcdc7ce 219Requires: libblkid-devel >= 2.17
682d6dd5 220Requires: libstdc++-devel >= 6:7
96c29907 221Requires: libuuid-devel
bbcdc7ce
JB
222%{?with_lttng:Requires: lttng-ust-devel}
223Requires: openldap-devel
1b11728e 224Obsoletes: ceph-static < 12
2a1a6301
JR
225
226%description devel
227This package contains the headers needed to develop programs that use
228Ceph.
229
e5fc70df
JB
230%description devel -l pl.UTF-8
231Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów
232wykorzystujących Cepha.
233
1b11728e
JB
234%package -n python3-ceph
235Summary: Ceph Python 3 bindings
236Summary(pl.UTF-8): Wiązania Pythona 3 do bibliotek Cepha
237Group: Development/Languages/Python
238Requires: %{name}-libs = %{version}-%{release}
6b8625f1 239Obsoletes: python-ceph < 15
1b11728e
JB
240
241%description -n python3-ceph
242Ceph Python 3 bindings.
243
244%description -n python3-ceph -l pl.UTF-8
245Wiązania Pythona 3 do bibliotek Cepha.
e5fc70df 246
4f42482b
JB
247%package -n java-cephfs
248Summary: CephFS Java bindings
249Summary(pl.UTF-8): Wiązania Javy do biblioteki CephFS
250Group: Libraries/Java
251Requires: %{name}-libs = %{version}-%{release}
252
253%description -n java-cephfs
254CephFS Java bindings.
255
256%description -n java-cephfs -l pl.UTF-8
257Wiązania Javy do biblioteki CephFS.
258
e5fc70df
JB
259%package fuse
260Summary: Ceph FUSE-based client
261Summary(pl.UTF-8): Klient Cepha oparty na FUSE
262Group: Base
263Requires: %{name} = %{version}-%{release}
264
265%description fuse
266FUSE based client for Ceph distributed network file system.
267
268%description fuse -l pl.UTF-8
269Oparty na FUSE klient rozproszonego sieciowego systemu plików Ceph.
270
2a1a6301
JR
271%package radosgw
272Summary: rados REST gateway
e5fc70df
JB
273Summary(pl.UTF-8): Bramka REST-owa rados
274Group: Applications/System
2a1a6301
JR
275#Requires: apache-mod_fcgid
276
277%description radosgw
278radosgw is an S3 HTTP REST gateway for the RADOS object store. It is
279implemented as a FastCGI module using libfcgi, and can be used in
280conjunction with any FastCGI capable web server.
281
e5fc70df
JB
282%description radosgw -l pl.UTF-8
283radosgw to REST-owa bramka HTTP S3 do przechowalni obiektów RADOS.
284Jest zaimplementowana jako moduł FastCGI wykorzystujący libfcgi i może
285być używana w połączeniu z dowolnym serwerem WWW obsługującym FastCGI.
286
245cb856 287%package resource-agents
8029515d
JB
288Summary: OCF Resource Agents for Ceph processes
289Summary(pl.UTF-8): Agenci OCF do monitorowania procesów Cepha
290Group: Applications/System
291Requires: %{name} = %{version}-%{release}
292Requires: resource-agents
293
245cb856 294%description resource-agents
8029515d
JB
295OCF Resource Agents for Ceph processes.
296
245cb856 297%description resource-agents -l pl.UTF-8
8029515d
JB
298Agenci OCF do monitorowania procesów Cepha.
299
9911b50d
JP
300%package test
301Summary: Ceph benchmarks and test tools
302Summary(pl.UTF-8): Narzędzia testowe oraz do mierzenia wydajności dla Ceph
303Group: Applications/System
304Requires: %{name} = %{version}-%{release}
305
306%description test
307Ceph benchmarks and test tools.
308
309%description test -l pl.UTF-8
310Narzędzia testowe oraz do mierzenia wydajności dla Ceph.
311
79dc5cad
JB
312%package -n fio-ceph-objectstore
313Summary: FIO engine module for Ceph ObjectStore
314Summary(pl.UTF-8): Moduł silnika FIO do używania Ceph ObjectStore
315Group: Libraries
316Requires: %{name}-libs = %{version}-%{release}
101b8bdd 317%if %{with fio}
79dc5cad 318%requires_ge_to fio fio-devel
101b8bdd 319%endif
79dc5cad
JB
320
321%description -n fio-ceph-objectstore
322This FIO engine allows you to mount and use a ceph object store
323directly, without having to build a ceph cluster or start any daemons.
324
325%description -n fio-ceph-objectstore -l pl.UTF-8
326Ten silnik FIO pozwala na bezpośrednie montowanie i używanie
327przestrzeni obiektów ceph, bez potrzeby budowania klastra ceph czy
328uruchamiania demonów.
329
2a1a6301
JR
330%prep
331%setup -q
332%patch0 -p1
737284c4 333%patch1 -p1
f8bb146f
JR
334%patch2 -p1
335%patch3 -p1
336%patch4 -p1
32e4d0ff 337%patch5 -p1
c8d4a223 338%patch6 -p1
c8d4a223 339%patch7 -p1
bbe36688 340%patch8 -p1
9d79249d 341%ifarch %{ix86}
bbe36688 342%patch9 -p1
9d79249d 343%endif
32e4d0ff 344%patch10 -p1
682d6dd5 345%patch11 -p1
cc053f74
JB
346%patch12 -p1
347%patch13 -p1
c5b31b08 348%patch14 -p1
a74f78a4 349%patch15 -p1
674529cb 350%patch16 -p1
e3919159 351
f7926bf0 352%{__sed} -i -e '1s,/usr/bin/env bash,/bin/bash,' \
d8321c07
JB
353 src/{ceph-post-file.in,rbd-replay-many,rbdmap} \
354 src/rgw/rgw-{gap,orphan}-list
f7926bf0 355
737284c4 356%{__sed} -i -e '1s,/usr/bin/awk,/bin/awk,' \
370f7446
JR
357 src/rgw/rgw-gap-list-comparator
358
f7926bf0
JB
359%if %{with angular}
360# stub virtualenv with npm for src/pybind/mgr/dashboard bootstrapping
361install -d build/src/pybind/mgr/dashboard/node-env/bin
362ln -sf /usr/bin/npm build/src/pybind/mgr/dashboard/node-env/bin/npm
363cat >build/src/pybind/mgr/dashboard/node-env/bin/activate <<EOF
364deactivate() {
365 unset -f deactivate
366}
367EOF
f7926bf0
JB
368%endif
369
2a1a6301 370%build
1b11728e
JB
371install -d build
372cd build
373%cmake .. \
bbe36688
JR
374%ifarch %{x8664} %{ix86} x32
375 -DHAVE_INTEL_SSE=1 \
376%endif
377%ifarch %{x8664} x32
378 -DHAVE_INTEL_SSE2=1 \
379 -DHAVE_INTEL_SSE3=1 \
380 -DHAVE_INTEL_SSSE3=1 \
381 -DHAVE_INTEL_PCLMUL=1 \
382 -DHAVE_INTEL_SSE4_1=1 \
383 -DHAVE_INTEL_SSE4_2=1 \
384%endif
1b11728e
JB
385 -DALLOCATOR="%{?with_tcmalloc:tcmalloc}%{!?with_tcmalloc:libc}" \
386 -DFIO_INCLUDE_DIR=/usr/include/fio \
737284c4 387 %{?with_java:-DJAVA_HOME:PATH=%{java_home}} \
d9328226 388 -DLUA_INCLUDE_DIR=%{_includedir}/lua \
d5cae1aa 389 -DPYTHON=%{__python3} \
f8bb146f 390 -DSPHINX_BUILD=/usr/bin/sphinx-build \
1b11728e 391 %{!?with_babeltrace:-DWITH_BABELTRACE=OFF} \
32e4d0ff 392 %{?with_bluefs:-DWITH_BLUEFS=ON} \
720615cf
JR
393%if %{with pmem}
394 -DWITH_BLUESTORE_PMEM=ON \
395 -DWITH_SYSTEM_PMDK:BOOL=ON \
396%endif
1b11728e
JB
397 %{?with_java:-DWITH_CEPHFS_JAVA=ON} \
398 %{?with_dpdk:-DWITH_DPDK=ON} \
399 %{?with_fio:-DWITH_FIO=ON} \
682d6dd5 400 %{?with_kerberos:-DWITH_GSSAPI=ON} \
1b11728e
JB
401 %{!?with_lttng:-DWITH_LTTNG=OFF} \
402 -DWITH_LZ4=ON \
f7926bf0 403 %{!?with_angular:-DWITH_MGR_DASHBOARD_FRONTEND=OFF} \
1b11728e 404 -DWITH_OCF=ON \
737284c4 405 -DWITH_PYTHON3=%{py3_ver} \
1b11728e 406 %{?with_fcgi:-DWITH_RADOSGW_FCGI_FRONTEND=ON} \
682d6dd5 407 %{!?with_rdma:-DWITH_RDMA=OFF} \
737284c4 408 -DWITH_REENTRANT_STRSIGNAL=ON \
32e4d0ff
JB
409 %{?with_qat:-DWITH_QAT=ON} \
410 %{?with_qatzip:-DWITH_QATZIP=ON} \
411 %{?with_seastar:-DWITH_SEASTAR=ON} \
1b11728e
JB
412 %{?with_spdk:-DWITH_SPDK=ON} \
413 -DWITH_SYSTEM_BOOST=ON \
682d6dd5 414 -DWITH_SYSTEM_LIBURING=ON \
d8321c07 415 %{?with_angular:-DWITH_SYSTEM_NPM=ON} \
1b11728e 416 %{?with_system_rocksdb:-DWITH_SYSTEM_ROCKSDB=ON} \
d8321c07 417 -DWITH_SYSTEM_ZSTD=ON \
1b11728e 418 -DWITH_SYSTEMD=ON \
737284c4 419 %{!?with_tests:-DWITH_TESTS=OFF} \
32e4d0ff 420 %{?with_zbd:-DWITH_ZBD=ON} \
737284c4 421 %{?with_zfs:-DWITH_ZFS=ON}
1b11728e 422
dc8b799e
JB
423# some object files have missing dependencies on these, pregenerate to avoid global -j1
424%{__make} legacy-option-headers
425
f8bb146f 426%{__make}
2a1a6301
JR
427
428%install
429rm -rf $RPM_BUILD_ROOT
1b11728e
JB
430install -d $RPM_BUILD_ROOT%{_localstatedir}/{lib/ceph/{tmp,mon,osd,mds,mgr,radosgw,bootstrap-{osd,mds,rgw,mgr,rbd}},log/ceph/stat,run/ceph} \
431 $RPM_BUILD_ROOT%{_sysconfdir}/{ceph,bash_completion.d,logrotate.d,rc.d,sysconfig} \
432 $RPM_BUILD_ROOT{%{systemdunitdir},%{systemdtmpfilesdir},/etc/systemd/system/ceph.target.wants,/sbin}
4f42482b 433
1b11728e
JB
434%{__make} -C build install \
435 DESTDIR=$RPM_BUILD_ROOT
2a1a6301 436
1b11728e
JB
437# sanitize paths; no config options for cmake
438%{__mv} $RPM_BUILD_ROOT/etc/init.d $RPM_BUILD_ROOT/etc/rc.d
1b11728e
JB
439%{__mv} $RPM_BUILD_ROOT%{_sbindir}/mount.* $RPM_BUILD_ROOT/sbin
440
441cp -p src/logrotate.conf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/ceph
2a1a6301 442
bbcdc7ce 443cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/ceph
b6163d67 444ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/ceph.service
bbcdc7ce 445cp -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/ceph.conf
b6163d67 446
682d6dd5
JB
447%if %{without tests}
448%{__rm} $RPM_BUILD_ROOT%{_javadir}/libcephfs-test.jar
2df85c68 449%{__rm} -r $RPM_BUILD_ROOT%{py3_sitescriptdir}/{ceph,ceph_volume}/tests
682d6dd5
JB
450%endif
451
1b11728e
JB
452%py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir}
453%py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir}
245cb856 454
1b11728e
JB
455# packaged as %doc
456%{__rm} $RPM_BUILD_ROOT%{_docdir}/sample.ceph.conf
bb30e67a 457
f7926bf0 458%if %{with angular}
d8321c07 459%{__rm} $RPM_BUILD_ROOT%{_libdir}/ceph/mgr/dashboard/HACKING.rst
f7926bf0
JB
460%{__rm} $RPM_BUILD_ROOT%{_libdir}/ceph/mgr/{.gitignore,dashboard/static/AdminLTE-2.3.7/{.gitignore,.jshintrc,README.md}}
461%endif
2a1a6301
JR
462
463%clean
464rm -rf $RPM_BUILD_ROOT
465
466%post
467/sbin/chkconfig --add ceph
468%service ceph restart
469
bef2a0ad
JK
470# actual services are to be enabled on cluster deployment
471%systemd_post %{name}.target
472
2a1a6301
JR
473%preun
474if [ "$1" = "0" ] ; then
72daa1da
JR
475 %service ceph stop
476 /sbin/chkconfig --del ceph
2a1a6301 477fi
bef2a0ad
JK
478%systemd_preun %{name}.target
479
480%postun
481%systemd_reload
2a1a6301 482
e5fc70df
JB
483%post libs -p /sbin/ldconfig
484%postun libs -p /sbin/ldconfig
2a1a6301 485
4f42482b
JB
486%post -n java-cephfs -p /sbin/ldconfig
487%postun -n java-cephfs -p /sbin/ldconfig
488
2a1a6301
JR
489%files
490%defattr(644,root,root,755)
9e1f65de 491# COPYING specifies licenses of individual parts
f7926bf0 492%doc AUTHORS COPYING PendingReleaseNotes README.md src/sample.ceph.conf doc/releases
2a1a6301 493%attr(754,root,root) /etc/rc.d/init.d/ceph
bef2a0ad
JK
494%config(noreplace) /etc/sysconfig/ceph
495%dir /etc/systemd/system/ceph.target.wants
bbcdc7ce
JB
496%{systemdunitdir}/ceph.service
497%{systemdunitdir}/ceph.target
bb30e67a 498%{systemdunitdir}/ceph-crash.service
1b11728e
JB
499%{systemdunitdir}/ceph-fuse.target
500%{systemdunitdir}/ceph-fuse@.service
bb30e67a
JR
501%{systemdunitdir}/ceph-immutable-object-cache.target
502%{systemdunitdir}/ceph-immutable-object-cache@.service
bbcdc7ce 503%{systemdunitdir}/ceph-mds.target
bef2a0ad 504%{systemdunitdir}/ceph-mds@.service
1b11728e
JB
505%{systemdunitdir}/ceph-mgr.target
506%{systemdunitdir}/ceph-mgr@.service
bbcdc7ce 507%{systemdunitdir}/ceph-mon.target
bef2a0ad 508%{systemdunitdir}/ceph-mon@.service
bbcdc7ce 509%{systemdunitdir}/ceph-osd.target
bef2a0ad 510%{systemdunitdir}/ceph-osd@.service
bbcdc7ce
JB
511%{systemdunitdir}/ceph-rbd-mirror.target
512%{systemdunitdir}/ceph-rbd-mirror@.service
1b11728e 513%{systemdunitdir}/ceph-volume@.service
737284c4
JB
514%{systemdunitdir}/cephfs-mirror.target
515%{systemdunitdir}/cephfs-mirror@.service
bbcdc7ce 516%{systemdunitdir}/rbdmap.service
bef2a0ad 517%{systemdtmpfilesdir}/ceph.conf
2a1a6301
JR
518%dir %{_sysconfdir}/ceph
519%attr(755,root,root) %{_bindir}/ceph
8c5712e2 520%attr(755,root,root) %{_bindir}/ceph-authtool
1b11728e 521%attr(755,root,root) %{_bindir}/ceph-bluestore-tool
2a1a6301 522%attr(755,root,root) %{_bindir}/ceph-clsinfo
8c5712e2 523%attr(755,root,root) %{_bindir}/ceph-conf
bb30e67a 524%attr(755,root,root) %{_bindir}/ceph-crash
60d5543f 525%attr(755,root,root) %{_bindir}/ceph-dencoder
bb30e67a
JR
526%attr(755,root,root) %{_bindir}/ceph-diff-sorted
527%attr(755,root,root) %{_bindir}/ceph-erasure-code-tool
bb30e67a
JR
528%attr(755,root,root) %{_bindir}/ceph-immutable-object-cache
529%attr(755,root,root) %{_bindir}/ceph-kvstore-tool
2a1a6301 530%attr(755,root,root) %{_bindir}/ceph-mds
1b11728e 531%attr(755,root,root) %{_bindir}/ceph-mgr
8c5712e2 532%attr(755,root,root) %{_bindir}/ceph-mon
bb30e67a 533%attr(755,root,root) %{_bindir}/ceph-monstore-tool
7f577810 534%attr(755,root,root) %{_bindir}/ceph-objectstore-tool
2a1a6301 535%attr(755,root,root) %{_bindir}/ceph-osd
bb30e67a 536%attr(755,root,root) %{_bindir}/ceph-osdomap-tool
5e39e43e 537%attr(755,root,root) %{_bindir}/ceph-post-file
2a1a6301 538%attr(755,root,root) %{_bindir}/ceph-rbdnamer
8c5712e2
JB
539%attr(755,root,root) %{_bindir}/ceph-run
540%attr(755,root,root) %{_bindir}/ceph-syn
bbcdc7ce 541%attr(755,root,root) %{_bindir}/cephfs-data-scan
ae4b5127 542%attr(755,root,root) %{_bindir}/cephfs-journal-tool
737284c4 543%attr(755,root,root) %{_bindir}/cephfs-mirror
b431df60 544%attr(755,root,root) %{_bindir}/cephfs-table-tool
737284c4 545%attr(755,root,root) %{_bindir}/cephfs-top
ee3ab38d
JB
546%if %{with seastore}
547%attr(755,root,root) %{_bindir}/crimson-osd
548%attr(755,root,root) %{_bindir}/crimson-store-nbd
549%endif
f8f6a16f 550%attr(755,root,root) %{_bindir}/crushdiff
8c5712e2 551%attr(755,root,root) %{_bindir}/crushtool
2a1a6301 552%attr(755,root,root) %{_bindir}/librados-config
8c5712e2
JB
553%attr(755,root,root) %{_bindir}/monmaptool
554%attr(755,root,root) %{_bindir}/osdmaptool
2a1a6301
JR
555%attr(755,root,root) %{_bindir}/rados
556%attr(755,root,root) %{_bindir}/rbd
8c5712e2 557%attr(755,root,root) %{_bindir}/rbd-fuse
bbcdc7ce
JB
558%attr(755,root,root) %{_bindir}/rbd-mirror
559%attr(755,root,root) %{_bindir}/rbd-nbd
9a1a508c 560%attr(755,root,root) %{_bindir}/rbd-replay
7f577810 561%attr(755,root,root) %{_bindir}/rbd-replay-many
9a1a508c 562%attr(755,root,root) %{_bindir}/rbd-replay-prep
bbcdc7ce 563%attr(755,root,root) %{_bindir}/rbdmap
bb30e67a
JR
564%attr(755,root,root) %{_bindir}/rgw-gap-list
565%attr(755,root,root) %{_bindir}/rgw-gap-list-comparator
566%attr(755,root,root) %{_bindir}/rgw-orphan-list
1b11728e 567%attr(755,root,root) %{_sbindir}/ceph-create-keys
1b11728e
JB
568%attr(755,root,root) %{_sbindir}/ceph-volume
569%attr(755,root,root) %{_sbindir}/ceph-volume-systemd
4f42482b
JB
570%attr(755,root,root) /sbin/mount.ceph
571%attr(755,root,root) /sbin/mount.fuse.ceph
e3919159 572%if "%{_libexecdir}" != "%{_libdir}"
c1965bc2 573%dir %{_libexecdir}/ceph
e3919159 574%endif
a92d2e05 575%{_libexecdir}/ceph/ceph_common.sh
c1965bc2 576%attr(755,root,root) %{_libexecdir}/ceph/ceph-osd-prestart.sh
bbcdc7ce 577%dir %{_libdir}/ceph/compressor
1b11728e 578%attr(755,root,root) %{_libdir}/ceph/compressor/libceph_lz4.so*
bbcdc7ce
JB
579%attr(755,root,root) %{_libdir}/ceph/compressor/libceph_snappy.so*
580%attr(755,root,root) %{_libdir}/ceph/compressor/libceph_zlib.so*
1b11728e 581%attr(755,root,root) %{_libdir}/ceph/compressor/libceph_zstd.so*
d65c5c24 582%dir %{_libdir}/ceph/crypto
bb30e67a 583%ifarch %{x8664}
d65c5c24
JB
584%attr(755,root,root) %{_libdir}/ceph/crypto/libceph_crypto_isal.so*
585%endif
737284c4 586%attr(755,root,root) %{_libdir}/ceph/crypto/libceph_crypto_openssl.so*
cc053f74
JB
587%if %{with qat}
588%attr(755,root,root) %{_libdir}/ceph/crypto/libceph_crypto_qat.so*
589%endif
f8f6a16f
JB
590%dir %{_libdir}/ceph/denc
591%attr(755,root,root) %{_libdir}/ceph/denc/denc-mod-cephfs.so
592%attr(755,root,root) %{_libdir}/ceph/denc/denc-mod-common.so
593%attr(755,root,root) %{_libdir}/ceph/denc/denc-mod-osd.so
594%attr(755,root,root) %{_libdir}/ceph/denc/denc-mod-rbd.so
595%attr(755,root,root) %{_libdir}/ceph/denc/denc-mod-rgw.so
c408d7b3 596%dir %{_libdir}/ceph/erasure-code
bb30e67a 597%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_clay.so*
58dc957f 598%ifarch %{x8664}
066d8601 599%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_isa.so*
6fce7056 600%endif
c408d7b3 601%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure.so*
0509a77e 602%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_generic.so*
bbcdc7ce 603%ifarch %{arm}
7f577810
JB
604%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_neon.so*
605%endif
606%ifarch %{ix86} %{x8664} x32
0509a77e
JB
607%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_sse3.so*
608%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_sse4.so*
bb30e67a
JR
609%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_sse3.so*
610%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_sse4.so*
7f577810 611%endif
9a1a508c 612%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_lrc.so*
b431df60 613%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec.so*
bbcdc7ce 614%attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_generic.so*
bb30e67a
JR
615%dir %{_libdir}/ceph/librbd
616%attr(755,root,root) %{_libdir}/ceph/librbd/libceph_librbd_parent_cache.so*
2a1a6301 617%dir %{_libdir}/rados-classes
bb30e67a
JR
618%attr(755,root,root) %{_libdir}/rados-classes/libcls_2pc_queue.so*
619%attr(755,root,root) %{_libdir}/rados-classes/libcls_cas.so*
1b11728e 620%attr(755,root,root) %{_libdir}/rados-classes/libcls_cephfs.so*
bb30e67a
JR
621%attr(755,root,root) %{_libdir}/rados-classes/libcls_cmpomap.so*
622%attr(755,root,root) %{_libdir}/rados-classes/libcls_fifo.so*
1b11728e
JB
623%attr(755,root,root) %{_libdir}/rados-classes/libcls_hello.so*
624%attr(755,root,root) %{_libdir}/rados-classes/libcls_journal.so*
1b11728e
JB
625%attr(755,root,root) %{_libdir}/rados-classes/libcls_lock.so*
626%attr(755,root,root) %{_libdir}/rados-classes/libcls_log.so*
627%attr(755,root,root) %{_libdir}/rados-classes/libcls_lua.so*
628%attr(755,root,root) %{_libdir}/rados-classes/libcls_numops.so*
bb30e67a
JR
629%attr(755,root,root) %{_libdir}/rados-classes/libcls_otp.so*
630%attr(755,root,root) %{_libdir}/rados-classes/libcls_queue.so*
1b11728e
JB
631%attr(755,root,root) %{_libdir}/rados-classes/libcls_rbd.so*
632%attr(755,root,root) %{_libdir}/rados-classes/libcls_refcount.so*
1b11728e 633%attr(755,root,root) %{_libdir}/rados-classes/libcls_rgw.so*
6b8625f1 634%attr(755,root,root) %{_libdir}/rados-classes/libcls_rgw_gc.so*
1b11728e 635%attr(755,root,root) %{_libdir}/rados-classes/libcls_sdk.so*
f8f6a16f 636%attr(755,root,root) %{_libdir}/rados-classes/libcls_test_remote_reads.so*
1b11728e
JB
637%attr(755,root,root) %{_libdir}/rados-classes/libcls_timeindex.so*
638%attr(755,root,root) %{_libdir}/rados-classes/libcls_user.so*
639%attr(755,root,root) %{_libdir}/rados-classes/libcls_version.so*
5e39e43e 640%{_datadir}/ceph
2a1a6301
JR
641%config(noreplace) /etc/logrotate.d/ceph
642%config(noreplace) %{_sysconfdir}/bash_completion.d/rados
643%config(noreplace) %{_sysconfdir}/bash_completion.d/ceph
644%config(noreplace) %{_sysconfdir}/bash_completion.d/rbd
645%{_mandir}/man8/ceph.8*
646%{_mandir}/man8/ceph-authtool.8*
1b11728e 647%{_mandir}/man8/ceph-bluestore-tool.8*
2a1a6301
JR
648%{_mandir}/man8/ceph-clsinfo.8*
649%{_mandir}/man8/ceph-conf.8*
63709ae0 650%{_mandir}/man8/ceph-create-keys.8*
60d5543f 651%{_mandir}/man8/ceph-dencoder.8*
bb30e67a 652%{_mandir}/man8/ceph-diff-sorted.8*
bb30e67a
JR
653%{_mandir}/man8/ceph-immutable-object-cache.8*
654%{_mandir}/man8/ceph-kvstore-tool.8*
2a1a6301
JR
655%{_mandir}/man8/ceph-mds.8*
656%{_mandir}/man8/ceph-mon.8*
657%{_mandir}/man8/ceph-osd.8*
5e39e43e 658%{_mandir}/man8/ceph-post-file.8*
60d5543f 659%{_mandir}/man8/ceph-rbdnamer.8*
2a1a6301
JR
660%{_mandir}/man8/ceph-run.8*
661%{_mandir}/man8/ceph-syn.8*
1b11728e
JB
662%{_mandir}/man8/ceph-volume.8*
663%{_mandir}/man8/ceph-volume-systemd.8*
6b8625f1 664%{_mandir}/man8/cephadm.8*
737284c4
JB
665%{_mandir}/man8/cephfs-mirror.8*
666%{_mandir}/man8/cephfs-top.8*
f8f6a16f 667%{_mandir}/man8/crushdiff.8*
2a1a6301
JR
668%{_mandir}/man8/crushtool.8*
669%{_mandir}/man8/librados-config.8*
2a1a6301
JR
670%{_mandir}/man8/monmaptool.8*
671%{_mandir}/man8/mount.ceph.8*
bb30e67a 672%{_mandir}/man8/mount.fuse.ceph.8*
2a1a6301
JR
673%{_mandir}/man8/osdmaptool.8*
674%{_mandir}/man8/rados.8*
2a1a6301 675%{_mandir}/man8/rbd.8*
8c5712e2 676%{_mandir}/man8/rbd-fuse.8*
bbcdc7ce
JB
677%{_mandir}/man8/rbd-mirror.8*
678%{_mandir}/man8/rbd-nbd.8*
9a1a508c 679%{_mandir}/man8/rbd-replay.8*
7f577810 680%{_mandir}/man8/rbd-replay-many.8*
9a1a508c 681%{_mandir}/man8/rbd-replay-prep.8*
bbcdc7ce 682%{_mandir}/man8/rbdmap.8*
bb30e67a 683%{_mandir}/man8/rgw-orphan-list.8*
60d5543f 684
2a1a6301 685%dir %{_localstatedir}/lib/ceph
1b11728e
JB
686%dir %{_localstatedir}/lib/ceph/bootstrap-mds
687%dir %{_localstatedir}/lib/ceph/bootstrap-mgr
688%dir %{_localstatedir}/lib/ceph/bootstrap-osd
689%dir %{_localstatedir}/lib/ceph/bootstrap-rbd
690%dir %{_localstatedir}/lib/ceph/bootstrap-rgw
b6163d67 691%dir %{_localstatedir}/lib/ceph/mds
1b11728e 692%dir %{_localstatedir}/lib/ceph/mgr
b6163d67
JK
693%dir %{_localstatedir}/lib/ceph/mon
694%dir %{_localstatedir}/lib/ceph/osd
2a1a6301
JR
695%dir %{_localstatedir}/lib/ceph/tmp
696%dir %{_localstatedir}/log/ceph
bef2a0ad 697%dir %{_localstatedir}/run/ceph
2a1a6301
JR
698
699%files libs
700%defattr(644,root,root,755)
32e4d0ff
JB
701%if %{with bluefs}
702%attr(755,root,root) %{_libdir}/libbluefs.so
703%endif
2a1a6301 704%attr(755,root,root) %{_libdir}/libcephfs.so.*.*.*
1b11728e 705%attr(755,root,root) %ghost %{_libdir}/libcephfs.so.2
4447516f
JB
706%attr(755,root,root) %{_libdir}/libos_tp.so.*.*.*
707%attr(755,root,root) %ghost %{_libdir}/libos_tp.so.1
708%attr(755,root,root) %{_libdir}/libosd_tp.so.*.*.*
709%attr(755,root,root) %ghost %{_libdir}/libosd_tp.so.1
2a1a6301
JR
710%attr(755,root,root) %{_libdir}/librados.so.*.*.*
711%attr(755,root,root) %ghost %{_libdir}/librados.so.2
4447516f
JB
712%attr(755,root,root) %{_libdir}/librados_tp.so.*.*.*
713%attr(755,root,root) %ghost %{_libdir}/librados_tp.so.2
bb30e67a
JR
714%attr(755,root,root) %{_libdir}/libradosgw.so.*.*.*
715%attr(755,root,root) %ghost %{_libdir}/libradosgw.so.2
548e0d3f
JB
716%attr(755,root,root) %{_libdir}/libradosstriper.so.*.*.*
717%attr(755,root,root) %ghost %{_libdir}/libradosstriper.so.1
2a1a6301
JR
718%attr(755,root,root) %{_libdir}/librbd.so.*.*.*
719%attr(755,root,root) %ghost %{_libdir}/librbd.so.1
4447516f
JB
720%attr(755,root,root) %{_libdir}/librbd_tp.so.*.*.*
721%attr(755,root,root) %ghost %{_libdir}/librbd_tp.so.1
bbcdc7ce
JB
722%attr(755,root,root) %{_libdir}/librgw.so.*.*.*
723%attr(755,root,root) %ghost %{_libdir}/librgw.so.2
bb30e67a
JR
724%attr(755,root,root) %{_libdir}/librgw_op_tp.so.*.*.*
725%attr(755,root,root) %ghost %{_libdir}/librgw_op_tp.so.2
726%attr(755,root,root) %{_libdir}/librgw_rados_tp.so.*.*.*
727%attr(755,root,root) %ghost %{_libdir}/librgw_rados_tp.so.2
728%attr(755,root,root) %{_libdir}/libcephsqlite.so
5b8dadc9 729%dir %{_libdir}/ceph
bb30e67a 730%attr(755,root,root) %{_libdir}/ceph/libceph-common.so.2
2a1a6301 731
2a1a6301
JR
732%files devel
733%defattr(644,root,root,755)
2a1a6301 734%attr(755,root,root) %{_libdir}/libcephfs.so
4447516f
JB
735%attr(755,root,root) %{_libdir}/libos_tp.so
736%attr(755,root,root) %{_libdir}/libosd_tp.so
2a1a6301 737%attr(755,root,root) %{_libdir}/librados.so
4447516f 738%attr(755,root,root) %{_libdir}/librados_tp.so
bb30e67a 739%attr(755,root,root) %{_libdir}/libradosgw.so
548e0d3f 740%attr(755,root,root) %{_libdir}/libradosstriper.so
2a1a6301 741%attr(755,root,root) %{_libdir}/librbd.so
4447516f 742%attr(755,root,root) %{_libdir}/librbd_tp.so
bbcdc7ce 743%attr(755,root,root) %{_libdir}/librgw.so
bb30e67a
JR
744%attr(755,root,root) %{_libdir}/librgw_op_tp.so
745%attr(755,root,root) %{_libdir}/librgw_rados_tp.so
e5fc70df
JB
746%{_includedir}/cephfs
747%{_includedir}/rados
548e0d3f 748%{_includedir}/radosstriper
e5fc70df 749%{_includedir}/rbd
bb30e67a 750%{_includedir}/libcephsqlite.h
2a1a6301 751
1b11728e
JB
752%files -n python3-ceph
753%defattr(644,root,root,755)
754%attr(755,root,root) %{py3_sitedir}/cephfs.cpython-*.so
bb30e67a 755%attr(755,root,root) %{py3_sitedir}/rados.cpython-*.so
bb30e67a 756%attr(755,root,root) %{py3_sitedir}/rbd.cpython-*.so
bb30e67a 757%attr(755,root,root) %{py3_sitedir}/rgw.cpython-*.so
2df85c68
JR
758%{py3_sitedir}/cephfs-2.0.0-py*.egg-info
759%{py3_sitedir}/rados-2.0.0-py*.egg-info
760%{py3_sitedir}/rbd-2.0.0-py*.egg-info
1b11728e 761%{py3_sitedir}/rgw-2.0.0-py*.egg-info
2b3ddb3f
JB
762%{py3_sitescriptdir}/ceph_*.py
763%{py3_sitescriptdir}/__pycache__/ceph_*.py*
764%{py3_sitescriptdir}/ceph
765%{py3_sitescriptdir}/ceph_volume
2df85c68
JR
766%{py3_sitescriptdir}/ceph-1.0.0-py*.egg-info
767%{py3_sitescriptdir}/ceph_volume-1.0.0-py*.egg-info
768%{py3_sitescriptdir}/cephfs_top-0.0.1-py*.egg-info
1b11728e 769
4f42482b
JB
770%if %{with java}
771%files -n java-cephfs
772%defattr(644,root,root,755)
773%attr(755,root,root) %{_libdir}/libcephfs_jni.so.*.*.*
774%attr(755,root,root) %ghost %{_libdir}/libcephfs_jni.so.1
775%attr(755,root,root) %{_libdir}/libcephfs_jni.so
776%{_javadir}/libcephfs.jar
777%endif
778
e5fc70df
JB
779%files fuse
780%defattr(644,root,root,755)
e5fc70df
JB
781%attr(755,root,root) %{_bindir}/ceph-fuse
782%{_mandir}/man8/ceph-fuse.8*
783
2a1a6301
JR
784%files radosgw
785%defattr(644,root,root,755)
786%attr(755,root,root) %{_bindir}/radosgw
787%attr(755,root,root) %{_bindir}/radosgw-admin
1b11728e 788%attr(755,root,root) %{_bindir}/radosgw-es
bbcdc7ce
JB
789%attr(755,root,root) %{_bindir}/radosgw-object-expirer
790%attr(755,root,root) %{_bindir}/radosgw-token
791%{systemdunitdir}/ceph-radosgw.target
792%{systemdunitdir}/ceph-radosgw@.service
2a1a6301 793%{_sysconfdir}/bash_completion.d/radosgw-admin
1b11728e
JB
794%dir %{_localstatedir}/lib/ceph/radosgw
795%{_mandir}/man8/radosgw.8*
796%{_mandir}/man8/radosgw-admin.8*
2a1a6301 797
245cb856 798%files resource-agents
8029515d
JB
799%defattr(644,root,root,755)
800%dir %{_prefix}/lib/ocf/resource.d/ceph
8029515d 801%attr(755,root,root) %{_prefix}/lib/ocf/resource.d/ceph/rbd
79dc5cad 802
bb30e67a 803%if %{with tests}
9911b50d
JP
804%files test
805%defattr(644,root,root,755)
806%attr(755,root,root) %{_bindir}/ceph-client-debug
807%attr(755,root,root) %{_bindir}/ceph-coverage
808%attr(755,root,root) %{_bindir}/ceph-debugpack
809%attr(755,root,root) %{_bindir}/ceph-kvstore-tool
810%attr(755,root,root) %{_bindir}/ceph-monstore-tool
811%attr(755,root,root) %{_bindir}/ceph-osdomap-tool
812%attr(755,root,root) %{_bindir}/ceph_bench_log
813%attr(755,root,root) %{_bindir}/ceph_erasure_code
814%attr(755,root,root) %{_bindir}/ceph_erasure_code_benchmark
815%attr(755,root,root) %{_bindir}/ceph_kvstorebench
816%attr(755,root,root) %{_bindir}/ceph_multi_stress_watch
817%attr(755,root,root) %{_bindir}/ceph_objectstore_bench
818%attr(755,root,root) %{_bindir}/ceph_omapbench
819%attr(755,root,root) %{_bindir}/ceph_perf_local
820%attr(755,root,root) %{_bindir}/ceph_perf_msgr_client
821%attr(755,root,root) %{_bindir}/ceph_perf_msgr_server
822%attr(755,root,root) %{_bindir}/ceph_perf_objectstore
823%attr(755,root,root) %{_bindir}/ceph_psim
824%attr(755,root,root) %{_bindir}/ceph_radosacl
825%attr(755,root,root) %{_bindir}/ceph_rgw_jsonparser
826%attr(755,root,root) %{_bindir}/ceph_rgw_multiparser
827%attr(755,root,root) %{_bindir}/ceph_scratchtool
828%attr(755,root,root) %{_bindir}/ceph_scratchtoolpp
829%attr(755,root,root) %{_bindir}/ceph_smalliobench
830%attr(755,root,root) %{_bindir}/ceph_smalliobenchdumb
831%attr(755,root,root) %{_bindir}/ceph_smalliobenchfs
832%attr(755,root,root) %{_bindir}/ceph_smalliobenchrbd
833%attr(755,root,root) %{_bindir}/ceph_test_*
834%attr(755,root,root) %{_bindir}/ceph_tpbench
835%attr(755,root,root) %{_bindir}/ceph_xattr_bench
836%attr(755,root,root) %{_libdir}/ceph/ceph-monstore-update-crush.sh
682d6dd5
JB
837%{py3_sitedir}/ceph/tests
838%{py3_sitedir}/ceph_volume/tests
839%if %{with java}
840%{_javadir}/libcephfs-test.jar
841%endif
9911b50d
JP
842%{_mandir}/man8/ceph-debugpack.8*
843%{_mandir}/man8/ceph-kvstore-tool.8*
844%endif
845
79dc5cad
JB
846%if %{with fio}
847%files -n fio-ceph-objectstore
848%defattr(644,root,root,755)
849%doc src/test/fio/{README.md,ceph-*.conf,ceph-*.fio}
850%attr(755,root,root) %{_libdir}/libfio_ceph_objectstore.so
851%endif
This page took 0.565963 seconds and 4 git commands to generate.