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/libselinux: bump to 2.7_rc1
Package-Manager: Portage-2.3.5, Repoman-2.3.1
- Loading branch information
Showing
2 changed files
with
152 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 libselinux-2.5.tar.gz 189019 SHA256 94c9e97706280bedcc288f784f67f2b9d3d6136c192b2c9f812115edba58514f SHA512 1c6718aa6fa05c8635427cd6f5a89ce47fb6bb9bd2fec417293122826695d1ebb0e0b86e83711abb5c4fe71c67dce6f2e18745592833d1711f0ab2d01246b8c7 WHIRLPOOL 96192b856d32a82b9b4413137085e69ad52cbf2e0d274603a90d904e9a318a80c83f337aef26f54c685a689972432955f0f9de67949e0bb4f844611df22d3589 | ||
DIST libselinux-2.6.tar.gz 203119 SHA256 4ea2dde50665c202253ba5caac7738370ea0337c47b251ba981c60d24e1a118a SHA512 906e1bf98c669862ab4f4e883d511db8d739a5763dc857c9405ad3cc6c70766a482853d07134698a1a98257a8632cc756d0549a7640c2915d051714f502ff14b WHIRLPOOL bf60ce907b7057ada5d19e3a0cd1f092a7dfc2de774e504762424c325c657a4f144fbe252e7d908f7c6d902d80388517e15134a289f4358e564c8720ea6534d9 | ||
DIST libselinux-2.7-rc1.tar.gz 186897 SHA256 213e1ca473855a61e8147e027b6ee5edf4162c9fbfc00749643f0ecc0a08371c SHA512 fe7fe67f14e5483fbb237eeb33f6eca48f1d3f6a3ab7fa1cfa99e5143ce4d6a03c9033a03a82bb3954d07c4d1a2c211cf5dea80030c727f9adcb3cc6bd72e641 WHIRLPOOL dfee20eaf3ea9e3cb7caa21ac10e710799ed324eee833650fc0bdf17c3fbcd3426bea7d915f6d6b79ca4440b99c57805a018bbd6a6103d97cb590f52d58f0e40 |
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,151 @@ | ||
# Copyright 1999-2017 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI="6" | ||
PYTHON_COMPAT=( python2_7 python3_4 python3_5 python3_6 ) | ||
USE_RUBY="ruby21 ruby22 ruby23" | ||
|
||
# No, I am not calling ruby-ng | ||
inherit multilib python-r1 toolchain-funcs multilib-minimal | ||
|
||
MY_P="${P//_/-}" | ||
SEPOL_VER="${PV}" | ||
MY_RELEASEDATE="20170609" | ||
|
||
DESCRIPTION="SELinux userland 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="public-domain" | ||
SLOT="0" | ||
IUSE="pcre2 python ruby static-libs ruby_targets_ruby21 ruby_targets_ruby22 ruby_targets_ruby23" | ||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" | ||
|
||
RDEPEND=">=sys-libs/libsepol-${SEPOL_VER}:=[${MULTILIB_USEDEP}] | ||
!pcre2? ( >=dev-libs/libpcre-8.33-r1:=[static-libs?,${MULTILIB_USEDEP}] ) | ||
pcre2? ( dev-libs/libpcre2:=[static-libs?,${MULTILIB_USEDEP}] ) | ||
python? ( ${PYTHON_DEPS} ) | ||
ruby? ( | ||
ruby_targets_ruby21? ( dev-lang/ruby:2.1 ) | ||
ruby_targets_ruby22? ( dev-lang/ruby:2.2 ) | ||
ruby_targets_ruby23? ( dev-lang/ruby:2.3 ) | ||
)" | ||
DEPEND="${RDEPEND} | ||
virtual/pkgconfig | ||
python? ( >=dev-lang/swig-2.0.9 )" | ||
|
||
src_prepare() { | ||
eapply_user | ||
|
||
multilib_copy_sources | ||
} | ||
|
||
multilib_src_compile() { | ||
tc-export AR CC PKG_CONFIG RANLIB | ||
|
||
emake \ | ||
LIBDIR="\$(PREFIX)/$(get_libdir)" \ | ||
SHLIBDIR="\$(DESTDIR)/$(get_libdir)" \ | ||
LDFLAGS="-fPIC ${LDFLAGS} -pthread" \ | ||
USE_PCRE2="$(usex pcre2 y n)" \ | ||
all | ||
|
||
if multilib_is_native_abi && use python; then | ||
building() { | ||
emake \ | ||
LDFLAGS="-fPIC ${LDFLAGS} -lpthread" \ | ||
LIBDIR="\$(PREFIX)/$(get_libdir)" \ | ||
SHLIBDIR="\$(DESTDIR)/$(get_libdir)" \ | ||
USE_PCRE2="$(usex pcre2 y n)" \ | ||
pywrap | ||
} | ||
python_foreach_impl building | ||
fi | ||
|
||
if multilib_is_native_abi && use ruby; then | ||
building() { | ||
einfo "Calling rubywrap for ${1}" | ||
# Clean up .lo file to force rebuild | ||
rm -f src/selinuxswig_ruby_wrap.lo || die | ||
emake \ | ||
RUBY=${1} \ | ||
LDFLAGS="-fPIC ${LDFLAGS} -lpthread" \ | ||
LIBDIR="\$(PREFIX)/$(get_libdir)" \ | ||
SHLIBDIR="\$(DESTDIR)/$(get_libdir)" \ | ||
USE_PCRE2="$(usex pcre2 y n)" \ | ||
rubywrap | ||
} | ||
for RUBYTARGET in ${USE_RUBY}; do | ||
use ruby_targets_${RUBYTARGET} || continue | ||
|
||
building ${RUBYTARGET} | ||
done | ||
fi | ||
} | ||
|
||
multilib_src_install() { | ||
emake DESTDIR="${D}" \ | ||
LIBDIR="\$(PREFIX)/$(get_libdir)" \ | ||
SHLIBDIR="\$(DESTDIR)/$(get_libdir)" \ | ||
LIBSEPOLA="/usr/$(get_libdir)/libsepol.a" \ | ||
USE_PCRE2="$(usex pcre2 y n)" \ | ||
install | ||
|
||
if multilib_is_native_abi && use python; then | ||
installation() { | ||
emake DESTDIR="${D}" \ | ||
LIBDIR="\$(PREFIX)/$(get_libdir)" \ | ||
LIBSEPOLA="/usr/$(get_libdir)/libsepol.a" \ | ||
USE_PCRE2="$(usex pcre2 y n)" \ | ||
install-pywrap | ||
python_optimize # bug 531638 | ||
} | ||
python_foreach_impl installation | ||
fi | ||
|
||
if multilib_is_native_abi && use ruby; then | ||
installation() { | ||
einfo "Calling install-rubywrap for ${1}" | ||
# Forcing (re)build here as otherwise the resulting SO file is used for all ruby versions | ||
rm src/selinuxswig_ruby_wrap.lo | ||
emake DESTDIR="${D}" \ | ||
LIBDIR="\$(PREFIX)/$(get_libdir)" \ | ||
LIBSEPOLA="/usr/$(get_libdir)/libsepol.a" \ | ||
RUBY=${1} \ | ||
USE_PCRE2="$(usex pcre2 y n)" \ | ||
install-rubywrap | ||
} | ||
for RUBYTARGET in ${USE_RUBY}; do | ||
use ruby_targets_${RUBYTARGET} || continue | ||
|
||
installation ${RUBYTARGET} | ||
done | ||
fi | ||
|
||
use static-libs || rm "${D}"/usr/lib*/*.a || die | ||
} | ||
|
||
pkg_postinst() { | ||
# Fix bug 473502 | ||
for POLTYPE in ${POLICY_TYPES}; | ||
do | ||
mkdir -p /etc/selinux/${POLTYPE}/contexts/files || die | ||
touch /etc/selinux/${POLTYPE}/contexts/files/file_contexts.local || die | ||
# Fix bug 516608 | ||
for EXPRFILE in file_contexts file_contexts.homedirs file_contexts.local ; do | ||
if [[ -f "/etc/selinux/${POLTYPE}/contexts/files/${EXPRFILE}" ]]; then | ||
sefcontext_compile /etc/selinux/${POLTYPE}/contexts/files/${EXPRFILE} \ | ||
|| die "Failed to recompile contexts" | ||
fi | ||
done | ||
done | ||
} |