net-misc/memcached: add 1.6.39

Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Sam James
2025-08-20 09:08:47 +01:00
parent a5a11e51e6
commit 29a112b4ce
2 changed files with 118 additions and 0 deletions

View File

@@ -1,2 +1,3 @@
DIST memcached-1.6.31.tar.gz 1216497 BLAKE2B effa03d952e3c9fa9bb8c2ad2bb1c47dc23b8c828d915ded042c0ec468bc13ae6162501feb8bc9c924c717b895385070f407bb42d8d90b67d5d837aa4bd18470 SHA512 6531e161d31ac27addf65fb925c3db54c9dca5782220bc4725b6e6829c59a54a4c1ff364ad271c34de29298fbbc7cb13d67e05e1bf165e9c582d975d3404947d
DIST memcached-1.6.38.tar.gz 1282099 BLAKE2B 482a6e11230b24164294aeb177cc04ee2b69976326dcafacd1c21629dfd6d12607e76dfb9796abecdee478c6ff7e2421b268a711fa1cfb2f24a929a7ff9e4f89 SHA512 d828f1bce7c992a0c0889115c2ae71494a42f6fa37817d8b1fcf70fc2fbca9daeefe0249803faf17cd039a67139d5deaac688c78f0859534c027c9c9c96bf615
DIST memcached-1.6.39.tar.gz 1284104 BLAKE2B 612d60434a1f09840bfa8bd8040e8a4157b7e0e437a853377290316747f96e6a8ad1c68c8267cd920c68d893f4bc7a78b2ca862e0666bd07debfd60c75f1a137 SHA512 b04faed42514a5943a41736bd411fd62e3433dd631d13a59102958e39a01e1e0e89def90b39f09e1cdc5bb9c057977c46176e73fa9f162092a90c0b179d0ccb6

View File

@@ -0,0 +1,117 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools flag-o-matic systemd
MY_PV="${PV/_rc/-rc}"
MY_P="${PN}-${MY_PV}"
DESCRIPTION="High-performance, distributed memory object caching system"
HOMEPAGE="https://memcached.org/"
SRC_URI="
https://memcached.org/files/${MY_P}.tar.gz
https://memcached.org/files/old/${MY_P}.tar.gz
"
S="${WORKDIR}/${MY_P}"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="debug sasl seccomp selinux slabs-reassign ssl test" # hugetlbfs later
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-libs/libevent-1.4:=
dev-lang/perl
sasl? ( dev-libs/cyrus-sasl )
seccomp? ( sys-libs/libseccomp )
selinux? ( sec-policy/selinux-memcached )
ssl? ( >=dev-libs/openssl-1.1.0g:= )
"
DEPEND="
${RDEPEND}
acct-user/memcached
test? (
>=dev-perl/Cache-Memcached-1.24
ssl? ( dev-perl/IO-Socket-SSL )
)
"
PATCHES=(
"${FILESDIR}/${PN}-1.4.0-fix-as-needed-linking.patch"
)
QA_CONFIG_IMPL_DECL_SKIP=(
htonll
)
src_prepare() {
default
sed -i -e 's,AM_CONFIG_HEADER,AC_CONFIG_HEADERS,' configure.ac || die
eautoreconf
use slabs-reassign && append-flags -DALLOW_SLABS_REASSIGN
# Tweak upstream systemd unit to use Gentoo variables/envfile.
# As noted by bug #587440
sed -i -e '/^ExecStart/{
s,{USER},{MEMCACHED_RUNAS},g;
s,{CACHESIZE},{MEMUSAGE},g;
s,OPTIONS,MISC_OPTS,g;
};
/Environment=/{s,OPTIONS,MISC_OPTS,g;};
/EnvironmentFile=/{s,/sysconfig/,/conf.d/,g;};
' \
"${S}"/scripts/memcached.service || die
}
src_configure() {
local myeconfargs=(
--disable-docs
--disable-werror
$(use_enable sasl)
$(use_enable ssl tls)
# The xml2rfc tool to build the additional docs requires TCL :-(
# `use_enable doc docs`
)
econf "${myeconfargs[@]}"
}
src_compile() {
# There is a heavy degree of per-object compile flags
# Users do NOT know better than upstream. Trying to compile the testapp and
# the -debug version with -DNDEBUG _WILL_ fail.
append-flags -UNDEBUG -pthread
emake testapp memcached-debug CFLAGS="${CFLAGS}"
filter-flags -UNDEBUG
emake
}
src_test() {
emake -j1 test
}
src_install() {
emake DESTDIR="${D}" install
dobin scripts/memcached-tool
use debug && dobin memcached-debug
dodoc AUTHORS ChangeLog NEWS README.md doc/{CONTRIBUTORS,*.txt}
newconfd "${FILESDIR}/memcached.confd" memcached
newinitd "${FILESDIR}/memcached.init2" memcached
systemd_dounit "${S}/scripts/memcached.service"
}
pkg_postinst() {
elog "With this version of Memcached Gentoo now supports multiple instances."
elog "To enable this you should create a symlink in /etc/init.d/ for each instance"
elog "to /etc/init.d/memcached and create the matching conf files in /etc/conf.d/"
elog "Please see Gentoo bug #122246 for more info"
}