You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.5 KiB
62 lines
1.5 KiB
# Copyright 1999-2022 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
PHP_EXT_NAME="redis"
|
|
USE_PHP="php7-4 php8-0 php8-1 php8-2"
|
|
PHP_EXT_NEEDED_USE="json(+)?,session(-)?"
|
|
DOCS=( arrays.markdown cluster.markdown README.markdown CREDITS )
|
|
MY_P="${PN/pecl-/}-${PV/_rc/RC}"
|
|
PHP_EXT_PECL_FILENAME="${MY_P}.tgz"
|
|
PHP_EXT_S="${WORKDIR}/${MY_P}"
|
|
|
|
inherit php-ext-pecl-r3
|
|
|
|
DESCRIPTION="PHP extension for interfacing with Redis"
|
|
LICENSE="PHP-3.01"
|
|
SLOT="0"
|
|
KEYWORDS="~amd64 ~arm ~arm64"
|
|
IUSE="igbinary +json lz4 +session zstd"
|
|
|
|
DEPEND="
|
|
igbinary? ( >=dev-php/igbinary-3.0.1-r1[php_targets_php7-4(-)?,php_targets_php8-0(-)?,php_targets_php8-1(-)?,php_targets_php8-2(-)?] )
|
|
lz4? ( app-arch/lz4:= )
|
|
zstd? ( app-arch/zstd:= )
|
|
"
|
|
RDEPEND="${DEPEND}
|
|
!dev-php/pecl-redis:7"
|
|
|
|
# The test suite requires network access.
|
|
RESTRICT=test
|
|
|
|
S="${WORKDIR}/${MY_P}"
|
|
|
|
src_configure() {
|
|
local PHP_EXT_ECONF_ARGS=(
|
|
--enable-redis
|
|
--disable-redis-lzf
|
|
--disable-redis-msgpack
|
|
$(use_enable igbinary redis-igbinary)
|
|
$(use_enable json redis-json)
|
|
$(use_enable lz4 redis-lz4)
|
|
$(use_with lz4 liblz4)
|
|
$(use_enable session redis-session)
|
|
$(use_enable zstd redis-zstd)
|
|
$(use_with zstd libzstd)
|
|
)
|
|
php-ext-source-r3_src_configure
|
|
}
|
|
|
|
src_test() {
|
|
local slot
|
|
for slot in $(php_get_slots); do
|
|
php_init_slot_env "${slot}"
|
|
# Run tests for Redis class
|
|
${PHPCLI} -d extension=modules/redis.so \
|
|
tests/TestRedis.php \
|
|
--class Redis \
|
|
--host ${PECL_REDIS_HOST} || die 'test suite failed'
|
|
done
|
|
}
|