From 1811c2412ea85d997fdb2c844dfab73100ef7272 Mon Sep 17 00:00:00 2001 From: Jrabbit Date: Wed, 29 Jun 2011 02:54:00 +0000 Subject: [PATCH] redis unstable, oddly stable. --- dev-db/redis/patches/redis-2.9.0-git.patch | 105 +++++++++++++++++++++ dev-db/redis/redis-2.2.11.bep | 1 + dev-db/redis/redis-2.9.0-git.bep | 20 ++++ 3 files changed, 126 insertions(+) create mode 100644 dev-db/redis/patches/redis-2.9.0-git.patch create mode 100644 dev-db/redis/redis-2.9.0-git.bep diff --git a/dev-db/redis/patches/redis-2.9.0-git.patch b/dev-db/redis/patches/redis-2.9.0-git.patch new file mode 100644 index 000000000..2bd822552 --- /dev/null +++ b/dev-db/redis/patches/redis-2.9.0-git.patch @@ -0,0 +1,105 @@ +diff --git a/deps/hiredis/Makefile b/deps/hiredis/Makefile +index 2a84b9b..1225539 100644 +--- a/deps/hiredis/Makefile ++++ b/deps/hiredis/Makefile +@@ -26,6 +26,15 @@ ifeq ($(uname_S),Darwin) + STLIBNAME?=libhiredis.a + STLIB_MAKE_CMD?=libtool -static -o ${STLIBNAME} - ${OBJ} + else ++ifeq ($(uname_S),Haiku) ++ CFLAGS?=-std=c99 -pedantic $(OPTIMIZATION) -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings $(ARCH) $(PROF) ++ CCLINK?=-lroot -lnetwork ++ LDFLAGS?=-L. -Wl,-rpath,. ++ DYLIBNAME?=libhiredis.so ++ DYLIB_MAKE_CMD?=gcc -shared -Wl,-soname,${DYLIBNAME} -o ${DYLIBNAME} ${OBJ} ++ STLIBNAME?=libhiredis.a ++ STLIB_MAKE_CMD?=ar rcs ${STLIBNAME} ${OBJ} ++else + CFLAGS?=-std=c99 -pedantic $(OPTIMIZATION) -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings $(ARCH) $(PROF) + CCLINK?=-lm -pthread + LDFLAGS?=-L. -Wl,-rpath,. +@@ -35,6 +44,7 @@ else + STLIB_MAKE_CMD?=ar rcs ${STLIBNAME} ${OBJ} + endif + endif ++endif + + CCOPT= $(CFLAGS) $(CCLINK) + DEBUG?= -g -ggdb +diff --git a/src/Makefile b/src/Makefile +index 292255c..e6a6d87 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -15,12 +15,18 @@ endif + ifeq ($(uname_S),SunOS) + CFLAGS?=-std=c99 -pedantic $(OPTIMIZATION) -Wall -W -D__EXTENSIONS__ -D_XPG6 + CCLINK?=-ldl -lnsl -lsocket -lm -lpthread +- DEBUG?=-g -ggdb ++ DEBUG?=-g -ggdb ++else ++ifeq ($(uname_S),Haiku) ++ CFLAGS?=-std=c99 -pedantic $(OPTIMIZATION) -Wall -W $(ARCH) $(PROF) ++ CCLINK?=-lroot -lnetwork ++ DEBUG?=-g -ggdb + else + CFLAGS?=-std=c99 -pedantic $(OPTIMIZATION) -Wall -W $(ARCH) $(PROF) + CCLINK?=-lm -pthread + DEBUG?=-g -rdynamic -ggdb + endif ++endif + + ifeq ($(USE_TCMALLOC),yes) + ALLOD_DEPS= +diff --git a/src/aof.c b/src/aof.c +index dbd0468..7a5d21f 100644 +--- a/src/aof.c ++++ b/src/aof.c +@@ -25,7 +25,7 @@ void stopAppendOnly(void) { + int statloc; + + if (kill(server.bgrewritechildpid,SIGKILL) != -1) +- wait3(&statloc,0,NULL); ++ waitpid(&statloc,0,NULL); + /* reset the buffer accumulating changes while the child saves */ + sdsfree(server.bgrewritebuf); + server.bgrewritebuf = sdsempty(); +diff --git a/src/redis.c b/src/redis.c +index 1a1f84f..4ecc873 100644 +--- a/src/redis.c ++++ b/src/redis.c +@@ -646,7 +646,7 @@ int serverCron(struct aeEventLoop *eventLoop, long long id, void *clientData) { + int statloc; + pid_t pid; + +- if ((pid = wait3(&statloc,WNOHANG,NULL)) != 0) { ++ if ((pid = waitpid(&statloc,WNOHANG,NULL)) != 0) { + int exitcode = WEXITSTATUS(statloc); + int bysignal = 0; + +diff --git a/src/sha1.c b/src/sha1.c +index 26a5565..e90812e 100644 +--- a/src/sha1.c ++++ b/src/sha1.c +@@ -27,6 +27,9 @@ A million repetitions of "a" + #if defined(__sun) + #include "solarisfixes.h" + #endif ++#ifdef __HAIKU__ ++#include ++#endif + #include "sha1.h" + #include "config.h" + +diff --git a/src/util.c b/src/util.c +index f5a23af..2a6d18d 100644 +--- a/src/util.c ++++ b/src/util.c +@@ -317,7 +317,7 @@ int d2string(char *buf, size_t len, double value) { + * integer printing function that is much faster. */ + double min = -4503599627370495; /* (2^52)-1 */ + double max = 4503599627370496; /* -(2^52) */ +- if (val > min && val < max && value == ((double)((long long)value))) ++ if (value > min && value < max && value == ((double)((long long)value))) + len = ll2string(buf,len,(long long)value); + else + #endif diff --git a/dev-db/redis/redis-2.2.11.bep b/dev-db/redis/redis-2.2.11.bep index 09ff408a3..86f637606 100644 --- a/dev-db/redis/redis-2.2.11.bep +++ b/dev-db/redis/redis-2.2.11.bep @@ -4,6 +4,7 @@ SRC_URI= "http://redis.googlecode.com/files/redis-2.2.11.tar.gz" REVISION = "1" DEPEND="" CHECKSUM_MD5= "5501c90ca02ae7ea93c34f067b3e0619" +STATUS_HAIKU="broken" MESSAGE="This port only builds with gcc4. Use 'setgcc gcc4' before building." BUILD { cd redis-2.2.11 diff --git a/dev-db/redis/redis-2.9.0-git.bep b/dev-db/redis/redis-2.9.0-git.bep new file mode 100644 index 000000000..7a52a16a6 --- /dev/null +++ b/dev-db/redis/redis-2.9.0-git.bep @@ -0,0 +1,20 @@ +HOMEPAGE= "http://redis.io/" +DESCRIPTION="Redis is an open source, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets." +SRC_URI= "git://github.com/antirez/redis.git" +REVISION = "1" +DEPEND="" +STATUS_HAIKU="stable" +# CHECKSUM_MD5= "5501c90ca02ae7ea93c34f067b3e0619" +MESSAGE="This port only builds with gcc4. Use 'setgcc gcc4' before building." +BUILD { + cd redis + make PREFIX=`finddir B_COMMON_DIRECTORY` +} + +INSTALL { + cd redis + make install PREFIX=`finddir B_COMMON_DIRECTORY` +} + +LICENSE="BSD (3-clause)" +COPYRIGHT="2006-2010 Salvatore Sanfilippo" \ No newline at end of file