| From c26495025ab1a2597e5433b67a3bf793d3ce1e08 Mon Sep 17 00:00:00 2001 |
| From: Thomas Petazzoni <thomas.petazzoni@bootlin.com> |
| Date: Fri, 25 Oct 2019 13:37:14 +0200 |
| Subject: [PATCH] Do not use PYCEXT, and rely on the installed file name |
| |
| PYCEXT is computed by asking the Python intrepreter what is the |
| file extension used for native Python modules. |
| |
| Unfortunately, when cross-compiling, the host Python doesn't give the |
| proper result: it gives the result matching the build machine, and not |
| the target machine. Due to this, the symlink has an incorrect name, |
| and doesn't point to the .so file that was actually built/installed. |
| |
| To address this and keep things simple, this patch just changes the ln |
| invocation to rely on the name of the _selinux*.so Python module that |
| was installed. |
| |
| Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com> |
| [Refreshed for 3.1] |
| Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> |
| [Refreshed for 3.5] |
| Signed-off-by: Adam Duskett <Aduskett@gmail.com> |
| --- |
| src/Makefile | 3 +-- |
| 1 file changed, 1 insertion(+), 2 deletions(-) |
| |
| diff --git a/src/Makefile b/src/Makefile |
| index 190016e2af34..7ee22fd35da3 100644 |
| --- a/src/Makefile |
| +++ b/src/Makefile |
| @@ -15,7 +15,6 @@ INCLUDEDIR ?= $(PREFIX)/include |
| PYINC ?= $(shell $(PKG_CONFIG) --cflags $(PYPREFIX)) |
| PYLIBS ?= $(shell $(PKG_CONFIG) --libs $(PYPREFIX)) |
| PYTHONLIBDIR ?= $(shell $(PYTHON) -c "import sysconfig; print(sysconfig.get_path('platlib', vars={'platbase': '$(PREFIX)', 'base': '$(PREFIX)'}))") |
| -PYCEXT ?= $(shell $(PYTHON) -c 'import importlib.machinery;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"]') |
| @@ -193,7 +192,7 @@ install: all |
| install-pywrap: pywrap |
| CFLAGS="$(CPPFLAGS) $(CFLAGS) $(SWIG_CFLAGS)" $(PYTHON) -m pip install --prefix=$(PREFIX) `test -n "$(DESTDIR)" && echo --root $(DESTDIR) --ignore-installed --no-deps` $(PYTHON_SETUP_ARGS) . |
| install -m 644 $(SWIGPYOUT) $(DESTDIR)$(PYTHONLIBDIR)/selinux/__init__.py |
| - ln -sf --relative $(DESTDIR)$(PYTHONLIBDIR)/selinux/_selinux$(PYCEXT) $(DESTDIR)$(PYTHONLIBDIR)/_selinux$(PYCEXT) |
| + ln -sf --relative $(DESTDIR)$(PYTHONLIBDIR)/selinux/_selinux*.so $(DESTDIR)$(PYTHONLIBDIR)/ |
| |
| install-rubywrap: rubywrap |
| test -d $(DESTDIR)$(RUBYINSTALL) || install -m 755 -d $(DESTDIR)$(RUBYINSTALL) |
| -- |
| 2.26.2 |
| |