From d39fec05a2fac9978cd77634744637509744b561 Mon Sep 17 00:00:00 2001
From: V3n3RiX <venerix@koprulu.sector>
Date: Wed, 18 Jan 2023 23:57:59 +0000
Subject: gentoo auto-resync : 18:01:2023 - 23:57:58

---
 sys-cluster/Manifest.gz                 | Bin 11543 -> 11545 bytes
 sys-cluster/ceph/Manifest               |   1 +
 sys-cluster/ceph/ceph-16.2.10-r5.ebuild | 474 ++++++++++++++++++++++++++++++++
 3 files changed, 475 insertions(+)
 create mode 100644 sys-cluster/ceph/ceph-16.2.10-r5.ebuild

(limited to 'sys-cluster')

diff --git a/sys-cluster/Manifest.gz b/sys-cluster/Manifest.gz
index 435ec8b8d7bb..c65b499ef235 100644
Binary files a/sys-cluster/Manifest.gz and b/sys-cluster/Manifest.gz differ
diff --git a/sys-cluster/ceph/Manifest b/sys-cluster/ceph/Manifest
index 9cd76e854ce6..b23d3137c23c 100644
--- a/sys-cluster/ceph/Manifest
+++ b/sys-cluster/ceph/Manifest
@@ -66,6 +66,7 @@ EBUILD ceph-15.2.17-r1.ebuild 10738 BLAKE2B b1ba87c79787ba06a70d4b1bfd4ca7fc75f1
 EBUILD ceph-15.2.17-r2.ebuild 10803 BLAKE2B e899995e255acfb9b9a2c83c53c5d5836aaaea60248457e3d06af3f4e88ae2ebf23f89bbd8e4189d5050b7a99cc10d6057f8d3a3b31e9e0a272a1f9e8b988d61 SHA512 96075ab8049839e75f50e1b7deb64502ed29081df0b80a8532bb271c4b584084ada4a375cd99a8d1d7eede7463972851e94d39d6a7a123f960c1478ac31ad731
 EBUILD ceph-16.2.10-r3.ebuild 12509 BLAKE2B 668b65f8f9b18e3ca5d3f141285f82e8a87dfdc5a4f6e12b8ba9e05db7fb5e7fef467e33c5318ec829431b12ee7669a480a24575d3708a36e2358c8ff38f05ec SHA512 1aa022806a948f1d414d2a16d504e78a4f260899083562d855701a5919489cd08db0bd1304e9a12827f4f0c807f5d7bafadcc31fab6e89137e76ff38c207ee60
 EBUILD ceph-16.2.10-r4.ebuild 12561 BLAKE2B 28586877dbe1cf3b593a035ab383df88add75f13fad03d2f31b6e22afbb6db55ae86c1b8c5278a676f9fc7ecfe793c5e6c1bee0b3461a82168b6f51fead063f2 SHA512 f761562926b506ed688021a22a87ea937605fce7a5cfb7848694e57ba0bb83670842af4072b1bc1f245ebf3827aafbb2dc3fd9537afd52587a26c946a423032c
+EBUILD ceph-16.2.10-r5.ebuild 12605 BLAKE2B f67cba2ebf7f7d572e23c5ad7f47958d9f6fa1aa26e1df0989247d3467ed4fd8e4c80ee3c682adb2bf3ce6d25ea18a4840e97c4a0f419c6ba86a6d11fa53e1d5 SHA512 d4c524e8738cd50c965622688123294cf4a4cad3956cabea72249308b4db196548d845c3ca3b4a2071840bee107570fc7bdc468d6411630c430af635ea2c9b2a
 EBUILD ceph-16.2.9-r3.ebuild 12577 BLAKE2B 2fc89ce85821460a715a605f73d4ebe2ff6626ac65c6e193112af2f12025cbebbe1561a01e3eaa94f02a1fbfca6f5cfb562c90ccc34943ab281fad2a07d4813f SHA512 ff757822896783a6584f352456780396dacc5ae9caf58b2c41b2dc782291d46aeaf217456650a78b63e52c24642bf1d5595b7b642473839f28b5b8ddc3075fa2
 EBUILD ceph-17.2.3-r4.ebuild 12657 BLAKE2B d723e4c8519d8d1440300f47a9d3f1871593c2aacd82a7bf4d9bea32a2ba04a52de6fdadc26c3e49e90c7f34724fe1547a33d5030bd4ab1ebb5517db2cf94b10 SHA512 3fe4609c095e9744466a1c51432b2ec78b94b18e226d71c572ee4b528a59e62649051ea07d6069bb7448e061bf59fdd5f51b2a9ad0ea62ff242445e64ebccc48
 EBUILD ceph-17.2.4-r1.ebuild 12634 BLAKE2B 8e00dee967bf4484c5c4956440a1ac5c54a08827ee7e9200ce9e44799417543df9e969bb2ce83313df39dc15cca4f055ba47be5eb31581df114b04606803db22 SHA512 9ed532de660cf94acba59de8cc5413a4b37840f1ca2381c5fa22321907d9f9a50f83b627bd87cbaf88ee6f6ab0c9e7ac002418119ce0b44fb994cf16ab91a28a
