Name libseccomp.so.2
Description interface to the Linux Kernel's syscall filtering mechanism
Version 2.6.0-r0
Package Base libseccomp
Homepage https://github.com/seccomp/libseccomp
Maintainers ['Natanael Copa <ncopa@alpinelinux.org>']
Contributors ['Carlo Landmeter <clandmeter@alpinelinux.org>', 'Dan Williams <dan@ma.ssive.co>']
Distro-repo https://gitlab.alpinelinux.org/alpine/aports/-/tree/3.22-stable/main/libseccomp
Sources []
Dependencies []
Optional-Dependencies []
Build-Dependencies []
Provides ['so:libseccomp.so.2=2.6.0', 'cmd:scmp_sys_resolver=2.6.0-r0']
Builddate 25-01-2025 17:19:45
Architecture x86_64
Distro-Version v3.22
Licenses ['LGPL-2.1-or-later']
Hash Q1yjojQAQeQzHvZ9bkMUGU/rnxb+0=
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
# Contributor: Dan Williams <dan@ma.ssive.co>
pkgname=libseccomp
pkgver=2.6.0
pkgrel=0
pkgdesc="interface to the Linux Kernel's syscall filtering mechanism"
url="https://github.com/seccomp/libseccomp"
arch="all"
license="LGPL-2.1-or-later"
depends_dev="linux-headers"
makedepends="$depends_dev gperf cython python3 python3-dev py3-setuptools autoconf automake libtool"
checkdepends="bash"
subpackages="$pkgname-static $pkgname-dev $pkgname-doc py3-$pkgname:py3"
source="https://github.com/seccomp/libseccomp/releases/download/v$pkgver/libseccomp-$pkgver.tar.gz
	remove-redefinition-prctl.patch
	"

# secfixes:
#   2.4.0-r0:
#     - CVE-2019-9893

prepare() {
	default_prepare
	autoreconf -vif
}

build() {
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--sysconfdir=/etc \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--enable-python \
		--enable-static \
		--localstatedir=/var
	make
}

check() {
	# commit be65b26b67099be2b2b4890d736dbd1ad15adf36 adapted to new kernel 5.x syscalls
	# as long as we are at 4.19 kernel, we need this change
	case "$CARCH" in
		ppc64le|s390x) rm -f tests/36-sim-ipc_syscalls.tests \
			             tests/37-sim-ipc_syscalls_be.tests;;
	esac
	# fix python shebang
	sed -i -e 's@cmd /usr/bin/env python @cmd /usr/bin/env python3 @' tests/regression
	sed -i -e 's@^#!/usr/bin/env python$@#!/usr/bin/env python3@' tests/*.py
	make check
}

package() {
	make DESTDIR="$pkgdir" install
}

py3() {
	pkgdesc="Python 3 bindings for $pkgname"
	depends="$depends $pkgname python3"

	amove usr/lib/python3*
}

sha512sums="
9039478656d9b670af2ff4cb67b6b1fa315821e59d2f82ba6247e988859ddc7e3d15fea159eccca161bf2890828bb62aa6ab4d6b7ff55f27a9d6bd9532eeee1b  libseccomp-2.6.0.tar.gz
f2c31dcafdc9a1ad78e32e76b75e1c1603071eaa3f979e1f2483b879a34ad07e0a4ef3642196a695415cdf81e1ed2bf325175872fb4e203ef9d0e668c287493f  remove-redefinition-prctl.patch
"