config BR2_PACKAGE_SELINUX_PYTHON
	bool "selinux-python"
	depends on BR2_USE_MMU
	depends on BR2_USE_WCHAR
	depends on BR2_TOOLCHAIN_HAS_THREADS
	depends on !BR2_STATIC_LIBS
	select BR2_PACKAGE_PYTHON3 if !BR2_PACKAGE_PYTHON
	help
	  A set of SELinux tools written in python that help with
	  managing a system with SELinux enabled. If no packages are
	  selected nothing will actually be built.

	  https://github.com/SELinuxProject/selinux/wiki

if BR2_PACKAGE_SELINUX_PYTHON

config BR2_PACKAGE_SELINUX_PYTHON_AUDIT2ALLOW
	bool "audit2allow"
	select BR2_PACKAGE_CHECKPOLICY
	select BR2_PACKAGE_SELINUX_PYTHON_SEPOLGEN
	select BR2_PACKAGE_SEMODULE_UTILS
	help
	  This module installs two programs:

	  audit2allow - Generate SELinux policy allow/dontaudit rules
	  from logs of denied operations.

	  audit2why - translates SELinux audit messages into a
	  description of why the access was denied (audit2allow -w)

config BR2_PACKAGE_SELINUX_PYTHON_SEPOLGEN
	bool "sepolgen"
	select BR2_PACKAGE_SEMODULE_UTILS
	help
	  This package contains a Python module that allows you to
	  generate an initial SELinux policy module template.

endif

comment "selinux-python packages needs a toolchain w/ wchar, threads, dynamic library"
	depends on BR2_USE_MMU
	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
		BR2_STATIC_LIBS
