New version, thanks to Dirkjan Ochtman <djc@gentoo.org> and Johan Bergström <bugs...
authorLuca Barbato <lu_zero@gentoo.org>
Sat, 26 Nov 2011 10:37:47 +0000 (10:37 +0000)
committerLuca Barbato <lu_zero@gentoo.org>
Sat, 26 Nov 2011 10:37:47 +0000 (10:37 +0000)
Package-Manager: portage-2.2.0_alpha76/cvs/Linux x86_64

dev-db/redis/ChangeLog
dev-db/redis/Manifest
dev-db/redis/files/redis-2.4.3-shared.patch [new file with mode: 0644]
dev-db/redis/redis-2.4.3.ebuild [new file with mode: 0644]

index 535f48e57f6329f0b606d796aa3ccbcf693e6529..264dff29fd2e6d8f25df89e1f949d9c64d8c3912 100644 (file)
@@ -1,6 +1,14 @@
 # ChangeLog for dev-db/redis
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-db/redis/ChangeLog,v 1.25 2011/11/02 21:40:35 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-db/redis/ChangeLog,v 1.26 2011/11/26 10:37:47 lu_zero Exp $
+
+*redis-2.4.3 (26 Nov 2011)
+
+  26 Nov 2011; Luca Barbato <lu_zero@gentoo.org> +redis-2.4.3.ebuild,
+  +files/redis-2.4.3-shared.patch:
+  New version, thanks to Dirkjan Ochtman <djc@gentoo.org> and
+  Johan Bergström <bugs@bergstroem.nu> in bug #378085 for the patches
+  and the updated ebuild.
 
   02 Nov 2011; Mike Frysinger <vapier@gentoo.org> redis-2.2.2.ebuild,
   redis-2.2.6.ebuild, redis-2.2.8.ebuild, redis-2.2.11.ebuild,
index 835bcaca2ea8e9645dc54009a058d0aec00cb716..435e48878eab04d610ac9d59d586d60dffa8354f 100644 (file)
@@ -3,6 +3,7 @@ Hash: SHA256
 
 AUX configure.ac-2.2 1522 RMD160 76faaedfd1debd7e10d9a7a15a8ca845a7c4dad8 SHA1 baa5e21f7b90a35811e05560278ad233fa049178 SHA256 349b9f826578a886930bf395b59e6bdf1802c453ffd4cadbfcc3cca49c07313f
 AUX redis-2.2-as-needed.patch 1994 RMD160 63810e94ec9f765b08ec12fb405fc769c704605d SHA1 eaf65b408468a60249b94fcd22110db51dabfe04 SHA256 be3b3f243dbc39ee8ac57bc77022f9866f4675a708ed2a33d5b76dc3289f8584
+AUX redis-2.4.3-shared.patch 708 RMD160 ed2c774f8ae684a722c1b46684e695dfbd596871 SHA1 607819295f05b4374b770395fee05a7710321483 SHA256 a2d3fda42993aa0b75f08e8a328a7cc1de9af97b50e2b479c85421062c9d8e82
 AUX redis.confd 450 RMD160 237a72f30b3ba5c77e7dd31d2dfebc2db2cea2ad SHA1 4c298810900f0e627cd3f7bf480feb639b6cc2d5 SHA256 8c68e29dc88c8ad99b9212a448d313d1406ef02c7638398b2e48ea1ca8aa937b
 AUX redis.initd 859 RMD160 a5718f3b4eab11450223c21bc98ab75d408e932e SHA1 ba3237364dba1da920ec4f14c13ff2cd45062144 SHA256 8b25b60bca695a8393e381078b2a42330c1b6cc2953bbe3c1b7cbd41ca36fe5d
 DIST redis-2.2.11.tar.gz 450839 RMD160 b5c1802395a0c375e5e9c0702e7086b83989d0ed SHA1 ba4b513c5bf7a28b2e50bbd1ca51bb7962e5685c SHA256 a94c1dd2573e19f1abd335507d5ea280753b092ddf16d014dcd3212f5a5bc0eb
@@ -10,17 +11,19 @@ DIST redis-2.2.12.tar.gz 455240 RMD160 8bf1275fd1d2ad1536ce7081bdf3522d5e92a8d3
 DIST redis-2.2.2.tar.gz 446269 RMD160 a7a21ab6aa07f79e5cdeb991a26dd1d55446e38e SHA1 75b953e4a3067570555c5f3f5e8f481c40489904 SHA256 4c5ff589ec80bf019ebebcf5fb5187939d7e50c34fa9f8a0511e40825a3ec235
 DIST redis-2.2.6.tar.gz 447913 RMD160 76ddcd22ba31a7a9dd8a2fb7b465330c933a15c7 SHA1 dd5a5a443327da09483701c48b7ea87e5d160c69 SHA256 64ab9ec01792c50344b030e19dfc2453ff76822cf5845eb6da5654bc1ea09477
 DIST redis-2.2.8.tar.gz 448877 RMD160 91c95512ecd2b83834bbe4ebd562ae7fc4699599 SHA1 30fb67ed71c179a7294d06d2c83c9b074a98fb79 SHA256 d438fde47fd8a34d8b135744a4264214274e57bc7f132d0cf4ee4e98a6551bb3
