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>
This commit is contained in:
Adam Duskett 2024-03-24 15:24:34 -06:00 committed by Thomas Petazzoni
parent 1bcda5be8a
commit 5f7275787a
6 changed files with 5 additions and 87 deletions

View File

@ -943,8 +943,7 @@ package/libressl/0001-always-expose-SSL_OP_NO_TLSv1_3.patch lib_patch.Upstream
package/libroxml/0001-src-roxml_mem.h-add-missing-extern.patch lib_patch.Upstream
package/librsvg/0001-gdk-pixbuf-loader-Makefile.am-set-GDK_PIXBUF_MODULED.patch lib_patch.Upstream
package/librtlsdr/0001-Makefile.am-respect-DESTDIR-with-install-udev-rules.patch lib_patch.Upstream
package/libselinux/0001-fix-musl-build.patch lib_patch.Upstream
package/libselinux/0002-Do-not-use-PYCEXT-and-rely-on-the-installed-file-nam.patch lib_patch.Upstream
package/libselinux/0001-Do-not-use-PYCEXT-and-rely-on-the-installed-file-nam.patch lib_patch.Upstream
package/libsepol/0001-support-static-only.patch lib_patch.Upstream
package/libserial/0001-SerialPort.cpp-fix-build-when-size_t-is-an-unsigned-.patch lib_patch.Upstream
package/libserial/0002-SerialPort.cpp-don-t-use-high-baudrates-when-not-ava.patch lib_patch.Upstream

View File

@ -36,9 +36,9 @@ index 190016e2af34..7ee22fd35da3 100644
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"]')
@@ -189,7 +188,7 @@ install: all
@@ -193,7 +192,7 @@ install: all
install-pywrap: pywrap
$(PYTHON) -m pip install --prefix=$(PREFIX) `test -n "$(DESTDIR)" && echo --root $(DESTDIR) --ignore-installed --no-deps` $(PYTHON_SETUP_ARGS) .
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)/

View File

@ -1,38 +0,0 @@
From 78f7f09028fdd6a5e8e4e4b584749621eaef412f Mon Sep 17 00:00:00 2001
From: Yann E. MORIN" <yann.morin.1998@free.fr>
Date: Sat, 7 Dec 2019 17:24:50 -0800
Subject: [PATCH] fix undefined macros in musl
musl does not define glibc-specific macros, so use a simple version of
the macro when it is not defined.
This is very inefficient, however, but copying the code from glibc is
not really possible because it is LGPL while libselinux in Public
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.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
@@ -64,6 +64,14 @@ int security_get_boolean_names(char ***names, int *len)
goto bad;
}
+/* Simple (but inefficient) version of _D_ALLOC_NAMLEN when
+ * building with a C library that misses it (e.g. musl).
+ * Note: glibc does a strlen on (d)->d_name, so assume it is safe.
+ */
+#ifndef _D_ALLOC_NAMLEN
+#define _D_ALLOC_NAMLEN(d) (strlen((d)->d_name)+1)
+#endif
+
for (i = 0; i < *len; i++) {
n[i] = strdup(namelist[i]->d_name);
if (!n[i]) {
--
2.23.0

View File

@ -1,43 +0,0 @@
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

View File

@ -1,5 +1,5 @@
# From: https://github.com/SELinuxProject/selinux/wiki/Releases
sha256 9a3a3705ac13a2ccca2de6d652b6356fead10f36fb33115c185c5ccdf29eec19 libselinux-3.5.tar.gz
sha256 ba4e0ef34b270e7672a5e5f1b523fe2beab3a40bb33d9389f4ad3a8728f21b52 libselinux-3.6.tar.gz
# Hash for license file
sha256 86657b4c0fe868d7cbd977cb04c63b6c667e08fa51595a7bc846ad4bed8fc364 LICENSE

View File

@ -4,7 +4,7 @@
#
################################################################################
LIBSELINUX_VERSION = 3.5
LIBSELINUX_VERSION = 3.6
LIBSELINUX_SITE = https://github.com/SELinuxProject/selinux/releases/download/$(LIBSELINUX_VERSION)
LIBSELINUX_LICENSE = Public Domain
LIBSELINUX_LICENSE_FILES = LICENSE