[yocto] [meta-selinux][PATCH 1/5] Break policycoreutils out into separate packages for the various utilities.
Philip Tricca
flihp at twobit.us
Wed Oct 9 05:32:44 PDT 2013
The driver beind this is to allow images to be built with the minimal
tools necessary to load a policy. Breaking all of the stuff that's
dependent on python out from the core utils allows us to make much
smaller images.
Signed-off-by: Philip Tricca <flihp at twobit.us>
---
recipes-security/selinux/policycoreutils.inc | 181 +++++++++++++++++++++++++-
1 file changed, 175 insertions(+), 6 deletions(-)
diff --git a/recipes-security/selinux/policycoreutils.inc b/recipes-security/selinux/policycoreutils.inc
index dfd65e3..e6ff4ed 100644
--- a/recipes-security/selinux/policycoreutils.inc
+++ b/recipes-security/selinux/policycoreutils.inc
@@ -38,6 +38,92 @@ RDEPENDS_${BPN} += "\
python-ipy \
"
+RDEPENDS_${BPN}-audit2allow = " \
+ python-textutils \
+ libselinux-python \
+ sepolgen \
+ "
+RDEPENDS_${BPN}-chcat = " \
+ python-codecs \
+ python-shell \
+ python-stringold \
+ python-unixadmin \
+ ${BPN}-python \
+ libselinux-python \
+ "
+RDEPENDS_${BPN}-fixfiles += "\
+ ${BPN}-setfiles \
+ "
+RDEPENDS_${BPN}-genhomedircon += "\
+ ${BPN}-genhomedircon \
+ ${BPN}-semodule \
+ "
+RDEPENDS_${BPN}-loadpolicy += "\
+ libselinux \
+ libsepol \
+ "
+RDEPENDS_${BPN}-newrole += "\
+ libcap-ng \
+ libselinux \
+ "
+RDEPENDS_${BPN}-python += "\
+ python-codecs \
+ python-io \
+ python-ipy \
+ python-re \
+ python-stringold \
+ python-syslog \
+ python-unixadmin \
+ libselinux-python \
+ libsemanage-python \
+ "
+RDEPENDS_${BPN}-runinit += "libselinux"
+RDEPENDS_${BPN}-sandbox += "\
+ python-math \
+ python-shell \
+ python-subprocess \
+ python-textutils \
+ python-unixadmin \
+ libselinux-python \
+ ${BPN}-python \
+ "
+RDEPENDS_${BPN}-secon += "libselinux"
+RDEPENDS_${BPN}-semanage = " \
+ python-core \
+ python-ipy \
+ ${BPN}-python \
+ libselinux-python \
+ "
+RDEPENDS_${BPN}-semodule += "\
+ libsepol \
+ libselinux \
+ libsemanage \
+ "
+# static link to libsepol
+DEPENDS_${BPN}-semodule-deps += "libsepol"
+RDEPENDS_${BPN}-semodule-expand += "libsepol libselinux"
+RDEPENDS_${BPN}-semodule-link += "libsepol libselinux"
+RDEPENDS_${BPN}-semodule-package += "libsepol libselinux"
+RDEPENDS_${BPN}-sepolicy += "\
+ python-argparse \
+ python-codecs \
+ python-core \
+ python-syslog \
+ ${BPN}-python \
+ "
+# static link to libsepol
+DEPENDS_${BPN}-sepolgen-ifgen += "libsepol"
+RDEPENDS_${BPN}-sepolgen-ifgen += "libselinux-python"
+RDEPENDS_${BPN}-sestatus += "libselinux"
+RDEPENDS_${BPN}-setfiles += "\
+ libselinux \
+ libsepol \
+ "
+RDEPENDS_${BPN}-setsebool += "\
+ libsepol \
+ libselinux \
+ libsemanage \
+ "
RDEPENDS_${BPN} += "setools setools-libs ${BPN}-python"
WARN_QA := "${@oe_filter_out('unsafe-references-in-scripts', '${WARN_QA}', d)}"
@@ -45,14 +131,97 @@ ERROR_QA := "${@oe_filter_out('unsafe-references-in-scripts', '${ERROR_QA}', d)}
inherit pythonnative
-PACKAGES =+ "${PN}-python ${PN}-sandbox system-config-selinux"
-FILES_${PN}-python = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/seobject.py* \
+PACKAGES =+ "\
+ ${PN}-audit2allow \
+ ${PN}-chcat \
+ ${PN}-fixfiles \
+ ${PN}-genhomedircon \
+ ${PN}-loadpolicy \
+ ${PN}-newrole \
+ ${PN}-python \
+ ${PN}-runinit \
+ ${PN}-sandbox \
+ ${PN}-secon \
+ ${PN}-semanage \
+ ${PN}-semodule \
+ ${PN}-semodule-deps \
+ ${PN}-semodule-expand \
+ ${PN}-semodule-link \
+ ${PN}-semodule-package \
+ ${PN}-sepolgen-ifgen \
+ ${PN}-sepolicy \
+ ${PN}-sestatus \
+ ${PN}-setfiles \
+ ${PN}-setsebool \
+ system-config-selinux \
+ "
+FILES_${PN}-audit2allow = " \
+ ${bindir}/audit2allow \
+ ${bindir}/audit2why \
+ "
+FILES_${PN}-chcat = " \
+ ${bindir}/chcat \
+ "
+FILES_${PN}-fixfiles += "${base_sbindir}/fixfiles"
+FILES_${PN}-genhomedircon += "${sbindir}/genhomedircon"
+FILES_${PN}-loadpolicy += "\
+ ${base_sbindir}/load_policy \
+ ${sbindir}/load_policy \
+ "
+FILES_${PN}-newrole += "\
+ ${bindir}/newrole \
+ ${@base_contains('DISTRO_FEATURES', 'pam', '${sysconfdir}/pam.d/newrole', '', d)} \
+ "
+FILES_${PN}-python = " \
+ ${libdir}/python${PYTHON_BASEVERSION}/site-packages/seobject.py* \
${libdir}/python${PYTHON_BASEVERSION}/site-packages/sepolicy*.egg-info \
- ${libdir}/python${PYTHON_BASEVERSION}/site-packages/sepolicy/*"
+ ${libdir}/python${PYTHON_BASEVERSION}/site-packages/sepolicy/* \
+ "
+FILES_${PN}-runinit += "\
+ ${sbindir}/run_init \
+ ${sbindir}/open_init_pty \
+ ${@base_contains('DISTRO_FEATURES', 'pam', '${sysconfdir}/pam.d/run_init', '', d)} \
+ "
FILES_${PN}-dbg += "${libdir}/python${PYTHON_BASEVERSION}/site-packages/sepolicy/.debug/*"
-FILES_${PN}-sandbox = "${datadir}/sandbox/*"
-FILES_${PN}-sandbox += "${bindir}/sandbox"
-FILES_${PN}-sandbox += "${sbindir}/seunshare"
+FILES_${PN}-sandbox += "\
+ ${datadir}/sandbox/* \
+ ${bindir}/sandbox \
+ ${sbindir}/seunshare \
+ ${sysconfdir}/sysconfig/sandbox \
+ "
+FILES_${PN}-secon += "${bindir}/secon"
+FILES_${PN}-semanage = " \
+ ${sbindir}/semanage \
+ ${sysconfdir}/bash_completion.d/semanage-bash-completion.sh \
+ "
+FILES_${PN}-semodule += "${sbindir}/semodule"
+FILES_${PN}-semodule-deps += "${bindir}/semodule_deps"
+FILES_${PN}-semodule-expand += "${bindir}/semodule_expand"
+FILES_${PN}-semodule-link += "${bindir}/semodule_link"
+FILES_${PN}-semodule-package += "\
+ ${bindir}/semodule_package \
+ ${bindir}/semodule_unpackage \
+ "
+FILES_${PN}-sepolicy += "\
+ ${bindir}/sepolicy \
+ ${sysconfdir}/bash_completion.d/sepolicy-bash-completion.sh \
+ "
+FILES_${PN}-sepolgen-ifgen += "\
+ ${bindir}/sepolgen-ifgen \
+ ${bindir}/sepolgen-ifgen-attr-helper \
+ "
+FILES_${PN}-sestatus += "\
+ ${sbindir}/sestatus \
+ ${sysconfdir}/sestatus.conf \
+ "
+FILES_${PN}-setfiles += " \
+ ${base_sbindir}/restorecon \
+ ${base_sbindir}/setfiles \
+ "
+FILES_${PN}-setsebool += " \
+ ${sbindir}/setsebool \
+ ${sysconfdir}/bash_completion.d/setsebool-bash-completion.sh \
+ "
FILES_system-config-selinux = " \
${bindir}/sepolgen \
${datadir}/system-config-selinux/* \
--
1.7.10.4
More information about the yocto
mailing list