From: Kefu Chai Date: Thu, 4 Aug 2022 13:52:43 +0000 (+0800) Subject: cmake,debian: install pure python module to deb_system path X-Git-Tag: v18.0.0~333^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F47459%2Fhead;p=ceph.git cmake,debian: install pure python module to deb_system path in ubuntu 22.04 and debian unstable, the layout (scheme) for system python module is named "deb_system", the default one is 'posix_local'. and 'posix_local' installs python modules into paths like usr/local/lib/python3.10/dist-packages/. hence dh_install fails when it tries to find the files to be packaged under directory of usr/lib/python3*/site-packages/. in this change, the "deb_system" scheme is used if it is available, and fall back to "posix_prefix" to be backward compatible with older debian (derivative) distros. also, update the source directories of pure python's installation from `site-packages` to `*-packages`, to be compatible with ubuntu focal and ubuntu jammy. as we are now using the specified scheme instead of the default one. Signed-off-by: Kefu Chai --- diff --git a/debian/python3-ceph-argparse.install b/debian/python3-ceph-argparse.install index d3339be76909..52479f93535e 100755 --- a/debian/python3-ceph-argparse.install +++ b/debian/python3-ceph-argparse.install @@ -1,4 +1,4 @@ #! /usr/bin/dh-exec -usr/lib/python3*/site-packages/ceph_argparse.py /usr/lib/python3/dist-packages/ -usr/lib/python3*/site-packages/ceph_daemon.py /usr/lib/python3/dist-packages/ +usr/lib/python3*/*-packages/ceph_argparse.py /usr/lib/python3/dist-packages/ +usr/lib/python3*/*-packages/ceph_daemon.py /usr/lib/python3/dist-packages/ diff --git a/src/pybind/CMakeLists.txt b/src/pybind/CMakeLists.txt index 3808d6819984..b01c49b6215a 100644 --- a/src/pybind/CMakeLists.txt +++ b/src/pybind/CMakeLists.txt @@ -36,6 +36,7 @@ execute_process( "import sysconfig;\ print(\ sysconfig.get_path(\ + scheme='deb_system' in sysconfig.get_scheme_names() and 'deb_system' or 'posix_prefix',\ name='purelib',\ vars=\ {'base': '${PYTHON_INSTALL_TEMPLATE}',\