diff options
-rw-r--r-- | recipes-security/refpolicy/refpolicy-minimum_2.20140311.bb | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/recipes-security/refpolicy/refpolicy-minimum_2.20140311.bb b/recipes-security/refpolicy/refpolicy-minimum_2.20140311.bb index 429a378..0b286ac 100644 --- a/recipes-security/refpolicy/refpolicy-minimum_2.20140311.bb +++ b/recipes-security/refpolicy/refpolicy-minimum_2.20140311.bb @@ -27,3 +27,31 @@ EXTRA_POLICY_MODULES += "nscd" EXTRA_POLICY_MODULES += "mta" POLICY_MODULES_MIN = "${CORE_POLICY_MODULES} ${EXTRA_POLICY_MODULES}" + +# re-write the same func from refpolicy_common.inc +prepare_policy_store () { + oe_runmake 'DESTDIR=${D}' 'prefix=${D}${prefix}' install + + # Prepare to create policy store + mkdir -p ${D}${sysconfdir}/selinux/ + mkdir -p ${D}${sysconfdir}/selinux/${POLICY_NAME}/policy + mkdir -p ${D}${sysconfdir}/selinux/${POLICY_NAME}/modules/active/modules + mkdir -p ${D}${sysconfdir}/selinux/${POLICY_NAME}/contexts/files + touch ${D}${sysconfdir}/selinux/${POLICY_NAME}/contexts/files/file_contexts.local + if ${@base_contains('DISTRO_FEATURES','compressed_policy','true','false',d)}; then + for i in ${D}${datadir}/selinux/${POLICY_NAME}/*.pp; do + bzip2 $i + done + cp base.pp.bz2 ${D}${sysconfdir}/selinux/${POLICY_NAME}/modules/active/base.pp + for i in ${POLICY_MODULES_MIN}; do + cp ${i}.pp.bz2 ${D}${sysconfdir}/selinux/${POLICY_NAME}/modules/active/modules/`basename $i.pp` + done + else + bzip2 -c ${D}${datadir}/selinux/${POLICY_NAME}/base.pp > \ + ${D}${sysconfdir}/selinux/${POLICY_NAME}/modules/active/base.pp + for i in ${POLICY_MODULES_MIN}; do + bzip2 -c ${D}${datadir}/selinux/${POLICY_NAME}/$i.pp > \ + ${D}${sysconfdir}/selinux/${POLICY_NAME}/modules/active/modules/$i.pp + done + fi +} |