summaryrefslogtreecommitdiffstats
path: root/package/restorecond
diff options
context:
space:
mode:
authorAdam Duskett <aduskett@gmail.com>2017-10-17 18:32:18 -0400
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2017-10-18 23:24:13 +0200
commit9d6da7a264a5b36ad641a0d26b3a3d27188d3624 (patch)
treed7116ecdc55123cb9f38c519a76b92dd0d39e67e /package/restorecond
parentbd3f4c04f331512efbf8524e3f7532489fc41020 (diff)
downloadbuildroot-9d6da7a264a5b36ad641a0d26b3a3d27188d3624.tar.gz
buildroot-9d6da7a264a5b36ad641a0d26b3a3d27188d3624.zip
policycoreutils: split packages and bump to 2.7
Policycoreutils was broken up into several packages, as such several changes needed to happen for this patch to work: - Remove patches 3, 4, and 5 as they no longer apply. - Refresh patches 1 and 2 to work with version 2.7 - Remove semodule_${deps,expand,link,package} and sestatus from the makedirs in the mk file. - Remove restorecond from the make and config file. (Seperate package) - Remove Audit2allow from the make and config file. (In a different package) - Remove the package sepolgen - Add the package selinux-python - Add the package restorecond - Add the package semodule-utils - Add the relevant Config.in.legacy options into the menu. Because these are utilities that work on top of python, the older versions of these utilites still work, and as such this should be a single patch. Signed-off-by: Adam Duskett <Adamduskett@outlook.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'package/restorecond')
-rw-r--r--package/restorecond/Config.in24
-rw-r--r--package/restorecond/restorecond.hash2
-rw-r--r--package/restorecond/restorecond.mk52
3 files changed, 78 insertions, 0 deletions
diff --git a/package/restorecond/Config.in b/package/restorecond/Config.in
new file mode 100644
index 0000000000..54a5545a12
--- /dev/null
+++ b/package/restorecond/Config.in
@@ -0,0 +1,24 @@
+config BR2_PACKAGE_RESTORECOND
+ bool "restorecond"
+ depends on !BR2_arc
+ depends on BR2_USE_MMU # libglib2
+ depends on BR2_USE_WCHAR # libglib2
+ depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
+ depends on !BR2_STATIC_LIBS # libselinux
+ depends on BR2_TOOLCHAIN_USES_GLIBC # libselinux
+ select BR2_PACKAGE_DBUS
+ select BR2_PACKAGE_DBUS_GLIB
+ select BR2_PACKAGE_LIBGLIB2
+ select BR2_PACKAGE_LIBSELINUX
+ select BR2_PACKAGE_LIBSEPOL
+ help
+ restorecond is a daemon that watches for file creation and
+ then sets the default SELinux file context for that file.
+
+ https://github.com/SELinuxProject/selinux/wiki/Releases
+
+comment "restorecond needs a toolchain w/ wchar, threads, dynamic library"
+ depends on BR2_USE_MMU
+ depends on !BR2_arc
+ depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \
+ BR2_STATIC_LIBS || !BR2_TOOLCHAIN_USES_GLIBC
diff --git a/package/restorecond/restorecond.hash b/package/restorecond/restorecond.hash
new file mode 100644
index 0000000000..f52bbd2161
--- /dev/null
+++ b/package/restorecond/restorecond.hash
@@ -0,0 +1,2 @@
+# https://github.com/SELinuxProject/selinux/wiki/Releases
+sha256 cb8e0a8d706cb2c1f105125f3514dffffefcbcfb49199183a7f91ab0bdf1f24d restorecond-2.7.tar.gz
diff --git a/package/restorecond/restorecond.mk b/package/restorecond/restorecond.mk
new file mode 100644
index 0000000000..1968ba5460
--- /dev/null
+++ b/package/restorecond/restorecond.mk
@@ -0,0 +1,52 @@
+################################################################################
+#
+# restorecond
+#
+################################################################################
+
+RESTORECOND_VERSION = 2.7
+RESTORECOND_SITE = https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/20170804
+RESTORECOND_LICENSE = GPL-2.0
+RESTORECOND_LICENSE_FILES = COPYING
+
+RESTORECOND_DEPENDENCIES = libglib2 libsepol libselinux dbus-glib
+
+# Undefining _FILE_OFFSET_BITS here because of a "bug" with glibc fts.h
+# large file support.
+# See https://bugzilla.redhat.com/show_bug.cgi?id=574992 for more information
+RESTORECOND_MAKE_OPTS += \
+ $(TARGET_CONFIGURE_OPTS) \
+ CFLAGS="$(TARGET_CFLAGS) -U_FILE_OFFSET_BITS" \
+ CPPFLAGS="$(TARGET_CPPFLAGS) -U_FILE_OFFSET_BITS" \
+ ARCH="$(BR2_ARCH)"
+
+# We need to pass DESTDIR at build time because it's used by
+# restorecond build system to find headers and libraries.
+define RESTORECOND_BUILD_CMDS
+ $(MAKE) -C $(@D) $(RESTORECOND_MAKE_OPTS) DESTDIR=$(STAGING_DIR) all
+endef
+
+define RESTORECOND_INSTALL_INIT_SYSV
+ $(INSTALL) -m 0755 -D $(@D)/restorecond.init \
+ $(TARGET_DIR)/etc/init.d/S20restorecond
+endef
+
+define RESTORECOND_INSTALL_INIT_SYSTEMD
+ $(INSTALL) -m 0644 -D $(@D)/restorecond.service \
+ $(TARGET_DIR)/usr/lib/systemd/system/restorecond.service
+
+ mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+ ln -fs ../../../../usr/lib/systemd/system/restorecond.service \
+ $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/restorecond.service
+
+ $(INSTALL) -m 0600 -D $(@D)/org.selinux.Restorecond.service \
+ $(TARGET_DIR)/etc/systemd/system/org.selinux.Restorecond.service
+endef
+
+define RESTORECOND_INSTALL_TARGET_CMDS
+ $(INSTALL) -m 0644 -D $(@D)/restorecond.conf $(TARGET_DIR)/etc/selinux/restorecond.conf
+ $(INSTALL) -m 0644 -D $(@D)/restorecond_user.conf $(TARGET_DIR)/etc/selinux/restorecond_user.conf
+ $(INSTALL) -m 0755 -D $(@D)/restorecond $(TARGET_DIR)/usr/sbin/restorecond
+endef
+
+$(eval $(generic-package))
OpenPOWER on IntegriCloud