From 86dcd0e6fecf0d19ceee211e0efc586aa023cb31 Mon Sep 17 00:00:00 2001 From: Adam Duskett Date: Thu, 2 Feb 2017 17:45:02 -0500 Subject: [PATCH] sepolgen: allow compiling for target Sepolgen is currently a host-only package, however it is a dependency of audit2allow. This patch allows for sepolgen to be compiled for the target. Signed-off-by: Adam Duskett Reviewed-by: Matt Weber [Thomas: - fix formatting of Config.in file - add missing dependencies inherited from the fact that the package selects python3.] Signed-off-by: Thomas Petazzoni --- package/Config.in | 1 + package/sepolgen/Config.in | 19 +++++++++++++++++++ package/sepolgen/sepolgen.mk | 19 +++++++++++++++++++ 3 files changed, 39 insertions(+) create mode 100644 package/sepolgen/Config.in diff --git a/package/Config.in b/package/Config.in index a4855a9e42..7c10bc4aee 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1739,6 +1739,7 @@ endmenu menu "Security" source "package/policycoreutils/Config.in" + source "package/sepolgen/Config.in" source "package/setools/Config.in" endmenu diff --git a/package/sepolgen/Config.in b/package/sepolgen/Config.in new file mode 100644 index 0000000000..36718163c8 --- /dev/null +++ b/package/sepolgen/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_SEPOLGEN + bool "sepolgen" + select BR2_PACKAGE_PYTHON3 if !BR2_PACKAGE_PYTHON + depends on BR2_USE_WCHAR # python3 + depends on BR2_USE_MMU # python3 + depends on BR2_TOOLCHAIN_HAS_THREADS # python3 + depends on !BR2_STATIC_LIBS # python3 + help + This package contains a Python module that forms the core of + the modern audit2allow (which is a part of the package + policycoreutils). It contains infrastructure for parsing + SELinux related messages as produced by the audit system. + It has facilities for generating policy based on required + access. + +comment "sepolgen 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 diff --git a/package/sepolgen/sepolgen.mk b/package/sepolgen/sepolgen.mk index 94c0d59086..033b468f02 100644 --- a/package/sepolgen/sepolgen.mk +++ b/package/sepolgen/sepolgen.mk @@ -9,6 +9,24 @@ SEPOLGEN_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/fi SEPOLGEN_LICENSE = GPL-2.0 SEPOLGEN_LICENSE_FILES = COPYING +ifeq ($(BR2_PACKAGE_PYTHON3),y) +SEPOLGEN_DEPENDENCIES = python3 +SEPOLGEN_MAKE_CMDS = $(TARGET_CONFIGURE_OPTS) \ + PYTHONLIBDIR=/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages +else +SEPOLGEN_DEPENDENCIES = python +SEPOLGEN_MAKE_CMDS = $(TARGET_CONFIGURE_OPTS) \ + PYTHONLIBDIR=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages +endif + +define SEPOLGEN_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_SEPOLGEN_MAKE_CMDS) DESTDIR=$(TARGET_DIR) +endef + +define SEPOLGEN_INSTALL_TARGET_CMDS + $(MAKE_ENV) $(MAKE) -C $(@D) $(SEPOLGEN_MAKE_CMDS) DESTDIR=$(TARGET_DIR) install +endef + ifeq ($(BR2_PACKAGE_PYTHON3),y) HOST_SEPOLGEN_DEPENDENCIES = host-python3 HOST_SEPOLGEN_MAKE_CMDS = $(HOST_CONFIGURE_OPTS) \ @@ -27,4 +45,5 @@ define HOST_SEPOLGEN_INSTALL_CMDS $(HOST_MAKE_ENV) $(MAKE) -C $(@D) $(HOST_SEPOLGEN_MAKE_CMDS) DESTDIR=$(HOST_DIR) install endef +$(eval $(generic-package)) $(eval $(host-generic-package)) -- 2.30.2