summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkrishjainx <kjain7@u.rochester.edu>2023-06-29 03:39:29 +0200
committerSam James <sam@gentoo.org>2023-06-29 12:46:57 +0100
commit185d6bf7e799347eb83dac97e676619f4f62084a (patch)
treed63fe20d41b3aad755d4842ad5ce31fa4a0347a5
parentnet-vpn/openvpn: Keyword 2.6.4 ppc, #907389 (diff)
downloadgentoo-185d6bf7.tar.gz
gentoo-185d6bf7.tar.bz2
gentoo-185d6bf7.zip
sys-apps/minijail: add v18
Signed-off-by: Krish Jain <kjain7@u.rochester.edu> Closes: https://github.com/gentoo/gentoo/pull/31663 Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r--sys-apps/minijail/Manifest1
-rw-r--r--sys-apps/minijail/minijail-18.ebuild78
2 files changed, 79 insertions, 0 deletions
diff --git a/sys-apps/minijail/Manifest b/sys-apps/minijail/Manifest
index 042269d56f7a..068c3a1c0570 100644
--- a/sys-apps/minijail/Manifest
+++ b/sys-apps/minijail/Manifest
@@ -1 +1,2 @@
DIST minijail-17.tar.gz 212425 BLAKE2B 411a0e2f1af21dd689fa669f9658e78c3c3c6439fdbea01b41b1d0cb3cbc1dc017634177350a3d5392783201f80874ec2a1604ed2577dbf5d7dbdf584a087267 SHA512 4b9aa29a78f7525ffeedfb927f6b567044ff7c9d32ef0e6771ed2b5c2d47c7a14ccbe000efc988ce6bb4173c5a9ae734b222aac1a00fb0e60777d7dccc149acf
+DIST minijail-18.tar.gz 223537 BLAKE2B 894cca4bd31b12e74a309a99d98eefe24f57e4dae186e79b5800b9857ef6b87c2094ead9a1788d00557d68b0d174bdf1e22f247ffb4fbb2d44a952a8df2c953d SHA512 685f744b4783600b4c91ec678ae87dd9ae0138638e1e754520f406c203f4d92f6b510b1bcf1a921b9e93965026c461d6fe8e5efb5f90393a54ca27db7c8033e5
diff --git a/sys-apps/minijail/minijail-18.ebuild b/sys-apps/minijail/minijail-18.ebuild
new file mode 100644
index 000000000000..ed7487be73ac
--- /dev/null
+++ b/sys-apps/minijail/minijail-18.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+inherit linux-info toolchain-funcs
+
+DESCRIPTION="helper binary and library for sandboxing & restricting privs of service"
+HOMEPAGE="https://android.googlesource.com/platform/external/minijail"
+
+# Use GitHub mirror as Gitiles doesn't generate stable tarballs.
+SRC_URI="https://github.com/google/${PN}/archive/linux-v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE="+seccomp test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="sys-libs/libcap-ng:="
+DEPEND="${RDEPEND}
+ test? (
+ virtual/pkgconfig
+ >=dev-cpp/gtest-1.8.0:=
+ )"
+
+S="${WORKDIR}/${PN}-linux-v${PV}"
+
+PATCHES=(
+ "${FILESDIR}/minijail-12-makefile.patch"
+ "${FILESDIR}/minijail-17-no-werror.patch"
+)
+
+pkg_pretend() {
+ local CONFIG_CHECK="~NAMESPACES ~UTS_NS ~IPC_NS ~USER_NS ~PID_NS ~NET_NS
+ ~SECCOMP ~SECCOMP_FILTER ~CGROUPS"
+ check_extra_config
+}
+
+src_configure() {
+ export LIBDIR="/usr/$(get_libdir)"
+ export USE_seccomp="$(usex seccomp)"
+ export USE_SYSTEM_GTEST=yes
+ if use test; then
+ export GTEST_CXXFLAGS="$($(tc-getPKG_CONFIG) --cflags gtest_main)"
+ export GTEST_LIBS="$($(tc-getPKG_CONFIG) --libs gtest_main)"
+ else
+ export GTEST_CXXFLAGS='' GTEST_LIBS=''
+ fi
+ export VERBOSE=1
+}
+
+src_compile() {
+ tc-env_build emake all parse_seccomp_policy
+}
+
+src_test() {
+ GTEST_FILTER="-NamespaceTest.test_tmpfs_userns:NamespaceTest.test_namespaces" \
+ tc-env_build emake tests
+}
+
+src_install() {
+ dosbin minijail0
+ dolib.so libminijail{,preload}.so
+ dobin parse_seccomp_policy
+
+ doman minijail0.[15]
+ dodoc README.md
+
+ local include_dir="/usr/include"
+
+ "${S}"/platform2_preinstall.sh "${PV}" "${include_dir}"
+ insinto "/usr/$(get_libdir)/pkgconfig"
+ doins libminijail.pc
+
+ insinto "${include_dir}"
+ doins libminijail.h scoped_minijail.h
+}