From d725480af7cbc67d784e5d96f973fa41e9030123 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 19 Jan 2024 14:07:55 +0000 Subject: gentoo auto-resync : 19:01:2024 - 14:07:55 --- dev-db/Manifest.gz | Bin 15903 -> 15898 bytes dev-db/plr/Manifest | 4 +- dev-db/plr/metadata.xml | 3 + dev-db/plr/plr-8.4.6.ebuild | 70 +++++ dev-db/postgresql/Manifest | 2 - dev-db/postgresql/postgresql-11.22.ebuild | 451 ------------------------------ dev-db/redis/Manifest | 12 +- dev-db/redis/redis-6.2.14-r1.ebuild | 195 +++++++++++++ dev-db/redis/redis-6.2.14.ebuild | 195 ------------- dev-db/redis/redis-7.0.14-r1.ebuild | 187 +++++++++++++ dev-db/redis/redis-7.0.14.ebuild | 187 ------------- dev-db/redis/redis-7.0.15-r1.ebuild | 187 +++++++++++++ dev-db/redis/redis-7.0.15.ebuild | 187 ------------- dev-db/redis/redis-7.2.1-r1.ebuild | 200 +++++++++++++ dev-db/redis/redis-7.2.1.ebuild | 200 ------------- dev-db/redis/redis-7.2.3-r1.ebuild | 200 +++++++++++++ dev-db/redis/redis-7.2.3.ebuild | 200 ------------- dev-db/redis/redis-7.2.4-r1.ebuild | 200 +++++++++++++ dev-db/redis/redis-7.2.4.ebuild | 200 ------------- 19 files changed, 1251 insertions(+), 1629 deletions(-) create mode 100644 dev-db/plr/plr-8.4.6.ebuild delete mode 100644 dev-db/postgresql/postgresql-11.22.ebuild create mode 100644 dev-db/redis/redis-6.2.14-r1.ebuild delete mode 100644 dev-db/redis/redis-6.2.14.ebuild create mode 100644 dev-db/redis/redis-7.0.14-r1.ebuild delete mode 100644 dev-db/redis/redis-7.0.14.ebuild create mode 100644 dev-db/redis/redis-7.0.15-r1.ebuild delete mode 100644 dev-db/redis/redis-7.0.15.ebuild create mode 100644 dev-db/redis/redis-7.2.1-r1.ebuild delete mode 100644 dev-db/redis/redis-7.2.1.ebuild create mode 100644 dev-db/redis/redis-7.2.3-r1.ebuild delete mode 100644 dev-db/redis/redis-7.2.3.ebuild create mode 100644 dev-db/redis/redis-7.2.4-r1.ebuild delete mode 100644 dev-db/redis/redis-7.2.4.ebuild (limited to 'dev-db') diff --git a/dev-db/Manifest.gz b/dev-db/Manifest.gz index 3798adde1ef0..860177d34582 100644 Binary files a/dev-db/Manifest.gz and b/dev-db/Manifest.gz differ diff --git a/dev-db/plr/Manifest b/dev-db/plr/Manifest index fa1dd98dbd75..a675fb1c4034 100644 --- a/dev-db/plr/Manifest +++ b/dev-db/plr/Manifest @@ -1,3 +1,5 @@ DIST plr-8.4.5.tar.gz 273711 BLAKE2B 666941f1cbc7e74dee532b928102afda4684b344f3c69a6ac4e3449c057e8f4dbb74b765f4222bb06e61940fa1e4ba888cc60bac193ca43989b557da9d02ceaa SHA512 bb04a8956d1cdc7acb20c89ea3b17be6ee385dac52381ab0f8af7446480fa9b8d163ff6697a05b439a75f57841b203e65bea78db8a7c3d55c1118bebbf4ac81a +DIST plr-8.4.6.tar.gz 277578 BLAKE2B 575426e44e553f52dfe9b4bd1eb8de1b72e9023abe086c6b1570dabcda1b5e99a8eebce9c5b0e97019aec969b369e15a83801d51b8531695026e1a9bdc79d5c0 SHA512 de5f6b094f4eb6f88df6134142c461bc4ebd6a692c3db03cf04e1d0f04b71d63a26bce22defc1f25fa627c7bc4ba63c533dd2df1f571b58cb04d29c7eada2e42 EBUILD plr-8.4.5.ebuild 1709 BLAKE2B 2470f0234a816812e339bdf8f66ac3cc849d6d8c6d0e727d3c3291add98d4d2ebcdc5b178e1cedae75c8b5aa04a8fbd5d7455341e08364508a76d9992d9be6b3 SHA512 a737941c229732843b686cb2a1a8d03e1f35244ef79cb6bcb0d2ad8bb5a0fa55765f42384322a6b456df2cee87cb10819725e0bf0d9132488ce8b51a97a9105a -MISC metadata.xml 399 BLAKE2B 07f2d03ca54183e589cfe1b91cc2e672ea7999cbb978c4879ca7c0327929010cdfadd530105dc7206f5739bd06dd78b28329409768f7a7013e9d6807200e1c76 SHA512 b0ce0c61aa57841cbb7a147f5540d512fef89ea7c871a24d4ecce01eb34c067a31ee344c4ecb2a10679b338da31b750a67dba1547d18fb164e9a15f393dc966f +EBUILD plr-8.4.6.ebuild 1705 BLAKE2B 7b83258c13d1fbc7b19b49bce895d65e8016db6b032c9ee5246fd973b572f285c35ffc1c6d3aab3e4208e459f08445b3887e7dafe6e993f285d939b5a6456a46 SHA512 492a638be082d626b44adde0ca63cf0c8e5b1eb9e7f88d57b1ffcf97bb33a0ff033eb50e090321c3b59795c14ddda16c27f62b0eb31a3f1c0a3452b3d662d87b +MISC metadata.xml 484 BLAKE2B 1c3f1a4a3fd93444f6821ab8924ce6dfa271095956800a54e1dce8669d7ad4b657dbe2d49741bdec75d78f7094cc455cb5dd9a713e507d2ccf7ddc43a93422a1 SHA512 5d95755b2c573ddd851ad607389597a44bb74bb8e32559f13e279b64ce589cd707015f63da19847d787bef1bfeacecc80936a8c095cbac184fade338bf0a03d8 diff --git a/dev-db/plr/metadata.xml b/dev-db/plr/metadata.xml index a4942cba46ae..7290965385bf 100644 --- a/dev-db/plr/metadata.xml +++ b/dev-db/plr/metadata.xml @@ -8,4 +8,7 @@ An extension for postgresql databases to allow direct usage of dev-lang/R in SQL queries and database functions + + postgres-plr/plr + diff --git a/dev-db/plr/plr-8.4.6.ebuild b/dev-db/plr/plr-8.4.6.ebuild new file mode 100644 index 000000000000..bb10bae54f14 --- /dev/null +++ b/dev-db/plr/plr-8.4.6.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +POSTGRES_COMPAT=( {12..16} ) +POSTGRES_USEDEP="server" + +inherit postgres-multi + +DESCRIPTION="R language extension for postgresql database" +HOMEPAGE="http://www.joeconway.com/plr/" +SRC_URI="https://github.com/postgres-plr/plr/archive/REL${PV//./_}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND="dev-lang/R + ${POSTGRES_DEP}" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +REQUIRED_USE="${POSTGRES_REQ_USE}" + +S="${WORKDIR}"/contrib/${PN} + +src_unpack() { + unpack ${A} + + # the build system wants 'contrib' to be part of the path + mkdir -p "${WORKDIR}/contrib" || die + mv "${WORKDIR}/${PN}-REL${PV//./_}" "${S}" || die +} + +src_prepare() { + local BUILD_DIR="${S}" + postgres-multi_src_prepare +} + +src_compile() { + pg_src_compile() { + cd "${BUILD_DIR}" + PG_CONFIG="${ESYSROOT}/usr/$(get_libdir)/postgresql-${MULTIBUILD_ID}/bin/pg_config" \ + USE_PGXS=1 \ + emake -j1 + } + postgres-multi_foreach pg_src_compile +} + +src_install() { + pg_src_install() { + cd "${BUILD_DIR}" + PG_CONFIG="${ESYSROOT}/usr/$(get_libdir)/postgresql-${MULTIBUILD_ID}/bin/pg_config" \ + USE_PGXS=1 \ + emake -j1 DESTDIR="${D}" install + } + postgres-multi_foreach pg_src_install +} + +pkg_postinst() { + elog "The plr extension needs to be explicitly added (or 'created') on each database" + elog "you wish to use it with. As of postgresql-9.1 the easiest way to do this is" + elog "with the proprietary SQL statement:" + elog + elog "\tCREATE EXTENSION plr;" + elog + elog "For more info on how to add PL/R to your postgresql database(s), please visit" + elog "http://www.joeconway.com/doc/plr-install.html" +} diff --git a/dev-db/postgresql/Manifest b/dev-db/postgresql/Manifest index 0745be80f1e8..ac84cb1fe4cb 100644 --- a/dev-db/postgresql/Manifest +++ b/dev-db/postgresql/Manifest @@ -9,13 +9,11 @@ AUX postgresql.confd-9.3 2477 BLAKE2B 0d42eedb99c951c8c60ed02abb5d4526bc288e8dd5 AUX postgresql.init-9.3-r1 4999 BLAKE2B f2bc23a51b6d9643bbc14320aaa9c41b7eb1df86f8b760b9146739b14060178a415fe49b77a47b6bc5522759759fa0aefa9f0050b340534a64c2f22f89c7825d SHA512 a0f003c7d00b9749b8b25fce8ac728869e0c8f5a3c87e699b62806207413d5abba8db1e9d35e801316fbfb0ee070eb3b6a099b7991065c21cdb27ca7dc164bed AUX postgresql.service-9.6-r1 1477 BLAKE2B 2a652d5b2892f3a52f484fcc0b4f4dad09cf4b46c3739c3f805072040a26128cb2ad9a25d4a7c9f109a95696d739538d379af6bac53c656f5c41af45b6110de5 SHA512 9e2b04923f6ebec1424c0f276c58a6a0c4933f2de5e2a9776169227729afd06ce5284461be8b6ed70e5aaff2a68b9f96c6893d867d35761c9977f9847ccfe93d AUX postgresql.tmpfiles 39 BLAKE2B 25a5725af53c8e4e4009887e998172dd863ce218a5438351194548c4fc8ea15308dfba3602d5a922cf49b46015198268a4a4528119d8a74dcef4cc4c1767c052 SHA512 498060f2a597cf374f4fb31deaa2d6c5b00edef68efc0e71b82bfc20b717ae12518ba18fcb455a0c518ebba1a0868f38321470616151d02fa79b889a66dcb9f8 -DIST postgresql-11.22.tar.bz2 20482994 BLAKE2B 1bac5e9a73b1ad1f8e082cfe29f374058b866d3e1234612c01bcc4324e5e25a407531e71436a1c0e10e7574da494499540d242ac66db66d5f85c1ff5954bac41 SHA512 2e4f7322235ed616d10d1e720fa72b8700cb1ebd9fec2e65d63662fca874c8df519b5b2184b32ee63f2060f6f6f620956b790cc6b24dbb06eb0b07d2710a8278 DIST postgresql-12.17.tar.bz2 21181616 BLAKE2B dda4b06d8d36d3257e1eea251ccbdf38f1ce63ca811045b7b8d156d2b54614304b83b30ad3b1ead4e7ad74fa9f42acc8934f648902e17a4f7c89a117dc8e3c03 SHA512 8bf67475db4ec5baf058ca976ea3e416df39cd9d15131be3fa3c161edbfa93f74251d33b29d23b3084c95bbb73fb6606f4615e528129674047a75a86e7417373 DIST postgresql-13.13.tar.bz2 21563452 BLAKE2B ee4b2d022c1b3003dc9c4da96e5900878a2fc70b3033470d0fb972131e063a047895e86d5d1e36297885f2821f0ef3af966cabe32941efba4bd11bdd0557e44f SHA512 d7b1076cdc406ac83440c75d18e6dc6db9af709615344978ba0135b45a127082b1d3c6ad6d8cd6259d67ddf38cfcee37dd78dcfbf8e4a710b724c67cf36170a7 DIST postgresql-14.10.tar.bz2 22298652 BLAKE2B 0c87c02b0b279d29e4a05711312bf89a655359a687c24d1cbb76cd4f6ed7666d31113a18a9976773c36853f00c1ca332af396372524467bb19c2a3bfcddea995 SHA512 f546e62eb158efdeecf091271ee60945604ca7f3683f0b259ee18eb682431158e282bf4f81d8df304c956919788f8077e72aa47c467d32d6aef1ccfe470862a5 DIST postgresql-15.5.tar.bz2 23091780 BLAKE2B e3731b973242d4de8b4b78e00842df52e006f08510efc0ff02bf7b8b479e17aa9e1c8116644d9a82f23d4334f527f1a82a1c2eec7f7c199a2fdf500b46740264 SHA512 9ed9d160b3cef99954ccd47a970c107b7e3b0196a7d848f740bf3c52a1c626f6f457814c97f37b9f0467bb07734e19806a15bd9cf3c39445e1d89e75b37064cc DIST postgresql-16.1.tar.bz2 24605482 BLAKE2B f59859af644134cf0fc9289c0e0d93fe0f877794a1cc8881280d0439605a6e312866a0114d453af8e269e26173fa3742073fe5485901b7cb0af925a5c3506aad SHA512 69f4635e5841452599f13b47df41ce2425ab34b4e4582fd2c635bc78d561fa36c5b03eccb4ae6569872dc74775be1b5a62dee20c9a4f12a43339250128352918 -EBUILD postgresql-11.22.ebuild 13346 BLAKE2B 440d6dc6f0de322e87895c8bba19fbc181cf8aa5e0080d49ed46c1a66ea85dfb4b36a67af6ea8827b4643c0f749df4cd2e6ccf042dc0bfd7e5ebe6308c94fb8d SHA512 13467699ac067df383ef27a23d817ffb92659ec02c4e28a396460135740a5786cf79f9d79915fe37962bf0ac7efa31ad697a6f52d740997abf09921341094762 EBUILD postgresql-12.17.ebuild 13318 BLAKE2B 7b8fb07a6262a3e288fa53b82e10f1c6eaafa915a3e49850c6fafc33db945bd9bb6bb41a6bd04d2a5bee085ce5150de57853175afbf176f71adfcbdc0fe7fd00 SHA512 c666ec01ecd7df6a8e516a1b920f4257a94c07ccaf585dd9176aff86cd4de8434ad1ad3774d5a0dda3f1c572498c719607aea11cf60b5ecb0150f7dc6d171b94 EBUILD postgresql-13.13.ebuild 13752 BLAKE2B 11e62fb7273b8b16e0ad2e984ccb2a2c0c8d823dfa431d79267a57cc534a45cb45ae0a7369c1e5d18782d4741204fff601d29117ea5f3663931fe097d7b84d15 SHA512 8525928ee03fc8d2427f8688ad001d7687389427a3d74c2b9252b78ee10a4e784b61666a29e8424236315d2dc888a09cfc1f8dbe8a4600b18f71ef70714d1cec EBUILD postgresql-14.10.ebuild 13744 BLAKE2B 9d8279964ba5b5dc3a727fbe144e6e5d6e360a4cfae6215c9d15fa55db08b00579c42a76aba6f39f0b427052302489a4a0fe4daf4b19161ff8d9158c97091a2e SHA512 72a188285856e30e1c27ef1a325fb788b69d95292fba41b5081df9108eab5e880862f8abb16d9a21a6ccecd752aa5963a3c3fc2fc670f8390d4531dd8ba5cd71 diff --git a/dev-db/postgresql/postgresql-11.22.ebuild b/dev-db/postgresql/postgresql-11.22.ebuild deleted file mode 100644 index b68a3fcec145..000000000000 --- a/dev-db/postgresql/postgresql-11.22.ebuild +++ /dev/null @@ -1,451 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10,11,12} ) -LLVM_MAX_SLOT=15 - -inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles - -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" - -SLOT=$(ver_cut 1) - -MY_PV=${PV/_/} -S="${WORKDIR}/${PN}-${MY_PV}" - -SRC_URI="https://ftp.postgresql.org/pub/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2" - -LICENSE="POSTGRESQL GPL-2" -DESCRIPTION="PostgreSQL RDBMS" -HOMEPAGE="https://www.postgresql.org/" - -IUSE="debug doc icu kerberos ldap llvm nls pam perl python +readline - selinux +server systemd ssl static-libs tcl uuid xml zlib" - -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" - -CDEPEND=" ->=app-eselect/eselect-postgresql-2.0 -acct-group/postgres -acct-user/postgres -sys-apps/less -virtual/libintl -icu? ( dev-libs/icu:= ) -kerberos? ( virtual/krb5 ) -ldap? ( net-nds/openldap:= ) -llvm? ( - =dev-lang/perl-5.8:= ) -python? ( ${PYTHON_DEPS} ) -readline? ( sys-libs/readline:0= ) -server? ( systemd? ( sys-apps/systemd ) ) -ssl? ( >=dev-libs/openssl-0.9.6-r1:0= ) -tcl? ( >=dev-lang/tcl-8:0= ) -xml? ( dev-libs/libxml2 dev-libs/libxslt ) -zlib? ( sys-libs/zlib ) -" - -# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no -# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems, -# the libc includes UUID functions. -UTIL_LINUX_LIBC=( elibc_{glibc,musl} ) - -nest_usedep() { - local front back - while [[ ${#} -gt 1 ]]; do - front+="${1}? ( " - back+=" )" - shift - done - echo "${front}${1}${back}" -} - -CDEPEND+=" -uuid? ( - ${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )} - $(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} dev-libs/ossp-uuid) -)" - -DEPEND="${CDEPEND} -sys-devel/bison -app-alternatives/lex -nls? ( sys-devel/gettext ) -xml? ( virtual/pkgconfig ) -" - -RDEPEND="${CDEPEND} -selinux? ( sec-policy/selinux-postgresql ) -" - -pkg_setup() { - use llvm && llvm_pkg_setup - - use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup - - use python && python-single-r1_pkg_setup -} - -src_prepare() { - # Set proper run directory - sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \ - -i src/include/pg_config_manual.h || die - - # Rely on $PATH being in the proper order so that the correct - # install program is used for modules utilizing PGXS in both - # hardened and non-hardened environments. (Bug #528786) - sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die - - use server || eapply "${FILESDIR}/${PN}-11_beta1-no-server.patch" - - if use pam ; then - sed "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \ - -i src/backend/libpq/auth.c || \ - die 'PGSQL_PAM_SERVICE rename failed.' - fi - - eapply_user -} - -src_configure() { - case ${CHOST} in - *-darwin*|*-solaris*) - use nls && append-libs intl - ;; - esac - - export LDFLAGS_SL="${LDFLAGS}" - export LDFLAGS_EX="${LDFLAGS}" - - local PO="${EPREFIX}" - - local i uuid_config="" - if use uuid; then - for i in ${UTIL_LINUX_LIBC[@]}; do - use ${i} && uuid_config="--with-uuid=e2fs" - done - [[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp" - fi - - econf \ - --prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \ - --datadir="${PO}/usr/share/postgresql-${SLOT}" \ - --includedir="${PO}/usr/include/postgresql-${SLOT}" \ - --mandir="${PO}/usr/share/postgresql-${SLOT}/man" \ - --sysconfdir="${PO}/etc/postgresql-${SLOT}" \ - --with-system-tzdata="${PO}/usr/share/zoneinfo" \ - $(use_enable !alpha spinlocks) \ - $(use_enable debug) \ - $(use_with icu) \ - $(use_with kerberos gssapi) \ - $(use_with ldap) \ - $(use_with llvm) \ - $(use_with pam) \ - $(use_with perl) \ - $(use_with python) \ - $(use_with readline) \ - $(use_with ssl openssl) \ - $(usex server "$(use_with systemd)" '--without-systemd') \ - $(use_with tcl) \ - ${uuid_config} \ - $(use_with xml libxml) \ - $(use_with xml libxslt) \ - $(use_with zlib) \ - $(use_enable nls) -} - -src_compile() { - emake - emake -C contrib -} - -src_install() { - emake DESTDIR="${D}" install - emake DESTDIR="${D}" install -C contrib - - dodoc README HISTORY doc/{TODO,bug.template} - - # man pages are already built, but if we have the target make them, - # they'll be generated from source before being installed so we - # manually install man pages. - # We use ${SLOT} instead of doman for postgresql.eselect - insinto /usr/share/postgresql-${SLOT}/man/ - doins -r doc/src/sgml/man{1,3,7} - if ! use server; then - # Remove man pages for non-existent binaries - serverman=( - initdb - pg_{archivecleanup,controldata,ctl,resetwal,rewind,standby} - pg_{test_{fsync,timing},upgrade,waldump} - post{gres,master} - ) - for m in ${serverman[@]} ; do - rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1" - done - fi - docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7} - - # Create slot specific man pages - local bn f mansec slotted_name - for mansec in 1 3 7 ; do - local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}" - - mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir" - pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed" - - for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do - bn=$(basename "${f}") - slotted_name=${bn%.${mansec}}${SLOT}.${mansec} - case ${bn} in - TABLE.7|WITH.7) - echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name} - ;; - *) - echo ".so ${rel_manpath}/${bn}" > ${slotted_name} - ;; - esac - done - - popd > /dev/null - done - - insinto /etc/postgresql-${SLOT} - newins src/bin/psql/psqlrc.sample psqlrc - - # Don't delete libpg{port,common}.a (Bug #571046). They're always - # needed by extensions utilizing PGXS. - use static-libs || \ - find "${ED}" -name '*.a' ! -name libpgport.a ! -name libpgcommon.a \ - -delete - - # Make slot specific links to programs - local f bn - for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \ - -mindepth 1 -maxdepth 1) - do - bn=$(basename "${f}") - dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \ - "/usr/bin/${bn}${SLOT/.}" - done - - if use doc ; then - docinto html - dodoc doc/src/sgml/html/* - fi - - if use server; then - sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \ - "${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT} - - sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \ - "${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT} - - if use systemd; then - sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \ - "${FILESDIR}/${PN}.service-9.6-r1" | \ - systemd_newunit - ${PN}-${SLOT}.service - newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir - newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf - fi - - use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session - - if use prefix ; then - keepdir /run/postgresql - fperms 1775 /run/postgresql - fi - fi -} - -pkg_postinst() { - use server && use systemd && tmpfiles_process ${PN}-${SLOT}.conf - postgresql-config update - - elog "If you need a global psqlrc-file, you can place it in:" - elog " ${EROOT}/etc/postgresql-${SLOT}/" - - if use server ; then - elog - elog "Gentoo specific documentation:" - elog "https://wiki.gentoo.org/wiki/PostgreSQL" - elog - elog "Official documentation:" - elog "https://www.postgresql.org/docs/${SLOT}/static/index.html" - elog - elog "The default location of the Unix-domain socket is:" - elog " ${EROOT}/run/postgresql/" - elog - elog "Before initializing the database, you may want to edit PG_INITDB_OPTS" - elog "so that it contains your preferred locale in:" - elog " ${EROOT}/etc/conf.d/postgresql-${SLOT}" - elog - elog "Then, execute the following command to setup the initial database" - elog "environment:" - elog " emerge --config =${CATEGORY}/${PF}" - - if [[ -n ${REPLACING_VERSIONS} ]] ; then - ewarn "If your system is using 'pg_stat_statements' and you are running a" - ewarn "version of PostgreSQL ${SLOT}, we advise that you execute" - ewarn "the following command after upgrading:" - ewarn - ewarn "ALTER EXTENSION pg_stat_statements UPDATE;" - fi - fi -} - -pkg_prerm() { - if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then - ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?" - ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL" - - ebegin "Resuming removal in 10 seconds (Control-C to cancel)" - sleep 10 - eend 0 - fi -} - -pkg_postrm() { - postgresql-config update -} - -pkg_config() { - use server || die "USE flag 'server' not enabled. Nothing to configure." - - [[ -f "${EROOT}/etc/conf.d/postgresql-${SLOT}" ]] \ - && source "${EROOT}/etc/conf.d/postgresql-${SLOT}" - [[ -z "${PGDATA}" ]] && PGDATA="${EROOT}/etc/postgresql-${SLOT}/" - [[ -z "${DATA_DIR}" ]] \ - && DATA_DIR="${EROOT}/var/lib/postgresql/${SLOT}/data" - - # environment.bz2 may not contain the same locale as the current system - # locale. Unset and source from the current system locale. - if [ -f "${EROOT}/etc/env.d/02locale" ]; then - unset LANG - unset LC_CTYPE - unset LC_NUMERIC - unset LC_TIME - unset LC_COLLATE - unset LC_MONETARY - unset LC_MESSAGES - unset LC_ALL - source "${EROOT}/etc/env.d/02locale" - [ -n "${LANG}" ] && export LANG - [ -n "${LC_CTYPE}" ] && export LC_CTYPE - [ -n "${LC_NUMERIC}" ] && export LC_NUMERIC - [ -n "${LC_TIME}" ] && export LC_TIME - [ -n "${LC_COLLATE}" ] && export LC_COLLATE - [ -n "${LC_MONETARY}" ] && export LC_MONETARY - [ -n "${LC_MESSAGES}" ] && export LC_MESSAGES - [ -n "${LC_ALL}" ] && export LC_ALL - fi - - einfo "You can modify the paths and options passed to initdb by editing:" - einfo " ${EROOT}/etc/conf.d/postgresql-${SLOT}" - einfo - einfo "Information on options that can be passed to initdb are found at:" - einfo " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html" - einfo " https://www.postgresql.org/docs/${SLOT}/static/app-initdb.html" - einfo - einfo "PG_INITDB_OPTS is currently set to:" - if [[ -z "${PG_INITDB_OPTS}" ]] ; then - einfo " (none)" - else - einfo " ${PG_INITDB_OPTS}" - fi - einfo - einfo "Configuration files will be installed to:" - einfo " ${PGDATA}" - einfo - einfo "The database cluster will be created in:" - einfo " ${DATA_DIR}" - einfo - - ebegin "Continuing initialization in 5 seconds (Control-C to cancel)" - sleep 5 - eend 0 - - if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then - eerror "The given directory, '${DATA_DIR}', is not empty." - eerror "Modify DATA_DIR to point to an empty directory." - die "${DATA_DIR} is not empty." - fi - - einfo "Creating the data directory ..." - if [[ ${EUID} == 0 ]] ; then - mkdir -p "$(dirname ${DATA_DIR%/})" || die "Couldn't parent dirs" - mkdir -m 0700 "${DATA_DIR%/}" || die "Couldn't make DATA_DIR" - chown -h postgres:postgres "${DATA_DIR%/}" || die "Couldn't chown" - fi - - einfo "Initializing the database ..." - - if [[ ${EUID} == 0 ]] ; then - su - postgres -c "${EROOT}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}" - else - "${EROOT}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS} - fi - - if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then - mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}" - ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}" - fi - - # unix_socket_directory has no effect in postgresql.conf as it's - # overridden in the initscript - sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf - - cat <<- EOF >> "${PGDATA%/}"/postgresql.conf - # This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522 - # On the off-chance that you might need to work with UTF-8 encoded - # characters in PL/Perl - plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";' - EOF - - einfo "The autovacuum function, which was in contrib, has been moved to the main" - einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled" - einfo "by default. You can disable it in the cluster's:" - einfo " ${PGDATA%/}/postgresql.conf" - einfo - if ! use systemd; then - einfo "The PostgreSQL server, by default, will log events to:" - einfo " ${DATA_DIR%/}/postmaster.log" - einfo - fi - if use prefix ; then - einfo "The location of the configuration files have moved to:" - einfo " ${PGDATA}" - einfo "To start the server:" - einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'" - einfo "To stop:" - einfo " pg_ctl stop -D ${DATA_DIR}" - einfo - einfo "Or move the configuration files back:" - einfo "mv ${PGDATA}*.conf ${DATA_DIR}" - elif use systemd; then - einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL" - einfo "instead of 'pg_ctl'." - else - einfo "You should use the '${EROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL" - einfo "instead of 'pg_ctl'." - fi -} - -src_test() { - if use server && [[ ${UID} -ne 0 ]] ; then - emake check - - einfo "If you think other tests besides the regression tests are necessary, please" - einfo "submit a bug including a patch for this ebuild to enable them." - else - use server || \ - ewarn 'Tests cannot be run without the "server" use flag enabled.' - [[ ${UID} -eq 0 ]] || \ - ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.' - - ewarn 'Skipping.' - fi -} diff --git a/dev-db/redis/Manifest b/dev-db/redis/Manifest index 62e10821c26d..ffe9bdca0a83 100644 --- a/dev-db/redis/Manifest +++ b/dev-db/redis/Manifest @@ -20,10 +20,10 @@ DIST redis-7.0.15.tar.gz 2994329 BLAKE2B fa1bc85c89cb6a6fb18710a4d29c20db44a80ce DIST redis-7.2.1.tar.gz 3383319 BLAKE2B 92784af3d1df338a8af7475ab7c598309f33f682ad4bb0b827f170c9f20c1a0879b433c6325c90dd6ba17e06e95bf7d8a9a665d6706065ff4c4c8c141d9c93c1 SHA512 7df4afd51dceea0edbb999027c84820a6aebdd58d71b2e93a4861120fa2b9c0801a0e61c70e695845dbff4e9b96907a4215dcacf72d3593ad014cfa584b5cad0 DIST redis-7.2.3.tar.gz 3384816 BLAKE2B 6aaf1bae377f3885affd140365eb0c2c30079fe40d770af1ac75a50647ce811e6c4dccd4b886db315e7b78e60661fa0bee280d707c1c4490f32086d0793069c3 SHA512 2ce4bbb056372f1180ceb1863106d07b021d32af2379f1f5dfc61e930c2cd0303433af22c7231adc8890ab5581cb41be3b792f19a0b1645108735c86d9fdf68e DIST redis-7.2.4.tar.gz 3386861 BLAKE2B 852d55f875378248fa15e189308afbe36bca73c2aa2e5423a765a3d6f6895908ac1455148e032f6d1a1087f57af5869bccf8a932684817109f3fcf09b204e639 SHA512 78590fb6680f229905c240ed8ce7a9a7153e5f8563577dbbb26aebf9bfbdcd7495d687f452bd95e0a86c76d772e1c497b506cf8d29bc97b62c9267f7d1e76f72 -EBUILD redis-6.2.14.ebuild 5465 BLAKE2B 434998689d42dcac8fe8805062b1b84e5e3388373fb979ef2c1d4e02c993da7032cd591d51140ef99eadf54263f2ffe6a1fe8d7c6183c2d7a098cb4d935794ac SHA512 a26909e160940ce707310b0530da40361cf4838a920284a054d528d14ee621112a6aa1384b4c5cef5bb896c0ae9f0c989aaaa017fbcd6c24252b021a7c9aa28e -EBUILD redis-7.0.14.ebuild 4925 BLAKE2B 6291aaf1a5febec7560c891659b70fda268986c0b7007f66c5fa12291cf0eac573373c9f3749d0d5cd2fedc0e5b879b390da3e557fe0d8922bf817ca5af73de5 SHA512 17daa5bb0863b69e1726170578fa5ff2f6d28665d7e17b996030ba7388c9414a036f160775a3be5fe14d3d18374aac67d7bd1f2dbe6316ef84711322fcf60ac6 -EBUILD redis-7.0.15.ebuild 4925 BLAKE2B 3e2f76750481c2fbdc2ab43a14b42b6e9f1014b23463b442a33cc92eea5d035a144fdbf8b4cba0170364e73b447bd2de67998f7497f4682ec29ab1ea515a3db5 SHA512 5bae965246c111168acfd9a65412985b1a3ee4868cdd8b3a9fbb4dd8f5986af3d0886c70edc2fbc87b66ed8314d62e89f59a8363b53622547ca12f9a239870c1 -EBUILD redis-7.2.1.ebuild 5078 BLAKE2B de53fb49489cd8eb1a8079e44dfc70b85faa1f6955f3d72a12fd36bab8a8ef65b109ef9c16f8210a0a2db3d8b8475f5ebf86c974befc37fdbf353c1dc83e663a SHA512 e03ca0930e62922cd2cf5fc196159d0fba58db8dea673f103bb7901b0937bc9dad9ff0705f93ce1a84abf6290252e6b5e29797664840b256b897b440276ef3d4 -EBUILD redis-7.2.3.ebuild 5079 BLAKE2B 375caf22c7a82a9202b408eef89877ab5d28cb47c42aba5cab52e28100ec6230f72a955eeb42ea04bfda8780309519be0c2bf8f8fc1cbd0af627bb754dbd58d3 SHA512 d52ab4a7f2f276032c87fa7bf295bd268c9cc0f230e5549f8b4f84ffeb5fb8f0300b16453e51ab98a826fc2160a00ff4af2cb457a849b6b93f574068463702bc -EBUILD redis-7.2.4.ebuild 5079 BLAKE2B 34c03bd49be3a953bd0db401cc1bc9346b7493fa8fbc3b3cc6f7efc1f09fbe3b518cbf7c2406a50efd556668d66bb7b743c8092838530b1e33d4282949c23d89 SHA512 6cf70cf88e670d4d8bd742e485f45d30812485b23ba2a95d8f60c10219b919b96888c182e53e444ab4adba40a32b7c2669064780c79e191eae2e23919b12587f +EBUILD redis-6.2.14-r1.ebuild 5480 BLAKE2B 03ab7cacdd2720e6b70e177f83814f5ebc4f5ccf010efca90b01fdabb9d553ce40f7e80c241cc90f9cf1f9d11746e3565a549fad345b93863277fa599026834b SHA512 7822951152271e852494c8500d17eeefe4e749cd0178b0a4ddf54810e063765d0cc0574bb448b815b4f15de5aa125f96926a5cf0f06a4d4eb07a4ff122cf8a5c +EBUILD redis-7.0.14-r1.ebuild 4940 BLAKE2B 9a3479bddd9566f08a9d7bca3aeb5be6ef5b1b9b06b6d0b27073983a4114ff087b3db05399e5f178c06d349c67cc8d695430fa6563a59c9b5944057601938bbe SHA512 93cd8775146b02b7b6a4296fc03f4802b5f7d8b6c12bf602d0bdd15d511cc8a6e022640a5ef8ceb241ece8083a3145ec6a4ef34fc879e72f0510c627145934be +EBUILD redis-7.0.15-r1.ebuild 4940 BLAKE2B 9a3479bddd9566f08a9d7bca3aeb5be6ef5b1b9b06b6d0b27073983a4114ff087b3db05399e5f178c06d349c67cc8d695430fa6563a59c9b5944057601938bbe SHA512 93cd8775146b02b7b6a4296fc03f4802b5f7d8b6c12bf602d0bdd15d511cc8a6e022640a5ef8ceb241ece8083a3145ec6a4ef34fc879e72f0510c627145934be +EBUILD redis-7.2.1-r1.ebuild 5093 BLAKE2B 182f57a3b299f84e5bd95a5ba6caec357e483d50068cb424fc09185b7a2c4d8fc9e924f8252e932b0db43523798d486525abde1b5cd5cdd900fcb305ec875c27 SHA512 1cfb7257f0ca5a6bd325fe2e4170200cf870515a9ee0a4c699a80e1a23cb4c21ac1f1bc33f2b3ed1191e1b486b0c079759a105c258d1ab82b32ada7defb7bb3c +EBUILD redis-7.2.3-r1.ebuild 5094 BLAKE2B da123ca8c2f0522326c9eec2eb1d35ab5dca9858f1b2be6ede86f5647643aa0086cb5ce27f4f3711cd4106886d193c1d2ffbdd2917e2dd0837c2ddca470bf351 SHA512 6d57feafb1a16a3cef27bd4ae7998c4def41452c12b8f931785ece391926b98e51604ec63a6b96fa72fc39d51a7b9296e7d064c7676a3d7c72f5c09463635811 +EBUILD redis-7.2.4-r1.ebuild 5094 BLAKE2B da123ca8c2f0522326c9eec2eb1d35ab5dca9858f1b2be6ede86f5647643aa0086cb5ce27f4f3711cd4106886d193c1d2ffbdd2917e2dd0837c2ddca470bf351 SHA512 6d57feafb1a16a3cef27bd4ae7998c4def41452c12b8f931785ece391926b98e51604ec63a6b96fa72fc39d51a7b9296e7d064c7676a3d7c72f5c09463635811 MISC metadata.xml 547 BLAKE2B 43d462a2c301c4431aa233467563140076269fec170063a9b5501fad2bad3afb9602aab971a5ef16997dd24cc5cfd27c9a9e194059b8db8784250cdae0fd5db3 SHA512 6b4549d4c296c19bc054175c7cf2d1af785d9217b4f298460be5ed08c0197ad8d6fdc29c998c85a5c6926947d99665265a008163e2dc15def2e1230ca6b561eb diff --git a/dev-db/redis/redis-6.2.14-r1.ebuild b/dev-db/redis/redis-6.2.14-r1.ebuild new file mode 100644 index 000000000000..1ecde456a4ac --- /dev/null +++ b/dev-db/redis/redis-6.2.14-r1.ebuild @@ -0,0 +1,195 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Redis does NOT build with Lua 5.2 or newer at this time: +# - 5.3 and 5.4 give: +# lua_bit.c:83:2: error: #error "Unknown number type, check LUA_NUMBER_* in luaconf.h" +# - 5.2 fails with: +# scripting.c:(.text+0x1f9b): undefined reference to `lua_open' +# because lua_open became lua_newstate in 5.2 +LUA_COMPAT=( lua5-1 luajit ) + +# Upstream have deviated too far from vanilla Lua, adding their own APIs +# like lua_enablereadonlytable, but we still need the eclass and such +# for bug #841422. +inherit autotools edo flag-o-matic lua-single multiprocessing systemd tmpfiles toolchain-funcs + +DESCRIPTION="A persistent caching system, key-value, and data structures database" +HOMEPAGE="https://redis.io" +SRC_URI="https://download.redis.io/releases/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="amd64 ~arm arm64 ~hppa ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" +IUSE="+jemalloc selinux ssl systemd tcmalloc test" +RESTRICT="!test? ( test )" + +COMMON_DEPEND=" + ${LUA_DEPS} + jemalloc? ( >=dev-libs/jemalloc-5.1:= ) + ssl? ( dev-libs/openssl:0= ) + systemd? ( sys-apps/systemd:= ) + tcmalloc? ( dev-util/google-perftools ) +" + +RDEPEND=" + ${COMMON_DEPEND} + acct-group/redis + acct-user/redis + selinux? ( sec-policy/selinux-redis ) +" + +BDEPEND=" + ${COMMON_DEPEND} + virtual/pkgconfig +" + +# Tcl is only needed in the CHOST test env +DEPEND=" + ${COMMON_DEPEND} + test? ( + dev-lang/tcl:0= + ssl? ( dev-tcltk/tls ) + )" + +REQUIRED_USE="?? ( jemalloc tcmalloc ) + ${LUA_REQUIRED_USE}" + +PATCHES=( + "${FILESDIR}"/${PN}-6.2.1-config.patch + "${FILESDIR}"/${PN}-5.0-shared.patch + "${FILESDIR}"/${PN}-6.2.3-ppc-atomic.patch + "${FILESDIR}"/${PN}-sentinel-5.0-config.patch +) + +src_prepare() { + default + + # Copy lua modules into build dir + #cp "${S}"/deps/lua/src/{fpconv,lua_bit,lua_cjson,lua_cmsgpack,lua_struct,strbuf}.c "${S}"/src || die + #cp "${S}"/deps/lua/src/{fpconv,strbuf}.h "${S}"/src || die + # Append cflag for lua_cjson + # https://github.com/antirez/redis/commit/4fdcd213#diff-3ba529ae517f6b57803af0502f52a40bL61 + append-cflags "-DENABLE_CJSON_GLOBAL" + + # now we will rewrite present Makefiles + local makefiles="" MKF + for MKF in $(find -name 'Makefile' | cut -b 3-); do + mv "${MKF}" "${MKF}.in" + sed -i -e 's:$(CC):@CC@:g' \ + -e 's:$(CFLAGS):@AM_CFLAGS@:g' \ + -e 's: $(DEBUG)::g' \ + -e 's:$(OBJARCH)::g' \ + -e 's:ARCH:TARCH:g' \ + -e '/^CCOPT=/s:$: $(LDFLAGS):g' \ + "${MKF}.in" \ + || die "Sed failed for ${MKF}" + makefiles+=" ${MKF}" + done + # autodetection of compiler and settings; generates the modified Makefiles + cp "${FILESDIR}"/configure.ac-3.2 configure.ac || die + + # Use the correct pkgconfig name for Lua. + # The upstream configure script handles luajit specially, and is not + # affected by these changes. + sed -i \ + -e "/^AC_INIT/s|, [0-9].+, |, $PV, |" \ + -e "s:AC_CONFIG_FILES(\[Makefile\]):AC_CONFIG_FILES([${makefiles}]):g" \ + -e "/PKG_CHECK_MODULES.*\/s,lua5.1,${ELUA},g" \ + configure.ac || die "Sed failed for configure.ac" + eautoreconf +} + +src_configure() { + econf #$(use_with lua_single_target_luajit luajit) + + # 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/linenoise/Makefile deps/Makefile || die +} + +src_compile() { + local myconf="" + + if use jemalloc; then + myconf+="MALLOC=jemalloc" + elif use tcmalloc; then + myconf+="MALLOC=tcmalloc" + else + myconf+="MALLOC=libc" + fi + + if use ssl; then + myconf+=" BUILD_TLS=yes" + fi + + export USE_SYSTEMD=$(usex systemd) + + tc-export AR CC RANLIB + emake V=1 ${myconf} AR="${AR}" CC="${CC}" RANLIB="${RANLIB}" +} + +src_test() { + local runtestargs=( + --clients "$(makeopts_jobs)" # see bug #649868 + ) + + if has usersandbox ${FEATURES} || ! has userpriv ${FEATURES}; then + ewarn "unit/oom-score-adj test will be skipped." \ + "It is known to fail with FEATURES usersandbox or -userpriv. See bug #756382." + + # unit/oom-score-adj was introduced in version 6.2.0 + runtestargs+=( --skipunit unit/oom-score-adj ) # see bug #756382 + 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 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 + + ewarn "The default redis configuration file location changed to:" + ewarn " /etc/redis/{redis,sentinel}.conf" + ewarn "Please apply your changes to the new configuration files." +} diff --git a/dev-db/redis/redis-6.2.14.ebuild b/dev-db/redis/redis-6.2.14.ebuild deleted file mode 100644 index 93779dea14c8..000000000000 --- a/dev-db/redis/redis-6.2.14.ebuild +++ /dev/null @@ -1,195 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Redis does NOT build with Lua 5.2 or newer at this time: -# - 5.3 and 5.4 give: -# lua_bit.c:83:2: error: #error "Unknown number type, check LUA_NUMBER_* in luaconf.h" -# - 5.2 fails with: -# scripting.c:(.text+0x1f9b): undefined reference to `lua_open' -# because lua_open became lua_newstate in 5.2 -LUA_COMPAT=( lua5-1 luajit ) - -# Upstream have deviated too far from vanilla Lua, adding their own APIs -# like lua_enablereadonlytable, but we still need the eclass and such -# for bug #841422. -inherit autotools edo flag-o-matic lua-single multiprocessing systemd tmpfiles toolchain-funcs - -DESCRIPTION="A persistent caching system, key-value, and data structures database" -HOMEPAGE="https://redis.io" -SRC_URI="https://download.redis.io/releases/${P}.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~hppa ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" -IUSE="+jemalloc selinux ssl systemd tcmalloc test" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - ${LUA_DEPS} - jemalloc? ( >=dev-libs/jemalloc-5.1:= ) - ssl? ( dev-libs/openssl:0= ) - systemd? ( sys-apps/systemd:= ) - tcmalloc? ( dev-util/google-perftools ) -" - -RDEPEND=" - ${COMMON_DEPEND} - acct-group/redis - acct-user/redis - selinux? ( sec-policy/selinux-redis ) -" - -BDEPEND=" - ${COMMON_DEPEND} - virtual/pkgconfig -" - -# Tcl is only needed in the CHOST test env -DEPEND=" - ${COMMON_DEPEND} - test? ( - dev-lang/tcl:0= - ssl? ( dev-tcltk/tls ) - )" - -REQUIRED_USE="?? ( jemalloc tcmalloc ) - ${LUA_REQUIRED_USE}" - -PATCHES=( - "${FILESDIR}"/${PN}-6.2.1-config.patch - "${FILESDIR}"/${PN}-5.0-shared.patch - "${FILESDIR}"/${PN}-6.2.3-ppc-atomic.patch - "${FILESDIR}"/${PN}-sentinel-5.0-config.patch -) - -src_prepare() { - default - - # Copy lua modules into build dir - #cp "${S}"/deps/lua/src/{fpconv,lua_bit,lua_cjson,lua_cmsgpack,lua_struct,strbuf}.c "${S}"/src || die - #cp "${S}"/deps/lua/src/{fpconv,strbuf}.h "${S}"/src || die - # Append cflag for lua_cjson - # https://github.com/antirez/redis/commit/4fdcd213#diff-3ba529ae517f6b57803af0502f52a40bL61 - append-cflags "-DENABLE_CJSON_GLOBAL" - - # now we will rewrite present Makefiles - local makefiles="" MKF - for MKF in $(find -name 'Makefile' | cut -b 3-); do - mv "${MKF}" "${MKF}.in" - sed -i -e 's:$(CC):@CC@:g' \ - -e 's:$(CFLAGS):@AM_CFLAGS@:g' \ - -e 's: $(DEBUG)::g' \ - -e 's:$(OBJARCH)::g' \ - -e 's:ARCH:TARCH:g' \ - -e '/^CCOPT=/s:$: $(LDFLAGS):g' \ - "${MKF}.in" \ - || die "Sed failed for ${MKF}" - makefiles+=" ${MKF}" - done - # autodetection of compiler and settings; generates the modified Makefiles - cp "${FILESDIR}"/configure.ac-3.2 configure.ac || die - - # Use the correct pkgconfig name for Lua. - # The upstream configure script handles luajit specially, and is not - # affected by these changes. - sed -i \ - -e "/^AC_INIT/s|, [0-9].+, |, $PV, |" \ - -e "s:AC_CONFIG_FILES(\[Makefile\]):AC_CONFIG_FILES([${makefiles}]):g" \ - -e "/PKG_CHECK_MODULES.*\/s,lua5.1,${ELUA},g" \ - configure.ac || die "Sed failed for configure.ac" - eautoreconf -} - -src_configure() { - econf #$(use_with lua_single_target_luajit luajit) - - # 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/linenoise/Makefile deps/Makefile || die -} - -src_compile() { - local myconf="" - - if use jemalloc; then - myconf+="MALLOC=jemalloc" - elif use tcmalloc; then - myconf+="MALLOC=tcmalloc" - else - myconf+="MALLOC=libc" - fi - - if use ssl; then - myconf+=" BUILD_TLS=yes" - fi - - export USE_SYSTEMD=$(usex systemd) - - tc-export AR CC RANLIB - emake V=1 ${myconf} AR="${AR}" CC="${CC}" RANLIB="${RANLIB}" -} - -src_test() { - local runtestargs=( - --clients "$(makeopts_jobs)" # see bug #649868 - ) - - if has usersandbox ${FEATURES} || ! has userpriv ${FEATURES}; then - ewarn "unit/oom-score-adj test will be skipped." \ - "It is known to fail with FEATURES usersandbox or -userpriv. See bug #756382." - - # unit/oom-score-adj was introduced in version 6.2.0 - runtestargs+=( --skipunit unit/oom-score-adj ) # see bug #756382 - 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 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 - - ewarn "The default redis configuration file location changed to:" - ewarn " /etc/redis/{redis,sentinel}.conf" - ewarn "Please apply your changes to the new configuration files." -} diff --git a/dev-db/redis/redis-7.0.14-r1.ebuild b/dev-db/redis/redis-7.0.14-r1.ebuild new file mode 100644 index 000000000000..ea4ae7fc184e --- /dev/null +++ b/dev-db/redis/redis-7.0.14-r1.ebuild @@ -0,0 +1,187 @@ +# Copyright 1999-2024 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 flag-o-matic multiprocessing systemd tmpfiles toolchain-funcs + +DESCRIPTION="A persistent caching system, key-value, and data structures database" +HOMEPAGE="https://redis.io" +SRC_URI="https://download.redis.io/releases/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" +IUSE="+jemalloc selinux ssl systemd tcmalloc test" +RESTRICT="!test? ( test )" + +COMMON_DEPEND=" + jemalloc? ( >=dev-libs/jemalloc-5.1:= ) + ssl? ( dev-libs/openssl:0= ) + systemd? ( sys-apps/systemd:= ) + tcmalloc? ( dev-util/google-perftools ) +" + +RDEPEND=" + ${COMMON_DEPEND} + acct-group/redis + acct-user/redis + selinux? ( sec-policy/selinux-redis ) +" + +BDEPEND=" + ${COMMON_DEPEND} + virtual/pkgconfig +" + +# Tcl is only needed in the CHOST test env +DEPEND=" + ${COMMON_DEPEND} + test? ( + dev-lang/tcl:0= + ssl? ( dev-tcltk/tls ) + )" + +REQUIRED_USE="?? ( jemalloc tcmalloc )" + +PATCHES=( + "${FILESDIR}"/${PN}-6.2.1-config.patch + "${FILESDIR}"/${PN}-5.0-shared.patch + "${FILESDIR}"/${PN}-6.2.3-ppc-atomic.patch + "${FILESDIR}"/${PN}-sentinel-5.0-config.patch + "${FILESDIR}"/${PN}-7.0.4-no-which.patch +) + +src_prepare() { + default + + # Append cflag for lua_cjson + # https://github.com/antirez/redis/commit/4fdcd213#diff-3ba529ae517f6b57803af0502f52a40bL61 + append-cflags "-DENABLE_CJSON_GLOBAL" + + # now we will rewrite present Makefiles + local makefiles="" MKF + for MKF in $(find -name 'Makefile' | cut -b 3-); do + mv "${MKF}" "${MKF}.in" + sed -i -e 's:$(CC):@CC@:g' \ + -e 's:$(CFLAGS):@AM_CFLAGS@:g' \ + -e 's: $(DEBUG)::g' \ + -e 's:$(OBJARCH)::g' \ + -e 's:ARCH:TARCH:g' \ + -e '/^CCOPT=/s:$: $(LDFLAGS):g' \ + "${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/linenoise/Makefile deps/Makefile || die +} + +src_compile() { + local myconf="" + + if use jemalloc; then + myconf+="MALLOC=jemalloc" + elif use tcmalloc; then + myconf+="MALLOC=tcmalloc" + else + myconf+="MALLOC=libc" + fi + + if use ssl; then + myconf+=" BUILD_TLS=yes" + fi + + export USE_SYSTEMD=$(usex systemd) + + tc-export AR CC RANLIB + emake V=1 ${myconf} AR="${AR}" CC="${CC}" RANLIB="${RANLIB}" +} + +src_test() { + local runtestargs=( + --clients "$(makeopts_jobs)" # see bug #649868 + + --skiptest "Active defrag eval scripts" # see bug #851654 + ) + + 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 + + ewarn "The default redis configuration file location changed to:" + ewarn " /etc/redis/{redis,sentinel}.conf" + ewarn "Please apply your changes to the new configuration files." +} diff --git a/dev-db/redis/redis-7.0.14.ebuild b/dev-db/redis/redis-7.0.14.ebuild deleted file mode 100644 index 1e67595984ec..000000000000 --- a/dev-db/redis/redis-7.0.14.ebuild +++ /dev/null @@ -1,187 +0,0 @@ -# Copyright 1999-2023 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 flag-o-matic multiprocessing systemd tmpfiles toolchain-funcs - -DESCRIPTION="A persistent caching system, key-value, and data structures database" -HOMEPAGE="https://redis.io" -SRC_URI="https://download.redis.io/releases/${P}.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" -IUSE="+jemalloc selinux ssl systemd tcmalloc test" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - jemalloc? ( >=dev-libs/jemalloc-5.1:= ) - ssl? ( dev-libs/openssl:0= ) - systemd? ( sys-apps/systemd:= ) - tcmalloc? ( dev-util/google-perftools ) -" - -RDEPEND=" - ${COMMON_DEPEND} - acct-group/redis - acct-user/redis - selinux? ( sec-policy/selinux-redis ) -" - -BDEPEND=" - ${COMMON_DEPEND} - virtual/pkgconfig -" - -# Tcl is only needed in the CHOST test env -DEPEND=" - ${COMMON_DEPEND} - test? ( - dev-lang/tcl:0= - ssl? ( dev-tcltk/tls ) - )" - -REQUIRED_USE="?? ( jemalloc tcmalloc )" - -PATCHES=( - "${FILESDIR}"/${PN}-6.2.1-config.patch - "${FILESDIR}"/${PN}-5.0-shared.patch - "${FILESDIR}"/${PN}-6.2.3-ppc-atomic.patch - "${FILESDIR}"/${PN}-sentinel-5.0-config.patch - "${FILESDIR}"/${PN}-7.0.4-no-which.patch -) - -src_prepare() { - default - - # Append cflag for lua_cjson - # https://github.com/antirez/redis/commit/4fdcd213#diff-3ba529ae517f6b57803af0502f52a40bL61 - append-cflags "-DENABLE_CJSON_GLOBAL" - - # now we will rewrite present Makefiles - local makefiles="" MKF - for MKF in $(find -name 'Makefile' | cut -b 3-); do - mv "${MKF}" "${MKF}.in" - sed -i -e 's:$(CC):@CC@:g' \ - -e 's:$(CFLAGS):@AM_CFLAGS@:g' \ - -e 's: $(DEBUG)::g' \ - -e 's:$(OBJARCH)::g' \ - -e 's:ARCH:TARCH:g' \ - -e '/^CCOPT=/s:$: $(LDFLAGS):g' \ - "${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/linenoise/Makefile deps/Makefile || die -} - -src_compile() { - local myconf="" - - if use jemalloc; then - myconf+="MALLOC=jemalloc" - elif use tcmalloc; then - myconf+="MALLOC=tcmalloc" - else - myconf+="MALLOC=libc" - fi - - if use ssl; then - myconf+=" BUILD_TLS=yes" - fi - - export USE_SYSTEMD=$(usex systemd) - - tc-export AR CC RANLIB - emake V=1 ${myconf} AR="${AR}" CC="${CC}" RANLIB="${RANLIB}" -} - -src_test() { - local runtestargs=( - --clients "$(makeopts_jobs)" # see bug #649868 - - --skiptest "Active defrag eval scripts" # see bug #851654 - ) - - 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 - - ewarn "The default redis configuration file location changed to:" - ewarn " /etc/redis/{redis,sentinel}.conf" - ewarn "Please apply your changes to the new configuration files." -} diff --git a/dev-db/redis/redis-7.0.15-r1.ebuild b/dev-db/redis/redis-7.0.15-r1.ebuild new file mode 100644 index 000000000000..ea4ae7fc184e --- /dev/null +++ b/dev-db/redis/redis-7.0.15-r1.ebuild @@ -0,0 +1,187 @@ +# Copyright 1999-2024 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 flag-o-matic multiprocessing systemd tmpfiles toolchain-funcs + +DESCRIPTION="A persistent caching system, key-value, and data structures database" +HOMEPAGE="https://redis.io" +SRC_URI="https://download.redis.io/releases/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" +IUSE="+jemalloc selinux ssl systemd tcmalloc test" +RESTRICT="!test? ( test )" + +COMMON_DEPEND=" + jemalloc? ( >=dev-libs/jemalloc-5.1:= ) + ssl? ( dev-libs/openssl:0= ) + systemd? ( sys-apps/systemd:= ) + tcmalloc? ( dev-util/google-perftools ) +" + +RDEPEND=" + ${COMMON_DEPEND} + acct-group/redis + acct-user/redis + selinux? ( sec-policy/selinux-redis ) +" + +BDEPEND=" + ${COMMON_DEPEND} + virtual/pkgconfig +" + +# Tcl is only needed in the CHOST test env +DEPEND=" + ${COMMON_DEPEND} + test? ( + dev-lang/tcl:0= + ssl? ( dev-tcltk/tls ) + )" + +REQUIRED_USE="?? ( jemalloc tcmalloc )" + +PATCHES=( + "${FILESDIR}"/${PN}-6.2.1-config.patch + "${FILESDIR}"/${PN}-5.0-shared.patch + "${FILESDIR}"/${PN}-6.2.3-ppc-atomic.patch + "${FILESDIR}"/${PN}-sentinel-5.0-config.patch + "${FILESDIR}"/${PN}-7.0.4-no-which.patch +) + +src_prepare() { + default + + # Append cflag for lua_cjson + # https://github.com/antirez/redis/commit/4fdcd213#diff-3ba529ae517f6b57803af0502f52a40bL61 + append-cflags "-DENABLE_CJSON_GLOBAL" + + # now we will rewrite present Makefiles + local makefiles="" MKF + for MKF in $(find -name 'Makefile' | cut -b 3-); do + mv "${MKF}" "${MKF}.in" + sed -i -e 's:$(CC):@CC@:g' \ + -e 's:$(CFLAGS):@AM_CFLAGS@:g' \ + -e 's: $(DEBUG)::g' \ + -e 's:$(OBJARCH)::g' \ + -e 's:ARCH:TARCH:g' \ + -e '/^CCOPT=/s:$: $(LDFLAGS):g' \ + "${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/linenoise/Makefile deps/Makefile || die +} + +src_compile() { + local myconf="" + + if use jemalloc; then + myconf+="MALLOC=jemalloc" + elif use tcmalloc; then + myconf+="MALLOC=tcmalloc" + else + myconf+="MALLOC=libc" + fi + + if use ssl; then + myconf+=" BUILD_TLS=yes" + fi + + export USE_SYSTEMD=$(usex systemd) + + tc-export AR CC RANLIB + emake V=1 ${myconf} AR="${AR}" CC="${CC}" RANLIB="${RANLIB}" +} + +src_test() { + local runtestargs=( + --clients "$(makeopts_jobs)" # see bug #649868 + + --skiptest "Active defrag eval scripts" # see bug #851654 + ) + + 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 + + ewarn "The default redis configuration file location changed to:" + ewarn " /etc/redis/{redis,sentinel}.conf" + ewarn "Please apply your changes to the new configuration files." +} diff --git a/dev-db/redis/redis-7.0.15.ebuild b/dev-db/redis/redis-7.0.15.ebuild deleted file mode 100644 index 5887d48b32c5..000000000000 --- a/dev-db/redis/redis-7.0.15.ebuild +++ /dev/null @@ -1,187 +0,0 @@ -# Copyright 1999-2024 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 flag-o-matic multiprocessing systemd tmpfiles toolchain-funcs - -DESCRIPTION="A persistent caching system, key-value, and data structures database" -HOMEPAGE="https://redis.io" -SRC_URI="https://download.redis.io/releases/${P}.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" -IUSE="+jemalloc selinux ssl systemd tcmalloc test" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - jemalloc? ( >=dev-libs/jemalloc-5.1:= ) - ssl? ( dev-libs/openssl:0= ) - systemd? ( sys-apps/systemd:= ) - tcmalloc? ( dev-util/google-perftools ) -" - -RDEPEND=" - ${COMMON_DEPEND} - acct-group/redis - acct-user/redis - selinux? ( sec-policy/selinux-redis ) -" - -BDEPEND=" - ${COMMON_DEPEND} - virtual/pkgconfig -" - -# Tcl is only needed in the CHOST test env -DEPEND=" - ${COMMON_DEPEND} - test? ( - dev-lang/tcl:0= - ssl? ( dev-tcltk/tls ) - )" - -REQUIRED_USE="?? ( jemalloc tcmalloc )" - -PATCHES=( - "${FILESDIR}"/${PN}-6.2.1-config.patch - "${FILESDIR}"/${PN}-5.0-shared.patch - "${FILESDIR}"/${PN}-6.2.3-ppc-atomic.patch - "${FILESDIR}"/${PN}-sentinel-5.0-config.patch - "${FILESDIR}"/${PN}-7.0.4-no-which.patch -) - -src_prepare() { - default - - # Append cflag for lua_cjson - # https://github.com/antirez/redis/commit/4fdcd213#diff-3ba529ae517f6b57803af0502f52a40bL61 - append-cflags "-DENABLE_CJSON_GLOBAL" - - # now we will rewrite present Makefiles - local makefiles="" MKF - for MKF in $(find -name 'Makefile' | cut -b 3-); do - mv "${MKF}" "${MKF}.in" - sed -i -e 's:$(CC):@CC@:g' \ - -e 's:$(CFLAGS):@AM_CFLAGS@:g' \ - -e 's: $(DEBUG)::g' \ - -e 's:$(OBJARCH)::g' \ - -e 's:ARCH:TARCH:g' \ - -e '/^CCOPT=/s:$: $(LDFLAGS):g' \ - "${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/linenoise/Makefile deps/Makefile || die -} - -src_compile() { - local myconf="" - - if use jemalloc; then - myconf+="MALLOC=jemalloc" - elif use tcmalloc; then - myconf+="MALLOC=tcmalloc" - else - myconf+="MALLOC=libc" - fi - - if use ssl; then - myconf+=" BUILD_TLS=yes" - fi - - export USE_SYSTEMD=$(usex systemd) - - tc-export AR CC RANLIB - emake V=1 ${myconf} AR="${AR}" CC="${CC}" RANLIB="${RANLIB}" -} - -src_test() { - local runtestargs=( - --clients "$(makeopts_jobs)" # see bug #649868 - - --skiptest "Active defrag eval scripts" # see bug #851654 - ) - - 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 - - ewarn "The default redis configuration file location changed to:" - ewarn " /etc/redis/{redis,sentinel}.conf" - ewarn "Please apply your changes to the new configuration files." -} diff --git a/dev-db/redis/redis-7.2.1-r1.ebuild b/dev-db/redis/redis-7.2.1-r1.ebuild new file mode 100644 index 000000000000..8ccfee0d3429 --- /dev/null +++ b/dev-db/redis/redis-7.2.1-r1.ebuild @@ -0,0 +1,200 @@ +# Copyright 1999-2024 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://download.redis.io/releases/${P}.tar.gz" + +LICENSE="BSD Boost-1.0" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" +IUSE="+jemalloc selinux ssl systemd tcmalloc test" +RESTRICT="!test? ( test )" + +COMMON_DEPEND=" + jemalloc? ( >=dev-libs/jemalloc-5.1:= ) + ssl? ( dev-libs/openssl:0= ) + systemd? ( sys-apps/systemd:= ) + tcmalloc? ( dev-util/google-perftools ) +" + +RDEPEND=" + ${COMMON_DEPEND} + acct-group/redis + acct-user/redis + selinux? ( sec-policy/selinux-redis ) +" + +BDEPEND=" + ${COMMON_DEPEND} + virtual/pkgconfig +" + +# Tcl is only needed in the CHOST test env +DEPEND=" + ${COMMON_DEPEND} + test? ( + dev-lang/tcl:0= + ssl? ( dev-tcltk/tls ) + )" + +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 +) + +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/linenoise/Makefile deps/Makefile || die +} + +src_compile() { + tc-export AR CC 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 + + --skiptest "Active defrag eval scripts" # see bug #851654 + ) + + 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 + + ewarn "The default redis configuration file location changed to:" + ewarn " /etc/redis/{redis,sentinel}.conf" + ewarn "Please apply your changes to the new configuration files." +} diff --git a/dev-db/redis/redis-7.2.1.ebuild b/dev-db/redis/redis-7.2.1.ebuild deleted file mode 100644 index 33316df07b63..000000000000 --- a/dev-db/redis/redis-7.2.1.ebuild +++ /dev/null @@ -1,200 +0,0 @@ -# Copyright 1999-2023 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://download.redis.io/releases/${P}.tar.gz" - -LICENSE="BSD Boost-1.0" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" -IUSE="+jemalloc selinux ssl systemd tcmalloc test" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - jemalloc? ( >=dev-libs/jemalloc-5.1:= ) - ssl? ( dev-libs/openssl:0= ) - systemd? ( sys-apps/systemd:= ) - tcmalloc? ( dev-util/google-perftools ) -" - -RDEPEND=" - ${COMMON_DEPEND} - acct-group/redis - acct-user/redis - selinux? ( sec-policy/selinux-redis ) -" - -BDEPEND=" - ${COMMON_DEPEND} - virtual/pkgconfig -" - -# Tcl is only needed in the CHOST test env -DEPEND=" - ${COMMON_DEPEND} - test? ( - dev-lang/tcl:0= - ssl? ( dev-tcltk/tls ) - )" - -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 -) - -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/linenoise/Makefile deps/Makefile || die -} - -src_compile() { - tc-export AR CC 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 - - --skiptest "Active defrag eval scripts" # see bug #851654 - ) - - 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 - - ewarn "The default redis configuration file location changed to:" - ewarn " /etc/redis/{redis,sentinel}.conf" - ewarn "Please apply your changes to the new configuration files." -} diff --git a/dev-db/redis/redis-7.2.3-r1.ebuild b/dev-db/redis/redis-7.2.3-r1.ebuild new file mode 100644 index 000000000000..dcdfd9625697 --- /dev/null +++ b/dev-db/redis/redis-7.2.3-r1.ebuild @@ -0,0 +1,200 @@ +# Copyright 1999-2024 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://download.redis.io/releases/${P}.tar.gz" + +LICENSE="BSD Boost-1.0" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" +IUSE="+jemalloc selinux ssl systemd tcmalloc test" +RESTRICT="!test? ( test )" + +COMMON_DEPEND=" + jemalloc? ( >=dev-libs/jemalloc-5.1:= ) + ssl? ( dev-libs/openssl:0= ) + systemd? ( sys-apps/systemd:= ) + tcmalloc? ( dev-util/google-perftools ) +" + +RDEPEND=" + ${COMMON_DEPEND} + acct-group/redis + acct-user/redis + selinux? ( sec-policy/selinux-redis ) +" + +BDEPEND=" + ${COMMON_DEPEND} + virtual/pkgconfig +" + +# Tcl is only needed in the CHOST test env +DEPEND=" + ${COMMON_DEPEND} + test? ( + dev-lang/tcl:0= + ssl? ( dev-tcltk/tls ) + )" + +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 +) + +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/linenoise/Makefile deps/Makefile || die +} + +src_compile() { + tc-export AR CC 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 + + --skiptest "Active defrag eval scripts" # see bug #851654 + ) + + 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 + + ewarn "The default redis configuration file location changed to:" + ewarn " /etc/redis/{redis,sentinel}.conf" + ewarn "Please apply your changes to the new configuration files." +} diff --git a/dev-db/redis/redis-7.2.3.ebuild b/dev-db/redis/redis-7.2.3.ebuild deleted file mode 100644 index 14563a65db85..000000000000 --- a/dev-db/redis/redis-7.2.3.ebuild +++ /dev/null @@ -1,200 +0,0 @@ -# Copyright 1999-2023 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://download.redis.io/releases/${P}.tar.gz" - -LICENSE="BSD Boost-1.0" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" -IUSE="+jemalloc selinux ssl systemd tcmalloc test" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - jemalloc? ( >=dev-libs/jemalloc-5.1:= ) - ssl? ( dev-libs/openssl:0= ) - systemd? ( sys-apps/systemd:= ) - tcmalloc? ( dev-util/google-perftools ) -" - -RDEPEND=" - ${COMMON_DEPEND} - acct-group/redis - acct-user/redis - selinux? ( sec-policy/selinux-redis ) -" - -BDEPEND=" - ${COMMON_DEPEND} - virtual/pkgconfig -" - -# Tcl is only needed in the CHOST test env -DEPEND=" - ${COMMON_DEPEND} - test? ( - dev-lang/tcl:0= - ssl? ( dev-tcltk/tls ) - )" - -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 -) - -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/linenoise/Makefile deps/Makefile || die -} - -src_compile() { - tc-export AR CC 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 - - --skiptest "Active defrag eval scripts" # see bug #851654 - ) - - 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 - - ewarn "The default redis configuration file location changed to:" - ewarn " /etc/redis/{redis,sentinel}.conf" - ewarn "Please apply your changes to the new configuration files." -} diff --git a/dev-db/redis/redis-7.2.4-r1.ebuild b/dev-db/redis/redis-7.2.4-r1.ebuild new file mode 100644 index 000000000000..dcdfd9625697 --- /dev/null +++ b/dev-db/redis/redis-7.2.4-r1.ebuild @@ -0,0 +1,200 @@ +# Copyright 1999-2024 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://download.redis.io/releases/${P}.tar.gz" + +LICENSE="BSD Boost-1.0" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" +IUSE="+jemalloc selinux ssl systemd tcmalloc test" +RESTRICT="!test? ( test )" + +COMMON_DEPEND=" + jemalloc? ( >=dev-libs/jemalloc-5.1:= ) + ssl? ( dev-libs/openssl:0= ) + systemd? ( sys-apps/systemd:= ) + tcmalloc? ( dev-util/google-perftools ) +" + +RDEPEND=" + ${COMMON_DEPEND} + acct-group/redis + acct-user/redis + selinux? ( sec-policy/selinux-redis ) +" + +BDEPEND=" + ${COMMON_DEPEND} + virtual/pkgconfig +" + +# Tcl is only needed in the CHOST test env +DEPEND=" + ${COMMON_DEPEND} + test? ( + dev-lang/tcl:0= + ssl? ( dev-tcltk/tls ) + )" + +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 +) + +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/linenoise/Makefile deps/Makefile || die +} + +src_compile() { + tc-export AR CC 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 + + --skiptest "Active defrag eval scripts" # see bug #851654 + ) + + 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 + + ewarn "The default redis configuration file location changed to:" + ewarn " /etc/redis/{redis,sentinel}.conf" + ewarn "Please apply your changes to the new configuration files." +} diff --git a/dev-db/redis/redis-7.2.4.ebuild b/dev-db/redis/redis-7.2.4.ebuild deleted file mode 100644 index 1c2177479dd1..000000000000 --- a/dev-db/redis/redis-7.2.4.ebuild +++ /dev/null @@ -1,200 +0,0 @@ -# Copyright 1999-2024 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://download.redis.io/releases/${P}.tar.gz" - -LICENSE="BSD Boost-1.0" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" -IUSE="+jemalloc selinux ssl systemd tcmalloc test" -RESTRICT="!test? ( test )" - -COMMON_DEPEND=" - jemalloc? ( >=dev-libs/jemalloc-5.1:= ) - ssl? ( dev-libs/openssl:0= ) - systemd? ( sys-apps/systemd:= ) - tcmalloc? ( dev-util/google-perftools ) -" - -RDEPEND=" - ${COMMON_DEPEND} - acct-group/redis - acct-user/redis - selinux? ( sec-policy/selinux-redis ) -" - -BDEPEND=" - ${COMMON_DEPEND} - virtual/pkgconfig -" - -# Tcl is only needed in the CHOST test env -DEPEND=" - ${COMMON_DEPEND} - test? ( - dev-lang/tcl:0= - ssl? ( dev-tcltk/tls ) - )" - -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 -) - -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/linenoise/Makefile deps/Makefile || die -} - -src_compile() { - tc-export AR CC 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 - - --skiptest "Active defrag eval scripts" # see bug #851654 - ) - - 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 - - ewarn "The default redis configuration file location changed to:" - ewarn " /etc/redis/{redis,sentinel}.conf" - ewarn "Please apply your changes to the new configuration files." -} -- cgit v1.2.3