diff options
author | Jason Zaman <perfinion@gentoo.org> | 2016-12-12 00:31:25 +0800 |
---|---|---|
committer | Jason Zaman <perfinion@gentoo.org> | 2016-12-12 03:59:48 +0800 |
commit | 8f56c2eff72a065f43181f002e1601b0865ee3a1 (patch) | |
tree | 1e2721cd7a475151f734cbe5c5de10595f277fba /sec-policy | |
parent | sec-policy/selinux-base: update to EAPI6 (diff) | |
download | gentoo-8f56c2eff72a065f43181f002e1601b0865ee3a1.tar.gz gentoo-8f56c2eff72a065f43181f002e1601b0865ee3a1.tar.bz2 gentoo-8f56c2eff72a065f43181f002e1601b0865ee3a1.zip |
sec-policy/selinux-base-policy: update to EAPI6
Package-Manager: portage-2.3.0
Diffstat (limited to 'sec-policy')
-rw-r--r-- | sec-policy/selinux-base-policy/selinux-base-policy-9999.ebuild | 52 |
1 files changed, 14 insertions, 38 deletions
diff --git a/sec-policy/selinux-base-policy/selinux-base-policy-9999.ebuild b/sec-policy/selinux-base-policy/selinux-base-policy-9999.ebuild index 0a47b94e7134..b7ba9e2815b0 100644 --- a/sec-policy/selinux-base-policy/selinux-base-policy-9999.ebuild +++ b/sec-policy/selinux-base-policy/selinux-base-policy-9999.ebuild @@ -1,9 +1,7 @@ # Copyright 1999-2016 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ -EAPI="5" - -inherit eutils +EAPI="6" if [[ ${PV} == 9999* ]]; then EGIT_REPO_URI="${SELINUX_GIT_REPO:-git://anongit.gentoo.org/proj/hardened-refpolicy.git https://anongit.gentoo.org/git/proj/hardened-refpolicy.git}" @@ -52,37 +50,11 @@ src_prepare() { local modfiles if [[ ${PV} != 9999* ]]; then - # Patch the source with the base patchbundle - cd "${S}" - EPATCH_MULTI_MSG="Applying SELinux policy updates ... " \ - EPATCH_SUFFIX="patch" \ - EPATCH_SOURCE="${WORKDIR}" \ - EPATCH_FORCE="yes" \ - epatch + einfo "Applying SELinux policy updates ... " + eapply -p0 "${WORKDIR}/0001-full-patch-against-stable-release.patch" fi - # Apply the additional patches refered to by the module ebuild. - # But first some magic to differentiate between bash arrays and strings - if [[ "$(declare -p POLICY_PATCH 2>/dev/null 2>&1)" == "declare -a"* ]]; - then - cd "${S}/refpolicy/policy/modules" - for POLPATCH in "${POLICY_PATCH[@]}"; - do - epatch "${POLPATCH}" - done - else - if [[ -n ${POLICY_PATCH} ]]; - then - cd "${S}/refpolicy/policy/modules" - for POLPATCH in ${POLICY_PATCH}; - do - epatch "${POLPATCH}" - done - fi - fi - - # Calling user patches - epatch_user + eapply_user # Collect only those files needed for this particular module for i in ${MODS}; do @@ -120,9 +92,13 @@ src_install() { pkg_postinst() { # Override the command from the eclass, we need to load in base as well here - local COMMAND + local COMMAND="-i base.pp" + if has_version "<sys-apps/policycoreutils-2.5"; then + COMMAND="-b base.pp" + fi + for i in ${MODS}; do - COMMAND="-i ${i}.pp ${COMMAND}" + COMMAND="${COMMAND} -i ${i}.pp" done for i in ${POLICY_TYPES}; do @@ -130,17 +106,17 @@ pkg_postinst() { cd /usr/share/selinux/${i} || die "Could not enter /usr/share/selinux/${i}" - semodule -s ${i} -b base.pp ${COMMAND} || die "Failed to load in base and modules ${MODS} in the $i policy store" + semodule -s ${i} ${COMMAND} || die "Failed to load in base and modules ${MODS} in the $i policy store" done # Relabel depending packages local PKGSET=""; - if [ -x /usr/bin/qdepends ] ; then + if [[ -x /usr/bin/qdepends ]] ; then PKGSET=$(/usr/bin/qdepends -Cq -r -Q ${CATEGORY}/${PN} | grep -v 'sec-policy/selinux-'); - elif [ -x /usr/bin/equery ] ; then + elif [[ -x /usr/bin/equery ]] ; then PKGSET=$(/usr/bin/equery -Cq depends ${CATEGORY}/${PN} | grep -v 'sec-policy/selinux-'); fi - if [ -n "${PKGSET}" ] ; then + if [[ -n "${PKGSET}" ]] ; then rlpkg ${PKGSET}; fi } |