From 07542ea0be8328b825507138e54fe228d5c6154a Mon Sep 17 00:00:00 2001 From: iggy Date: Tue, 16 Apr 2019 14:35:11 -0700 Subject: community/ceph: Switch to python3 Change packages to be built against python3. I tried to build both python2 and python3 packages, but cmake doesn't like me. --- community/ceph/APKBUILD | 61 ++++++++++++++++++++++++++----------------------- 1 file changed, 33 insertions(+), 28 deletions(-) (limited to 'community') diff --git a/community/ceph/APKBUILD b/community/ceph/APKBUILD index cd21f97d29..451d7e3181 100644 --- a/community/ceph/APKBUILD +++ b/community/ceph/APKBUILD @@ -17,7 +17,6 @@ _base_deps=" e2fsprogs logrotate parted - py2-requests py2-setuptools util-linux xfsprogs " @@ -36,7 +35,7 @@ makedepends=" coreutils cunit-dev curl-dev - cython + cython3 diffutils eudev-dev expat-dev @@ -65,11 +64,12 @@ makedepends=" oath-toolkit-dev openldap-dev procps - python2-dev - py2-pip - py2-nose - py-sphinx - py2-virtualenv + python3-dev + py3-pip + py3-nose + py3-setuptools + py3-sphinx + py3-virtualenv rabbitmq-c-dev readline-dev rpcgen @@ -100,9 +100,9 @@ subpackages=" $pkgname-osd $pkgname-osd-daemon:osd_daemon $pkgname-osd-tools:osd_tools - $pkgname-volume:ceph_volume + $pkgname-volume:ceph_volume:noarch $pkgname-radosgw - $pkgname-bash-completion:bash_completion + $pkgname-bash-completion:bash_completion:noarch $pkgname-dev rbd-fuse:rbd_fuse rbd-mirror:rbd_mirror @@ -110,10 +110,10 @@ subpackages=" librbd libcephfs librados - py2-rados:_py2_rados + py3-rados:_py3_rados libradosstriper - py2-rbd:_py2_rbd - py2-cephfs:_py2_cephfs + py3-rbd:_py3_rbd + py3-cephfs:_py3_cephfs " _ceph_uid=167 @@ -134,13 +134,15 @@ _sysconfdir=/etc _udevrulesdir=/etc/udev/rules.d -_py2_sitelib() { - python2 -c "import site; print(site.getsitepackages()[0])" +_py3_sitelib() { + python3 -c "import site; print(site.getsitepackages()[0])" } build() { export CEPH_BUILD_VIRTUALENV="$builddir" + PY_INC_PATH="$(python3-config --includes | cut -f2 -d' ' | sed 's:^-I::')" + PY_LIB_PATH="/usr/lib/lib$(python3-config --libs | cut -f1 -d' ' | sed 's:^-l::').so" mkdir -p "$builddir"/build cd "$builddir"/build @@ -157,9 +159,12 @@ build() { -DWITH_THREAD_SAFE_RES_QUERY=ON \ -DWITH_MANPAGE=ON \ -DWITH_SYSTEM_BOOST=ON \ - -DWITH_PYTHON2=ON \ - -DWITH_PYTHON3=OFF \ - -DMGR_PYTHON_VERSION=2 \ + -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3 \ + -DPYTHON_INCLUDE_DIR:PATH=$PY_INC_PATH \ + -DPYTHON_LIBRARY:FILEPATH=$PY_LIB_PATH \ + -DWITH_PYTHON2=OFF \ + -DWITH_PYTHON3=ON \ + -DMGR_PYTHON_VERSION=3 \ -DWITH_LTTNG=OFF \ -DWITH_RDMA=OFF \ -DWITH_BABELTRACE=OFF \ @@ -234,7 +239,7 @@ base() { common() { pkgdesc="Common utilities to mount and interact with a ceph storage cluster." - depends="py2-rados py2-rbd py2-cephfs" + depends="py3-rados py3-rbd py3-cephfs" install="$pkgname-common.pre-install" _pkg $_bindir ceph \ @@ -258,7 +263,7 @@ common() { id_rsa_drop.ceph.com.pub _pkg $_sysconfdir/ceph rbdmap - _pkg "$(_py2_sitelib)" ceph_argparse.py* ceph_daemon.py* + _pkg "$(_py3_sitelib)" ceph_argparse.py* ceph_daemon.py* _pkg $_udevrulesdir 50-rbd.rules install -m 3770 -o $_ceph_uid -g $_ceph_gid -d \ @@ -360,7 +365,7 @@ ceph_volume() { depends="$_ceph_volume_deps" _pkg $_sbindir ceph-volume - _pkg "$(_py2_sitelib)" ceph_volume 'ceph_volume-*' + _pkg "$(_py3_sitelib)" ceph_volume 'ceph_volume-*' } librados() { @@ -370,11 +375,11 @@ librados() { _pkg $_libdir/ceph libceph-common.so.* } -_py2_rados() { +_py3_rados() { pkgdesc="Python libraries for the RADOS object store" depends= - _pkg "$(_py2_sitelib)" rados.so rados-*.egg-info + _pkg "$(_py3_sitelib)" rados*.so rados-*.egg-info } libradosstriper() { @@ -390,11 +395,11 @@ librbd() { _pkg $_libdir librbd.so.* } -_py2_rbd() { +_py3_rbd() { pkgdesc="Python libraries for the RADOS block device" - depends="py2-rados" + depends="py3-rados" - _pkg "$(_py2_sitelib)" rbd.so rbd-*.egg-info + _pkg "$(_py3_sitelib)" rbd*.so rbd-*.egg-info } libcephfs() { @@ -403,11 +408,11 @@ libcephfs() { _pkg $_libdir libcephfs.so.* } -_py2_cephfs() { +_py3_cephfs() { pkgdesc="Python libraries for Ceph distributed file system" - depends="py2-rados" + depends="py3-rados" - _pkg "$(_py2_sitelib)" cephfs.so cephfs-*.egg-info ceph_volume_client.py* + _pkg "$(_py3_sitelib)" cephfs*.so cephfs-*.egg-info ceph_volume_client.py* } ceph_test() { -- cgit v1.2.3