2026-04-30 21:38:44 +02:00

90 lines
2.2 KiB
Plaintext

# Contributor: André Klitzing <aklitzing@gmail.com>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Andy Postnikov <apostnikov@gmail.com>
pkgname=freeunit-php82
pkgver=1.35.4
pkgrel=0
pkgdesc="PHP 8.2 module for FreeUnit"
url="https://freeunit.org/"
arch="all !ppc64le" # https://github.com/rust-lang/cc-rs/issues/1581
license="Apache-2.0"
_phpver=82
depends="freeunit"
_clang_ver=22
makedepends="
brotli-dev
clang$_clang_ver
linux-headers
openssl-dev>3
php$_phpver-dev
php$_phpver-embed
rust cargo
zlib-dev
zstd-dev
"
checkdepends="procps-ng
py3-openssl
py3-pytest
php$_phpver-opcache
"
source="freeunit-$pkgver.tar.gz::https://github.com/freeunitorg/freeunit/archive/refs/tags/$pkgver.tar.gz
phpver.patch
"
builddir="$srcdir/freeunit-$pkgver"
build() {
local _otel=--otel
case "$CARCH" in
arm*|x86) _otel='' ;;
esac
./configure \
--prefix="/usr" \
--localstatedir="/var" \
--runstatedir="/run" \
--statedir="/var/lib/unit" \
--control="unix:/run/control.unit.sock" \
--pid="/run/unit.pid" \
--log="/var/log/unit.log" \
--tmpdir=/tmp \
--modulesdir="/usr/lib/unit/modules" \
--openssl \
--user=unit \
--group=unit \
--brotli --zlib --zstd \
$_otel \
--cc=clang-$_clang_ver \
--tests
./configure php --module=php$_phpver --config=php-config$_phpver
make
make php$_phpver tests
}
check() {
# FIXME: some tests fail in CI or locally in checkroot too
local _fds=160 # fds leaking in tests
local _allow_fail=no
case "$CARCH" in
armhf | armv7) _allow_fail=yes ;; # segfault
esac
pytest test --fds-threshold=$_fds -k "
test_php \
and not test_php_isolation \
and not test_php_application_forbidden \
and not test_php_application_shared_opcache \
" || [ "$_allow_fail" = yes ]
# kill orphaned unitd left by crashed pytest (armhf/armv7 SIGBUS)
pkill -f 'unitd.*--no-daemon' 2>/dev/null || true
}
package() {
make php$_phpver-install DESTDIR="$pkgdir"
}
sha512sums="
ebed99e2d15e49fef6261b1706e51e405a44c014b2a56eda00b34bc46efd08b2f86bb0e00f2dc290c9599a0f8b439fff103a5cfa7518ea9e30b9e69a86260951 freeunit-1.35.4.tar.gz
2fe9966f54fd5d23316810b0260d966e2093c303d8a9ecea693971fe2243c579ed5db0e41e01fc01e56801387bd19cc72f5b26c45d21e5d48084e9ded384965b phpver.patch
"