1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
6 inherit linux-info toolchain-funcs
8 DESCRIPTION="helper binary and library for sandboxing & restricting privs of service"
9 HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
11 # Use GitHub mirror as Gitiles doesn't generate stable tarballs.
12 SRC_URI="https://github.com/google/${PN}/archive/linux-v${PV}.tar.gz -> ${P}.tar.gz"
16 KEYWORDS="~amd64 ~x86"
18 RESTRICT="!test? ( test )"
20 RDEPEND="sys-libs/libcap-ng:="
24 >=dev-cpp/gtest-1.8.0:=
27 S="${WORKDIR}/${PN}-linux-v${PV}"
30 "${FILESDIR}/minijail-12-makefile.patch"
34 local CONFIG_CHECK="~NAMESPACES ~UTS_NS ~IPC_NS ~USER_NS ~PID_NS ~NET_NS
35 ~SECCOMP ~SECCOMP_FILTER ~CGROUPS"
40 export LIBDIR="/usr/$(get_libdir)"
41 export USE_seccomp="$(usex seccomp)"
42 export USE_SYSTEM_GTEST=yes
44 export GTEST_CXXFLAGS="$($(tc-getPKG_CONFIG) --cflags gtest_main)"
45 export GTEST_LIBS="$($(tc-getPKG_CONFIG) --libs gtest_main)"
47 export GTEST_CXXFLAGS='' GTEST_LIBS=''
53 tc-env_build emake all parse_seccomp_policy
57 GTEST_FILTER="-NamespaceTest.test_tmpfs_userns:NamespaceTest.test_namespaces" \
58 tc-env_build emake tests
63 dolib.so libminijail{,preload}.so
64 dobin parse_seccomp_policy
69 local include_dir="/usr/include"
71 "${S}"/platform2_preinstall.sh "${PV}" "${include_dir}"
72 insinto "/usr/$(get_libdir)/pkgconfig"
75 insinto "${include_dir}"
76 doins libminijail.h scoped_minijail.h