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 2ecd76d3fa..4140907f66 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,2 +1,3 @@ +DIST libseccomp-2.5.5-loongarch-r1.patch 119822 BLAKE2B 4aa75c1ac87b2ca25cf6be38dfd760879c7255ca8e6cf86be3ac6e354f76cdaf3c8e2f59b646254414ffb0f1ffe6b7c50478f4db895a6ce632db8782c9807e91 SHA512 f7cd768d672a25448b2a3ceda27db52e0d62b5d9ab3eeb906226b6ebc19332c89332e0b870aaf82d4ffcfd642c2deb6029a30ae9a6bd702ebad9fdd40622b582 DIST libseccomp-2.5.5-loongarch64-20231204.patch.xz 41236 BLAKE2B 7831b28c275771bb675b4b5045e657d96c254e69cee7188a19f4812bc83343e0041772c20be1e7392ec88387726b49f34aa670a906b922dba531a0d35e548b1e SHA512 7870e536d834360dfec446493815b675a305f6bec1b79d0caae6fb546d2f694e77ce52e547bbcdb22cda272272bf3d5a427960b4aa76fb987d06ab035298007d DIST libseccomp-2.5.5.tar.gz 642445 BLAKE2B d770cee1f3e02fbbcd9f25655b360ab38160ad800e2829a67f2b9da62b095a90be99ac851a67344cf95bd6810a6268da4655dc1d37d996e58239c4999eb41998 SHA512 f630e7a7e53a21b7ccb4d3e7b37616b89aeceba916677c8e3032830411d77a14c2d74dcf594cd193b1acc11f52595072e28316dc44300e54083d5d7b314a38da diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-arch-syscall-check.patch b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-arch-syscall-check.patch new file mode 100644 index 0000000000..238098ad4c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/files/libseccomp-2.5.5-arch-syscall-check.patch @@ -0,0 +1,45 @@ +From 744c9a897b74ad66d065791593e25a05e4b6f6a1 Mon Sep 17 00:00:00 2001 +From: Michal Privoznik +Date: Tue, 1 Nov 2022 11:59:51 +0100 +Subject: [PATCH] src: Make arch-syscall-check work in VPATH build + +The aim of arch-syscall-check test is to check for syscalls +missing implementation. It does so by comparing two files: + + 1) src/syscalls.csv + 2) include/seccomp-syscalls.h + +However, due to use of relative paths these files are not found +when doing a VPATH build. But, we can re-use an idea from GNU +coreutils and get an absolute path to the source dir. All that's +needed then is to prefix those two paths with the source dir +path. + +Signed-off-by: Michal Privoznik +Acked-by: Tom Hromatka +Signed-off-by: Paul Moore +--- + src/arch-syscall-check | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/arch-syscall-check b/src/arch-syscall-check +index ae67daa..9c7fd41 100755 +--- a/src/arch-syscall-check ++++ b/src/arch-syscall-check +@@ -22,8 +22,11 @@ + # along with this library; if not, see . + # + +-SYSCALL_CSV="./syscalls.csv" +-SYSCALL_HDR="../include/seccomp-syscalls.h" ++# Based on an idea from GNU coreutils ++abs_topsrcdir="$(unset CDPATH; cd $(dirname $0)/.. && pwd)" ++ ++SYSCALL_CSV="$abs_topsrcdir/src/syscalls.csv" ++SYSCALL_HDR="$abs_topsrcdir/include/seccomp-syscalls.h" + + function check_snr() { + (export LC_ALL=C; diff \ +-- +2.44.0 + diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.5-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.5-r1.ebuild index db6a08dfb2..ecedd688b5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.5-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libseccomp/libseccomp-2.5.5-r1.ebuild @@ -6,7 +6,7 @@ EAPI=8 DISTUTILS_EXT=1 DISTUTILS_OPTIONAL=1 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..11} ) +PYTHON_COMPAT=( python3_{10..12} ) inherit distutils-r1 multilib-minimal @@ -16,11 +16,15 @@ HOMEPAGE="https://github.com/seccomp/libseccomp" if [[ ${PV} == *9999 ]] ; then EGIT_REPO_URI="https://github.com/seccomp/libseccomp.git" PRERELEASE="2.6.0" + AUTOTOOLS_AUTO_DEPEND=yes inherit autotools git-r3 else + AUTOTOOLS_AUTO_DEPEND=no + inherit autotools SRC_URI="https://github.com/seccomp/libseccomp/releases/download/v${PV}/${P}.tar.gz - experimental-loong? ( https://dev.gentoo.org/~xen0n/distfiles/${PN}-2.5.5-loongarch64-20231204.patch.xz )" - KEYWORDS="-* ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux" + experimental-loong? ( https://github.com/matoro/libseccomp/compare/v${PV}..loongarch-r1.patch + -> ${P}-loongarch-r1.patch )" + KEYWORDS="-* amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 x86 ~amd64-linux ~x86-linux" fi LICENSE="LGPL-2.1" @@ -39,6 +43,7 @@ RDEPEND="${DEPEND}" BDEPEND=" ${DEPEND} dev-util/gperf + experimental-loong? ( ${AUTOTOOLS_DEPEND} ) python? ( ${DISTUTILS_DEPS} dev-python/cython[${PYTHON_USEDEP}] @@ -49,15 +54,20 @@ PATCHES=( "${FILESDIR}"/libseccomp-python-shared.patch "${FILESDIR}"/libseccomp-2.5.3-skip-valgrind.patch "${FILESDIR}"/libseccomp-2.5.5-which-hunt.patch + "${FILESDIR}"/libseccomp-2.5.5-arch-syscall-check.patch ) src_prepare() { if use experimental-loong; then - PATCHES+=( "${WORKDIR}/${PN}-2.5.5-loongarch64-20231204.patch" ) + PATCHES+=( "${DISTDIR}/${P}-loongarch-r1.patch" ) fi default + if [[ ${PV} == *9999 ]] ; then + sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac || die + fi + if use experimental-loong; then # touch generated files to avoid activating maintainer mode # remove when loong-fix-build.patch is no longer necessary @@ -65,9 +75,8 @@ src_prepare() { find . -name Makefile.in -exec touch {} + || die fi - if [[ ${PV} == *9999 ]] ; then - sed -i -e "s/0.0.0/${PRERELEASE}/" configure.ac || die - + if [[ ${PV} == *9999 ]] || use experimental-loong; then + rm -f "include/seccomp.h" || die eautoreconf fi } 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 index 45cf592639..ac4df44838 100644 --- 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 @@ -6,7 +6,7 @@ EAPI=8 DISTUTILS_EXT=1 DISTUTILS_OPTIONAL=1 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..11} ) +PYTHON_COMPAT=( python3_{10..12} ) inherit distutils-r1 multilib-minimal