Gentoo Archives: gentoo-commits

From: Patrick McLean <chutzpah@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-cluster/ceph/
Date: Thu, 03 Mar 2022 02:00:40
Message-Id: 1646272826.e7af9e6882240b6a05a9f3a5682006d8445d8d9e.chutzpah@gentoo
1 commit: e7af9e6882240b6a05a9f3a5682006d8445d8d9e
2 Author: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
3 AuthorDate: Thu Mar 3 02:00:26 2022 +0000
4 Commit: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
5 CommitDate: Thu Mar 3 02:00:26 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e7af9e68
7
8 sys-cluster/ceph: remove old
9
10 Package-Manager: Portage-3.0.30, Repoman-3.0.3
11 Signed-off-by: Patrick McLean <chutzpah <AT> gentoo.org>
12
13 sys-cluster/ceph/Manifest | 1 -
14 sys-cluster/ceph/ceph-16.2.5.ebuild | 452 --------------------------------
15 sys-cluster/ceph/ceph-16.2.6-r2.ebuild | 458 ---------------------------------
16 3 files changed, 911 deletions(-)
17
18 diff --git a/sys-cluster/ceph/Manifest b/sys-cluster/ceph/Manifest
19 index 93b972d33a05..0ae493210ad6 100644
20 --- a/sys-cluster/ceph/Manifest
21 +++ b/sys-cluster/ceph/Manifest
22 @@ -1,5 +1,4 @@
23 DIST ceph-14.2.22.tar.gz 130597047 BLAKE2B 58bbb3243de076ed1d25dfd7bd75717c50ad15d16690dcbd1511d1b506477845efc3ff7fbe713cf18fb8cfcc8c16707ad2a0f30159e3198ff82e57fbd2eb3cf2 SHA512 1c66661e1a39fa9151e95e33c390b810ffe269465d8785e2197cc15b8d83bd2edde77de48a8abd71a4da68cd5830ff14bcdf6b98fd17edabe85caeb1eca018d3
24 DIST ceph-15.2.16.tar.gz 148628915 BLAKE2B 4f624078027c706428eae3eddd5b5479efe3b4442c19a4e6b6cdf8d3839cf56e2863b18249dc3c5079a7e25f60796bfec3202ffd695537587654f5e2f820caaa SHA512 532b8a5073e157fe9ed552b26976faeb64dc29b79a249910c0982134ad5f945d4f57d8bf451adf63487b6d285c6e4bd5c39f0e3fcd449230d6fb3087539f8c3b
25 -DIST ceph-16.2.5.tar.gz 155933825 BLAKE2B 3c8f3f1663b91d4de1e3736317add0b88d9083db5ab2fc3e2e913278977deec076bd4410e309f4e47ccc169d74356c2ab1221c94532cc45ee75ec73673fc42a0 SHA512 5c32f9aa817ecfa788725bcfe5743756853ca9b3f9ee453242110f1b5e1bdd1feaef79ad9ccf2b185445c9644bcecb1355e151a2255bfd27edc9818e0d6d4c4a
26 DIST ceph-16.2.6.tar.gz 156087762 BLAKE2B e2595d1a958200e4f1877e4597c53319a9eee2e95606ea1b3ba2966a0d17f1cfcf52e05cca59752cc6ac383e32d944c380920d111aec840631235aef273a4de1 SHA512 f01e29088ae566d4111c21b5d0c173ddb02badaa0d8272f7f1548eb8e66a95dc7052b3945d9fb342e6c97a65c57648fda394317340d1f4236a57af7580073658
27 DIST ceph-16.2.7.tar.gz 156621262 BLAKE2B 3c79cb1586e71927df4578fe7f3a13f4ab257a5e145b6bf76d942292cbca7bf32583350373f3d816f6d8f8700ee0f98a14f350c823b0eb89ffd7735acee7de63 SHA512 eab047e646970d444acf1064d98237b8b1677fb16b5e771082d55880f7bc6d8bdb278c2fe514c82ae12c438878d9ecea29139fa6b8d890f9f737138f10fb740c
28
29 diff --git a/sys-cluster/ceph/ceph-16.2.5.ebuild b/sys-cluster/ceph/ceph-16.2.5.ebuild
30 deleted file mode 100644
31 index 4e1446212d24..000000000000
32 --- a/sys-cluster/ceph/ceph-16.2.5.ebuild
33 +++ /dev/null
34 @@ -1,452 +0,0 @@
35 -# Copyright 1999-2022 Gentoo Authors
36 -# Distributed under the terms of the GNU General Public License v2
37 -
38 -EAPI=7
39 -
40 -PYTHON_COMPAT=( python3_{7..9} )
41 -DISTUTILS_OPTIONAL=1
42 -LUA_COMPAT=( lua5-3 )
43 -
44 -CMAKE_MAKEFILE_GENERATOR=emake
45 -
46 -inherit check-reqs bash-completion-r1 cmake distutils-r1 flag-o-matic \
47 - lua-single python-r1 udev readme.gentoo-r1 toolchain-funcs \
48 - systemd tmpfiles
49 -
50 -if [[ ${PV} == *9999* ]]; then
51 - inherit git-r3
52 - EGIT_REPO_URI="https://github.com/ceph/ceph.git"
53 - SRC_URI=""
54 -else
55 - SRC_URI="https://download.ceph.com/tarballs/${P}.tar.gz"
56 - KEYWORDS="~amd64 ~arm64 ~ppc64"
57 -fi
58 -
59 -DESCRIPTION="Ceph distributed filesystem"
60 -HOMEPAGE="https://ceph.com/"
61 -
62 -LICENSE="Apache-2.0 LGPL-2.1 CC-BY-SA-3.0 GPL-2 GPL-2+ LGPL-2+ LGPL-2.1 LGPL-3 GPL-3 BSD Boost-1.0 MIT public-domain"
63 -SLOT="0"
64 -
65 -CPU_FLAGS_X86=(avx2 avx512f pclmul sse{,2,3,4_1,4_2} ssse3)
66 -
67 -IUSE="babeltrace +cephfs custom-cflags diskprediction dpdk fuse grafana
68 - jemalloc jaeger kafka kerberos ldap lttng +mgr numa pmdk rabbitmq
69 - +radosgw rbd-rwl rbd-ssd rgw-lua +ssl spdk +sqlite system-boost systemd
70 - +tcmalloc test uring xfs zbd zfs"
71 -IUSE+=" $(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
72 -
73 -DEPEND="
74 - ${LUA_DEPS}
75 - acct-group/ceph
76 - acct-user/ceph
77 - virtual/libudev:=
78 - app-arch/bzip2:=
79 - app-arch/lz4:=
80 - <app-arch/snappy-1.1.9:=
81 - app-arch/zstd:=
82 - app-shells/bash:0
83 - app-misc/jq:=
84 - dev-libs/crypto++:=
85 - dev-cpp/gflags:=
86 - dev-libs/leveldb:=[snappy,tcmalloc(-)?]
87 - dev-libs/libaio:=
88 - dev-libs/libfmt:=
89 - dev-libs/libnl:3=
90 - dev-libs/libxml2:=
91 - dev-libs/libevent:=
92 - <dev-libs/rocksdb-6.15:=
93 - dev-libs/xmlsec:=[openssl]
94 - dev-cpp/yaml-cpp:=
95 - dev-libs/nss:=
96 - dev-libs/protobuf:=
97 - net-dns/c-ares:=
98 - net-libs/gnutls:=
99 - sys-auth/oath-toolkit:=
100 - sys-apps/coreutils
101 - sys-apps/grep
102 - sys-apps/hwloc:=
103 - sys-apps/keyutils:=
104 - sys-apps/util-linux:=
105 - sys-apps/sed
106 - sys-apps/util-linux
107 - sys-libs/libcap-ng:=
108 - sys-libs/ncurses:0=
109 - sys-libs/zlib:=
110 - sys-process/numactl:=
111 - virtual/libcrypt:=
112 - x11-libs/libpciaccess:=
113 - babeltrace? ( dev-util/babeltrace )
114 - fuse? ( sys-fs/fuse:0= )
115 - jemalloc? ( dev-libs/jemalloc:= )
116 - !jemalloc? ( >=dev-util/google-perftools-2.6.1:= )
117 - jaeger? ( dev-cpp/nlohmann_json:= )
118 - kafka? ( dev-libs/librdkafka:= )
119 - kerberos? ( virtual/krb5 )
120 - ldap? ( net-nds/openldap:= )
121 - lttng? ( dev-util/lttng-ust:= )
122 - pmdk? ( dev-libs/pmdk:= )
123 - rabbitmq? ( net-libs/rabbitmq-c:= )
124 - radosgw? (
125 - dev-libs/icu:=
126 - dev-libs/expat:=
127 - dev-libs/openssl:=
128 - net-misc/curl:=[curl_ssl_openssl]
129 - )
130 - rbd-rwl? ( dev-libs/pmdk:= )
131 - ssl? ( dev-libs/openssl:= )
132 - sqlite? ( dev-db/sqlite:= )
133 - system-boost? ( >=dev-libs/boost-1.72:=[threads(+),context,python,${PYTHON_USEDEP}] )
134 - uring? ( sys-libs/liburing:= )
135 - xfs? ( sys-fs/xfsprogs:= )
136 - zbd? ( sys-block/libzbd:= )
137 - zfs? ( sys-fs/zfs:= )
138 -"
139 -BDEPEND="
140 - ${PYTHON_DEPS}
141 - amd64? ( dev-lang/nasm )
142 - x86? ( dev-lang/yasm )
143 - app-arch/cpio
144 - >=dev-util/cmake-3.5.0
145 - dev-python/cython[${PYTHON_USEDEP}]
146 - dev-python/setuptools[${PYTHON_USEDEP}]
147 - dev-python/sphinx
148 - dev-util/cunit
149 - dev-util/gperf
150 - dev-util/ragel
151 - dev-util/valgrind
152 - sys-apps/coreutils
153 - sys-apps/grep
154 - sys-apps/sed
155 - sys-apps/which
156 - sys-devel/bc
157 - sys-devel/patch
158 - virtual/pkgconfig
159 - jaeger? (
160 - sys-devel/bison
161 - sys-devel/flex
162 - )
163 - test? (
164 - dev-python/coverage[${PYTHON_USEDEP}]
165 - dev-python/virtualenv[${PYTHON_USEDEP}]
166 - dev-python/requests-mock[${PYTHON_USEDEP}]
167 - sys-apps/grep[pcre]
168 - sys-fs/btrfs-progs
169 - )
170 -"
171 -RDEPEND="
172 - ${DEPEND}
173 - ${PYTHON_DEPS}
174 - app-admin/sudo
175 - net-misc/socat
176 - sys-apps/gptfdisk
177 - sys-apps/nvme-cli
178 - >=sys-apps/smartmontools-7.0
179 - sys-block/parted
180 - sys-fs/cryptsetup
181 - sys-fs/lsscsi
182 - sys-fs/lvm2[-device-mapper-only(-)]
183 - virtual/awk
184 - dev-python/bcrypt[${PYTHON_USEDEP}]
185 - dev-python/cherrypy[${PYTHON_USEDEP}]
186 - dev-python/python-dateutil[${PYTHON_USEDEP}]
187 - dev-python/flask[${PYTHON_USEDEP}]
188 - dev-python/jinja[${PYTHON_USEDEP}]
189 - dev-python/pecan[${PYTHON_USEDEP}]
190 - dev-python/prettytable[${PYTHON_USEDEP}]
191 - dev-python/pyopenssl[${PYTHON_USEDEP}]
192 - dev-python/requests[${PYTHON_USEDEP}]
193 - dev-python/setuptools[${PYTHON_USEDEP}]
194 - dev-python/werkzeug[${PYTHON_USEDEP}]
195 - mgr? (
196 - dev-python/jsonpatch[${PYTHON_USEDEP}]
197 - dev-python/more-itertools[${PYTHON_USEDEP}]
198 - dev-python/numpy[${PYTHON_USEDEP}]
199 - dev-python/pyjwt[${PYTHON_USEDEP}]
200 - dev-python/pyyaml[${PYTHON_USEDEP}]
201 - dev-python/routes[${PYTHON_USEDEP}]
202 - diskprediction? (
203 - >=dev-python/scipy-1.4.0[${PYTHON_USEDEP}]
204 - )
205 - sci-libs/scikit-learn[${PYTHON_USEDEP}]
206 - dev-python/six[${PYTHON_USEDEP}]
207 - )
208 -"
209 -# diskprediction needs older scipy not compatible with py38
210 -# bug #724438
211 -REQUIRED_USE="
212 - ${PYTHON_REQUIRED_USE}
213 - ${LUA_REQUIRED_USE}
214 - ?? ( jemalloc tcmalloc )
215 - jaeger? ( !system-boost )
216 - diskprediction? ( mgr )
217 - kafka? ( radosgw )
218 - mgr? ( cephfs )
219 - rabbitmq? ( radosgw )
220 -"
221 -RESTRICT="!test? ( test )"
222 -
223 -# the tests need root access
224 -RESTRICT="test? ( userpriv )"
225 -
226 -# distribution tarball does not include everything needed for tests
227 -RESTRICT+=" test"
228 -
229 -# create a non-debug release
230 -CMAKE_BUILD_TYPE=RelWithDebInfo
231 -
232 -# false positives unless all USE flags are on
233 -CMAKE_WARN_UNUSED_CLI=no
234 -
235 -PATCHES=(
236 - "${FILESDIR}/ceph-12.2.0-use-provided-cpu-flag-values.patch"
237 - "${FILESDIR}/ceph-14.2.0-cflags.patch"
238 - "${FILESDIR}/ceph-12.2.4-boost-build-none-options.patch"
239 - "${FILESDIR}/ceph-16.2.2-cflags.patch"
240 - "${FILESDIR}/ceph-16.2.2-no-virtualenvs.patch"
241 - "${FILESDIR}/ceph-13.2.2-dont-install-sysvinit-script.patch"
242 - "${FILESDIR}/ceph-14.2.0-dpdk-cflags.patch"
243 - "${FILESDIR}/ceph-14.2.0-link-crc32-statically.patch"
244 - "${FILESDIR}/ceph-14.2.0-cython-0.29.patch"
245 - "${FILESDIR}/ceph-16.2.0-rocksdb-cmake.patch"
246 - "${FILESDIR}/ceph-15.2.3-spdk-compile.patch"
247 - "${FILESDIR}/ceph-16.2.0-install-libblk.patch"
248 - "${FILESDIR}/ceph-16.2.0-spdk-tinfo.patch"
249 - "${FILESDIR}/ceph-16.2.0-jaeger-system-boost.patch"
250 - "${FILESDIR}/ceph-16.2.0-liburing.patch"
251 - "${FILESDIR}/ceph-16.2.2-system-zstd.patch"
252 -)
253 -
254 -check-reqs_export_vars() {
255 - CHECKREQS_DISK_BUILD="6G"
256 -
257 - if use system-boost; then
258 - CHECKREQS_DISK_USR="350M"
259 - else
260 - CHECKREQS_DISK_USR="510M"
261 - fi
262 -
263 - export CHECKREQS_DISK_BUILD CHECKREQS_DISK_USR
264 -}
265 -
266 -pkg_pretend() {
267 - check-reqs_export_vars
268 - check-reqs_pkg_pretend
269 -}
270 -
271 -pkg_setup() {
272 - python_setup
273 - lua_setup
274 - check-reqs_export_vars
275 - check-reqs_pkg_setup
276 -}
277 -
278 -src_prepare() {
279 - cmake_src_prepare
280 -
281 - if use system-boost; then
282 - find "${S}" -name '*.cmake' -or -name 'CMakeLists.txt' -print0 \
283 - | xargs --null sed -r \
284 - -e 's|Boost::|boost_|g' \
285 - -e 's|Boost_|boost_|g' \
286 - -e 's|[Bb]oost_boost|boost_system|g' -i || die
287 - fi
288 -
289 - sed -r -e "s:DESTINATION .+\\):DESTINATION $(get_bashcompdir)\\):" \
290 - -i src/bash_completion/CMakeLists.txt || die
291 -
292 - sed -e "s:objdump -p:$(tc-getOBJDUMP) -p:" -i CMakeLists.txt || die
293 -
294 - if ! use diskprediction; then
295 - rm -rf src/pybind/mgr/diskprediction_local || die
296 - fi
297 -
298 - # force lua version to use selected version
299 - local lua_version
300 - lua_version=$(ver_cut 1-2 $(lua_get_version))
301 - sed -i "s:find_package(Lua [0-9][.][0-9] REQUIRED):find_package(Lua ${lua_version} EXACT REQUIRED):" src/CMakeLists.txt
302 -
303 - # remove tests that need root access
304 - rm src/test/cli/ceph-authtool/cap*.t || die
305 -}
306 -
307 -ceph_src_configure() {
308 - local flag
309 - local mycmakeargs=(
310 - -DWITH_BABELTRACE=$(usex babeltrace)
311 - -DWITH_BLUESTORE_PMEM=$(usex pmdk)
312 - -DWITH_CEPHFS=$(usex cephfs)
313 - -DWITH_CEPHFS_SHELL=$(usex cephfs)
314 - -DWITH_DPDK=$(usex dpdk)
315 - -DWITH_SPDK=$(usex spdk)
316 - -DWITH_FUSE=$(usex fuse)
317 - -DWITH_LTTNG=$(usex lttng)
318 - -DWITH_GSSAPI=$(usex kerberos)
319 - -DWITH_GRAFANA=$(usex grafana)
320 - -DWITH_MGR=$(usex mgr)
321 - -DWITH_MGR_DASHBOARD_FRONTEND=OFF
322 - -DWITH_NUMA=$(usex numa)
323 - -DWITH_OPENLDAP=$(usex ldap)
324 - -DWITH_PYTHON3=3
325 - -DWITH_RADOSGW=$(usex radosgw)
326 - -DWITH_RADOSGW_AMQP_ENDPOINT=$(usex rabbitmq)
327 - -DWITH_RADOSGW_KAFKA_ENDPOINT=$(usex kafka)
328 - -DWITH_RADOSGW_LUA_PACKAGES=$(usex rgw-lua "$(usex radosgw)" "NO")
329 - -DWITH_RBD_RWL=$(usex rbd-rwl)
330 - -DWITH_RBD_SSD_CACHE=$(usex rbd-ssd)
331 - -DWITH_SSL=$(usex ssl)
332 - -DWITH_SYSTEMD=$(usex systemd)
333 - -DWITH_TESTS=$(usex test)
334 - -DWITH_LIBURING=$(usex uring)
335 - -DWITH_SYSTEM_LIBURING=$(usex uring)
336 - -DWITH_LIBCEPHSQLITE=$(usex sqlite)
337 - -DWITH_XFS=$(usex xfs)
338 - -DWITH_ZBD=$(usex zbd)
339 - -DWITH_ZFS=$(usex zfs)
340 - -DENABLE_SHARED="ON"
341 - -DALLOCATOR=$(usex tcmalloc 'tcmalloc' "$(usex jemalloc 'jemalloc' 'libc')")
342 - -DWITH_SYSTEM_PMDK=$(usex pmdk 'YES' "$(usex rbd-rwl)")
343 - -DWITH_SYSTEM_BOOST=$(usex system-boost)
344 - -DBOOST_J=$(makeopts_jobs)
345 - -DWITH_SYSTEM_ROCKSDB=ON
346 - -DWITH_RDMA=OFF
347 - -DWITH_TBB=OFF
348 - -DSYSTEMD_UNITDIR=$(systemd_get_systemunitdir)
349 - -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR=$(systemd_get_systemunitdir)
350 - -DEPYTHON_VERSION="${EPYTHON#python}"
351 - -DCMAKE_INSTALL_DOCDIR="${EPREFIX}/usr/share/doc/${PN}-${PVR}"
352 - -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}/etc"
353 - -Wno-dev
354 - )
355 -
356 - # this breaks when re-configuring for python impl
357 - [[ ${EBUILD_PHASE} == configure ]] && mycmakeargs+=(-DWITH_JAEGER=$(usex jaeger))
358 -
359 - if use amd64 || use x86; then
360 - for flag in ${CPU_FLAGS_X86[@]}; do
361 - case "${flag}" in
362 - avx*)
363 - local var=${flag%f}
364 - mycmakeargs+=("$(usex cpu_flags_x86_${flag} "-DHAVE_NASM_X64_${var^^}=1")")
365 - ;;
366 - *) mycmakeargs+=("$(usex cpu_flags_x86_${flag} "-DHAVE_INTEL_${flag^^}=1")");;
367 - esac
368 - done
369 - fi
370 -
371 - # needed for >=glibc-2.32
372 - has_version '>=sys-libs/glibc-2.32' && mycmakeargs+=(-DWITH_REENTRANT_STRSIGNAL:BOOL=ON)
373 -
374 - rm -f "${BUILD_DIR:-${S}}/CMakeCache.txt" \
375 - || die "failed to remove cmake cache"
376 -
377 - cmake_src_configure
378 -
379 - # bug #630232
380 - sed -i "s:\"${T//:\\:}/${EPYTHON}/bin/python\":\"${PYTHON}\":" \
381 - "${BUILD_DIR:-${S}}"/include/acconfig.h \
382 - || die "sed failed"
383 -}
384 -
385 -src_configure() {
386 - use custom-cflags || strip-flags
387 - ceph_src_configure
388 -}
389 -
390 -python_compile() {
391 - local CMAKE_USE_DIR="${S}"
392 - ceph_src_configure
393 -
394 - pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
395 - emake VERBOSE=1 clean
396 - emake VERBOSE=1 all
397 -
398 - # python modules are only compiled with "make install" so we need to do this to
399 - # prevent doing a bunch of compilation in src_install
400 - DESTDIR="${T}" emake VERBOSE=1 install
401 - popd >/dev/null || die
402 -}
403 -
404 -src_compile() {
405 - cmake_build VERBOSE=1 all
406 -
407 - # we have to do this here to prevent from building everything multiple times
408 - python_copy_sources
409 - python_foreach_impl python_compile
410 -}
411 -
412 -src_test() {
413 - make check || die "make check failed"
414 -}
415 -
416 -python_install() {
417 - local CMAKE_USE_DIR="${S}"
418 - pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
419 - DESTDIR="${ED}" emake VERBOSE=1 install
420 - popd >/dev/null || die
421 -
422 - python_optimize
423 -}
424 -
425 -src_install() {
426 - cmake_src_install
427 - python_foreach_impl python_install
428 -
429 - find "${ED}" -name '*.la' -type f -delete || die
430 -
431 - exeinto /usr/$(get_libdir)/ceph
432 - newexe "${BUILD_DIR}/bin/init-ceph" init-ceph
433 -
434 - insinto /etc/logrotate.d/
435 - newins "${FILESDIR}"/ceph.logrotate-r2 ${PN}
436 -
437 - keepdir /var/lib/${PN}{,/tmp} /var/log/${PN}/stat
438 -
439 - fowners -R ceph:ceph /var/log/ceph
440 -
441 - newinitd "${FILESDIR}/rbdmap.initd-r1" rbdmap
442 - newinitd "${FILESDIR}/${PN}.initd-r12" ${PN}
443 - newconfd "${FILESDIR}/${PN}.confd-r5" ${PN}
444 -
445 - insinto /etc/sysctl.d
446 - newins "${FILESDIR}"/sysctld 90-${PN}.conf
447 -
448 - use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc
449 -
450 - # units aren't installed by the build system unless systemd is enabled
451 - # so no point installing these with the USE flag disabled
452 - if use systemd; then
453 - systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" \
454 - "ceph-mds@.service"
455 -
456 - systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" \
457 - "ceph-osd@.service"
458 -
459 - fi
460 -
461 - udev_dorules udev/*.rules
462 - newtmpfiles "${FILESDIR}"/ceph-tmpfilesd ${PN}.conf
463 -
464 - readme.gentoo_create_doc
465 -
466 - python_setup
467 -
468 - # bug #630232
469 - sed -i -r "s:${T//:/\\:}/${EPYTHON}:/usr:" "${ED}"/usr/bin/ceph{,-crash} \
470 - || die "sed failed"
471 -
472 - python_fix_shebang "${ED}"/usr/{,s}bin/
473 -
474 - # python_fix_shebang apparently is not idempotent
475 - local shebang_regex='(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]'
476 - grep -r -E -l --null "${shebang_regex}" "${ED}"/usr/{s,}bin/ \
477 - | xargs --null --no-run-if-empty -- sed -i -r "s:${shebang_regex}:\1:" || die
478 -
479 - local -a rados_classes=( "${ED}/usr/$(get_libdir)/rados-classes"/* )
480 - dostrip -x "${rados_classes[@]#${ED}}"
481 -}
482 -
483 -pkg_postinst() {
484 - readme.gentoo_print_elog
485 - tmpfiles_process ${PN}.conf
486 -}
487
488 diff --git a/sys-cluster/ceph/ceph-16.2.6-r2.ebuild b/sys-cluster/ceph/ceph-16.2.6-r2.ebuild
489 deleted file mode 100644
490 index 9e09341cd8f2..000000000000
491 --- a/sys-cluster/ceph/ceph-16.2.6-r2.ebuild
492 +++ /dev/null
493 @@ -1,458 +0,0 @@
494 -# Copyright 1999-2022 Gentoo Authors
495 -# Distributed under the terms of the GNU General Public License v2
496 -
497 -EAPI=7
498 -
499 -PYTHON_COMPAT=( python3_{7..9} )
500 -DISTUTILS_OPTIONAL=1
501 -LUA_COMPAT=( lua5-3 )
502 -
503 -CMAKE_MAKEFILE_GENERATOR=emake
504 -
505 -inherit check-reqs bash-completion-r1 cmake distutils-r1 flag-o-matic \
506 - lua-single python-r1 udev readme.gentoo-r1 toolchain-funcs \
507 - systemd tmpfiles
508 -
509 -if [[ ${PV} == *9999* ]]; then
510 - inherit git-r3
511 - EGIT_REPO_URI="https://github.com/ceph/ceph.git"
512 - SRC_URI=""
513 -else
514 - SRC_URI="https://download.ceph.com/tarballs/${P}.tar.gz"
515 - KEYWORDS="amd64 ~arm64 ~ppc64"
516 -fi
517 -
518 -DESCRIPTION="Ceph distributed filesystem"
519 -HOMEPAGE="https://ceph.com/"
520 -
521 -LICENSE="Apache-2.0 LGPL-2.1 CC-BY-SA-3.0 GPL-2 GPL-2+ LGPL-2+ LGPL-2.1 LGPL-3 GPL-3 BSD Boost-1.0 MIT public-domain"
522 -SLOT="0"
523 -
524 -CPU_FLAGS_X86=(avx2 avx512f pclmul sse{,2,3,4_1,4_2} ssse3)
525 -
526 -IUSE="babeltrace +cephfs custom-cflags diskprediction dpdk fuse grafana
527 - jemalloc jaeger kafka kerberos ldap lttng +mgr numa pmdk rabbitmq
528 - +radosgw rbd-rwl rbd-ssd rgw-lua +ssl spdk +sqlite system-boost systemd
529 - +tcmalloc test uring xfs zbd zfs"
530 -IUSE+=" $(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
531 -
532 -DEPEND="
533 - ${LUA_DEPS}
534 - acct-group/ceph
535 - acct-user/ceph
536 - virtual/libudev:=
537 - app-arch/bzip2:=
538 - app-arch/lz4:=
539 - <app-arch/snappy-1.1.9:=
540 - app-arch/zstd:=
541 - app-shells/bash:0
542 - app-misc/jq:=
543 - dev-libs/crypto++:=
544 - dev-cpp/gflags:=
545 - <dev-libs/leveldb-1.23:=[snappy,tcmalloc(-)?]
546 - dev-libs/libaio:=
547 - dev-libs/libfmt:=
548 - dev-libs/libnl:3=
549 - dev-libs/libxml2:=
550 - dev-libs/libevent:=
551 - <dev-libs/rocksdb-6.15:=
552 - dev-libs/xmlsec:=[openssl]
553 - dev-cpp/yaml-cpp:=
554 - dev-libs/nss:=
555 - dev-libs/protobuf:=
556 - net-dns/c-ares:=
557 - net-libs/gnutls:=
558 - sys-auth/oath-toolkit:=
559 - sys-apps/coreutils
560 - sys-apps/grep
561 - sys-apps/hwloc:=
562 - sys-apps/keyutils:=
563 - sys-apps/util-linux:=
564 - sys-apps/sed
565 - sys-apps/util-linux
566 - sys-libs/libcap-ng:=
567 - sys-libs/ncurses:0=
568 - sys-libs/zlib:=
569 - sys-process/numactl:=
570 - virtual/libcrypt:=
571 - x11-libs/libpciaccess:=
572 - babeltrace? ( dev-util/babeltrace )
573 - fuse? ( sys-fs/fuse:0= )
574 - jemalloc? ( dev-libs/jemalloc:= )
575 - !jemalloc? ( >=dev-util/google-perftools-2.6.1:= )
576 - jaeger? ( dev-cpp/nlohmann_json:= )
577 - kafka? ( dev-libs/librdkafka:= )
578 - kerberos? ( virtual/krb5 )
579 - ldap? ( net-nds/openldap:= )
580 - lttng? ( dev-util/lttng-ust:= )
581 - pmdk? ( dev-libs/pmdk:= )
582 - rabbitmq? ( net-libs/rabbitmq-c:= )
583 - radosgw? (
584 - dev-libs/icu:=
585 - dev-libs/expat:=
586 - dev-libs/openssl:=
587 - net-misc/curl:=[curl_ssl_openssl]
588 - )
589 - rbd-rwl? ( dev-libs/pmdk:= )
590 - ssl? ( dev-libs/openssl:= )
591 - sqlite? ( dev-db/sqlite:= )
592 - system-boost? ( >=dev-libs/boost-1.72:=[threads(+),context,python,${PYTHON_USEDEP}] )
593 - uring? ( sys-libs/liburing:= )
594 - xfs? ( sys-fs/xfsprogs:= )
595 - zbd? ( sys-block/libzbd:= )
596 - zfs? ( sys-fs/zfs:= )
597 - ${PYTHON_DEPS}
598 -"
599 -BDEPEND="
600 - amd64? ( dev-lang/nasm )
601 - x86? ( dev-lang/yasm )
602 - app-arch/cpio
603 - >=dev-util/cmake-3.5.0
604 - dev-python/cython[${PYTHON_USEDEP}]
605 - dev-python/setuptools[${PYTHON_USEDEP}]
606 - dev-python/sphinx
607 - dev-util/cunit
608 - dev-util/gperf
609 - dev-util/ragel
610 - dev-util/valgrind
611 - sys-apps/coreutils
612 - sys-apps/grep
613 - sys-apps/sed
614 - sys-apps/which
615 - sys-devel/bc
616 - sys-devel/patch
617 - virtual/pkgconfig
618 - jaeger? (
619 - sys-devel/bison
620 - sys-devel/flex
621 - )
622 - test? (
623 - dev-python/coverage[${PYTHON_USEDEP}]
624 - dev-python/virtualenv[${PYTHON_USEDEP}]
625 - dev-python/requests-mock[${PYTHON_USEDEP}]
626 - sys-apps/grep[pcre]
627 - sys-fs/btrfs-progs
628 - )
629 -"
630 -RDEPEND="
631 - ${DEPEND}
632 - app-admin/sudo
633 - net-misc/socat
634 - sys-apps/gptfdisk
635 - sys-apps/nvme-cli
636 - >=sys-apps/smartmontools-7.0
637 - sys-block/parted
638 - sys-fs/cryptsetup
639 - sys-fs/lsscsi
640 - sys-fs/lvm2[-device-mapper-only(-)]
641 - virtual/awk
642 - dev-python/bcrypt[${PYTHON_USEDEP}]
643 - dev-python/cherrypy[${PYTHON_USEDEP}]
644 - dev-python/python-dateutil[${PYTHON_USEDEP}]
645 - dev-python/flask[${PYTHON_USEDEP}]
646 - dev-python/jinja[${PYTHON_USEDEP}]
647 - dev-python/pecan[${PYTHON_USEDEP}]
648 - dev-python/prettytable[${PYTHON_USEDEP}]
649 - dev-python/pyopenssl[${PYTHON_USEDEP}]
650 - dev-python/pyyaml[${PYTHON_USEDEP}]
651 - dev-python/requests[${PYTHON_USEDEP}]
652 - dev-python/werkzeug[${PYTHON_USEDEP}]
653 - mgr? (
654 - dev-python/jsonpatch[${PYTHON_USEDEP}]
655 - dev-python/more-itertools[${PYTHON_USEDEP}]
656 - dev-python/numpy[${PYTHON_USEDEP}]
657 - dev-python/pyjwt[${PYTHON_USEDEP}]
658 - dev-python/routes[${PYTHON_USEDEP}]
659 - diskprediction? (
660 - >=dev-python/scipy-1.4.0[${PYTHON_USEDEP}]
661 - )
662 - sci-libs/scikit-learn[${PYTHON_USEDEP}]
663 - dev-python/six[${PYTHON_USEDEP}]
664 - )
665 -"
666 -# diskprediction needs older scipy not compatible with py38
667 -# bug #724438
668 -REQUIRED_USE="
669 - ${PYTHON_REQUIRED_USE}
670 - ${LUA_REQUIRED_USE}
671 - ?? ( jemalloc tcmalloc )
672 - jaeger? ( !system-boost )
673 - diskprediction? ( mgr )
674 - kafka? ( radosgw )
675 - mgr? ( cephfs )
676 - rabbitmq? ( radosgw )
677 -"
678 -RESTRICT="!test? ( test )"
679 -
680 -# the tests need root access
681 -RESTRICT="test? ( userpriv )"
682 -
683 -# distribution tarball does not include everything needed for tests
684 -RESTRICT+=" test"
685 -
686 -# create a non-debug release
687 -CMAKE_BUILD_TYPE=RelWithDebInfo
688 -
689 -# false positives unless all USE flags are on
690 -CMAKE_WARN_UNUSED_CLI=no
691 -
692 -PATCHES=(
693 - "${FILESDIR}/ceph-12.2.0-use-provided-cpu-flag-values.patch"
694 - "${FILESDIR}/ceph-14.2.0-cflags.patch"
695 - "${FILESDIR}/ceph-12.2.4-boost-build-none-options.patch"
696 - "${FILESDIR}/ceph-16.2.2-cflags.patch"
697 - "${FILESDIR}/ceph-16.2.2-no-virtualenvs.patch"
698 - "${FILESDIR}/ceph-13.2.2-dont-install-sysvinit-script.patch"
699 - "${FILESDIR}/ceph-14.2.0-dpdk-cflags.patch"
700 - "${FILESDIR}/ceph-14.2.0-cython-0.29.patch"
701 - "${FILESDIR}/ceph-16.2.0-rocksdb-cmake.patch"
702 - "${FILESDIR}/ceph-15.2.3-spdk-compile.patch"
703 - "${FILESDIR}/ceph-16.2.0-spdk-tinfo.patch"
704 - "${FILESDIR}/ceph-16.2.0-jaeger-system-boost.patch"
705 - "${FILESDIR}/ceph-16.2.0-liburing.patch"
706 - "${FILESDIR}/ceph-16.2.2-system-zstd.patch"
707 -)
708 -
709 -check-reqs_export_vars() {
710 - CHECKREQS_DISK_BUILD="6G"
711 -
712 - if use system-boost; then
713 - CHECKREQS_DISK_USR="350M"
714 - else
715 - CHECKREQS_DISK_USR="510M"
716 - fi
717 -
718 - export CHECKREQS_DISK_BUILD CHECKREQS_DISK_USR
719 -}
720 -
721 -pkg_pretend() {
722 - check-reqs_export_vars
723 - check-reqs_pkg_pretend
724 -}
725 -
726 -pkg_setup() {
727 - python_setup
728 - lua_setup
729 - check-reqs_export_vars
730 - check-reqs_pkg_setup
731 -}
732 -
733 -src_prepare() {
734 - cmake_src_prepare
735 -
736 - if use system-boost; then
737 - find "${S}" -name '*.cmake' -or -name 'CMakeLists.txt' -print0 \
738 - | xargs --null sed -r \
739 - -e 's|Boost::|boost_|g' \
740 - -e 's|Boost_|boost_|g' \
741 - -e 's|[Bb]oost_boost|boost_system|g' -i || die
742 - fi
743 -
744 - if ! use systemd; then
745 - find "${S}"/src/ceph-volume/ceph_volume -name '*.py' -print0 \
746 - | xargs --null sed \
747 - -e '/^from ceph_volume.systemd import systemctl/ d' \
748 - -i || die
749 - fi
750 -
751 - sed -r -e "s:DESTINATION .+\\):DESTINATION $(get_bashcompdir)\\):" \
752 - -i src/bash_completion/CMakeLists.txt || die
753 -
754 - sed -e "s:objdump -p:$(tc-getOBJDUMP) -p:" -i CMakeLists.txt || die
755 -
756 - if ! use diskprediction; then
757 - rm -rf src/pybind/mgr/diskprediction_local || die
758 - fi
759 -
760 - # force lua version to use selected version
761 - local lua_version
762 - lua_version=$(ver_cut 1-2 $(lua_get_version))
763 - sed -i "s:find_package(Lua [0-9][.][0-9] REQUIRED):find_package(Lua ${lua_version} EXACT REQUIRED):" src/CMakeLists.txt
764 -
765 - # remove tests that need root access
766 - rm src/test/cli/ceph-authtool/cap*.t || die
767 -}
768 -
769 -ceph_src_configure() {
770 - local flag
771 - local mycmakeargs=(
772 - -DWITH_BABELTRACE=$(usex babeltrace)
773 - -DWITH_BLUESTORE_PMEM=$(usex pmdk)
774 - -DWITH_CEPHFS=$(usex cephfs)
775 - -DWITH_CEPHFS_SHELL=$(usex cephfs)
776 - -DWITH_DPDK=$(usex dpdk)
777 - -DWITH_SPDK=$(usex spdk)
778 - -DWITH_FUSE=$(usex fuse)
779 - -DWITH_LTTNG=$(usex lttng)
780 - -DWITH_GSSAPI=$(usex kerberos)
781 - -DWITH_GRAFANA=$(usex grafana)
782 - -DWITH_MGR=$(usex mgr)
783 - -DWITH_MGR_DASHBOARD_FRONTEND=OFF
784 - -DWITH_NUMA=$(usex numa)
785 - -DWITH_OPENLDAP=$(usex ldap)
786 - -DWITH_PYTHON3=3
787 - -DWITH_RADOSGW=$(usex radosgw)
788 - -DWITH_RADOSGW_AMQP_ENDPOINT=$(usex rabbitmq)
789 - -DWITH_RADOSGW_KAFKA_ENDPOINT=$(usex kafka)
790 - -DWITH_RADOSGW_LUA_PACKAGES=$(usex rgw-lua "$(usex radosgw)" "NO")
791 - -DWITH_RBD_RWL=$(usex rbd-rwl)
792 - -DWITH_RBD_SSD_CACHE=$(usex rbd-ssd)
793 - -DWITH_SSL=$(usex ssl)
794 - -DWITH_SYSTEMD=$(usex systemd)
795 - -DWITH_TESTS=$(usex test)
796 - -DWITH_LIBURING=$(usex uring)
797 - -DWITH_SYSTEM_LIBURING=$(usex uring)
798 - -DWITH_LIBCEPHSQLITE=$(usex sqlite)
799 - -DWITH_XFS=$(usex xfs)
800 - -DWITH_ZBD=$(usex zbd)
801 - -DWITH_ZFS=$(usex zfs)
802 - -DENABLE_SHARED="ON"
803 - -DALLOCATOR=$(usex tcmalloc 'tcmalloc' "$(usex jemalloc 'jemalloc' 'libc')")
804 - -DWITH_SYSTEM_PMDK=$(usex pmdk 'YES' "$(usex rbd-rwl)")
805 - -DWITH_SYSTEM_BOOST=$(usex system-boost)
806 - -DBOOST_J=$(makeopts_jobs)
807 - -DWITH_SYSTEM_ROCKSDB=ON
808 - -DWITH_RDMA=OFF
809 - -DWITH_TBB=OFF
810 - -DSYSTEMD_UNITDIR=$(systemd_get_systemunitdir)
811 - -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR=$(systemd_get_systemunitdir)
812 - -DEPYTHON_VERSION="${EPYTHON#python}"
813 - -DCMAKE_INSTALL_DOCDIR="${EPREFIX}/usr/share/doc/${PN}-${PVR}"
814 - -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}/etc"
815 - -Wno-dev
816 - )
817 -
818 - # this breaks when re-configuring for python impl
819 - [[ ${EBUILD_PHASE} == configure ]] && mycmakeargs+=(-DWITH_JAEGER=$(usex jaeger))
820 -
821 - if use amd64 || use x86; then
822 - for flag in ${CPU_FLAGS_X86[@]}; do
823 - case "${flag}" in
824 - avx*)
825 - local var=${flag%f}
826 - mycmakeargs+=("$(usex cpu_flags_x86_${flag} "-DHAVE_NASM_X64_${var^^}=1")")
827 - ;;
828 - *) mycmakeargs+=("$(usex cpu_flags_x86_${flag} "-DHAVE_INTEL_${flag^^}=1")");;
829 - esac
830 - done
831 - fi
832 -
833 - # needed for >=glibc-2.32
834 - has_version '>=sys-libs/glibc-2.32' && mycmakeargs+=(-DWITH_REENTRANT_STRSIGNAL:BOOL=ON)
835 -
836 - rm -f "${BUILD_DIR:-${S}}/CMakeCache.txt" \
837 - || die "failed to remove cmake cache"
838 -
839 - cmake_src_configure
840 -
841 - # bug #630232
842 - sed -i "s:\"${T//:\\:}/${EPYTHON}/bin/python\":\"${PYTHON}\":" \
843 - "${BUILD_DIR:-${S}}"/include/acconfig.h \
844 - || die "sed failed"
845 -}
846 -
847 -src_configure() {
848 - use custom-cflags || strip-flags
849 - ceph_src_configure
850 -}
851 -
852 -python_compile() {
853 - local CMAKE_USE_DIR="${S}"
854 - ceph_src_configure
855 -
856 - pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
857 - emake VERBOSE=1 clean
858 - emake VERBOSE=1 all
859 -
860 - # python modules are only compiled with "make install" so we need to do this to
861 - # prevent doing a bunch of compilation in src_install
862 - DESTDIR="${T}" emake VERBOSE=1 install
863 - popd >/dev/null || die
864 -}
865 -
866 -src_compile() {
867 - cmake_build VERBOSE=1 all
868 -
869 - # we have to do this here to prevent from building everything multiple times
870 - python_copy_sources
871 - python_foreach_impl python_compile
872 -}
873 -
874 -src_test() {
875 - make check || die "make check failed"
876 -}
877 -
878 -python_install() {
879 - local CMAKE_USE_DIR="${S}"
880 - pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
881 - DESTDIR="${ED}" emake VERBOSE=1 install
882 - popd >/dev/null || die
883 -
884 - python_optimize
885 -}
886 -
887 -src_install() {
888 - cmake_src_install
889 - python_foreach_impl python_install
890 -
891 - find "${ED}" -name '*.la' -type f -delete || die
892 -
893 - exeinto /usr/$(get_libdir)/ceph
894 - newexe "${BUILD_DIR}/bin/init-ceph" init-ceph
895 -
896 - insinto /etc/logrotate.d/
897 - newins "${FILESDIR}"/ceph.logrotate-r2 ${PN}
898 -
899 - keepdir /var/lib/${PN}{,/tmp} /var/log/${PN}/stat
900 -
901 - fowners -R ceph:ceph /var/log/ceph
902 -
903 - newinitd "${FILESDIR}/rbdmap.initd-r1" rbdmap
904 - newinitd "${FILESDIR}/${PN}.initd-r12" ${PN}
905 - newconfd "${FILESDIR}/${PN}.confd-r5" ${PN}
906 -
907 - insinto /etc/sudoers.d
908 - doins sudoers.d/*
909 -
910 - insinto /etc/sysctl.d
911 - newins "${FILESDIR}"/sysctld 90-${PN}.conf
912 -
913 - use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc
914 -
915 - # units aren't installed by the build system unless systemd is enabled
916 - # so no point installing these with the USE flag disabled
917 - if use systemd; then
918 - systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" \
919 - "ceph-mds@.service"
920 -
921 - systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" \
922 - "ceph-osd@.service"
923 -
924 - fi
925 -
926 - udev_dorules udev/*.rules
927 - newtmpfiles "${FILESDIR}"/ceph-tmpfilesd ${PN}.conf
928 -
929 - readme.gentoo_create_doc
930 -
931 - python_setup
932 -
933 - # bug #630232
934 - sed -i -r "s:${T//:/\\:}/${EPYTHON}:/usr:" "${ED}"/usr/bin/ceph{,-crash} \
935 - || die "sed failed"
936 -
937 - python_fix_shebang "${ED}"/usr/{,s}bin/
938 -
939 - # python_fix_shebang apparently is not idempotent
940 - local shebang_regex='(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]'
941 - grep -r -E -l --null "${shebang_regex}" "${ED}"/usr/{s,}bin/ \
942 - | xargs --null --no-run-if-empty -- sed -i -r "s:${shebang_regex}:\1:" || die
943 -
944 - local -a rados_classes=( "${ED}/usr/$(get_libdir)/rados-classes"/* )
945 - dostrip -x "${rados_classes[@]#${ED}}"
946 -}
947 -
948 -pkg_postinst() {
949 - readme.gentoo_print_elog
950 - tmpfiles_process ${PN}.conf
951 -}