diff --git a/sys-cluster/ceph/ceph-16.2.10-r5.ebuild b/sys-cluster/ceph/ceph-16.2.10-r5.ebuild
new file mode 100644
index 000000000000..d1e012f1dd77
--- /dev/null
+++ b/sys-cluster/ceph/ceph-16.2.10-r5.ebuild
@@ -0,0 +1,474 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..10} )
+LUA_COMPAT=( lua5-3 )
+
+CMAKE_MAKEFILE_GENERATOR=emake
+
+inherit check-reqs bash-completion-r1 cmake python-r1 flag-o-matic \
+		lua-single udev readme.gentoo-r1 toolchain-funcs systemd tmpfiles
+
+SRC_URI="https://download.ceph.com/tarballs/${P}.tar.gz"
+KEYWORDS="~amd64 ~arm64 ~ppc64"
+
+DESCRIPTION="Ceph distributed filesystem"
+HOMEPAGE="https://ceph.com/"
+
+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"
+SLOT="0"
+
+CPU_FLAGS_X86=(avx2 avx512f pclmul sse{,2,3,4_1,4_2} ssse3)
+
+IUSE="
+	babeltrace +cephfs custom-cflags diskprediction dpdk fuse grafana
+	jemalloc jaeger kafka kerberos ldap lttng +mgr numa pmdk rabbitmq
+	+radosgw rbd-rwl rbd-ssd rdma rgw-lua +ssl spdk +sqlite +system-boost
+	systemd +tcmalloc test uring xfs zbd zfs
+"
+
+IUSE+="$(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
+
+DEPEND="
+	${LUA_DEPS}
+	${PYTHON_DEPS}
+	acct-group/ceph
+	acct-user/ceph
+	virtual/libudev:=
+	app-arch/bzip2:=
+	app-arch/lz4:=
+	app-arch/snappy:=
+	>=app-arch/snappy-1.1.9-r1
+	app-arch/zstd:=
+	app-shells/bash:0
+	app-misc/jq:=
+	dev-libs/crypto++:=
+	dev-cpp/gflags:=
+	<dev-libs/leveldb-1.23:=[snappy,tcmalloc(-)?]
+	dev-libs/libaio:=
+	<dev-libs/libfmt-9:=
+	dev-libs/libnl:3=
+	dev-libs/libxml2:=
+	dev-libs/libevent:=
+	dev-libs/openssl:=
+	<dev-libs/rocksdb-6.15:=
+	dev-libs/xmlsec:=[openssl]
+	dev-cpp/yaml-cpp:=
+	dev-libs/nss:=
+	dev-libs/protobuf:=
+	net-dns/c-ares:=
+	net-libs/gnutls:=
+	sys-auth/oath-toolkit:=
+	sys-apps/coreutils
+	sys-apps/hwloc:=
+	sys-apps/keyutils:=
+	sys-apps/util-linux:=
+	sys-apps/util-linux
+	sys-libs/libcap-ng:=
+	sys-libs/ncurses:0=
+	sys-libs/zlib:=
+	sys-process/numactl:=
+	virtual/libcrypt:=
+	x11-libs/libpciaccess:=
+	babeltrace? ( dev-util/babeltrace )
+	fuse? ( sys-fs/fuse:3= )
+	jemalloc? ( dev-libs/jemalloc:= )
+	!jemalloc? ( >=dev-util/google-perftools-2.6.1:= )
+	jaeger? ( dev-cpp/nlohmann_json:= )
+	kafka? ( dev-libs/librdkafka:= )
+	kerberos? ( virtual/krb5 )
+	ldap? ( net-nds/openldap:= )
+	lttng? ( dev-util/lttng-ust:= )
+	pmdk? ( dev-libs/pmdk:= )
+	rabbitmq? ( net-libs/rabbitmq-c:= )
+	radosgw? (
+		dev-libs/icu:=
+		dev-libs/expat:=
+		net-misc/curl:=[curl_ssl_openssl]
+	)
+	rbd-rwl? ( dev-libs/pmdk:= )
+	rdma? ( sys-cluster/rdma-core:= )
+	spdk? ( dev-util/cunit )
+	sqlite? ( dev-db/sqlite:= )
+	system-boost? ( dev-libs/boost:=[context,python,${PYTHON_USEDEP},zlib] )
+	!system-boost? ( $(python_gen_impl_dep '' 3.8 3.9) )
+	uring? ( sys-libs/liburing:= )
+	xfs? ( sys-fs/xfsprogs:= )
+	zbd? ( sys-block/libzbd:= )
+	zfs? ( sys-fs/zfs:= )
+"
+BDEPEND="
+	amd64? ( dev-lang/nasm )
+	x86? ( dev-lang/yasm )
+	app-arch/cpio
+	>=dev-util/cmake-3.5.0
+	dev-python/cython[${PYTHON_USEDEP}]
+	dev-python/setuptools[${PYTHON_USEDEP}]
+	dev-python/sphinx
+	dev-util/gperf
+	dev-util/ragel
+	dev-util/valgrind
+	sys-apps/coreutils
+	sys-apps/grep
+	sys-apps/util-linux
+	sys-apps/which
+	sys-devel/bc
+	sys-devel/patch
+	virtual/pkgconfig
+	jaeger? (
+		sys-devel/bison
+		sys-devel/flex
+	)
+	test? (
+		dev-util/cunit
+		dev-python/coverage[${PYTHON_USEDEP}]
+		dev-python/virtualenv[${PYTHON_USEDEP}]
+		dev-python/requests-mock[${PYTHON_USEDEP}]
+		sys-apps/grep[pcre]
+		sys-fs/btrfs-progs
+	)
+"
+RDEPEND="
+	${DEPEND}
+	app-admin/sudo
+	net-misc/socat
+	sys-apps/gptfdisk
+	sys-apps/nvme-cli
+	>=sys-apps/smartmontools-7.0
+	sys-block/parted
+	sys-fs/cryptsetup
+	sys-fs/lsscsi
+	sys-fs/lvm2[lvm]
+	app-alternatives/awk
+	dev-python/bcrypt[${PYTHON_USEDEP}]
+	dev-python/cherrypy[${PYTHON_USEDEP}]
+	dev-python/python-dateutil[${PYTHON_USEDEP}]
+	dev-python/flask[${PYTHON_USEDEP}]
+	dev-python/jinja[${PYTHON_USEDEP}]
+	dev-python/pecan[${PYTHON_USEDEP}]
+	dev-python/prettytable[${PYTHON_USEDEP}]
+	dev-python/pyopenssl[${PYTHON_USEDEP}]
+	dev-python/pyyaml[${PYTHON_USEDEP}]
+	dev-python/requests[${PYTHON_USEDEP}]
+	dev-python/werkzeug[${PYTHON_USEDEP}]
+	mgr? (
+		dev-python/jsonpatch[${PYTHON_USEDEP}]
+		dev-python/more-itertools[${PYTHON_USEDEP}]
+		dev-python/numpy[${PYTHON_USEDEP}]
+		dev-python/pyjwt[${PYTHON_USEDEP}]
+		dev-python/routes[${PYTHON_USEDEP}]
+		diskprediction? (
+			>=dev-python/scipy-1.4.0[${PYTHON_USEDEP}]
+		)
+		sci-libs/scikit-learn[${PYTHON_USEDEP}]
+		dev-python/six[${PYTHON_USEDEP}]
+	)
+"
+REQUIRED_USE="
+	${PYTHON_REQUIRED_USE}
+	${LUA_REQUIRED_USE}
+	?? ( jemalloc tcmalloc )
+	jaeger? ( !system-boost )
+	diskprediction? ( mgr )
+	kafka? ( radosgw )
+	mgr? ( cephfs )
+	rabbitmq? ( radosgw )
+	!system-boost? (
+		python_targets_python3_9
+		python_targets_python3_10
+	)
+"
+
+RESTRICT="
+	!test? ( test )
+"
+
+# tests need root access, and network access
+RESTRICT+="test"
+
+# create a non-debug release
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+# false positives unless all USE flags are on
+CMAKE_WARN_UNUSED_CLI=no
+
+PATCHES=(
+	"${FILESDIR}/ceph-12.2.0-use-provided-cpu-flag-values.patch"
+	"${FILESDIR}/ceph-14.2.0-cflags.patch"
+	"${FILESDIR}/ceph-12.2.4-boost-build-none-options.patch"
+	"${FILESDIR}/ceph-16.2.2-cflags.patch"
+	"${FILESDIR}/ceph-16.2.8-no-virtualenvs.patch"
+	"${FILESDIR}/ceph-13.2.2-dont-install-sysvinit-script.patch"
+	"${FILESDIR}/ceph-14.2.0-dpdk-cflags.patch"
+	"${FILESDIR}/ceph-14.2.0-cython-0.29.patch"
+	"${FILESDIR}/ceph-16.2.0-rocksdb-cmake.patch"
+	"${FILESDIR}/ceph-15.2.3-spdk-compile.patch"
+	"${FILESDIR}/ceph-16.2.0-spdk-tinfo.patch"
+	"${FILESDIR}/ceph-16.2.0-jaeger-system-boost.patch"
+	"${FILESDIR}/ceph-16.2.0-liburing.patch"
+	"${FILESDIR}/ceph-16.2.2-system-zstd.patch"
+	"${FILESDIR}/ceph-16.2.7-string-includes.patch"
+	"${FILESDIR}/ceph-17.2.0-fuse3.patch"
+	"${FILESDIR}/ceph-16.2.9-python310.patch"
+	"${FILESDIR}/ceph-17.2.0-gcc12-header.patch"
+	"${FILESDIR}/ceph-16.2.10-flags.patch"
+	"${FILESDIR}/ceph-17.2.5-boost-1.81.patch"
+)
+
+check-reqs_export_vars() {
+	CHECKREQS_DISK_BUILD="6G"
+
+	if use system-boost; then
+		CHECKREQS_DISK_USR="350M"
+	else
+		CHECKREQS_DISK_USR="510M"
+	fi
+
+	export CHECKREQS_DISK_BUILD CHECKREQS_DISK_USR
+}
+
+pkg_pretend() {
+	check-reqs_export_vars
+	check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+	if ! use system-boost; then
+		python_setup 3.8 3.9
+	else
+		python_setup
+	fi
+	lua_setup
+	check-reqs_export_vars
+	check-reqs_pkg_setup
+}
+
+src_prepare() {
+	cmake_src_prepare
+
+	if use system-boost; then
+		find "${S}" -name '*.cmake' -or -name 'CMakeLists.txt' -print0 \
+			| xargs --null sed -r \
+			-e 's|Boost::|boost_|g' \
+			-e 's|Boost_|boost_|g' \
+			-e 's|[Bb]oost_boost|boost_system|g' \
+			-i || die
+	fi
+
+	if ! use systemd; then
+		find "${S}"/src/ceph-volume/ceph_volume -name '*.py' -print0 \
+			| xargs --null sed \
+			-e '/^from ceph_volume.systemd import systemctl/ d' \
+			-i || die
+	fi
+
+	sed -r -e "s:DESTINATION .+\\):DESTINATION $(get_bashcompdir)\\):" \
+		-i src/bash_completion/CMakeLists.txt || die
+
+	sed  -e "s:objdump -p:$(tc-getOBJDUMP) -p:" -i CMakeLists.txt || die
+
+	if ! use diskprediction; then
+		rm -rf src/pybind/mgr/diskprediction_local || die
+	fi
+
+	# force lua version to use selected version
+	local lua_version
+	lua_version=$(ver_cut 1-2 $(lua_get_version))
+	sed "s:find_package(Lua [0-9][.][0-9] REQUIRED):find_package(Lua ${lua_version} EXACT REQUIRED):" \
+		-i src/CMakeLists.txt
+
+	# remove tests that need root access
+	rm src/test/cli/ceph-authtool/cap*.t || die
+}
+
+ceph_src_configure() {
+	local mycmakeargs=(
+		-DWITH_BABELTRACE:BOOL=$(usex babeltrace)
+		-DWITH_BLUESTORE_PMEM:BOOL=$(usex pmdk)
+		-DWITH_CEPHFS:BOOL=$(usex cephfs)
+		-DWITH_CEPHFS_SHELL:BOOL=$(usex cephfs)
+		-DWITH_DPDK:BOOL=$(usex dpdk)
+		-DWITH_SPDK:BOOL=$(usex spdk)
+		-DWITH_FUSE:BOOL=$(usex fuse)
+		-DWITH_LTTNG:BOOL=$(usex lttng)
+		-DWITH_GSSAPI:BOOL=$(usex kerberos)
+		-DWITH_GRAFANA:BOOL=$(usex grafana)
+		-DWITH_MGR:BOOL=$(usex mgr)
+		-DWITH_MGR_DASHBOARD_FRONTEND:BOOL=OFF
+		-DWITH_OPENLDAP:BOOL=$(usex ldap)
+		-DWITH_PYTHON3:STRING=3
+		-DWITH_RADOSGW:BOOL=$(usex radosgw)
+		-DWITH_RADOSGW_AMQP_ENDPOINT:BOOL=$(usex rabbitmq)
+		-DWITH_RADOSGW_KAFKA_ENDPOINT:BOOL=$(usex kafka)
+		-DWITH_RADOSGW_LUA_PACKAGES:BOOL=$(usex rgw-lua "$(usex radosgw)" "NO")
+		-DWITH_RBD_RWL:BOOL=$(usex rbd-rwl)
+		-DWITH_RBD_SSD_CACHE:BOOL=$(usex rbd-ssd)
+		-DWITH_SYSTEMD:BOOL=$(usex systemd)
+		-DWITH_TESTS:BOOL=$(usex test)
+		-DWITH_LIBURING:BOOL=$(usex uring)
+		-DWITH_SYSTEM_LIBURING:BOOL=$(usex uring)
+		-DWITH_LIBCEPHSQLITE:BOOL=$(usex sqlite)
+		-DWITH_XFS:BOOL=$(usex xfs)
+		-DWITH_ZBD:BOOL=$(usex zbd)
+		-DWITH_ZFS:BOOL=$(usex zfs)
+		-DENABLE_SHARED:BOOL=ON
+		-DALLOCATOR:STRING=$(usex tcmalloc 'tcmalloc' "$(usex jemalloc 'jemalloc' 'libc')")
+		-DWITH_SYSTEM_PMDK:BOOL=$(usex pmdk 'YES' "$(usex rbd-rwl)")
+		-DWITH_SYSTEM_BOOST:BOOL=$(usex system-boost)
+		-DWITH_SYSTEM_ROCKSDB:BOOL=ON
+		-DWITH_RDMA:BOOL=$(usex rdma)
+		-DCMAKE_INSTALL_DOCDIR:PATH="${EPREFIX}/usr/share/doc/${PN}-${PVR}"
+		-DCMAKE_INSTALL_SYSCONFDIR:PATH="${EPREFIX}/etc"
+		-Wno-dev
+	)
+
+	# this breaks when re-configuring for python impl
+	if [[ ${EBUILD_PHASE} == configure ]]; then
+		mycmakeargs+=(
+			-DWITH_JAEGER:BOOL=$(usex jaeger)
+		)
+	else
+		mycmakeargs+=(
+			-DWITH_RADOSGW_SELECT_PARQUET:BOOL=OFF
+		)
+	fi
+
+	# conditionally used cmake args
+	use test && mycmakearts+=( -DWITH_SYSTEM_GTEST:BOOL=$(usex test) )
+	use systemd && mycmakeargs+=( -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR:PATH=$(systemd_get_systemunitdir) )
+
+	if use amd64 || use x86; then
+		local flag
+		for flag in "${CPU_FLAGS_X86[@]}"; do
+			case "${flag}" in
+				avx*)
+					local var=${flag%f}
+					mycmakeargs+=(
+						"-DHAVE_NASM_X64_${var^^}:BOOL=$(usex cpu_flags_x86_${flag})"
+					)
+				;;
+				*) mycmakeargs+=(
+						"-DHAVE_INTEL_${flag^^}:BOOL=$(usex cpu_flags_x86_${flag})"
+					);;
+			esac
+		done
+	fi
+
+	# needed for >=glibc-2.32
+	has_version '>=sys-libs/glibc-2.32' && mycmakeargs+=( -DWITH_REENTRANT_STRSIGNAL:BOOL=ON )
+
+	rm -f "${BUILD_DIR:-${S}}/CMakeCache.txt" \
+		|| die "failed to remove cmake cache"
+
+	cmake_src_configure
+
+	# bug #630232
+	sed -i "s:\"${T//:\\:}/${EPYTHON}/bin/python\":\"${PYTHON}\":" \
+		"${BUILD_DIR:-${S}}"/include/acconfig.h \
+		|| die "sed failed"
+}
+
+src_configure() {
+	use custom-cflags || strip-flags
+	ceph_src_configure
+}
+
+src_compile() {
+	cmake_build VERBOSE=1 all
+
+	# we have to do this here to prevent from building everything multiple times
+	python_copy_sources
+	python_foreach_impl python_compile
+}
+
+python_compile() {
+	local CMAKE_USE_DIR="${S}"
+	ceph_src_configure
+
+	pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
+	cmake_build VERBOSE=1 clean
+	cmake_build VERBOSE=1 all
+
+	# python modules are only compiled with "make install" so we need to do this to
+	# prevent doing a bunch of compilation in src_install
+	DESTDIR="${T}" cmake_build VERBOSE=1 install
+	popd >/dev/null || die
+}
+
+src_install() {
+	python_foreach_impl python_install
+
+	python_setup
+	cmake_src_install
+
+	find "${ED}" -name '*.la' -type f -delete || die
+
+	exeinto /usr/$(get_libdir)/ceph
+	newexe "${BUILD_DIR}/bin/init-ceph" init-ceph
+
+	insinto /etc/logrotate.d/
+	newins "${FILESDIR}"/ceph.logrotate-r2 ${PN}
+
+	keepdir /var/lib/${PN}{,/tmp} /var/log/ceph/stat /var/log/ceph/console
+
+	fowners -R ceph:ceph /var/log/ceph
+
+	newinitd "${FILESDIR}/rbdmap.initd-r1" rbdmap
+	newinitd "${FILESDIR}/${PN}.initd-r13" ${PN}
+	newconfd "${FILESDIR}/${PN}.confd-r5" ${PN}
+
+	insinto /etc/sudoers.d
+	doins sudoers.d/*
+
+	insinto /etc/sysctl.d
+	newins "${FILESDIR}"/sysctld 90-${PN}.conf
+
+	use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc
+
+	# units aren't installed by the build system unless systemd is enabled
+	# so no point installing these with the USE flag disabled
+	if use systemd; then
+		systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" "ceph-mds@.service"
+		systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" "ceph-osd@.service"
+	fi
+
+	udev_dorules udev/*.rules
+	newtmpfiles "${FILESDIR}"/ceph-tmpfilesd ${PN}.conf
+
+	readme.gentoo_create_doc
+
+	# bug #630232
+	sed -i -r "s:${T//:/\\:}/${EPYTHON}:/usr:" "${ED}"/usr/bin/ceph{,-crash} \
+		|| die "sed failed"
+
+	python_fix_shebang "${ED}"/usr/{,s}bin/
+
+	# python_fix_shebang apparently is not idempotent
+	local shebang_regex='(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]'
+	grep -r -E -l --null "${shebang_regex}" "${ED}"/usr/{s,}bin/ \
+		| xargs --null --no-run-if-empty -- sed -i -r  "s:${shebang_regex}:\1:" || die
+
+	local -a rados_classes=( "${ED}/usr/$(get_libdir)/rados-classes"/* )
+	dostrip -x "${rados_classes[@]#${ED}}"
+}
+
+python_install() {
+	local CMAKE_USE_DIR="${S}"
+	pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
+	DESTDIR="${ED}" cmake_build VERBOSE=1 install
+	popd >/dev/null || die
+
+	python_optimize
+}
+
+pkg_postinst() {
+	readme.gentoo_print_elog
+	tmpfiles_process ${PN}.conf
+	udev_reload
+}
+
+pkg_postrm() {
+	udev_reload
+}
-- 
cgit v1.2.3