commit: 3e07611584edf01c42d5818fe4928496916caa8e Author: Tomáš Mózes <hydrapolic <AT> gmail <DOT> com> AuthorDate: Fri Oct 17 14:59:53 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sat Oct 18 15:07:56 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3e076115
dev-php/pecl-memcached: add 3.4.0 Signed-off-by: Tomáš Mózes <hydrapolic <AT> gmail.com> Part-of: https://github.com/gentoo/gentoo/pull/44222 Closes: https://github.com/gentoo/gentoo/pull/44222 Signed-off-by: Sam James <sam <AT> gentoo.org> dev-php/pecl-memcached/Manifest | 1 + dev-php/pecl-memcached/pecl-memcached-3.4.0.ebuild | 63 ++++++++++++++++++++++ 2 files changed, 64 insertions(+) diff --git a/dev-php/pecl-memcached/Manifest b/dev-php/pecl-memcached/Manifest index c781aceb52f0..6f83bb4aac1a 100644 --- a/dev-php/pecl-memcached/Manifest +++ b/dev-php/pecl-memcached/Manifest @@ -1 +1,2 @@ DIST memcached-3.3.0.tgz 92669 BLAKE2B 13c21aecd1ac720ac5a0bd0b1e1bbd2508b124ffd3d5be4fed53f8588974799ccb63f67cdc3d46886216b03bea60f01610bc806b5c363ac210c3ebb3e8aa01fb SHA512 bdbe8b203cadcda50c4f8099fac1161424f3091537027251aaba7d9ba9a7932f59a9ac201dca9d9ae3aa59ff833ac6aa0284c5ab118cdb85a9fd89f63a95509a +DIST memcached-3.4.0.tgz 93288 BLAKE2B e496a9a3590d9064fb0afdfde37a85dd98045fd2efbb357f3afac90957cb00333b246836bf7e4e49fcf27731980d878a54c96e04e1a82f8987a44c334fcb239c SHA512 b60fdb7347f8be19f53f67d2bd96ed1423b862a517ad61513d9f736d4cbfe55b9da1e4b13d366968e39a0617e0b98f48e72d0fb357061f3cc093b18f5afad685 diff --git a/dev-php/pecl-memcached/pecl-memcached-3.4.0.ebuild b/dev-php/pecl-memcached/pecl-memcached-3.4.0.ebuild new file mode 100644 index 000000000000..801f056b3872 --- /dev/null +++ b/dev-php/pecl-memcached/pecl-memcached-3.4.0.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2025 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-2 php8-3 php8-4" +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} +}
