diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/Manifest index 62ca731635..e405158403 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/Manifest @@ -1 +1,3 @@ -DIST libseccomp-2.5.0.tar.gz 638793 BLAKE2B c1f30624e210d632175b734c49411ee3f95e8f0ee68819ad83a342434231baef10c292f23fca0127394365a37efb043f9f24ade9534deecd61f50e7111a6fbc8 SHA512 00ef5aeb4db8dafb546ae680b2d6d9b6aeed008df805d0f28f9dd15c074ff6ea7a5e5131ab503825b8011c59aa23046baedd5849ca040aa73352f43ab2d602ae +DIST libseccomp-2.5.1.tar.gz 638811 BLAKE2B 683ae7536c0cba36f4d30640b42361171fc34b7cb04985ea56e64369df29c440361a0205385b14580cc0e481e0f9ffd0b0e8ebd4ac98817ed59298db6b274c35 SHA512 2be80a6323f9282dbeae8791724e5778b32e2382b2a3d1b0f77366371ec4072ea28128204f675cce101c091c0420d12c497e1a9ccbb7dc5bcbf61bfd777160af +DIST libseccomp-2.5.2.tar.gz 640305 BLAKE2B b61214cb9a9a793d1f04ae1de3f62c578cfaec54fcc355947b4c71efb75072bf60497db8c8a0fd34a46764952349027df3f025ddbd276d58be93209170950e89 SHA512 b2a95152cb274d6b35753596fd825406dae20c4a48b2f4076f835f977ecf324de38a3fe02e789dc20b49ecf6b4eb67f03e7733e92d40f5e20f25874307f1c2ac +DIST libseccomp-2.5.3.tar.gz 637572 BLAKE2B cedf04b3a926f9fe5202e6169ddac6b983e755009c14fc1d645157b9c0bcdf65d4085f8ea7abad90f3a0c13ae4d66b5d8306e725168490863aad15976de1eae7 SHA512 00170fe2360f0c0b33293dccfcc33e98fabb99619f34ecefbcc92bfdaa249ba91e7433226545b842b71542a3b224b6e980ea2ae656c4addf07e84a0def1870a0 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.3-skip-valgrind.patch b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.3-skip-valgrind.patch new file mode 100644 index 0000000000..baf3ed971f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.3-skip-valgrind.patch @@ -0,0 +1,13 @@ +Valgrind isn't supported on all arches (and indeed profiles for older types +of some arches) so let's just skip the automagic Valgrind dependency entirely. +--- a/tests/regression ++++ b/tests/regression +@@ -876,7 +876,7 @@ function run_test() { + run_test_bpf_sim_fuzz "$1" $2 "$3" + elif [[ "$4" == "bpf-valgrind" ]]; then + # only run this test if valgrind is installed +- if check_deps valgrind; then ++ if false; then + run_test_bpf_valgrind "$testnumstr" "$3" + else + print_result $testnumstr "SKIPPED" \ diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-python-shared.patch b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-python-shared.patch new file mode 100644 index 0000000000..93e1ec8a91 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-python-shared.patch @@ -0,0 +1,25 @@ +From 763b863c3028f604f16cc6d2de7452dc16458596 Mon Sep 17 00:00:00 2001 +From: Mike Gilbert +Date: Sun, 23 May 2021 16:17:32 -0400 +Subject: [PATCH] Link python module against shared library + +--- + src/python/setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/python/setup.py b/src/python/setup.py +index 0419111..fb650d0 100755 +--- a/src/python/setup.py ++++ b/src/python/setup.py +@@ -41,7 +41,7 @@ setup( + ext_modules = [ + Extension("seccomp", ["seccomp.pyx"], + # unable to handle libtool libraries directly +- extra_objects=["../.libs/libseccomp.a"], ++ extra_objects=["../.libs/libseccomp.so"], + # fix build warnings, see PEP 3123 + extra_compile_args=["-fno-strict-aliasing"]) + ] +-- +2.32.0.rc1 + diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.1-r1.ebuild new file mode 100644 index 0000000000..3838d8dfc8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.1-r1.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..9} ) +DISTUTILS_OPTIONAL=1 + +inherit distutils-r1 multilib-minimal + +DESCRIPTION="high level interface to Linux seccomp filter" +HOMEPAGE="https://github.com/seccomp/libseccomp" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/seccomp/libseccomp.git" + PRERELEASE="2.6.0" + inherit autotools git-r3 +else + SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz" + KEYWORDS="-* amd64 arm arm64 hppa ~mips ppc ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux" +fi + +LICENSE="LGPL-2.1" +SLOT="0" +IUSE="python static-libs" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND="python? ( ${PYTHON_DEPS} )" +RDEPEND="${DEPEND}" +BDEPEND="${DEPEND} + dev-util/gperf + python? ( dev-python/cython[${PYTHON_USEDEP}] ) +" +# We need newer kernel headers; we don't keep strict control of the exact +# version here, just be safe and pull in the latest stable ones. #551248 +DEPEND="${DEPEND} >=sys-kernel/linux-headers-4.3" + +src_prepare() { + local PATCHES=( + "${FILESDIR}/libseccomp-python-shared.patch" + ) + default + if [[ "${PV}" == *9999 ]] ; then + sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac + eautoreconf + fi +} + +multilib_src_configure() { + local myeconfargs=( + $(use_enable static-libs static) + --disable-python + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +do_python() { + # setup.py reads VERSION_RELEASE from the environment + local -x VERSION_RELEASE=${PRERELEASE-${PV}} + pushd "${BUILD_DIR}/src/python" >/dev/null || die + "$@" + popd >/dev/null || die +} + +multilib_src_compile() { + emake + + if multilib_is_native_abi && use python ; then + # setup.py expects libseccomp.so to live in "../.libs" + # Copy the python files to the right place for this. + rm -r "${BUILD_DIR}/src/python" || die + cp -r "${S}/src/python" "${BUILD_DIR}/src/python" || die + local -x CPPFLAGS="-I\"${BUILD_DIR}/include\" -I\"${S}/include\" ${CPPFLAGS}" + do_python distutils-r1_src_compile + fi +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + if multilib_is_native_abi && use python ; then + do_python distutils-r1_src_install + fi +} + +multilib_src_install_all() { + find "${ED}" -type f -name "${PN}.la" -delete || die + einstalldocs +} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.1.ebuild similarity index 86% rename from sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.0.ebuild rename to sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.1.ebuild index 1c8cd0d34d..bf83271b3f 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_6 ) +PYTHON_COMPAT=( python3_{8..9} ) DISTUTILS_OPTIONAL=1 inherit distutils-r1 multilib-minimal @@ -17,7 +17,7 @@ if [[ ${PV} == *9999 ]] ; then inherit autotools git-r3 else SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz" - KEYWORDS="-* ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux" + KEYWORDS="-* amd64 arm arm64 hppa ~mips ppc ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux" fi LICENSE="LGPL-2.1" @@ -30,13 +30,12 @@ REQUIRED_USE=" ${PYTHON_REQUIRED_USE} )" -BDEPEND=" - dev-util/gperf - python? ( ${PYTHON_DEPS} ) -" -DEPEND="${BDEPEND}" +DEPEND="python? ( ${PYTHON_DEPS} )" RDEPEND="${DEPEND}" - +BDEPEND="${DEPEND} + dev-util/gperf + python? ( dev-python/cython[${PYTHON_USEDEP}] ) +" # We need newer kernel headers; we don't keep strict control of the exact # version here, just be safe and pull in the latest stable ones. #551248 DEPEND="${DEPEND} >=sys-kernel/linux-headers-4.3" diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.2.ebuild new file mode 100644 index 0000000000..eea16fa2bb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.2.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..9} ) +DISTUTILS_OPTIONAL=1 + +inherit distutils-r1 multilib-minimal + +DESCRIPTION="high level interface to Linux seccomp filter" +HOMEPAGE="https://github.com/seccomp/libseccomp" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/seccomp/libseccomp.git" + PRERELEASE="2.6.0" + inherit autotools git-r3 +else + SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz" + KEYWORDS="-* ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux" +fi + +LICENSE="LGPL-2.1" +SLOT="0" +IUSE="python static-libs" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND="python? ( ${PYTHON_DEPS} )" +RDEPEND="${DEPEND}" +BDEPEND="${DEPEND} + dev-util/gperf + python? ( dev-python/cython[${PYTHON_USEDEP}] ) +" +# We need newer kernel headers; we don't keep strict control of the exact +# version here, just be safe and pull in the latest stable ones. #551248 +DEPEND="${DEPEND} >=sys-kernel/linux-headers-4.3" + +src_prepare() { + local PATCHES=( + "${FILESDIR}/libseccomp-python-shared.patch" + ) + default + if [[ "${PV}" == *9999 ]] ; then + sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac + eautoreconf + fi +} + +multilib_src_configure() { + local myeconfargs=( + $(use_enable static-libs static) + --disable-python + ) + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +do_python() { + # setup.py reads VERSION_RELEASE from the environment + local -x VERSION_RELEASE=${PRERELEASE-${PV}} + pushd "${BUILD_DIR}/src/python" >/dev/null || die + "$@" + popd >/dev/null || die +} + +multilib_src_compile() { + emake + + if multilib_is_native_abi && use python ; then + # setup.py expects libseccomp.so to live in "../.libs" + # Copy the python files to the right place for this. + rm -r "${BUILD_DIR}/src/python" || die + cp -r "${S}/src/python" "${BUILD_DIR}/src/python" || die + local -x CPPFLAGS="-I\"${BUILD_DIR}/include\" -I\"${S}/include\" ${CPPFLAGS}" + do_python distutils-r1_src_compile + fi +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + if multilib_is_native_abi && use python ; then + do_python distutils-r1_src_install + fi +} + +multilib_src_install_all() { + find "${ED}" -type f -name "${PN}.la" -delete || die + einstalldocs +} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.3.ebuild new file mode 100644 index 0000000000..847d2ce335 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.3.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..10} ) +DISTUTILS_OPTIONAL=1 + +inherit distutils-r1 multilib-minimal + +DESCRIPTION="high level interface to Linux seccomp filter" +HOMEPAGE="https://github.com/seccomp/libseccomp" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/seccomp/libseccomp.git" + PRERELEASE="2.6.0" + inherit autotools git-r3 +else + SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz" + KEYWORDS="-* ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux" +fi + +LICENSE="LGPL-2.1" +SLOT="0" +IUSE="python static-libs test" +RESTRICT="!test? ( test )" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND="python? ( ${PYTHON_DEPS} )" +RDEPEND="${DEPEND}" +BDEPEND="${DEPEND} + dev-util/gperf + python? ( dev-python/cython[${PYTHON_USEDEP}] ) +" +# We need newer kernel headers; we don't keep strict control of the exact +# version here, just be safe and pull in the latest stable ones. #551248 +DEPEND="${DEPEND} >=sys-kernel/linux-headers-4.3" + +src_prepare() { + local PATCHES=( + "${FILESDIR}/libseccomp-python-shared.patch" + "${FILESDIR}/libseccomp-2.5.3-skip-valgrind.patch" + ) + + default + + if [[ "${PV}" == *9999 ]] ; then + sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac || die + + eautoreconf + fi +} + +multilib_src_configure() { + local myeconfargs=( + $(use_enable static-libs static) + --disable-python + ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +do_python() { + # setup.py reads VERSION_RELEASE from the environment + local -x VERSION_RELEASE=${PRERELEASE-${PV}} + + pushd "${BUILD_DIR}/src/python" >/dev/null || die + "$@" + popd >/dev/null || die +} + +multilib_src_compile() { + emake + + if multilib_is_native_abi && use python ; then + # setup.py expects libseccomp.so to live in "../.libs" + # Copy the python files to the right place for this. + rm -r "${BUILD_DIR}/src/python" || die + cp -r "${S}/src/python" "${BUILD_DIR}/src/python" || die + local -x CPPFLAGS="-I\"${BUILD_DIR}/include\" -I\"${S}/include\" ${CPPFLAGS}" + + do_python distutils-r1_src_compile + fi +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + if multilib_is_native_abi && use python ; then + do_python distutils-r1_src_install + fi +} + +multilib_src_install_all() { + find "${ED}" -type f -name "${PN}.la" -delete || die + + einstalldocs +} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-9999.ebuild new file mode 100644 index 0000000000..847d2ce335 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-9999.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8..10} ) +DISTUTILS_OPTIONAL=1 + +inherit distutils-r1 multilib-minimal + +DESCRIPTION="high level interface to Linux seccomp filter" +HOMEPAGE="https://github.com/seccomp/libseccomp" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/seccomp/libseccomp.git" + PRERELEASE="2.6.0" + inherit autotools git-r3 +else + SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz" + KEYWORDS="-* ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux" +fi + +LICENSE="LGPL-2.1" +SLOT="0" +IUSE="python static-libs test" +RESTRICT="!test? ( test )" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND="python? ( ${PYTHON_DEPS} )" +RDEPEND="${DEPEND}" +BDEPEND="${DEPEND} + dev-util/gperf + python? ( dev-python/cython[${PYTHON_USEDEP}] ) +" +# We need newer kernel headers; we don't keep strict control of the exact +# version here, just be safe and pull in the latest stable ones. #551248 +DEPEND="${DEPEND} >=sys-kernel/linux-headers-4.3" + +src_prepare() { + local PATCHES=( + "${FILESDIR}/libseccomp-python-shared.patch" + "${FILESDIR}/libseccomp-2.5.3-skip-valgrind.patch" + ) + + default + + if [[ "${PV}" == *9999 ]] ; then + sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac || die + + eautoreconf + fi +} + +multilib_src_configure() { + local myeconfargs=( + $(use_enable static-libs static) + --disable-python + ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +do_python() { + # setup.py reads VERSION_RELEASE from the environment + local -x VERSION_RELEASE=${PRERELEASE-${PV}} + + pushd "${BUILD_DIR}/src/python" >/dev/null || die + "$@" + popd >/dev/null || die +} + +multilib_src_compile() { + emake + + if multilib_is_native_abi && use python ; then + # setup.py expects libseccomp.so to live in "../.libs" + # Copy the python files to the right place for this. + rm -r "${BUILD_DIR}/src/python" || die + cp -r "${S}/src/python" "${BUILD_DIR}/src/python" || die + local -x CPPFLAGS="-I\"${BUILD_DIR}/include\" -I\"${S}/include\" ${CPPFLAGS}" + + do_python distutils-r1_src_compile + fi +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + if multilib_is_native_abi && use python ; then + do_python distutils-r1_src_install + fi +} + +multilib_src_install_all() { + find "${ED}" -type f -name "${PN}.la" -delete || die + + einstalldocs +} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/metadata.xml b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/metadata.xml index b31e5b3e45..dd20dd0473 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/metadata.xml @@ -1,5 +1,5 @@ - + base-system@gentoo.org @@ -8,5 +8,6 @@ seccomp/libseccomp libseccomp + cpe:/a:libseccomp_project:libseccomp