diff options
Diffstat (limited to 'dev-php')
-rw-r--r-- | dev-php/pecl-memcached/Manifest | 1 | ||||
-rw-r--r-- | dev-php/pecl-memcached/pecl-memcached-3.3.0.ebuild | 63 |
2 files changed, 64 insertions, 0 deletions
diff --git a/dev-php/pecl-memcached/Manifest b/dev-php/pecl-memcached/Manifest index e19058e6dbea..230ec90e9c11 100644 --- a/dev-php/pecl-memcached/Manifest +++ b/dev-php/pecl-memcached/Manifest @@ -1,3 +1,4 @@ DIST memcached-3.2.0.tgz 90722 BLAKE2B 5bc3ce40803004f45ad397684277862dbaffce467b3026e33d9737d4d93a82f2c89e32a256ebf6db3117a462ff8f81a517ed9950773cb4a0e927aa8af4e834be SHA512 ece5759a9d6d52afd46beb0821811e5d4830e75ad8564af395e2107fd349e271c6e6cf20eeacd9ad15ee2e99ccf0118ccc83c5810e2f3fa7c61f1984b0b26514 +DIST memcached-3.3.0.tgz 92669 BLAKE2B 13c21aecd1ac720ac5a0bd0b1e1bbd2508b124ffd3d5be4fed53f8588974799ccb63f67cdc3d46886216b03bea60f01610bc806b5c363ac210c3ebb3e8aa01fb SHA512 bdbe8b203cadcda50c4f8099fac1161424f3091537027251aaba7d9ba9a7932f59a9ac201dca9d9ae3aa59ff833ac6aa0284c5ab118cdb85a9fd89f63a95509a DIST pecl-memcached-3.2.0_p20230419.tar.gz 99453 BLAKE2B 3fb0e0316c9d6de9d727f9fd3a5f723d00aef33adcfa815c6571b99b9f536e9e02e9e7d37c73252dca3d5415aea554c8c16374a018210a1bbd2caa4a0c1263d8 SHA512 74e1b53f2078f343367a6c83e287c2fd29427d42f3db3eac01d3c5dea1eef1cd94130e2e59eaa3bdb368aecac740391ef4961224d5751d81306881291818fa9c DIST pecl-memcached-3.2.0_p20231008.tar.gz 101050 BLAKE2B b263eef7c29546d5faf71667f5266acaf77a18a65ecb972a31f29b1dafb8f7415346d066db99264e43326887e400f3e8a5372904e3f582439ed7500e0bbeb263 SHA512 b320dd4681070b35a49b87b143e01ce7f5a58364a0d9b807029c78aa57b18c3fc0add0b28c72dfaa4335c2b66fd54bb482a290c4a2b57afd80863c344a74177c diff --git a/dev-php/pecl-memcached/pecl-memcached-3.3.0.ebuild b/dev-php/pecl-memcached/pecl-memcached-3.3.0.ebuild new file mode 100644 index 000000000000..6b54a06ea87f --- /dev/null +++ b/dev-php/pecl-memcached/pecl-memcached-3.3.0.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +PHP_EXT_NAME="memcached" +DOCS=( ChangeLog README.markdown ) + +USE_PHP="php8-1 php8-2 php8-3" +PHP_EXT_NEEDED_USE="json(+)?,session(-)?" +MY_P="${PN/pecl-/}-${PV/_rc/RC}" +PHP_EXT_PECL_FILENAME="${MY_P}.tgz" + +inherit php-ext-pecl-r3 + +DESCRIPTION="Interface PHP with memcached via libmemcached library" +LICENSE="PHP-3.01" +SLOT="7" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" +IUSE="igbinary json sasl +session test" + +REQUIRED_USE="test? ( igbinary )" +RESTRICT="!test? ( test )" + +# php-ext-pecl-r3 doesn't expose a $*_USEDEP so we roll our own +IGBINARY_DEPEND="" +for slot in ${USE_PHP} ; do + IGBINARY_DEPEND+="dev-php/igbinary[php_targets_${slot}(-)?] " +done + +COMMON_DEPEND="|| ( dev-libs/libmemcached-awesome[sasl(-)?] >=dev-libs/libmemcached-1.0.14[sasl(-)?] ) + sys-libs/zlib + igbinary? ( ${IGBINARY_DEPEND} ) +" +DEPEND="${COMMON_DEPEND}" +RDEPEND="${COMMON_DEPEND}" +BDEPEND="${COMMON_DEPEND} test? ( net-misc/memcached )" + +src_configure() { + local PHP_EXT_ECONF_ARGS="--enable-memcached + $(use_enable session memcached-session) + $(use_enable sasl memcached-sasl) + $(use_enable json memcached-json) + $(use_enable igbinary memcached-igbinary)" + + php-ext-source-r3_src_configure +} + +src_test() { + touch "${T}/memcached.pid" || die + local memcached_opts=( -d -P "${T}/memcached.pid" -p 11211 -l 127.0.0.1 -U 11211 ) + [[ ${EUID} == 0 ]] && memcached_opts+=( -u portage ) + memcached "${memcached_opts[@]}" || die "Can't start memcached test server" + +# make test fails to pull in igbinary.so, so we run it ourselves with the correct setting strings + local slot + for slot in $(php_get_slots); do + php_init_slot_env "${slot}" + NO_INTERACTION="yes" "${PHPCLI}" run-tests.php -n -d "extension=${EXT_DIR}/igbinary.so" -d "extension=modules/memcached.so" || die + done + + kill "$(<"${T}/memcached.pid")" + return ${exit_status} +} |