aboutsummaryrefslogtreecommitdiff
path: root/textproc/redisearch16
diff options
context:
space:
mode:
authorSergey A. Osokin <osa@FreeBSD.org>2021-03-10 22:11:41 +0000
committerSergey A. Osokin <osa@FreeBSD.org>2021-03-10 22:11:41 +0000
commit5416d860076a71366d9465cd3572e435106acb80 (patch)
tree91ed747c9cabcb6bb47ef78aa76948189f484871 /textproc/redisearch16
parentf38fff2015ee38a9248ee02f32cb42f887bf6bae (diff)
downloadports-5416d860076a71366d9465cd3572e435106acb80.tar.gz
ports-5416d860076a71366d9465cd3572e435106acb80.zip
Repo-copy textproc/redisearch to textproc/redisearch16 and
update to the recent stable version v2.0.
Notes
Notes: svn path=/head/; revision=568050
Diffstat (limited to 'textproc/redisearch16')
-rw-r--r--textproc/redisearch16/Makefile32
-rw-r--r--textproc/redisearch16/distinfo3
-rw-r--r--textproc/redisearch16/files/patch-src_fork__gc.c21
-rw-r--r--textproc/redisearch16/files/patch-src_numeric__index.c11
-rw-r--r--textproc/redisearch16/files/patch-src_redis__index.c11
-rw-r--r--textproc/redisearch16/pkg-descr12
6 files changed, 90 insertions, 0 deletions
diff --git a/textproc/redisearch16/Makefile b/textproc/redisearch16/Makefile
new file mode 100644
index 000000000000..afea9daaf75d
--- /dev/null
+++ b/textproc/redisearch16/Makefile
@@ -0,0 +1,32 @@
+# Created by: Sergey A. Osokin <osa@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= redisearch16
+DISTVERSIONPREFIX= v
+DISTVERSION= 1.6.15
+DISTNAME= RediSearch-${DISTVERSION}
+CATEGORIES= textproc
+
+MAINTAINER= osa@FreeBSD.org
+COMMENT= Full-text search over Redis
+
+LICENSE= UNKNOWN
+LICENSE_NAME= Redis Source Available License Agreement
+LICENSE_FILE= ${WRKSRC}/LICENSE
+LICENSE_PERMS= dist-mirror pkg-mirror auto-accept
+
+USES= cmake compiler
+
+USE_GITHUB= yes
+GH_ACCOUNT= RediSearch
+GH_PROJECT= RediSearch
+
+CMAKE_ARGS= -DGIT_DESCRIBE_VERSION:STRING=${PKGVERSION}
+
+PLIST_FILES= lib/redisearch16.so
+
+do-install:
+ ${INSTALL_LIB} ${INSTALL_WRKSRC}/redisearch.so \
+ ${STAGEDIR}${PREFIX}/lib/redisearch16.so
+
+.include <bsd.port.mk>
diff --git a/textproc/redisearch16/distinfo b/textproc/redisearch16/distinfo
new file mode 100644
index 000000000000..7cfa2a77e00a
--- /dev/null
+++ b/textproc/redisearch16/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1614205727
+SHA256 (RediSearch-RediSearch-v1.6.15_GH0.tar.gz) = 8e81b895ceb3309644c199225df25332a2bb0023311275af934ad19c59c0adbc
+SIZE (RediSearch-RediSearch-v1.6.15_GH0.tar.gz) = 3671869
diff --git a/textproc/redisearch16/files/patch-src_fork__gc.c b/textproc/redisearch16/files/patch-src_fork__gc.c
new file mode 100644
index 000000000000..9b067f73f84d
--- /dev/null
+++ b/textproc/redisearch16/files/patch-src_fork__gc.c
@@ -0,0 +1,21 @@
+--- src/fork_gc.c.orig 2020-04-12 11:18:47 UTC
++++ src/fork_gc.c
+@@ -282,6 +282,7 @@ done:
+ }
+
+ static void sendHeaderString(ForkGC *gc, void *arg) {
++ struct iovec { void *iov_base; size_t iov_len; };
+ struct iovec *iov = arg;
+ FGC_sendBuffer(gc, iov->iov_base, iov->iov_len);
+ }
+@@ -298,7 +299,9 @@ static void FGC_childCollectTerms(ForkGC *gc, RedisSea
+ RedisModuleKey *idxKey = NULL;
+ InvertedIndex *idx = Redis_OpenInvertedIndexEx(sctx, term, strlen(term), 1, &idxKey);
+ if (idx) {
+- struct iovec iov = {.iov_base = (void *)term, termLen};
++ struct iovec { void *iov_base; size_t iov_len; } iov;
++ iov.iov_base = term;
++ iov.iov_len = termLen;
+ FGC_childRepairInvidx(gc, sctx, idx, sendHeaderString, &iov, NULL);
+ }
+ if (idxKey) {
diff --git a/textproc/redisearch16/files/patch-src_numeric__index.c b/textproc/redisearch16/files/patch-src_numeric__index.c
new file mode 100644
index 000000000000..4129442c1498
--- /dev/null
+++ b/textproc/redisearch16/files/patch-src_numeric__index.c
@@ -0,0 +1,11 @@
+--- src/numeric_index.c.orig 2020-02-29 20:43:50 UTC
++++ src/numeric_index.c
+@@ -474,7 +474,7 @@ int NumericIndexType_Register(RedisModuleCtx *ctx) {
+ .rdb_save = NumericIndexType_RdbSave,
+ .aof_rewrite = GenericAofRewrite_DisabledHandler,
+ .free = NumericIndexType_Free,
+- .mem_usage = NumericIndexType_MemUsage};
++ .mem_usage = (const void *)NumericIndexType_MemUsage};
+
+ NumericIndexType = RedisModule_CreateDataType(ctx, "numericdx", NUMERIC_INDEX_ENCVER, &tm);
+ if (NumericIndexType == NULL) {
diff --git a/textproc/redisearch16/files/patch-src_redis__index.c b/textproc/redisearch16/files/patch-src_redis__index.c
new file mode 100644
index 000000000000..36e1bc262208
--- /dev/null
+++ b/textproc/redisearch16/files/patch-src_redis__index.c
@@ -0,0 +1,11 @@
+--- src/redis_index.c.orig 2020-02-29 20:35:56 UTC
++++ src/redis_index.c
+@@ -108,7 +108,7 @@ int InvertedIndex_RegisterType(RedisModuleCtx *ctx) {
+ .rdb_load = InvertedIndex_RdbLoad,
+ .rdb_save = InvertedIndex_RdbSave,
+ .aof_rewrite = GenericAofRewrite_DisabledHandler,
+- .mem_usage = InvertedIndex_MemUsage,
++ .mem_usage = (const void *)InvertedIndex_MemUsage,
+ .free = InvertedIndex_Free};
+
+ InvertedIndexType = RedisModule_CreateDataType(ctx, "ft_invidx", INVERTED_INDEX_ENCVER, &tm);
diff --git a/textproc/redisearch16/pkg-descr b/textproc/redisearch16/pkg-descr
new file mode 100644
index 000000000000..ac2a0a714490
--- /dev/null
+++ b/textproc/redisearch16/pkg-descr
@@ -0,0 +1,12 @@
+RediSearch is a source available Full-Text and Secondary Index
+engine over Redis, developed by Redis Labs.
+
+Redisearch implements a search engine on top of Redis, but
+unlike other Redis search libraries, it does not use internal
+data structures like sorted sets.
+
+This also enables more advanced features, like exact phrase
+matching and numeric filtering for text queries, that are not
+possible or efficient with traditional Redis search approaches.
+
+WWW: https://oss.redislabs.com/redisearch/