]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
cmake/modules: avoid using distutils 45648/head
authorKefu Chai <tchaikov@gmail.com>
Fri, 25 Mar 2022 15:06:46 +0000 (23:06 +0800)
committerKefu Chai <tchaikov@gmail.com>
Fri, 25 Mar 2022 15:49:12 +0000 (23:49 +0800)
to address following warning from python 3.9:

<string>:1: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
<string>:1: DeprecationWarning: The distutils.sysconfig module is deprecated, use sysconfig instead

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
cmake/modules/Distutils.cmake
src/pybind/CMakeLists.txt

index 862f80820e2217ebe0bc1d96a0d155d955d8d2b9..1d954c3a51f493cb93a802b781a0c3b4efdada60 100644 (file)
@@ -64,7 +64,7 @@ function(distutils_add_cython_module target name src)
   set(PY_LDSHARED ${link_launcher} ${CMAKE_C_COMPILER} ${c_compiler_arg1} "-shared")
 
   execute_process(COMMAND "${Python3_EXECUTABLE}" -c
-    "from distutils import sysconfig; print(sysconfig.get_config_var('EXT_SUFFIX'))"
+    "import sysconfig; print(sysconfig.get_config_var('EXT_SUFFIX'))"
     RESULT_VARIABLE result
     OUTPUT_VARIABLE ext_suffix
     ERROR_VARIABLE error
index cd9b27623d20ee8881f719f2855e31ff294a9fe9..3808d68199844e6957c1f015f3244eb739add154 100644 (file)
@@ -32,7 +32,14 @@ endif(CMAKE_INSTALL_PREFIX)
 
 execute_process(
   COMMAND
-  ${Python3_EXECUTABLE} -c "from distutils import sysconfig; print(sysconfig.get_python_lib(prefix='${PYTHON_INSTALL_TEMPLATE}'))"
+  ${Python3_EXECUTABLE} -c
+    "import sysconfig;\
+     print(\
+     sysconfig.get_path(\
+     name='purelib',\
+     vars=\
+     {'base': '${PYTHON_INSTALL_TEMPLATE}',\
+      'py_version_short': sysconfig.get_config_var('py_version_short')}))"
   OUTPUT_VARIABLE "PYTHON3_INSTDIR"
   OUTPUT_STRIP_TRAILING_WHITESPACE)