+DIST redis-2.4.3.tar.gz 603463 RMD160 1da0661f5d22f046547f2aa9f93d921bd2a50852 SHA1 d917e721a11e38969d92070e9c6476598c6e4621 SHA256 4e0f39968776819a942d1502626ac6072a28e1b148a25f662d80bbcb54d5ba4c
 EBUILD redis-2.2.11.ebuild 3468 RMD160 e2627a8126791d83e61d7052edb13871f1c4a459 SHA1 4e1c62fcec32d26c92744cb42901d7c2c9724a61 SHA256 bf78c62af722fdfc6fde59f6fee4dccdc1a408e7707e9a0896bdd4d5d9c140ad
 EBUILD redis-2.2.12.ebuild 3484 RMD160 c87bbe611f1c786379e090da413bd39533294af2 SHA1 a0cce800e9a6c723a3855dfd554466ddcccf571b SHA256 5e75722290ea06302549d28735ec4e8c8048b4a94b1477f18b47181edc637e5a
 EBUILD redis-2.2.2.ebuild 3435 RMD160 4a780f8f0406c961657e9d18187729cab402a956 SHA1 05e3e4158cf56f5a04b1cdd3cfe32e3b3e37a213 SHA256 1915ebd2aed6a330bead3b86399859d9ce86ee1fcf06aace5fb694f3e0cf70a4
 EBUILD redis-2.2.6.ebuild 3435 RMD160 17842406e198bf6782132e0754bfc873d1e98510 SHA1 44a936fc3358579fce4cf73b0ba61e33be321da4 SHA256 a4cf6a3a1a43daf03c6847bf4e3143be88c59104df93af98751730bc5ac7ce7e
 EBUILD redis-2.2.8.ebuild 3437 RMD160 d005e6f2f91a711e6859b0d0084ef8ec3feedf84 SHA1 d4d1841d5ece9a240069344fbc9eeaff325bf7b6 SHA256 79a243577f0efac78b5a5e04314668add9c1e79d55694ac45909ed56da7d4985
-MISC ChangeLog 3880 RMD160 da1fc69e6fb4f49f67b16a8717692c7908dcf7f7 SHA1 6f8a066596fbcd28974860a23994d6ae867c2840 SHA256 8b8d407bd6c2582ba655f42268bad7c027407082e21eca601ed54241685b857b
+EBUILD redis-2.4.3.ebuild 3367 RMD160 93d68f8b66a84bc90ce68f0eaeb847b65565b03f SHA1 dbd07f27f8489c239cda3c02dd47424a1038978f SHA256 7e73f59e9f0f52753c579e232a99d9d888a66b7fcd7a50ae8ed296a102ece661
+MISC ChangeLog 4174 RMD160 d7c0e5f82f1034d796f60a603ba06c46a188798b SHA1 5e28ba4a619341e1d02a0c776969d1299fa9fb1f SHA256 a81a1758947e368c75f1dc49989f3b5c430f4b0cb0546ecd2bbdc41205991a98
 MISC metadata.xml 532 RMD160 68ae8544dab5fbd33f2baa5c5e02a0dd6636602d SHA1 0149e2e944773f7bda6c1873d9479aecb56924ec SHA256 2c9078c79029f6d2f4990e6322531c125fe6594a2c723ace011910b375374fe7
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.18 (GNU/Linux)
 
-iF4EAREIAAYFAk6xuN8ACgkQaC/OocHi7JaUgwD9Fheke6vImRQwy+LW5TKjveYB
-1+q/Eo6W1zhQogxLr8EBAIJVpUYEI5EVqqKkjNduhQYyNqxGhYh0ZelPLtFr50is
-=zbO4
+iF4EAREIAAYFAk7QwYsACgkQYpJnKVbCxcyqAwD8CZDlFMYOi72eBK85NTYqXmo6
+xiER4hM4jbji6pbWTc4A/iW+sNrww+Ogdvbsr5zDbHfMNo6WaKdz88E36jFSYc3Z
+=EJst
 -----END PGP SIGNATURE-----
