kumquat-buildroot/package/libselinux/0001-Do-not-use-PYCEXT-and-rely-on-the-installed-file-nam.patch
Adam Duskett 5f7275787a package/libselinux: bump version to 3.6
Changes:
 - Remove 0001-fix-musl-build.patch
   Fixed with commit d88597798fdb1a2b344ca47e48f2f80ad433fd95 differently.
   """
   libselinux: drop usage of _D_ALLOC_NAMLEN

   _D_ALLOC_NAMLEN is not very portable. Currently, the code
   mallocs based on _D_ALLOC_NAMLEN() and then strcpy's dirent
   d_name into the buffer. Instead, just use strdup.

   Change-Id: I5c8ca47da2c593ea2726caba5781f5e9d9d910ae
   Signed-off-by: William Roberts <william.c.roberts@intel.com>
   """

 - Remove 0003-libselinux-set-CFLAGS-for-pip-installation.patch
   Fixed with commit 89dd980c1e9a800f104c1db2b4c9e77be532ca35.
   """
   Add CPPFLAGS to Makefiles

   This patch adds CPPFLAGS to all of the Makefiles as suggested.

   Signed-off-by: Cameron Williams <ckwilliams.work@gmail.com>
   Acked-by: James Carter <jwcart2@gmail.com>
   """

 - Rename 0002-Do-not-use-PYCEXT-and-rely-on-the-installed-file-nam.patch to
   0001-Do-not-use-PYCEXT-and-rely-on-the-installed-file-nam.patch

 - Remove "package/libselinux/0001-fix-musl-build.patch Upstream" from
   .checkpackageignore

 - Rename "0002-Do-not-use-PYCEXT-and-rely-on-the-installed-file-nam.patch" to
   "0001-Do-not-use-PYCEXT-and-rely-on-the-installed-file-nam.patch" in the
   .checkpackageignore

Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-05-10 13:47:48 +02:00

51 lines
2.6 KiB
Diff

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