diff options
Diffstat (limited to 'dev-db/redis')
-rw-r--r-- | dev-db/redis/Manifest | 2 | ||||
-rw-r--r-- | dev-db/redis/redis-5.0_rc5.ebuild | 144 |
2 files changed, 146 insertions, 0 deletions
diff --git a/dev-db/redis/Manifest b/dev-db/redis/Manifest index 4606b472ce2c..c2edb3702e8e 100644 --- a/dev-db/redis/Manifest +++ b/dev-db/redis/Manifest @@ -25,6 +25,7 @@ DIST redis-4.0.7.tar.gz 1729488 BLAKE2B 7a5337b868e4da4a7387b31bc9d6bd4c86abd701 DIST redis-4.0.8.tar.gz 1729973 BLAKE2B 32d82a07beba9ea8f0b08a8fc69da548a1974e5839f052a9803ffb0f52ef920df9b128092e061b5e693581a50efef4a1212c1f6310dc8492eff5ca841ff3b03a SHA512 11c126ddef3bedbceb02ee7a80a61374e081da8087055d77970b0097066a6f1c5e0c4f0d246c9851f8c3beca22f185c184669a9dc4f1c7c229f8cd2c34196ab6 DIST redis-4.0.9.tar.gz 1737022 BLAKE2B 35a83d146062f5b14c023d7fd9f28d743ba6bec3e0e4bf9ce8e065a706bbd7508ffbcb8b1b4d18f6b6774589b5456540ba8717b9f449fcbd758c0f57dbd505a3 SHA512 a6cf63cb361f0a87da3955ba628190dc04cad342f7a664d18e44416ee67dd86ed6e3a46b9701e994f1417e56b819b3c6fc595f363c10bb4b83d5033919d29598 DIST redis-5.0_rc4.tar.gz 1937238 BLAKE2B b8f768b83e27476bc038fc554193680f4873eb2405f238e0a6f2053cf68c4a9e6c45546730a263463b805d6811334c1ba056be0230676f19d0562d488a3d4c97 SHA512 75b308bca026fe3b7cff1a92df3990bab5bb7ffe24cdfbc263f4d522ebe7ec8d86a9ed66da1778fe67c08a39b6f0c83cb10c5a332818c6ad04621d01c4aa6add +DIST redis-5.0_rc5.tar.gz 1941761 BLAKE2B 294cf455e40bbbcfb87972fd4130854ced714369dcfc08a77e9be693d1b819f3c5dfe8b407582726e8bd140be3965f9c6cab03cd28002004ed1e634a0827a060 SHA512 173e529bec234339be3b6c2c5c360085a186a66c4d08a4dfeb51aa689ab61ba1d8ab2914af5ba4923799b17bc09a05a488ce6e6cfae7fa7faa5c5a55e38c111c EBUILD redis-3.2.12.ebuild 3886 BLAKE2B ea98fec96f660ef6c663d3700d8b90ee6a98c904e6c798e81416d14609e238e395d6096cdea1dafd0d7591b401b68803c44dd4c9d7831c43168643cea458b05c SHA512 ff68d691ee3555a74e6e4305d54d9848137d0887b6c96a97b81f48adfd06129291a51eac1c87cf358b8670dad93dc372d8e70455efa348f5ec296ec0035af6be EBUILD redis-3.2.8-r5.ebuild 3884 BLAKE2B 27c4d67ff9d9f1d23c9ac0c5dcbfdaa7eda60b0957a955f7e66e9ad54c0490052a28cb6f02195dd606d8ff65f2b95c43325af771649048d80e7124e3df8d1907 SHA512 fde594959130b3999c8c31e5711b48f7d29824c189495b6d94124ef7190ce4cfc10b635ec2141fd980cfc709d7a7aa9f9474996742ed1fac8cde509cba22712c EBUILD redis-4.0.10.ebuild 4069 BLAKE2B 33bf7fbd67db2035d3bdc92f01f1252c9a27a1a3c736f555d21c6670920e03057b30bc51594898414dc5a18312c1af5f74f01b86ede936025cb44d6f0e478855 SHA512 52c9a38d8823fa87ddb8aea6db611bf43b0e3543eddb275a991da075095e27758de2f5456685a01eb79e3166a642a38256cd95f75d5cf7b1a432dcb3af29f671 @@ -35,4 +36,5 @@ EBUILD redis-4.0.7.ebuild 4074 BLAKE2B a6190e8b3223f516c48889f5bd455e7c94c1c68e0 EBUILD redis-4.0.8.ebuild 4074 BLAKE2B a6190e8b3223f516c48889f5bd455e7c94c1c68e0f142f8370fc74931d7b9fb79621bae4a080956eb8cc9cf00ece885535c2e3a17e717d1c2c069e61bed479ee SHA512 aafbb4f1a85133e3baf0b73f026281c6dba2cd2146c9d3a9e5fa610e5e1ca5a9ea8458b9b031345f7346b74e42fc2a238f3824ddf12ec7d83ba571ebe7d18e3d EBUILD redis-4.0.9.ebuild 4074 BLAKE2B 609631167471b07d3caccad80d601e4d73a594a97979b25f828c171c341f2f8d24c12e2399ad81b8952e5f459f0a340726a4e8ee69a1f51b0626b52d18e7ce3c SHA512 86c003235c630c87a551b31f359a5fe824d7114016f22788cf8dc84dec56d5bea24c3fdbc86efd15734ccb636394bb6fc4f4d757566ac857605fa23c841db4d4 EBUILD redis-5.0_rc4.ebuild 4127 BLAKE2B 110d57d99191a4adc8b3da6978320d744b7e83a876c2f0b569187da7e4d26f059368a0021a64ddc17846e3d48390ff9424457278def0df04436ce0b04352b371 SHA512 d8daa2fe2b0640001fdc66ef190801cafb542f61fb73546a2d428a7bb306fad9c6ffdc47336774aa072b8a2cd9a0021bbcf6a86a3124ddcb74037f7a1a7e2fd0 +EBUILD redis-5.0_rc5.ebuild 4130 BLAKE2B c4e496f916e3caeb24b2ada9c6c4bd709aee3a3a63bc695383ff2624277ea6cb74804dbb945aba8650d317ad06324c51a08c6432ae4c0306bc8428f5185f3cc3 SHA512 2930a1dfeeaafbc17e12c89b23527c874430451a5a60271ffa4d66e49fea6bed100c9d0ef8134a6d8b48e21f8bc7fabd7683c2617e6b37d78962c473b272a94d MISC metadata.xml 535 BLAKE2B 8b38981c28c1a1ac98cbadcc1a7e6ae9b48eff471f56a8ce182b26a331e8fdb92e0d76fa44f0c7f84f6d262fc7b1ad23ddb348d445dfc472f9b8be86d6ca222b SHA512 10302874f9e9818bfa599f4cb1e75bf9dc27f187cf7858855c2d77ddfb282ead944f40027596a80e8e22bdd5bf374613362be0c1779c0e5941e4135ad994c120 diff --git a/dev-db/redis/redis-5.0_rc5.ebuild b/dev-db/redis/redis-5.0_rc5.ebuild new file mode 100644 index 000000000000..1c203774f8c8 --- /dev/null +++ b/dev-db/redis/redis-5.0_rc5.ebuild @@ -0,0 +1,144 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +WANT_AUTOCONF="latest" + +inherit autotools eapi7-ver flag-o-matic systemd toolchain-funcs user + +MY_PV="$(ver_rs 2 -)" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="A persistent caching system, key-value and data structures database" +HOMEPAGE="https://redis.io" +SRC_URI="https://github.com/antirez/redis/archive/${MY_PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-macos ~x86-solaris" +IUSE="+jemalloc tcmalloc luajit test" +SLOT="0" + +# Redis does NOT build with Lua 5.2 or newer at this time. +# This should link correctly with both unslotted & slotted Lua, without +# changes. +RDEPEND=" + luajit? ( dev-lang/luajit:2 ) + !luajit? ( || ( dev-lang/lua:5.1 =dev-lang/lua-5.1*:0 ) ) + tcmalloc? ( dev-util/google-perftools ) + jemalloc? ( >=dev-libs/jemalloc-3.2 )" + +DEPEND=" + ${RDEPEND} + virtual/pkgconfig + test? ( dev-lang/tcl:0= )" + +REQUIRED_USE="?? ( tcmalloc jemalloc )" + +S="${WORKDIR}/${MY_P}" + +pkg_setup() { + enewgroup redis 75 + enewuser redis 75 -1 /var/lib/redis redis +} + +src_prepare() { + eapply \ + "${FILESDIR}"/${PN}-3.2.3-config.patch \ + "${FILESDIR}"/${PN}-5.0-shared.patch \ + "${FILESDIR}"/${PN}-5.0-sharedlua.patch \ + "${FILESDIR}"/${PN}-sentinel-5.0-config.patch + eapply_user + + # 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 + has_version 'dev-lang/lua:5.1' \ + && LUAPKGCONFIG=lua5.1 \ + || LUAPKGCONFIG=lua + sed -i \ + -e "/^AC_INIT/s|, [0-9].+, |, $PV, |" \ + -e "s:AC_CONFIG_FILES(\[Makefile\]):AC_CONFIG_FILES([${makefiles}]):g" \ + -e "/PKG_CHECK_MODULES.*\<LUA\>/s,lua5.1,${LUAPKGCONFIG},g" \ + configure.ac || die "Sed failed for configure.ac" + eautoreconf +} + +src_configure() { + econf \ + $(use_with 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() { + tc-export CC AR RANLIB + + local myconf="" + + if use tcmalloc; then + myconf="${myconf} USE_TCMALLOC=yes" + elif use jemalloc; then + myconf="${myconf} JEMALLOC_SHARED=yes" + else + myconf="${myconf} MALLOC=yes" + fi + + emake ${myconf} V=1 CC="${CC}" AR="${AR} rcu" RANLIB="${RANLIB}" +} + +src_install() { + insinto /etc/ + doins redis.conf sentinel.conf + use prefix || fowners redis:redis /etc/{redis,sentinel}.conf + fperms 0644 /etc/{redis,sentinel}.conf + + newconfd "${FILESDIR}/redis.confd-r1" redis + newinitd "${FILESDIR}/redis.initd-5" redis + + systemd_newunit "${FILESDIR}/redis.service-2" redis.service + systemd_newtmpfilesd "${FILESDIR}/redis.tmpfiles" redis.conf + + newconfd "${FILESDIR}/redis-sentinel.confd" redis-sentinel + newinitd "${FILESDIR}/redis-sentinel.initd" 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 +} |