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: Tue, 31 Jul 2018 23:54:10
Message-Id: 1533080994.2ae07d272f96c0ed79080960d2707076a74b4a17.chutzpah@gentoo
1 commit: 2ae07d272f96c0ed79080960d2707076a74b4a17
2 Author: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
3 AuthorDate: Tue Jul 31 23:49:54 2018 +0000
4 Commit: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
5 CommitDate: Tue Jul 31 23:49:54 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ae07d27
7
8 sys-cluster/ceph: Remove old version 10.2.9-r1
9
10 Package-Manager: Portage-2.3.44, Repoman-2.3.10
11
12 sys-cluster/ceph/ceph-10.2.9-r1.ebuild | 298 ---------------------------------
13 1 file changed, 298 deletions(-)
14
15 diff --git a/sys-cluster/ceph/ceph-10.2.9-r1.ebuild b/sys-cluster/ceph/ceph-10.2.9-r1.ebuild
16 deleted file mode 100644
17 index 7d477491a49..00000000000
18 --- a/sys-cluster/ceph/ceph-10.2.9-r1.ebuild
19 +++ /dev/null
20 @@ -1,298 +0,0 @@
21 -# Copyright 1999-2017 Gentoo Foundation
22 -# Distributed under the terms of the GNU General Public License v2
23 -
24 -EAPI=6
25 -PYTHON_COMPAT=( python{2_7,3_{4,5,6}} )
26 -
27 -inherit check-reqs autotools eutils python-r1 udev user \
28 - readme.gentoo-r1 systemd versionator flag-o-matic
29 -
30 -if [[ ${PV} == *9999* ]]; then
31 - inherit git-r3
32 - EGIT_REPO_URI="https://github.com/ceph/ceph.git"
33 - SRC_URI=""
34 -else
35 - SRC_URI="https://download.ceph.com/tarballs/${P}.tar.gz"
36 - KEYWORDS="~amd64 ~arm64 ~x86"
37 -fi
38 -
39 -DESCRIPTION="Ceph distributed filesystem"
40 -HOMEPAGE="https://ceph.com/"
41 -
42 -LICENSE="LGPL-2.1"
43 -SLOT="0"
44 -
45 -IUSE="babeltrace cephfs cryptopp debug fuse gtk jemalloc ldap +libaio"
46 -IUSE+=" libatomic lttng +nss +radosgw static-libs +tcmalloc test xfs zfs"
47 -
48 -# unbundling code commented out pending bugs 584056 and 584058
49 -#>=dev-libs/jerasure-2.0.0-r1
50 -#>=dev-libs/gf-complete-2.0.0
51 -COMMON_DEPEND="
52 - app-arch/snappy:=
53 - sys-libs/zlib:=
54 - app-arch/lz4:=
55 - app-arch/bzip2:=
56 - app-arch/zstd:=
57 - dev-libs/boost:=[threads]
58 - dev-libs/libaio:=
59 - dev-libs/leveldb:=[snappy]
60 - nss? ( dev-libs/nss:= )
61 - libatomic? ( dev-libs/libatomic_ops:= )
62 - cryptopp? ( dev-libs/crypto++:= )
63 - sys-apps/keyutils
64 - sys-apps/util-linux
65 - dev-libs/libxml2:=
66 - radosgw? ( dev-libs/fcgi:= )
67 - ldap? ( net-nds/openldap:= )
68 - babeltrace? ( dev-util/babeltrace )
69 - fuse? ( sys-fs/fuse:0= )
70 - xfs? ( sys-fs/xfsprogs:= )
71 - zfs? ( sys-fs/zfs:= )
72 - gtk? (
73 - x11-libs/gtk+:2=
74 - dev-cpp/gtkmm:2.4
75 - gnome-base/librsvg:=
76 - )
77 - radosgw? (
78 - dev-libs/fcgi:=
79 - dev-libs/expat:=
80 - net-misc/curl:=
81 - )
82 - jemalloc? ( dev-libs/jemalloc:= )
83 - !jemalloc? ( =dev-util/google-perftools-2.4*:= )
84 - lttng? ( dev-util/lttng-ust:= )
85 - ${PYTHON_DEPS}
86 - "
87 -DEPEND="${COMMON_DEPEND}
88 - dev-python/cython[${PYTHON_USEDEP}]
89 - app-arch/cpio
90 - virtual/pkgconfig
91 - dev-python/sphinx
92 - test? (
93 - sys-fs/btrfs-progs
94 - sys-apps/grep[pcre]
95 - dev-python/tox[${PYTHON_USEDEP}]
96 - dev-python/virtualenv[${PYTHON_USEDEP}]
97 - )"
98 -RDEPEND="${COMMON_DEPEND}
99 - sys-apps/hdparm
100 - sys-block/parted
101 - sys-fs/cryptsetup
102 - sys-apps/gptfdisk
103 - dev-python/flask[${PYTHON_USEDEP}]
104 - dev-python/requests[${PYTHON_USEDEP}]
105 - "
106 -REQUIRED_USE="
107 - $(python_gen_useflags 'python2*')
108 - ${PYTHON_REQUIRED_USE}
109 - ^^ ( nss cryptopp )
110 - ?? ( jemalloc tcmalloc )
111 - "
112 -
113 -# work around bug in ceph compilation (rgw/ceph_dencoder-rgw_dencoder.o... undefined reference to `vtable for RGWZoneGroup')
114 -REQUIRED_USE+=" radosgw"
115 -
116 -#RESTRICT="test? ( userpriv )"
117 -
118 -# distribution tarball does not include everything needed for tests
119 -RESTRICT+=" test"
120 -
121 -STRIP_MASK="/usr/lib*/rados-classes/*"
122 -
123 -UNBUNDLE_LIBS=(
124 - src/erasure-code/jerasure/jerasure
125 - src/erasure-code/jerasure/gf-complete
126 -)
127 -
128 -PATCHES=(
129 - "${FILESDIR}/ceph-10.2.0-dont-use-virtualenvs.patch"
130 - #"${FILESDIR}/ceph-10.2.1-unbundle-jerasure.patch"
131 - "${FILESDIR}/${PN}-10.2.1-libzfs.patch"
132 - "${FILESDIR}/${PN}-10.2.3-build-without-openldap.patch"
133 - "${FILESDIR}/${PN}-10.2.5-Make-RBD-Python-bindings-compatible-with-Python-3.patch"
134 - "${FILESDIR}/${PN}-10.2.5-Make-CephFS-bindings-and-tests-compatible-with-Python-3.patch"
135 - "${FILESDIR}/${PN}-10.2.7-fix-compilation-with-zstd.patch"
136 - "${FILESDIR}/${PN}-10.2.9-libradosstriper_fix_format_injection_vulnerability.patch"
137 -)
138 -
139 -check-reqs_export_vars() {
140 - if use debug; then
141 - CHECKREQS_DISK_BUILD="23G"
142 - CHECKREQS_DISK_USR="7G"
143 - elif use amd64; then
144 - CHECKREQS_DISK_BUILD="12G"
145 - CHECKREQS_DISK_USR="450M"
146 - else
147 - CHECKREQS_DISK_BUILD="1400M"
148 - CHECKREQS_DISK_USR="450M"
149 - fi
150 -
151 - export CHECKREQS_DISK_BUILD CHECKREQS_DISK_USR
152 -}
153 -
154 -user_setup() {
155 - enewgroup ceph ${CEPH_GID}
156 - enewuser ceph "${CEPH_UID:--1}" -1 /var/lib/ceph ceph
157 -}
158 -
159 -emake_python_bindings() {
160 - local action="${1}" params binding module
161 - shift
162 - params=("${@}")
163 -
164 - __emake_python_bindings_do_impl() {
165 - ceph_run_econf "${EPYTHON}"
166 - emake "${params[@]}" PYTHON="${EPYTHON}" "${binding}-pybind-${action}"
167 -
168 - # these don't work and aren't needed on python3
169 - if [[ ${EBUILD_PHASE} == install ]]; then
170 - for module in "${S}"/src/pybind/*.py; do
171 - module_basename="$(basename "${module}")"
172 - if [[ ${module_basename} == ceph_volume_client.py ]] && ! use cephfs; then
173 - continue
174 - elif [[ ! -e "${ED}/$(python_get_sitedir)/${module_basename}" ]]; then
175 - python_domodule ${module}
176 - fi
177 - done
178 - fi
179 - }
180 -
181 - pushd "${S}/src"
182 - for binding in rados rbd $(use cephfs && echo cephfs); do
183 - python_foreach_impl __emake_python_bindings_do_impl
184 - done
185 - popd
186 -
187 - unset __emake_python_bindings_do_impl
188 -}
189 -
190 -pkg_pretend() {
191 - check-reqs_export_vars
192 - check-reqs_pkg_pretend
193 -}
194 -
195 -pkg_setup() {
196 - python_setup
197 - check-reqs_export_vars
198 - check-reqs_pkg_setup
199 - user_setup
200 -}
201 -
202 -src_prepare() {
203 - default
204 -
205 - # remove tests that need root access
206 - rm src/test/cli/ceph-authtool/cap*.t
207 -
208 - #rm -rf "${UNBUNDLE_LIBS[@]}"
209 -
210 - append-flags -fPIC
211 - eautoreconf
212 -}
213 -
214 -src_configure() {
215 - ECONFARGS=(
216 - --without-hadoop
217 - --includedir=/usr/include
218 - $(use_with cephfs)
219 - $(use_with debug)
220 - $(use_with fuse)
221 - $(use_with libaio)
222 - $(use_with libatomic libatomic-ops)
223 - $(use_with nss)
224 - $(use_with cryptopp)
225 - $(use_with radosgw)
226 - $(use_with gtk gtk2)
227 - $(use_enable static-libs static)
228 - $(use_with jemalloc)
229 - $(use_with xfs libxfs)
230 - $(use_with zfs libzfs)
231 - $(use_with lttng )
232 - $(use_with babeltrace)
233 - $(use_with ldap openldap)
234 - $(use jemalloc || usex tcmalloc " --with-tcmalloc" " --with-tcmalloc-minimal")
235 - --with-mon
236 - --with-eventfd
237 - --with-cython
238 - --without-kinetic
239 - --without-librocksdb
240 - --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
241 - )
242 -
243 - # we can only use python2.7 for building at the moment
244 - ceph_run_econf "python2*"
245 -}
246 -
247 -ceph_run_econf() {
248 - [[ -z ${ECONFARGS} ]] && die "called ${FUNCNAME[0]} with ECONFARGS unset"
249 - [[ -z ${1} ]] && die "called ${FUNCNAME[0]} without passing python implementation"
250 -
251 - pushd "${S}" >/dev/null || die
252 - #
253 - # This generates a QA warning about running econf in src_compile
254 - # and src_install. Unfortunately the only other way to do this would
255 - # involve building all of for each python implementation times, which
256 - # wastes a _lot_ of CPU time and disk space. This hack will no longer
257 - # be needed with >=ceph-11.2.
258 - #
259 - python_setup "${1}"
260 - econf "${ECONFARGS[@]}"
261 -
262 - popd >/dev/null || die
263 -}
264 -
265 -src_compile() {
266 - emake
267 - emake_python_bindings all
268 -
269 - use test && emake check-local
270 -}
271 -
272 -src_test() {
273 - make check || die "make check failed"
274 -}
275 -
276 -src_install() {
277 - default
278 - emake_python_bindings install-exec "DESTDIR=\"${D}\""
279 -
280 - prune_libtool_files --all
281 -
282 - exeinto /usr/$(get_libdir)/ceph
283 - newexe src/init-ceph ceph_init.sh
284 -
285 - insinto /etc/logrotate.d/
286 - newins "${FILESDIR}"/ceph.logrotate ${PN}
287 -
288 - keepdir /var/lib/${PN}{,/tmp} /var/log/${PN}/stat
289 -
290 - fowners -R ceph:ceph /var/lib/ceph /var/log/ceph
291 -
292 - newinitd "${FILESDIR}/rbdmap.initd" rbdmap
293 - newinitd "${FILESDIR}/${PN}.initd-r5" ${PN}
294 - newconfd "${FILESDIR}/${PN}.confd-r3" ${PN}
295 -
296 - insinto /etc/sysctl.d
297 - newins "${FILESDIR}"/sysctld 90-${PN}.conf
298 -
299 - use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc
300 -
301 - systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" "ceph-mds@.service"
302 - systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" "ceph-osd@.service"
303 -
304 - udev_dorules udev/*.rules
305 -
306 - readme.gentoo_create_doc
307 -
308 - python_setup 'python2*'
309 - python_fix_shebang "${ED}"/usr/{,s}bin/
310 -
311 - # python_fix_shebang apparently is not idempotent
312 - sed -i -r 's:(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]:\1:' \
313 - "${ED}"/usr/{sbin/ceph-disk,bin/ceph-detect-init} || die "sed failed"
314 -}
315 -
316 -pkg_postinst() {
317 - readme.gentoo_print_elog
318 -}