Files
packages/lang/python/python-selinux/Makefile
T
Alexandru Ardelean a90cfdcd36 python-selinux: fix cross-compilation, add test.sh
Add --no-build-isolation to PYTHON_SETUP_ARGS. Without it, pip creates
an isolated build environment which fails during cross-compilation
because _sysconfigdata is missing for the target arch.

Add test.sh with basic import and API sanity checks.

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
(cherry picked from commit e2e727e686)
[keep version 3.8.1 from openwrt-25.12]
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2026-09-28 14:02:36 +03:00

75 lines
2.0 KiB
Makefile

#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=python-selinux
PKG_VERSION:=3.8.1
PKG_RELEASE:=2
SRC_NAME:=libselinux
PKG_SOURCE:=$(SRC_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/SELinuxProject/selinux/releases/download/$(PKG_VERSION)
PKG_HASH:=ec2d2789f931152d21c1db1eb4bc202ce4eccede34d9be9e360e3b45243cee2c
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)/$(SRC_NAME)-$(PKG_VERSION)
PKG_MAINTAINER:=Thomas Petazzoni <thomas.petazzoni@bootlin.com>
PKG_LICENSE:=libselinux-1.0
PKG_LICENSE_FILES:=LICENSE
PKG_CPE_ID:=cpe:/a:selinuxproject:libselinux
PKG_BUILD_DEPENDS:=swig/host
PKG_BUILD_PARALLEL:=1
PYTHON3_PKG_BUILD:=0
include $(INCLUDE_DIR)/package.mk
include ../python3-package.mk
define Package/python3-selinux
SUBMENU:=Python
SECTION:=lang
CATEGORY:=Languages
TITLE:=SELinux runtime library bindings
DEPENDS:=+python3-light +libselinux
URL:=http://selinuxproject.org/page/Main_Page
endef
define Package/python3-selinux/description
libselinux is the runtime SELinux library that provides
interfaces (e.g. library functions for the SELinux kernel
APIs like getcon(), other support functions like
getseuserbyname()) to SELinux-aware applications. libselinux
may use the shared libsepol to manipulate the binary policy
if necessary (e.g. to downgrade the policy format to an
older version supported by the kernel) when loading policy.
This package provides the Python bindings for libselinux.
endef
MAKE_VARS += \
$(PYTHON3_VARS) \
$(HOST_PYTHON3_PIP_VARS) \
PYTHON_SETUP_ARGS="--no-compile --no-build-isolation"
MAKE_FLAGS += \
SHLIBDIR=/usr/lib
ifneq ($(CONFIG_USE_MUSL),)
MAKE_FLAGS += FTS_LDLIBS=-lfts
TARGET_CFLAGS += -D_LARGEFILE64_SOURCE
endif
define Build/Compile
$(call Build/Compile/Default,pywrap)
endef
define Build/Install
$(call Build/Install/Default,install-pywrap)
endef
$(eval $(call Py3Package,python3-selinux))
$(eval $(call BuildPackage,python3-selinux))
$(eval $(call BuildPackage,python3-selinux-src))