PKG_NAME:=refpolicy
PKG_VERSION:=2.20200229
-PKG_RELEASE:=2
+PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://github.com/SELinuxProject/refpolicy/releases/download/RELEASE_2_20200229
include $(INCLUDE_DIR)/package.mk
-define Package/refpolicy
+define Package/refpolicy/Default
SECTION:=system
CATEGORY:=Base system
TITLE:=SELinux reference policy
URL:=http://selinuxproject.org/page/Main_Page
+ PKGARCH:=all
+endef
+
+define Package/refpolicy
+ $(call Package/refpolicy/Default)
+ CONFLICTS:=refpolicy-modular
+ VARIANT:=default
+endef
+
+define Package/refpolicy-modular
+ $(call Package/refpolicy/Default)
+ TITLE += (modular)
+ VARIANT:=modular
+ PROVIDES:=refpolicy
endef
define Package/refpolicy/description
# builds is a small host tool that gets run as part of the build
# process.
MAKE_FLAGS += \
- TEST_TOOLCHAIN="$(STAGING_DIR_HOSTPKG)" \
- BINDIR=/bin \
- SBINDIR=/sbin \
+ DESTDIR="$(PKG_INSTALL_DIR)"
+ SETFILES="$(STAGING_DIR_HOST)/bin/setfiles" \
+ CHECKPOLICY="$(STAGING_DIR_HOSTPKG)/bin/checkpolicy" \
CC="$(HOSTCC)" \
CFLAGS="$(HOST_CFLAGS)"
define Build/Configure
- $(SED) "/MONOLITHIC/c\MONOLITHIC = y" $(PKG_BUILD_DIR)/build.conf
$(SED) "/NAME/c\NAME = targeted" $(PKG_BUILD_DIR)/build.conf
+ifneq ($(BUILD_VARIANT),modular)
+ $(SED) "/MONOLITHIC/c\MONOLITHIC = y" $(PKG_BUILD_DIR)/build.conf
+endif
$(call Build/Compile/Default,conf)
endef
+ifeq ($(BUILD_VARIANT),modular)
+define Build/Install
+ $(call Build/Compile/Default,install install-headers)
+endef
+endif
+
define Package/refpolicy/conffiles
/etc/selinux/config
endef
+Package/refpolicy-modular/conffiles = $(Package/refpolicy/conffiles)
+
define Package/refpolicy/install
$(INSTALL_DIR) $(1)/etc/selinux
$(CP) $(PKG_INSTALL_DIR)/etc/selinux/* $(1)/etc/selinux/
$(CP) ./files/selinux-config $(1)/etc/selinux/config
+ifeq ($(BUILD_VARIANT),modular)
+ $(INSTALL_DIR) $(1)/usr/share/selinux
+ $(CP) $(PKG_INSTALL_DIR)/usr/share/selinux/* $(1)/usr/share/selinux/
+endif
endef
+Package/refpolicy-modular/install = $(Package/refpolicy/install)
+
$(eval $(call BuildPackage,refpolicy))
+$(eval $(call BuildPackage,refpolicy-modular))