From 3ace27fa852ee77d31f8f01bf0da230dd587d469 Mon Sep 17 00:00:00 2001 From: Patrick McLean Date: Thu, 21 Sep 2017 11:36:13 -0700 Subject: sys-cluster/ceph: Add virtual/libudev and boost[python] deps #631600 Bug: https://bugs.gentoo.org/631600 Closes: https://bugs.gentoo.org/631600 Package-Manager: Portage-2.3.10, Repoman-2.3.3 --- sys-cluster/ceph/ceph-12.2.0-r1.ebuild | 283 -------------------------------- sys-cluster/ceph/ceph-12.2.0-r2.ebuild | 284 +++++++++++++++++++++++++++++++++ 2 files changed, 284 insertions(+), 283 deletions(-) delete mode 100644 sys-cluster/ceph/ceph-12.2.0-r1.ebuild create mode 100644 sys-cluster/ceph/ceph-12.2.0-r2.ebuild (limited to 'sys-cluster/ceph') diff --git a/sys-cluster/ceph/ceph-12.2.0-r1.ebuild b/sys-cluster/ceph/ceph-12.2.0-r1.ebuild deleted file mode 100644 index c068ab583fc2..000000000000 --- a/sys-cluster/ceph/ceph-12.2.0-r1.ebuild +++ /dev/null @@ -1,283 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -PYTHON_COMPAT=( python{2_7,3_{4,5,6}} ) -DISTUTILS_OPTIONAL=1 - -inherit check-reqs cmake-utils distutils-r1 python-r1 udev user systemd \ - readme.gentoo-r1 flag-o-matic - -if [[ ${PV} == *9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/ceph/ceph.git" - SRC_URI="" -else - SRC_URI="https://download.ceph.com/tarballs/${P}.tar.gz" - KEYWORDS="~amd64 ~arm64 ~x86" -fi - -DESCRIPTION="Ceph distributed filesystem" -HOMEPAGE="https://ceph.com/" - -LICENSE="LGPL-2.1 CC-BY-SA-1.0 GPL-2 BSD Boost-1.0 MIT" -SLOT="0" - -CPU_FLAGS_X86=(sse{,2,3,4_1,4_2} ssse3) - -IUSE="babeltrace cephfs fuse jemalloc ldap lttng +mgr nss +radosgw +ssl" -IUSE+=" static-libs systemd +tcmalloc test xfs zfs" -IUSE+=" $(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})" - -# unbundling code commented out pending bugs 584056 and 584058 -#>=dev-libs/jerasure-2.0.0-r1 -#>=dev-libs/gf-complete-2.0.0 -COMMON_DEPEND=" - app-arch/bzip2:=[static-libs?] - app-arch/lz4:=[static-libs?] - app-arch/snappy:=[static-libs?] - app-arch/zstd:=[static-libs?] - app-misc/jq:=[static-libs?] - dev-libs/boost:=[threads,context,static-libs?,${PYTHON_USEDEP}] - dev-libs/crypto++:=[static-libs?] - dev-libs/leveldb:=[snappy,static-libs?] - dev-libs/libaio:=[static-libs?] - dev-libs/libxml2:=[static-libs?] - sys-apps/keyutils:=[static-libs?] - sys-apps/util-linux:=[static-libs?] - sys-libs/zlib:=[static-libs?] - babeltrace? ( dev-util/babeltrace ) - ldap? ( net-nds/openldap:=[static-libs?] ) - lttng? ( dev-util/lttng-ust:= ) - nss? ( dev-libs/nss:= ) - fuse? ( sys-fs/fuse:0=[static-libs?] ) - ssl? ( dev-libs/openssl:=[static-libs?] ) - xfs? ( sys-fs/xfsprogs:=[static-libs?] ) - zfs? ( sys-fs/zfs:=[static-libs?] ) - radosgw? ( - dev-libs/expat:=[static-libs?] - dev-libs/openssl:=[static-libs?] - net-misc/curl:=[static-libs?] - ) - jemalloc? ( dev-libs/jemalloc:=[static-libs?] ) - !jemalloc? ( >=dev-util/google-perftools-2.4:=[static-libs?] ) - ${PYTHON_DEPS} - " -DEPEND="${COMMON_DEPEND} - app-arch/cpio - dev-lang/yasm - dev-python/cython[${PYTHON_USEDEP}] - dev-python/sphinx - dev-util/gperf - dev-util/valgrind - sys-apps/which - sys-devel/bc - virtual/pkgconfig - test? ( - dev-python/tox[${PYTHON_USEDEP}] - dev-python/virtualenv[${PYTHON_USEDEP}] - sys-apps/grep[pcre] - sys-fs/btrfs-progs - )" -RDEPEND="${COMMON_DEPEND} - net-misc/socat - sys-apps/gptfdisk - sys-block/parted - sys-fs/cryptsetup - !/dev/null || die - emake 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}" emake VERBOSE=1 install - popd >/dev/null || die -} - -src_compile() { - cmake-utils_src_make all - - # we have to do this here to prevent from building everything multiple times - BUILD_DIR="${CMAKE_BUILD_DIR}" python_copy_sources - python_foreach_impl python_compile -} - -src_test() { - make check || die "make check failed" -} - -python_install() { - local CMAKE_USE_DIR="${S}" - pushd "${BUILD_DIR}/src/pybind" >/dev/null || die - DESTDIR="${D}" emake install - popd >/dev/null || die -} - -src_install() { - cmake-utils_src_install - python_foreach_impl python_install - - prune_libtool_files --all - - exeinto /usr/$(get_libdir)/ceph - newexe "${CMAKE_BUILD_DIR}/bin/init-ceph" ceph_init.sh - - insinto /etc/logrotate.d/ - newins "${FILESDIR}"/ceph.logrotate ${PN} - - keepdir /var/lib/${PN}{,/tmp} /var/log/${PN}/stat - - fowners -R ceph:ceph /var/lib/ceph /var/log/ceph - - newinitd "${FILESDIR}/rbdmap.initd" rbdmap - newinitd "${FILESDIR}/${PN}.initd-r5" ${PN} - newconfd "${FILESDIR}/${PN}.confd-r3" ${PN} - - insinto /etc/sysctl.d - newins "${FILESDIR}"/sysctld 90-${PN}.conf - - use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc - - systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" "ceph-mds@.service" - systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" "ceph-osd@.service" - - udev_dorules udev/*.rules - - readme.gentoo_create_doc - - python_setup 'python2*' - - # bug #630232 - sed -i -r "s:${T//:/\\:}/${EPYTHON}:/usr:" "${ED}"/usr/bin/ceph \ - || die "sed failed" - - python_fix_shebang "${ED}"/usr/{,s}bin/ - - # python_fix_shebang apparently is not idempotent - sed -i -r 's:(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]:\1:' \ - "${ED}"/usr/{sbin/ceph-disk,bin/ceph-detect-init} || die "sed failed" -} - -pkg_postinst() { - readme.gentoo_print_elog -} diff --git a/sys-cluster/ceph/ceph-12.2.0-r2.ebuild b/sys-cluster/ceph/ceph-12.2.0-r2.ebuild new file mode 100644 index 000000000000..677d00832e3b --- /dev/null +++ b/sys-cluster/ceph/ceph-12.2.0-r2.ebuild @@ -0,0 +1,284 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python{2_7,3_{4,5,6}} ) +DISTUTILS_OPTIONAL=1 + +inherit check-reqs cmake-utils distutils-r1 python-r1 udev user systemd \ + readme.gentoo-r1 flag-o-matic + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/ceph/ceph.git" + SRC_URI="" +else + SRC_URI="https://download.ceph.com/tarballs/${P}.tar.gz" + KEYWORDS="~amd64 ~arm64 ~x86" +fi + +DESCRIPTION="Ceph distributed filesystem" +HOMEPAGE="https://ceph.com/" + +LICENSE="LGPL-2.1 CC-BY-SA-1.0 GPL-2 BSD Boost-1.0 MIT" +SLOT="0" + +CPU_FLAGS_X86=(sse{,2,3,4_1,4_2} ssse3) + +IUSE="babeltrace cephfs fuse jemalloc ldap lttng +mgr nss +radosgw +ssl" +IUSE+=" static-libs systemd +tcmalloc test xfs zfs" +IUSE+=" $(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})" + +# unbundling code commented out pending bugs 584056 and 584058 +#>=dev-libs/jerasure-2.0.0-r1 +#>=dev-libs/gf-complete-2.0.0 +COMMON_DEPEND=" + virtual/libudev + app-arch/bzip2:=[static-libs?] + app-arch/lz4:=[static-libs?] + app-arch/snappy:=[static-libs?] + app-arch/zstd:=[static-libs?] + app-misc/jq:=[static-libs?] + dev-libs/boost:=[threads,context,python,static-libs?,${PYTHON_USEDEP}] + dev-libs/crypto++:=[static-libs?] + dev-libs/leveldb:=[snappy,static-libs?] + dev-libs/libaio:=[static-libs?] + dev-libs/libxml2:=[static-libs?] + sys-apps/keyutils:=[static-libs?] + sys-apps/util-linux:=[static-libs?] + sys-libs/zlib:=[static-libs?] + babeltrace? ( dev-util/babeltrace ) + ldap? ( net-nds/openldap:=[static-libs?] ) + lttng? ( dev-util/lttng-ust:= ) + nss? ( dev-libs/nss:= ) + fuse? ( sys-fs/fuse:0=[static-libs?] ) + ssl? ( dev-libs/openssl:=[static-libs?] ) + xfs? ( sys-fs/xfsprogs:=[static-libs?] ) + zfs? ( sys-fs/zfs:=[static-libs?] ) + radosgw? ( + dev-libs/expat:=[static-libs?] + dev-libs/openssl:=[static-libs?] + net-misc/curl:=[static-libs?] + ) + jemalloc? ( dev-libs/jemalloc:=[static-libs?] ) + !jemalloc? ( >=dev-util/google-perftools-2.4:=[static-libs?] ) + ${PYTHON_DEPS} + " +DEPEND="${COMMON_DEPEND} + app-arch/cpio + dev-lang/yasm + dev-python/cython[${PYTHON_USEDEP}] + dev-python/sphinx + dev-util/gperf + dev-util/valgrind + sys-apps/which + sys-devel/bc + virtual/pkgconfig + test? ( + dev-python/tox[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + sys-apps/grep[pcre] + sys-fs/btrfs-progs + )" +RDEPEND="${COMMON_DEPEND} + net-misc/socat + sys-apps/gptfdisk + sys-block/parted + sys-fs/cryptsetup + !/dev/null || die + emake 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}" emake VERBOSE=1 install + popd >/dev/null || die +} + +src_compile() { + cmake-utils_src_make all + + # we have to do this here to prevent from building everything multiple times + BUILD_DIR="${CMAKE_BUILD_DIR}" python_copy_sources + python_foreach_impl python_compile +} + +src_test() { + make check || die "make check failed" +} + +python_install() { + local CMAKE_USE_DIR="${S}" + pushd "${BUILD_DIR}/src/pybind" >/dev/null || die + DESTDIR="${D}" emake install + popd >/dev/null || die +} + +src_install() { + cmake-utils_src_install + python_foreach_impl python_install + + prune_libtool_files --all + + exeinto /usr/$(get_libdir)/ceph + newexe "${CMAKE_BUILD_DIR}/bin/init-ceph" ceph_init.sh + + insinto /etc/logrotate.d/ + newins "${FILESDIR}"/ceph.logrotate ${PN} + + keepdir /var/lib/${PN}{,/tmp} /var/log/${PN}/stat + + fowners -R ceph:ceph /var/lib/ceph /var/log/ceph + + newinitd "${FILESDIR}/rbdmap.initd" rbdmap + newinitd "${FILESDIR}/${PN}.initd-r5" ${PN} + newconfd "${FILESDIR}/${PN}.confd-r3" ${PN} + + insinto /etc/sysctl.d + newins "${FILESDIR}"/sysctld 90-${PN}.conf + + use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc + + systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" "ceph-mds@.service" + systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" "ceph-osd@.service" + + udev_dorules udev/*.rules + + readme.gentoo_create_doc + + python_setup 'python2*' + + # bug #630232 + sed -i -r "s:${T//:/\\:}/${EPYTHON}:/usr:" "${ED}"/usr/bin/ceph \ + || die "sed failed" + + python_fix_shebang "${ED}"/usr/{,s}bin/ + + # python_fix_shebang apparently is not idempotent + sed -i -r 's:(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]:\1:' \ + "${ED}"/usr/{sbin/ceph-disk,bin/ceph-detect-init} || die "sed failed" +} + +pkg_postinst() { + readme.gentoo_print_elog +} -- cgit v1.2.3-65-gdbad