2020-08-11 23:48:33 +00:00
|
|
|
#
|
|
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
|
|
# See /LICENSE for more information.
|
|
|
|
#
|
|
|
|
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
|
|
|
|
PKG_NAME:=libselinux
|
|
|
|
PKG_VERSION:=3.1
|
|
|
|
PKG_RELEASE:=1
|
|
|
|
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
|
|
|
PKG_SOURCE_URL:=https://github.com/SELinuxProject/selinux/releases/download/20200710
|
|
|
|
PKG_HASH:=ea5dcbb4d859e3f999c26a13c630da2f16dff9462e3cc8cb7b458ac157d112e7
|
|
|
|
HOST_BUILD_DEPENDS:=libsepol/host pcre/host
|
|
|
|
|
|
|
|
PKG_MAINTAINER:=Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
|
|
|
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
2020-08-14 01:41:39 +00:00
|
|
|
include $(INCLUDE_DIR)/host-build.mk
|
2020-08-11 23:48:33 +00:00
|
|
|
|
|
|
|
define Package/libselinux
|
|
|
|
SECTION:=libs
|
2020-08-13 13:05:26 +00:00
|
|
|
DEPENDS:=+libsepol +libpcre +musl-fts
|
2020-08-11 23:48:33 +00:00
|
|
|
CATEGORY:=Libraries
|
|
|
|
TITLE:=Runtime SELinux library
|
|
|
|
URL:=http://selinuxproject.org/page/Main_Page
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libselinux/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.
|
|
|
|
endef
|
|
|
|
|
2020-09-04 01:49:23 +00:00
|
|
|
define Package/libselinux-utils
|
|
|
|
SECTION:=utils
|
|
|
|
DEPENDS:=+libselinux
|
|
|
|
CATEGORY:=Utilities
|
|
|
|
TITLE:=Runtime SELinux utilities
|
|
|
|
URL:=http://selinuxproject.org/page/Main_Page
|
|
|
|
endef
|
2020-08-11 23:48:33 +00:00
|
|
|
|
|
|
|
# Needed to link libselinux utilities, which link against
|
|
|
|
# libselinux.so, which indirectly depends on libpcre.so, installed in
|
|
|
|
# $(STAGING_DIR_HOSTPKG).
|
|
|
|
HOST_LDFLAGS += -Wl,-rpath="$(STAGING_DIR_HOSTPKG)/lib"
|
|
|
|
|
|
|
|
HOST_MAKE_FLAGS += \
|
|
|
|
PREFIX=$(STAGING_DIR_HOSTPKG) \
|
|
|
|
SHLIBDIR=$(STAGING_DIR_HOSTPKG)/lib
|
|
|
|
|
|
|
|
MAKE_FLAGS += \
|
|
|
|
FTS_LDLIBS=-lfts \
|
|
|
|
SHLIBDIR=/usr/lib \
|
2020-08-13 18:04:34 +00:00
|
|
|
OS=Linux
|
2020-08-11 23:48:33 +00:00
|
|
|
|
|
|
|
define Build/Compile
|
|
|
|
$(call Build/Compile/Default,all)
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Build/Install
|
|
|
|
$(call Build/Install/Default,install)
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Build/InstallDev
|
|
|
|
$(INSTALL_DIR) $(1)/usr/include
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
|
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libselinux.pc $(1)/usr/lib/pkgconfig/
|
|
|
|
$(SED) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr/lib/pkgconfig/libselinux.pc
|
|
|
|
$(SED) 's,/usr/lib,$$$${exec_prefix}/lib,g' $(1)/usr/lib/pkgconfig/libselinux.pc
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Package/libselinux/install
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libselinux.so.* $(1)/usr/lib/
|
|
|
|
endef
|
|
|
|
|
2020-09-04 01:49:23 +00:00
|
|
|
define Package/libselinux-utils/install
|
|
|
|
$(INSTALL_DIR) $(1)/usr/sbin
|
|
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/usr/sbin
|
|
|
|
endef
|
|
|
|
|
2020-08-11 23:48:33 +00:00
|
|
|
$(eval $(call HostBuild))
|
|
|
|
$(eval $(call BuildPackage,libselinux))
|
2020-09-04 01:49:23 +00:00
|
|
|
$(eval $(call BuildPackage,libselinux-utils))
|