Date: Saturday, January 9, 2021 @ 17:23:28 Author: dvzrv Revision: 816364
upgpkg: php-redis 5.3.2-2: Rebuild against php >=8. Introduce a split-package to also make igbinary available for php7. Modified: php-redis/trunk/PKGBUILD ----------+ PKGBUILD | 93 +++++++++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 67 insertions(+), 26 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2021-01-09 17:22:58 UTC (rev 816363) +++ PKGBUILD 2021-01-09 17:23:28 UTC (rev 816364) @@ -1,58 +1,89 @@ # Maintainer: David Runge <dv...@archlinux.org> -pkgname=php-redis _name=redis _upstream=phpredis +pkgbase=php-redis +pkgname=('php-redis' 'php7-redis') pkgver=5.3.2 -pkgrel=1 +pkgrel=2 pkgdesc="An API for communicating with the Redis key-value store" arch=('x86_64') url="https://github.com/phpredis/phpredis/" license=('PHP') -depends=('glibc' 'php-igbinary') -makedepends=('liblzf') +depends=('glibc') +makedepends=('liblzf' 'php-igbinary' 'php7-igbinary') checkdepends=('lsof' 'redis') optdepends=('redis: use a local redis instance') -backup=("etc/php/conf.d/${_name}.ini") source=("$pkgname-$pkgver.tar.gz::https://github.com/${_upstream}/${_upstream}/archive/${pkgver}.tar.gz") sha512sums=('0b923ad3f46395f82be7fa89e27999bf3304fbeb17188185afe34d37310afe818e07548034e42c2471ed22b8f8d664eda9b8b0a359c8e1126126d95574410e25') b2sums=('65366666e11eb6a579b688ac9ba6720178c0cd835cf646b0a523c4acd900e9abca5d7445cba5462df327aaa04bbe64e5506615420ac8c21be29a59d76535196e') prepare() { - mv -v "${_upstream}-${pkgver}" "$pkgname-$pkgver" - cd "$pkgname-$pkgver" + mv -v "${_upstream}-${pkgver}" "$pkgbase-$pkgver" # tempfile is non-standard, Debian only - sed -e 's/tempfile/mktemp/g' -i tests/mkring.sh + sed -e 's/tempfile/mktemp/g' -i "$pkgname-$pkgver/tests/mkring.sh" # the kill after shutdown of redis makes it exit with status code 1 - sed -e '/kill -9/d' -i tests/mkring.sh + sed -e '/kill -9/d' -i "$pkgname-$pkgver/tests/mkring.sh" # disable the extension by default - echo -e "; this extension requires igbinary to be activated as well\n;extension=${_name}" > "${_name}.ini" - phpize + echo -e "; this extension requires igbinary to be activated as well\n;extension=${_name}" > "$pkgname-$pkgver/${_name}.ini" + + cp -av "$pkgbase-$pkgver" "${pkgname[1]}-$pkgver" + + ( + cd "$pkgbase-$pkgver" + phpize + ) + ( + cd "${pkgname[1]}-$pkgver" + phpize7 + ) } build() { - cd "$pkgname-$pkgver" - ./configure --prefix=/usr \ - --enable-redis-igbinary \ - --enable-redis-lzf \ - --with-liblzf=/usr/lib/ - make + ( + cd "$pkgname-$pkgver" + ./configure --prefix=/usr \ + --enable-redis-igbinary \ + --enable-redis-lzf \ + --with-liblzf=/usr/lib/ + make + ) + ( + cd "${pkgname[1]}-$pkgver" + ./configure --prefix=/usr \ + --enable-redis-igbinary \ + --enable-redis-lzf \ + --with-liblzf=/usr/lib/ + make + ) } check() { # tests are partly broken: # https://github.com/phpredis/phpredis/issues/1593 - export TEST_PHP_EXECUTABLE=/usr/bin/php - export TEST_PHP_ARGS="-d extension=igbinary -d extension=${srcdir}/${pkgname}-${pkgver}/modules/redis.so" - cd "$pkgname-$pkgver" - tests/mkring.sh start - $TEST_PHP_EXECUTABLE $TEST_PHP_ARGS tests/TestRedis.php --class Redis - $TEST_PHP_EXECUTABLE $TEST_PHP_ARGS tests/TestRedis.php --class RedisArray - tests/mkring.sh stop + ( + export TEST_PHP_EXECUTABLE=/usr/bin/php + export TEST_PHP_ARGS="-d extension=igbinary -d extension=${srcdir}/${pkgbase}-${pkgver}/modules/redis.so" + cd "$pkgname-$pkgver" + tests/mkring.sh start + $TEST_PHP_EXECUTABLE $TEST_PHP_ARGS tests/TestRedis.php --class Redis + $TEST_PHP_EXECUTABLE $TEST_PHP_ARGS tests/TestRedis.php --class RedisArray + tests/mkring.sh stop + ) + ( + export TEST_PHP_EXECUTABLE=/usr/bin/php7 + export TEST_PHP_ARGS="-d extension=igbinary -d extension=${srcdir}/${pkgname[1]}-${pkgver}/modules/redis.so" + cd "${pkgname[1]}-$pkgver" + tests/mkring.sh start + $TEST_PHP_EXECUTABLE $TEST_PHP_ARGS tests/TestRedis.php --class Redis + $TEST_PHP_EXECUTABLE $TEST_PHP_ARGS tests/TestRedis.php --class RedisArray + tests/mkring.sh stop + ) } -package() { - depends+=('liblzf.so') +package_php-redis() { + depends+=('liblzf.so' 'php-igbinary') + backup=("etc/php/conf.d/${_name}.ini") cd "$pkgname-$pkgver" make INSTALL_ROOT="$pkgdir/" install install -vDm 644 "${_name}.ini" -t "${pkgdir}/etc/php/conf.d/" @@ -59,3 +90,13 @@ install -vDm 644 {{README,arrays,cluster}.markdown,CREDITS} \ -t "${pkgdir}/usr/share/doc/${pkgname}/" } + +package_php7-redis() { + depends+=('liblzf.so' 'php7-igbinary') + backup=("etc/php7/conf.d/${_name}.ini") + cd "$pkgname-$pkgver" + make INSTALL_ROOT="$pkgdir/" install + install -vDm 644 "${_name}.ini" -t "${pkgdir}/etc/php7/conf.d/" + install -vDm 644 {{README,arrays,cluster}.markdown,CREDITS} \ + -t "${pkgdir}/usr/share/doc/${pkgname}/" +}