diff --git a/dev-db/redis/files/redis-2.4.3-shared.patch b/dev-db/redis/files/redis-2.4.3-shared.patch
new file mode 100644 (file)
index 0000000..20cdebe
--- /dev/null
@@ -0,0 +1,22 @@
+See https://github.com/antirez/redis/pull/137
+
+--- src/Makefile       2011-10-17 10:46:00.000000000 +0200
++++ src/Makefile.2     2011-10-17 13:47:53.000000000 +0200
+@@ -49,7 +49,16 @@
+ ifeq ($(USE_JEMALLOC),yes)
+   ALLOC_DEP=../deps/jemalloc/lib/libjemalloc.a
+   ALLOC_LINK=$(ALLOC_DEP) -ldl
+-  ALLOC_FLAGS=-DUSE_JEMALLOC -I../deps/jemalloc/include
++  ALLOC_FLAGS=-DUSE_JEMALLOC
++   ifdef JEMALLOC_SHARED
++       ALLOC_DEP=
++       ALLOC_LINK=-ljemalloc
++       ALLOC_FLAGS=-DUSE_JEMALLOC -I/usr/include
++   else
++       ALLOC_DEP=../deps/jemalloc/lib/libjemalloc.a
++       ALLOC_LINK=$(ALLOC_DEP) -ldl
++       ALLOC_FLAGS=-DUSE_JEMALLOC -I../deps/jemalloc/include
++   endif
+ endif
+ 
+ CCOPT= $(CFLAGS) $(ARCH) $(PROF)
diff --git a/dev-db/redis/redis-2.4.3.ebuild b/dev-db/redis/redis-2.4.3.ebuild
new file mode 100644 (file)
index 0000000..4f2d205
--- /dev/null
@@ -0,0 +1,108 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/redis/redis-2.4.3.ebuild,v 1.1 2011/11/26 10:37:47 lu_zero Exp $
+
+EAPI="2"
+
+inherit autotools eutils flag-o-matic
+
+DESCRIPTION="A persistent caching system, key-value and data structures database."
+HOMEPAGE="http://redis.io"
+SRC_URI="http://redis.googlecode.com/files/${P}.tar.gz"
+
+LICENSE="BSD"
+KEYWORDS="~amd64 ~x86 ~x86-macos ~x86-solaris"
+IUSE="tcmalloc test"
+SLOT="0"
+
+RDEPEND=""
+DEPEND=">=sys-devel/autoconf-2.63
+       tcmalloc? ( dev-util/google-perftools )
+       !tcmalloc? ( dev-libs/jemalloc )
+       test? ( dev-lang/tcl )
+       ${RDEPEND}"
+
+S="${WORKDIR}/${PN}-${PV/_/-}"
+
+REDIS_PIDDIR=/var/run/redis/
+REDIS_PIDFILE=${REDIS_PIDDIR}/redis.pid
+REDIS_DATAPATH=/var/lib/redis
+REDIS_LOGPATH=/var/log/redis
+REDIS_LOGFILE=${REDIS_LOGPATH}/redis.log
+
+pkg_setup() {
+       enewgroup redis 75 || die "problem adding 'redis' group"
+       enewuser redis 75 -1 ${REDIS_DATAPATH} redis || die "problem adding 'redis' user"
+       # set tcmalloc-variable for the build as specified in
+       # https://github.com/antirez/redis/blob/2.2/README. If build system gets
+       # better integrated into autotools, replace with append-flags and
+       # append-ldflags in src_configure()
+       if use tcmalloc ; then
+               export EXTRA_EMAKE="${EXTRA_EMAKE} USE_TCMALLOC=yes"
+       else
+               export EXTRA_EMAKE="${EXTRA_EMAKE} JEMALLOC_SHARED=yes"
+       fi
+}
+
+src_prepare() {
+       epatch "${FILESDIR}/${P}-shared.patch" || die
+       if use !tcmalloc ; then
+               sed -i -e "s/je_/j/" src/zmalloc.c || die
+       fi
+       # now we will rewrite present Makefiles
+       local makefiles=""
+       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-2.2 configure.ac
+       sed -i  -e "s:AC_CONFIG_FILES(\[Makefile\]):AC_CONFIG_FILES([${makefiles}]):g" \
+               configure.ac || die "Sed failed for configure.ac"
+       eautoconf
+}
+
+src_install() {
+       # configuration file rewrites
+       insinto /etc/
+       sed -r \
+               -e "/^pidfile\>/s,/var.*,${REDIS_PIDFILE}," \
+               -e '/^daemonize\>/s,no,yes,' \
+               -e '/^# bind/s,^# ,,' \
+               -e '/^# maxmemory\>/s,^# ,,' \
+               -e '/^maxmemory\>/s,<bytes>,67108864,' \
+               -e "/^dbfilename\>/s,dump.rdb,${REDIS_DATAPATH}/dump.rdb," \
+               -e "/^dir\>/s, .*, ${REDIS_DATAPATH}/," \
+               -e '/^loglevel\>/s:debug:notice:' \
+               -e "/^logfile\>/s:stdout:${REDIS_LOGFILE}:" \
+               <redis.conf \
+               >redis.conf.gentoo
+       newins redis.conf.gentoo redis.conf
+       use prefix || fowners redis:redis /etc/redis.conf
+       fperms 0644 /etc/redis.conf
+
+       newconfd "${FILESDIR}/redis.confd" redis
+       newinitd "${FILESDIR}/redis.initd" redis
+
+       dodoc 00-RELEASENOTES BUGS CONTRIBUTING README TODO
+
+       dobin src/redis-cli || die "redis-cli could not be found"
+       dosbin src/redis-benchmark src/redis-server src/redis-check-aof src/redis-check-dump \
+       || die "some redis executables could not be found"
+       fperms 0750 /usr/sbin/redis-benchmark
+
+       if use prefix; then
+               diropts -m0750
+       else
+               diropts -m0750 -o redis -g redis
+       fi
+       keepdir ${REDIS_DATAPATH} ${REDIS_LOGPATH} ${REDIS_PIDDIR}
+}