mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
dev-db/redis: add 8.4.6
Bug: https://bugs.gentoo.org/982124 Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
@@ -3,5 +3,6 @@ DIST redis-8.2.6.tar.gz 3955776 BLAKE2B d56073bb46d118327f23fa407c0abfed8946a400
|
||||
DIST redis-8.2.7.tar.gz 3959871 BLAKE2B d667c6649f2d1410d29a4008cdf9b4505aa0f4054baa4a516e8da293dbf6c9a51814f4c58dba18463f35e91744ef814b2b1e405b9a9aaf7b0e8f78f631e4c330 SHA512 b83ab2e8b54146807af9dca54291b56e833a5719937af4b35ca81b89050e27c5897d4cf18df79037c6ece7595770ddb85e13c493331751ec9a975fd9bc83dd64
|
||||
DIST redis-8.2.9.tar.gz 3963941 BLAKE2B d0de26968b193de6a046f313378da822afb14b655f13d09be496b94e3e5c6f4c1939f905c4009888b44015a263c249e6c728c05bdfc3a8e41208bbb7d3daa8fd SHA512 6c93650fc6a70ceb8caa939bb507b16eccbcf0c25aa53f840ca0a0d636e719ff1ad62bf9d4c6aeffe91a03e92683cb56cdf83c8ffac675f562c33916293ee3da
|
||||
DIST redis-8.4.4.tar.gz 4174807 BLAKE2B 48541600d3c76e49027e2997b3e1766893c6ae6702c9cfabd94187b7d23b63bb218ff5a349b3e935045476acbbd20fe9b4254dcaf21fc95dcbb05d6a1982fcc7 SHA512 a3f9831e77ab55225ada4f50c3be373afbfcd92e695f14dedec2730322637d86a459cfb3b97ea4607e41c075a6b0078b6f23c2023eea9210015a2fdd4c7c4fa8
|
||||
DIST redis-8.4.6.tar.gz 4179248 BLAKE2B 8d680afdfff8072b63d1a6c65456cc86f3ae13692364f01cd0435580d515267d444c287385b5e76b7688397eadc1b33e674a6f809e99e7b467ac94a909f44bcc SHA512 72925a221457ad5aa77f32db103974b26a0dfabfa5354d0b8c70cd8ceb361ac843c35eeb48997d6a4cc21a4f644aefdab04dcbf53f8af2312a7302391474d803
|
||||
DIST redis-8.6.4.tar.gz 4312647 BLAKE2B 7000b31db555c4658a276caaa4d95af5b34ba18567ce2277e33c39221e52c4a5c0ced36a341ec3a83d1ba93ff53965760c50ebb4c0adb8ad9ae2f610748d3fd0 SHA512 8c2e0353eb7d63e2f45db70f205f14b649f4601d9db88a68d54518dfd49fd414cf9d06d209081693806caff84f0232b8c642274600eec33816c77f5beee9f82b
|
||||
DIST redis-8.8.0.tar.gz 4529181 BLAKE2B 4ef774ed0a830ef3b4a6b824395218287095d29ad195742677bd0356ea76151d95d03389468758feb3ff6cd5a92654b0f319b52f86b8a9d3e225085c69cd8408 SHA512 cf3def1df5cf66494364c5d047d2151559e995f8cc353e8cf6c81518032c10f79856d3eb61daac2b3f8b532fef5d2757286099b740991e0c32e885729984c956
|
||||
|
||||
205
dev-db/redis/redis-8.4.6.ebuild
Normal file
205
dev-db/redis/redis-8.4.6.ebuild
Normal file
@@ -0,0 +1,205 @@
|
||||
# Copyright 1999-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# N.B.: It is no clue in porting to Lua eclasses, as upstream have deviated
|
||||
# too far from vanilla Lua, adding their own APIs like lua_enablereadonlytable
|
||||
|
||||
inherit autotools edo multiprocessing systemd tmpfiles toolchain-funcs
|
||||
|
||||
DESCRIPTION="A persistent caching system, key-value, and data structures database"
|
||||
HOMEPAGE="
|
||||
https://redis.io
|
||||
https://github.com/redis/redis
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/redis/redis/archive/refs/tags/${PV}.tar.gz
|
||||
-> ${P}.tar.gz
|
||||
"
|
||||
|
||||
LICENSE="|| ( AGPL-3 RSAL-2 SSPL-1 ) Boost-1.0 MIT"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="jemalloc selinux ssl systemd tcmalloc test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
jemalloc? ( >=dev-libs/jemalloc-5.1:=[stats] )
|
||||
ssl? ( dev-libs/openssl:0= )
|
||||
systemd? ( sys-apps/systemd:= )
|
||||
tcmalloc? ( dev-util/google-perftools )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
acct-group/redis
|
||||
acct-user/redis
|
||||
selinux? ( sec-policy/selinux-redis )
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
acct-group/redis
|
||||
acct-user/redis
|
||||
virtual/pkgconfig
|
||||
test? (
|
||||
dev-lang/tcl:0=
|
||||
ssl? ( <dev-tcltk/tls-2 )
|
||||
)
|
||||
"
|
||||
|
||||
REQUIRED_USE="?? ( jemalloc tcmalloc )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-6.2.1-config.patch
|
||||
"${FILESDIR}"/${PN}-7.2.0-system-jemalloc.patch
|
||||
"${FILESDIR}"/${PN}-6.2.3-ppc-atomic.patch
|
||||
"${FILESDIR}"/${PN}-sentinel-7.2.0-config.patch
|
||||
"${FILESDIR}"/${PN}-7.0.4-no-which.patch
|
||||
"${FILESDIR}"/${PN}-8.2.6-tcmalloc-deprecated.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Respect user CFLAGS in bundled lua
|
||||
sed -i '/LUA_CFLAGS/s: -O2::g' deps/Makefile || die
|
||||
|
||||
# now we will rewrite present Makefiles
|
||||
local makefiles="" MKF
|
||||
local mysedconf=(
|
||||
-e 's:$(CC):@CC@:g'
|
||||
-e 's:$(CFLAGS):@AM_CFLAGS@:g'
|
||||
-e 's: $(DEBUG)::g'
|
||||
|
||||
-e 's:-Werror ::g'
|
||||
-e 's:-Werror=deprecated-declarations ::g'
|
||||
)
|
||||
for MKF in $(find -name 'Makefile' | cut -b 3-); do
|
||||
mv "${MKF}" "${MKF}.in"
|
||||
sed -i "${mysedconf[@]}" "${MKF}.in" || die "Sed failed for ${MKF}"
|
||||
makefiles+=" ${MKF}"
|
||||
done
|
||||
# autodetection of compiler and settings; generates the modified Makefiles
|
||||
cp "${FILESDIR}"/configure.ac-7.0 configure.ac || die
|
||||
|
||||
sed -i \
|
||||
-e "/^AC_INIT/s|, __PV__, |, $PV, |" \
|
||||
-e "s:AC_CONFIG_FILES(\[Makefile\]):AC_CONFIG_FILES([${makefiles}]):g" \
|
||||
configure.ac || die "Sed failed for configure.ac"
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
econf
|
||||
|
||||
# Linenoise can't be built with -std=c99, see https://bugs.gentoo.org/451164
|
||||
# also, don't define ANSI/c99 for lua twice
|
||||
sed -i -e "s:-std=c99::g" deps{,/fast_float,/linenoise}/Makefile || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
tc-export AR CC CXX RANLIB
|
||||
|
||||
local myconf=(
|
||||
AR="${AR}"
|
||||
CC="${CC}"
|
||||
RANLIB="${RANLIB}"
|
||||
|
||||
V=1 # verbose
|
||||
|
||||
# OPTIMIZATION defaults to -O3. Let's respect user CFLAGS by setting it
|
||||
# to empty value.
|
||||
OPTIMIZATION=''
|
||||
# Disable debug flags in bundled hiredis
|
||||
DEBUG_FLAGS=''
|
||||
|
||||
BUILD_TLS=$(usex ssl)
|
||||
USE_SYSTEMD=$(usex systemd)
|
||||
)
|
||||
|
||||
if use jemalloc; then
|
||||
myconf+=( MALLOC=jemalloc )
|
||||
elif use tcmalloc; then
|
||||
myconf+=( MALLOC=tcmalloc )
|
||||
else
|
||||
myconf+=( MALLOC=libc )
|
||||
fi
|
||||
|
||||
emake "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
local runtestargs=(
|
||||
--clients "$(makeopts_jobs)" # see bug #649868
|
||||
|
||||
# The Active defrag for argv test fails with edge values, it does not seem to be
|
||||
# critical issue, see https://github.com/redis/redis/issues/14006
|
||||
--skiptest "/Active defrag for argv retained by the main thread from IO thread.*"
|
||||
|
||||
# The following test fails with system jemalloc, as it expects
|
||||
# different values, because the bundled jemalloc is compiled with
|
||||
# --with-lg-quantum=3 parameter in order to provide additional size
|
||||
# classes which are not 16 byte alligned.
|
||||
--skiptest "Check MEMORY USAGE for embedded key strings with jemalloc"
|
||||
)
|
||||
|
||||
if has usersandbox ${FEATURES} || ! has userpriv ${FEATURES}; then
|
||||
ewarn "oom-score-adj related tests will be skipped." \
|
||||
"They are known to fail with FEATURES usersandbox or -userpriv. See bug #756382."
|
||||
|
||||
runtestargs+=(
|
||||
# unit/oom-score-adj was introduced in version 6.2.0
|
||||
--skipunit unit/oom-score-adj # see bug #756382
|
||||
|
||||
# Following test was added in version 7.0.0 to unit/introspection.
|
||||
# It also tries to adjust OOM score.
|
||||
--skiptest "CONFIG SET rollback on apply error"
|
||||
)
|
||||
fi
|
||||
|
||||
if use ssl; then
|
||||
edo ./utils/gen-test-certs.sh
|
||||
runtestargs+=( --tls )
|
||||
fi
|
||||
|
||||
edo ./runtest "${runtestargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /etc/redis
|
||||
doins redis.conf sentinel.conf
|
||||
use prefix || fowners -R redis:redis /etc/redis /etc/redis/{redis,sentinel}.conf
|
||||
fperms 0750 /etc/redis
|
||||
fperms 0644 /etc/redis/{redis,sentinel}.conf
|
||||
|
||||
newconfd "${FILESDIR}/redis.confd-r2" redis
|
||||
newinitd "${FILESDIR}/redis.initd-6" redis
|
||||
|
||||
systemd_newunit "${FILESDIR}/redis.service-4" redis.service
|
||||
newtmpfiles "${FILESDIR}/redis.tmpfiles-2" redis.conf
|
||||
|
||||
newconfd "${FILESDIR}/redis-sentinel.confd-r1" redis-sentinel
|
||||
newinitd "${FILESDIR}/redis-sentinel.initd-r1" redis-sentinel
|
||||
|
||||
insinto /etc/logrotate.d/
|
||||
newins "${FILESDIR}/${PN}.logrotate" ${PN}
|
||||
|
||||
dodoc 00-RELEASENOTES BUGS CONTRIBUTING.md MANIFESTO README.md
|
||||
|
||||
dobin src/redis-cli
|
||||
dosbin src/redis-benchmark src/redis-server src/redis-check-aof src/redis-check-rdb
|
||||
fperms 0750 /usr/sbin/redis-benchmark
|
||||
dosym redis-server /usr/sbin/redis-sentinel
|
||||
|
||||
if use prefix; then
|
||||
diropts -m0750
|
||||
else
|
||||
diropts -m0750 -o redis -g redis
|
||||
fi
|
||||
keepdir /var/{log,lib}/redis
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
tmpfiles_process redis.conf
|
||||
}
|
||||
Reference in New Issue
Block a user