forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
sys-libs/libsemanage: bump to 2.7_rc1
Package-Manager: Portage-2.3.5, Repoman-2.3.1
- Loading branch information
Showing
2 changed files
with
138 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
DIST libsemanage-2.5.tar.gz 152884 SHA256 46e2f36254369b6e91d1eea0460c262b139361b055a3a67d3ceea2d8ef72e006 SHA512 cf644b77d8a24f76c630ece582df1b49a0c5f48f1c9f79b1caee0df10372008954406974472a072360dbe6de5ebc19b1b21bb247084d75b7186f61b32f33b8ec WHIRLPOOL 397b7fd2e9b2c00dbc2f58bdc023501dcd7ecf1212fef9ad7993b4763a041068416ef06552c0abf0beef8c69f4704933feca36951866c43d867181332971f6be | ||
DIST libsemanage-2.6.tar.gz 155897 SHA256 4f81541047290b751f2ffb926fcd381c186f22db18d9fe671b0b4a6a54e8cfce SHA512 38741d6e6f7a2669bfeee362e42d6bfd720cceeaf61331e329b2210fdc070444e529656ce86dd82e94aa248eafcfaea4c5d013d9cce76c1039be6fc6a6b2c790 WHIRLPOOL 9fb781c637c4725dd48fa07898fd5db4b2f1e47264e80468e3c9b48fd8afc6bcb6494a44ccbfb0e48dec10dc5db461ab8e1941251d625854ebbebdbfdacb971c | ||
DIST libsemanage-2.7-rc1.tar.gz 153597 SHA256 50df2092bce88af87350916bd7f93b8095de500d9911452a025c3f24ea140455 SHA512 92371e0f710a9fb5179db4c05af52455e3ec0771173a693c954abf032afc70e76d3eb626ae87445a59b04d6037a83fce15bc196275ef3497a8321423ccfb4aac WHIRLPOOL b871a59d0565cc194e7e2b0f60fd059aef17eb433a743bff113085473013a155905aa5778439aa37cb0dbbd4951873c20dc4458469b400a9e64dc4e8bb7e1e87 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,137 @@ | ||
# Copyright 1999-2017 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI="6" | ||
PYTHON_COMPAT=( python{2_7,3_4,3_5} ) | ||
|
||
inherit multilib python-r1 toolchain-funcs multilib-minimal | ||
|
||
MY_P="${P//_/-}" | ||
MY_RELEASEDATE="20170609" | ||
|
||
SEPOL_VER="${PV}" | ||
SELNX_VER="${PV}" | ||
|
||
DESCRIPTION="SELinux kernel and policy management library" | ||
HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" | ||
|
||
if [[ ${PV} == 9999 ]]; then | ||
inherit git-r3 | ||
EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git" | ||
S="${WORKDIR}/${MY_P}/${PN}" | ||
else | ||
SRC_URI="https://raw.githubusercontent.com/wiki/SELinuxProject/selinux/files/releases/${MY_RELEASEDATE}/${MY_P}.tar.gz" | ||
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" | ||
S="${WORKDIR}/${MY_P}" | ||
fi | ||
|
||
LICENSE="GPL-2" | ||
SLOT="0" | ||
IUSE="python" | ||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" | ||
|
||
RDEPEND=">=sys-libs/libsepol-${SEPOL_VER}[${MULTILIB_USEDEP}] | ||
>=sys-libs/libselinux-${SELNX_VER}[${MULTILIB_USEDEP}] | ||
>=sys-process/audit-2.2.2[${MULTILIB_USEDEP}] | ||
>=dev-libs/ustr-1.0.4-r2[${MULTILIB_USEDEP}] | ||
python? ( ${PYTHON_DEPS} )" | ||
DEPEND="${RDEPEND} | ||
sys-devel/bison | ||
sys-devel/flex | ||
python? ( | ||
>=dev-lang/swig-2.0.4-r1 | ||
virtual/pkgconfig | ||
)" | ||
|
||
# tests are not meant to be run outside of the | ||
# full SELinux userland repo | ||
RESTRICT="test" | ||
|
||
src_prepare() { | ||
echo "# Set this to true to save the linked policy." >> "${S}/src/semanage.conf" | ||
echo "# This is normally only useful for analysis" >> "${S}/src/semanage.conf" | ||
echo "# or debugging of policy." >> "${S}/src/semanage.conf" | ||
echo "save-linked=false" >> "${S}/src/semanage.conf" | ||
echo >> "${S}/src/semanage.conf" | ||
echo "# Set this to 0 to disable assertion checking." >> "${S}/src/semanage.conf" | ||
echo "# This should speed up building the kernel policy" >> "${S}/src/semanage.conf" | ||
echo "# from policy modules, but may leave you open to" >> "${S}/src/semanage.conf" | ||
echo "# dangerous rules which assertion checking" >> "${S}/src/semanage.conf" | ||
echo "# would catch." >> "${S}/src/semanage.conf" | ||
echo "expand-check=1" >> "${S}/src/semanage.conf" | ||
echo >> "${S}/src/semanage.conf" | ||
echo "# Modules in the module store can be compressed" >> "${S}/src/semanage.conf" | ||
echo "# with bzip2. Set this to the bzip2 blocksize" >> "${S}/src/semanage.conf" | ||
echo "# 1-9 when compressing. The higher the number," >> "${S}/src/semanage.conf" | ||
echo "# the more memory is traded off for disk space." >> "${S}/src/semanage.conf" | ||
echo "# Set to 0 to disable bzip2 compression." >> "${S}/src/semanage.conf" | ||
echo "bzip-blocksize=0" >> "${S}/src/semanage.conf" | ||
echo >> "${S}/src/semanage.conf" | ||
echo "# Reduce memory usage for bzip2 compression and" >> "${S}/src/semanage.conf" | ||
echo "# decompression of modules in the module store." >> "${S}/src/semanage.conf" | ||
echo "bzip-small=true" >> "${S}/src/semanage.conf" | ||
|
||
eapply_user | ||
|
||
multilib_copy_sources | ||
} | ||
|
||
multilib_src_compile() { | ||
emake \ | ||
AR="$(tc-getAR)" \ | ||
CC="$(tc-getCC)" \ | ||
LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ | ||
all | ||
|
||
if multilib_is_native_abi && use python; then | ||
building_py() { | ||
emake \ | ||
AR="$(tc-getAR)" \ | ||
CC="$(tc-getCC)" \ | ||
LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ | ||
"$@" | ||
} | ||
python_foreach_impl building_py swigify | ||
python_foreach_impl building_py pywrap | ||
fi | ||
} | ||
|
||
multilib_src_install() { | ||
emake \ | ||
LIBDIR="${ED}/usr/$(get_libdir)" \ | ||
SHLIBDIR="${ED}/usr/$(get_libdir)" \ | ||
DESTDIR="${ED}" install | ||
|
||
if multilib_is_native_abi && use python; then | ||
installation_py() { | ||
emake DESTDIR="${ED}" \ | ||
LIBDIR="${ED}/usr/$(get_libdir)" \ | ||
SHLIBDIR="${ED}/usr/$(get_libdir)" \ | ||
LIBSEPOLA="${EPREFIX%/}/usr/$(get_libdir)/libsepol.a" \ | ||
install-pywrap | ||
python_optimize # bug 531638 | ||
} | ||
python_foreach_impl installation_py | ||
fi | ||
} | ||
|
||
pkg_postinst() { | ||
# Migrate the SELinux semanage configuration store if not done already | ||
local selinuxtype=$(awk -F'=' '/SELINUXTYPE=/ {print $2}' "${EROOT}"/etc/selinux/config 2>/dev/null) | ||
if [ -n "${selinuxtype}" ] && [ ! -d "${EROOT}"/var/lib/selinux/${mcs}/active ] ; then | ||
ewarn "Since the 2.4 SELinux userspace, the policy module store is moved" | ||
ewarn "from /etc/selinux to /var/lib/selinux. The migration will be run now." | ||
ewarn "If there are any issues, it can be done manually by running:" | ||
ewarn "/usr/libexec/selinux/semanage_migrate_store" | ||
ewarn "For more information, please see" | ||
ewarn "- https://github.com/SELinuxProject/selinux/wiki/Policy-Store-Migration" | ||
fi | ||
|
||
# Run the store migration without rebuilds | ||
for POLICY_TYPE in ${POLICY_TYPES} ; do | ||
if [ ! -d "${EROOT}/var/lib/selinux/${POLICY_TYPE}/active" ] ; then | ||
einfo "Migrating store ${POLICY_TYPE} (without policy rebuild)." | ||
/usr/libexec/selinux/semanage_migrate_store -n -s "${POLICY_TYPE}" || die "Failed to migrate store ${POLICY_TYPE}" | ||
fi | ||
done | ||
} |