Message ID | 20200407115849.41225-1-cgzones@googlemail.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | tree-wide: use python module importlib instead of the deprecated imp | expand |
On Tue, Apr 7, 2020 at 1:59 PM Christian Göttsche <cgzones@googlemail.com> wrote: > > Replace > > python3 -c 'import imp;print([s for s,m,t in imp.get_suffixes() if t == imp.C_EXTENSION][0])' > <string>:1: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses > .cpython-38-x86_64-linux-gnu.so > > with > > python3 -c 'import importlib;print(importlib.machinery.EXTENSION_SUFFIXES[0])' > .cpython-38-x86_64-linux-gnu.so > > Signed-off-by: Christian Göttsche <cgzones@googlemail.com> > --- > libselinux/src/Makefile | 2 +- > libsemanage/src/Makefile | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/libselinux/src/Makefile b/libselinux/src/Makefile > index 2d1c654e..ddb5e013 100644 > --- a/libselinux/src/Makefile > +++ b/libselinux/src/Makefile > @@ -15,7 +15,7 @@ INCLUDEDIR ?= $(PREFIX)/include > PYINC ?= $(shell $(PKG_CONFIG) --cflags $(PYPREFIX)) > PYLIBS ?= $(shell $(PKG_CONFIG) --libs $(PYPREFIX)) > PYTHONLIBDIR ?= $(shell $(PYTHON) -c "from distutils.sysconfig import *; print(get_python_lib(plat_specific=1, prefix='$(PREFIX)'))") > -PYCEXT ?= $(shell $(PYTHON) -c 'import imp;print([s for s,m,t in imp.get_suffixes() if t == imp.C_EXTENSION][0])') > +PYCEXT ?= $(shell $(PYTHON) -c 'import importlib;print(importlib.machinery.EXTENSION_SUFFIXES[0])') > RUBYINC ?= $(shell $(RUBY) -e 'puts "-I" + RbConfig::CONFIG["rubyarchhdrdir"] + " -I" + RbConfig::CONFIG["rubyhdrdir"]') > RUBYLIBS ?= $(shell $(RUBY) -e 'puts "-L" + RbConfig::CONFIG["libdir"] + " -L" + RbConfig::CONFIG["archlibdir"] + " " + RbConfig::CONFIG["LIBRUBYARG_SHARED"]') > RUBYINSTALL ?= $(shell $(RUBY) -e 'puts RbConfig::CONFIG["vendorarchdir"]') > diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile > index 606ce1c6..00aee063 100644 > --- a/libsemanage/src/Makefile > +++ b/libsemanage/src/Makefile > @@ -14,7 +14,7 @@ INCLUDEDIR ?= $(PREFIX)/include > PYINC ?= $(shell $(PKG_CONFIG) --cflags $(PYPREFIX)) > PYLIBS ?= $(shell $(PKG_CONFIG) --libs $(PYPREFIX)) > PYTHONLIBDIR ?= $(shell $(PYTHON) -c "from distutils.sysconfig import *; print(get_python_lib(plat_specific=1, prefix='$(PREFIX)'))") > -PYCEXT ?= $(shell $(PYTHON) -c 'import imp;print([s for s,m,t in imp.get_suffixes() if t == imp.C_EXTENSION][0])') > +PYCEXT ?= $(shell $(PYTHON) -c 'import importlib;print(importlib.machinery.EXTENSION_SUFFIXES[0])') > RUBYINC ?= $(shell $(RUBY) -e 'puts "-I" + RbConfig::CONFIG["rubyarchhdrdir"] + " -I" + RbConfig::CONFIG["rubyhdrdir"]') > RUBYLIBS ?= $(shell $(RUBY) -e 'puts "-L" + RbConfig::CONFIG["libdir"] + " -L" + RbConfig::CONFIG["archlibdir"] + " " + RbConfig::CONFIG["LIBRUBYARG_SHARED"]') > RUBYINSTALL ?= $(shell $(RUBY) -e 'puts RbConfig::CONFIG["vendorarchdir"]') Hello, Thanks for your patch, but this does not seem to work on Python 3.5: python3.5 -c 'import importlib;print(importlib.machinery.EXTENSION_SUFFIXES[0])' Traceback (most recent call last): File "<string>", line 1, in <module> AttributeError: module 'importlib' has no attribute 'machinery' importlib.machinery.EXTENSION_SUFFIXES has been available since Python 3.3, but in module importlib.machinery. This works: python3.5 -c 'import importlib.machinery;print(importlib.machinery.EXTENSION_SUFFIXES[0])' .cpython-35m-x86_64-linux-gnu.so Could you update your patch in order to use "import importlib.machinery" instead of "import importlib"? Thanks, Nicolas
diff --git a/libselinux/src/Makefile b/libselinux/src/Makefile index 2d1c654e..ddb5e013 100644 --- a/libselinux/src/Makefile +++ b/libselinux/src/Makefile @@ -15,7 +15,7 @@ INCLUDEDIR ?= $(PREFIX)/include PYINC ?= $(shell $(PKG_CONFIG) --cflags $(PYPREFIX)) PYLIBS ?= $(shell $(PKG_CONFIG) --libs $(PYPREFIX)) PYTHONLIBDIR ?= $(shell $(PYTHON) -c "from distutils.sysconfig import *; print(get_python_lib(plat_specific=1, prefix='$(PREFIX)'))") -PYCEXT ?= $(shell $(PYTHON) -c 'import imp;print([s for s,m,t in imp.get_suffixes() if t == imp.C_EXTENSION][0])') +PYCEXT ?= $(shell $(PYTHON) -c 'import importlib;print(importlib.machinery.EXTENSION_SUFFIXES[0])') RUBYINC ?= $(shell $(RUBY) -e 'puts "-I" + RbConfig::CONFIG["rubyarchhdrdir"] + " -I" + RbConfig::CONFIG["rubyhdrdir"]') RUBYLIBS ?= $(shell $(RUBY) -e 'puts "-L" + RbConfig::CONFIG["libdir"] + " -L" + RbConfig::CONFIG["archlibdir"] + " " + RbConfig::CONFIG["LIBRUBYARG_SHARED"]') RUBYINSTALL ?= $(shell $(RUBY) -e 'puts RbConfig::CONFIG["vendorarchdir"]') diff --git a/libsemanage/src/Makefile b/libsemanage/src/Makefile index 606ce1c6..00aee063 100644 --- a/libsemanage/src/Makefile +++ b/libsemanage/src/Makefile @@ -14,7 +14,7 @@ INCLUDEDIR ?= $(PREFIX)/include PYINC ?= $(shell $(PKG_CONFIG) --cflags $(PYPREFIX)) PYLIBS ?= $(shell $(PKG_CONFIG) --libs $(PYPREFIX)) PYTHONLIBDIR ?= $(shell $(PYTHON) -c "from distutils.sysconfig import *; print(get_python_lib(plat_specific=1, prefix='$(PREFIX)'))") -PYCEXT ?= $(shell $(PYTHON) -c 'import imp;print([s for s,m,t in imp.get_suffixes() if t == imp.C_EXTENSION][0])') +PYCEXT ?= $(shell $(PYTHON) -c 'import importlib;print(importlib.machinery.EXTENSION_SUFFIXES[0])') RUBYINC ?= $(shell $(RUBY) -e 'puts "-I" + RbConfig::CONFIG["rubyarchhdrdir"] + " -I" + RbConfig::CONFIG["rubyhdrdir"]') RUBYLIBS ?= $(shell $(RUBY) -e 'puts "-L" + RbConfig::CONFIG["libdir"] + " -L" + RbConfig::CONFIG["archlibdir"] + " " + RbConfig::CONFIG["LIBRUBYARG_SHARED"]') RUBYINSTALL ?= $(shell $(RUBY) -e 'puts RbConfig::CONFIG["vendorarchdir"]')
Replace python3 -c 'import imp;print([s for s,m,t in imp.get_suffixes() if t == imp.C_EXTENSION][0])' <string>:1: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses .cpython-38-x86_64-linux-gnu.so with python3 -c 'import importlib;print(importlib.machinery.EXTENSION_SUFFIXES[0])' .cpython-38-x86_64-linux-gnu.so Signed-off-by: Christian Göttsche <cgzones@googlemail.com> --- libselinux/src/Makefile | 2 +- libsemanage/src/Makefile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)