swift       14/08/21 19:31:14

  Modified:             ChangeLog
  Added:                selinux-base-policy-2.20140311-r6.ebuild
  Log:
  Release of 2.20140311-r6
  
  (Portage version: 2.2.8-r1/cvs/Linux x86_64, signed Manifest commit with key 
0x2EDD52403B68AF47)

Revision  Changes    Path
1.150                sec-policy/selinux-base-policy/ChangeLog

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog?rev=1.150&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog?rev=1.150&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog?r1=1.149&r2=1.150

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog,v
retrieving revision 1.149
retrieving revision 1.150
diff -u -r1.149 -r1.150
--- ChangeLog   9 Aug 2014 19:34:19 -0000       1.149
+++ ChangeLog   21 Aug 2014 19:31:14 -0000      1.150
@@ -1,6 +1,12 @@
 # ChangeLog for sec-policy/selinux-base-policy
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog,v 
1.149 2014/08/09 19:34:19 swift Exp $
+# $Header: /var/cvsroot/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog,v 
1.150 2014/08/21 19:31:14 swift Exp $
+
+*selinux-base-policy-2.20140311-r6 (21 Aug 2014)
+
+  21 Aug 2014; Sven Vermeulen <sw...@gentoo.org>
+  +selinux-base-policy-2.20140311-r6.ebuild:
+  Release of 2.20140311-r6
 
 *selinux-base-policy-2.20140311-r5 (09 Aug 2014)
 



1.1                  
sec-policy/selinux-base-policy/selinux-base-policy-2.20140311-r6.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sec-policy/selinux-base-policy/selinux-base-policy-2.20140311-r6.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sec-policy/selinux-base-policy/selinux-base-policy-2.20140311-r6.ebuild?rev=1.1&content-type=text/plain

Index: selinux-base-policy-2.20140311-r6.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: 
/var/cvsroot/gentoo-x86/sec-policy/selinux-base-policy/selinux-base-policy-2.20140311-r6.ebuild,v
 1.1 2014/08/21 19:31:14 swift Exp $
EAPI="5"

inherit eutils

if [[ ${PV} == 9999* ]]; then
        
EGIT_REPO_URI="${SELINUX_GIT_REPO:-git://git.overlays.gentoo.org/proj/hardened-refpolicy.git
 https://git.overlays.gentoo.org/gitroot/proj/hardened-refpolicy.git}";
        EGIT_BRANCH="${SELINUX_GIT_BRANCH:-master}"
        EGIT_SOURCEDIR="${WORKDIR}/refpolicy"

        inherit git-2

        KEYWORDS=""
else
        SRC_URI="http://oss.tresys.com/files/refpolicy/refpolicy-${PV}.tar.bz2
                        
http://dev.gentoo.org/~swift/patches/${PN}/patchbundle-${PN}-${PVR}.tar.bz2";
        KEYWORDS="~amd64 ~x86"
fi

HOMEPAGE="http://www.gentoo.org/proj/en/hardened/selinux/";
DESCRIPTION="SELinux policy for core modules"

IUSE="+unconfined"

RDEPEND="=sec-policy/selinux-base-${PVR}"
PDEPEND="unconfined? ( sec-policy/selinux-unconfined )"
DEPEND=""
KEYWORDS="~amd64 ~x86"

MODS="application authlogin bootloader clock consoletype cron dmesg fstools 
getty hostname hotplug init iptables libraries locallogin logging lvm miscfiles 
modutils mount mta netutils nscd portage raid rsync selinuxutil setrans ssh 
staff storage su sysadm sysnetwork tmpfiles udev userdomain usermanage 
unprivuser xdg"
LICENSE="GPL-2"
SLOT="0"
S="${WORKDIR}/"

# Code entirely copied from selinux-eclass (cannot inherit due to dependency on
# itself), when reworked reinclude it. Only postinstall (where -b base.pp is
# added) needs to remain then.

pkg_pretend() {
        for i in ${POLICY_TYPES}; do
                if [[ "${i}" == "targeted" ]] && ! use unconfined; then
                        die "If you use POLICY_TYPES=targeted, then 
USE=unconfined is mandatory."
                fi
        done
}

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
        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

        # Collect only those files needed for this particular module
        for i in ${MODS}; do
                modfiles="$(find ${S}/refpolicy/policy/modules -iname $i.te) 
$modfiles"
                modfiles="$(find ${S}/refpolicy/policy/modules -iname $i.fc) 
$modfiles"
        done

        for i in ${POLICY_TYPES}; do
                mkdir "${S}"/${i} || die "Failed to create directory ${S}/${i}"
                cp "${S}"/refpolicy/doc/Makefile.example "${S}"/${i}/Makefile \
                        || die "Failed to copy Makefile.example to 
${S}/${i}/Makefile"

                cp ${modfiles} "${S}"/${i} \
                        || die "Failed to copy the module files to ${S}/${i}"
        done
}

src_compile() {
        for i in ${POLICY_TYPES}; do
                # Parallel builds are broken, so we need to force -j1 here
                emake -j1 NAME=$i -C "${S}"/${i} || die "${i} compile failed"
        done
}

src_install() {
        local BASEDIR="/usr/share/selinux"

        for i in ${POLICY_TYPES}; do
                for j in ${MODS}; do
                        einfo "Installing ${i} ${j} policy package"
                        insinto ${BASEDIR}/${i}
                        doins "${S}"/${i}/${j}.pp || die "Failed to add ${j}.pp 
to ${i}"
                done
        done
}

pkg_postinst() {
        # Override the command from the eclass, we need to load in base as well 
here
        local COMMAND
        for i in ${MODS}; do
                COMMAND="-i ${i}.pp ${COMMAND}"
        done

        for i in ${POLICY_TYPES}; do
                einfo "Inserting the following modules, with base, into the $i 
module store: ${MODS}"

                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"
        done
}




Reply via email to