mirror of
https://git.busybox.net/buildroot.git
synced 2024-12-03 02:13:29 +08:00
package/libselinux: bump to version 3.5
- libselinux now requires pip, just to perform the install of the python bindings; it still uses setuptools to do the actual build; - rebase patches for version 3.5; - backport a fix for the install of the python bindings. Signed-off-by: Adam Duskett <aduskett@gmail.com> [yann.morin.1998@free.fr: - backport upstream patch to fix installation of python bindings ] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
parent
e7dbd3cee0
commit
1db27ce253
@ -12,13 +12,13 @@ Domain, and we want to avoid license propagation, so this macro is
|
||||
completely written from scratch, and non-optimal.
|
||||
|
||||
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
|
||||
[Updated for 3.0]
|
||||
[Updated for 3.5]
|
||||
Signed-off-by: Adam Duskett <Aduskett@gmail.com>
|
||||
diff --git a/src/booleans.c b/src/booleans.c
|
||||
index ffa8d26..8569002 100644
|
||||
--- a/src/booleans.c
|
||||
+++ b/src/booleans.c
|
||||
@@ -65,6 +65,14 @@ int security_get_boolean_names(char ***names, int *len)
|
||||
@@ -64,6 +64,14 @@ int security_get_boolean_names(char ***names, int *len)
|
||||
goto bad;
|
||||
}
|
||||
|
||||
|
@ -18,7 +18,7 @@ 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.0]
|
||||
[Refreshed for 3.5]
|
||||
Signed-off-by: Adam Duskett <Aduskett@gmail.com>
|
||||
---
|
||||
src/Makefile | 3 +--
|
||||
@ -31,14 +31,14 @@ index 190016e2af34..7ee22fd35da3 100644
|
||||
@@ -15,7 +15,6 @@ 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)'))")
|
||||
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"]')
|
||||
@@ -184,7 +183,7 @@ install: all
|
||||
@@ -189,7 +188,7 @@ install: all
|
||||
install-pywrap: pywrap
|
||||
$(PYTHON) setup.py install --prefix=$(PREFIX) `test -n "$(DESTDIR)" && echo --root $(DESTDIR)` $(PYTHON_SETUP_ARGS)
|
||||
$(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)/
|
||||
|
@ -0,0 +1,43 @@
|
||||
From c9b3cbb654ca1e834d47f52af9f170b9f38c857a Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Christian=20G=C3=B6ttsche?= <cgzones@googlemail.com>
|
||||
Date: Thu, 20 Apr 2023 18:27:00 +0200
|
||||
Subject: [PATCH] libselinux: set CFLAGS for pip installation
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Explicitly set CFLAGS for the pip install command, similar to calling
|
||||
setup.py, to ignore known compiler warnings treated as errors, e.g.:
|
||||
|
||||
selinuxswig_python_wrap.c:3593:19: error: 'sidget' is deprecated [-Werror,-Wdeprecated-declarations]
|
||||
result = (int)sidget(arg1);
|
||||
^
|
||||
selinuxswig_python_wrap.c:15024:1: error: no previous prototype for function 'PyInit__selinux' [-Werror,-Wmissing-prototypes]
|
||||
SWIG_init(void) {
|
||||
^
|
||||
|
||||
Signed-off-by: Christian Göttsche <cgzones@googlemail.com>
|
||||
Acked-by: Petr Lautrbach <lautrbach@redhat.com>
|
||||
Upstream: https://github.com/SELinuxProject/selinux/commit/c9b3cbb654ca1e834d47f52af9f170b9f38c857a
|
||||
[yann.morin.1998@free.fr: backport from upstream]
|
||||
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
|
||||
---
|
||||
libselinux/src/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/libselinux/src/Makefile b/libselinux/src/Makefile
|
||||
index 36d57122..f9a1e5f5 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -187,7 +187,7 @@ install: all
|
||||
ln -sf --relative $(DESTDIR)$(SHLIBDIR)/$(LIBSO) $(DESTDIR)$(LIBDIR)/$(TARGET)
|
||||
|
||||
install-pywrap: pywrap
|
||||
- $(PYTHON) -m pip install --prefix=$(PREFIX) `test -n "$(DESTDIR)" && echo --root $(DESTDIR) --ignore-installed --no-deps` $(PYTHON_SETUP_ARGS) .
|
||||
+ CFLAGS="$(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)
|
||||
|
||||
--
|
||||
2.25.1
|
||||
|
@ -6,6 +6,7 @@ config BR2_PACKAGE_LIBSELINUX
|
||||
select BR2_PACKAGE_LIBSEPOL
|
||||
select BR2_PACKAGE_PCRE2
|
||||
select BR2_PACKAGE_MUSL_FTS if !BR2_TOOLCHAIN_USES_GLIBC
|
||||
select BR2_PACKAGE_PYTHON_SETUPTOOLS if BR2_PACKAGE_PYTHON3
|
||||
help
|
||||
libselinux is the runtime SELinux library that provides
|
||||
interfaces (e.g. library functions for the SELinux kernel
|
||||
|
@ -1,5 +1,5 @@
|
||||
# From: https://github.com/SELinuxProject/selinux/wiki/Releases
|
||||
sha256 acfdee27633d2496508c28727c3d41d3748076f66d42fccde2e6b9f3463a7057 libselinux-3.3.tar.gz
|
||||
sha256 9a3a3705ac13a2ccca2de6d652b6356fead10f36fb33115c185c5ccdf29eec19 libselinux-3.5.tar.gz
|
||||
|
||||
# Hash for license file
|
||||
sha256 86657b4c0fe868d7cbd977cb04c63b6c667e08fa51595a7bc846ad4bed8fc364 LICENSE
|
||||
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBSELINUX_VERSION = 3.3
|
||||
LIBSELINUX_VERSION = 3.5
|
||||
LIBSELINUX_SITE = https://github.com/SELinuxProject/selinux/releases/download/$(LIBSELINUX_VERSION)
|
||||
LIBSELINUX_LICENSE = Public Domain
|
||||
LIBSELINUX_LICENSE_FILES = LICENSE
|
||||
@ -31,7 +31,11 @@ LIBSELINUX_MAKE_OPTS += FTS_LDLIBS=-lfts
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_PYTHON3),y)
|
||||
LIBSELINUX_DEPENDENCIES += python3 host-swig
|
||||
LIBSELINUX_DEPENDENCIES += \
|
||||
python3 \
|
||||
python-setuptools \
|
||||
host-python-pip \
|
||||
host-swig
|
||||
|
||||
LIBSELINUX_MAKE_OPTS += \
|
||||
$(PKG_PYTHON_DISTUTILS_ENV) \
|
||||
@ -77,7 +81,13 @@ define LIBSELINUX_INSTALL_TARGET_CMDS
|
||||
endef
|
||||
|
||||
HOST_LIBSELINUX_DEPENDENCIES = \
|
||||
host-pkgconf host-libsepol host-pcre2 host-swig host-python3
|
||||
host-pkgconf \
|
||||
host-libsepol \
|
||||
host-pcre2 \
|
||||
host-swig \
|
||||
host-python3 \
|
||||
host-python-pip \
|
||||
host-python-setuptools
|
||||
|
||||
HOST_LIBSELINUX_MAKE_OPTS = \
|
||||
$(HOST_CONFIGURE_OPTS) \
|
||||
|
Loading…
Reference in New Issue
Block a user