databases/kuzu: add port: Embeddable, scalable, extremely fast graph database

Kuzu is an embedded graph database built for query speed and scalability.
It is optimized for handling complex analytical workloads on very large
databases and provides a set of retrieval features, such as a full text
search and vector indices.

WWW: https://kuzudb.com/

PR:		285388
Reported by:	mahlon@martini.nu (new maintainer)
Reviewed by:	Pat Maddox <pat@patmaddox.com>, linimon
This commit is contained in:
Mahlon
2025-06-10 18:09:52 +09:00
committed by Hiroki Tagato
parent 246d7c3de4
commit 64e0030050
8 changed files with 78 additions and 0 deletions
+1
View File
@@ -112,6 +112,7 @@
SUBDIR += kdb
SUBDIR += kexi
SUBDIR += keydb
SUBDIR += kuzu
SUBDIR += kyotocabinet
SUBDIR += kyototycoon
SUBDIR += ldb25
+26
View File
@@ -0,0 +1,26 @@
PORTNAME= kuzu
DISTVERSIONPREFIX= v
DISTVERSION= 0.10.0
CATEGORIES= databases
MAINTAINER= mahlon@martini.nu
COMMENT= Embeddable, scalable, extremely fast graph database
WWW= https://kuzudb.com/
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
USES= cmake ninja:build python:3.9+,build
USE_LDCONFIG= yes
USE_GITHUB= yes
GH_ACCOUNT= kuzudb
PLIST_SUB= VERSION=${DISTVERSION}
post-install:
${MV} ${STAGEDIR}${PREFIX}/lib/libkuzu.so ${STAGEDIR}${PREFIX}/lib/libkuzu.so.${DISTVERSION}
${RLN} libkuzu.so.${DISTVERSION} ${STAGEDIR}${PREFIX}/lib/libkuzu.so
${RLN} libkuzu.so.${DISTVERSION} ${STAGEDIR}${PREFIX}/lib/libkuzu.so.0
.include <bsd.port.mk>
+3
View File
@@ -0,0 +1,3 @@
TIMESTAMP = 1746742558
SHA256 (kuzudb-kuzu-v0.10.0_GH0.tar.gz) = df185b2688ccbfebfddf11520532caf2965300fd91c0c2b9d096da59c925228f
SIZE (kuzudb-kuzu-v0.10.0_GH0.tar.gz) = 153460387
@@ -0,0 +1,14 @@
--- src/CMakeLists.txt.orig 2025-03-13 22:28:45 UTC
+++ src/CMakeLists.txt
@@ -30,11 +30,6 @@ endif()
if(NOT WIN32)
set(KUZU_LIBRARIES dl ${KUZU_LIBRARIES})
endif()
-# Seems to be needed for clang on linux only
-# for compiling std::atomic<T>::compare_exchange_weak
-if ((NOT APPLE AND CMAKE_CXX_COMPILER_ID STREQUAL "Clang") AND NOT __WASM__ AND NOT __SINGLE_THREADED__)
- set(KUZU_LIBRARIES atomic ${KUZU_LIBRARIES})
-endif()
if (ENABLE_BACKTRACES)
set(KUZU_LIBRARIES ${KUZU_LIBRARIES} cpptrace::cpptrace)
endif()
@@ -0,0 +1,13 @@
--- src/storage/buffer_manager/vm_region.cpp.orig 2025-02-24 14:26:02 UTC
+++ src/storage/buffer_manager/vm_region.cpp
@@ -14,6 +14,10 @@
#include "common/exception/buffer_manager.h"
+#ifndef MAP_NORESERVE
+#define MAP_NORESERVE 0
+#endif
+
using namespace kuzu::common;
namespace kuzu {
@@ -0,0 +1,10 @@
--- third_party/roaring_bitmap/roaring.c.orig 2025-03-13 23:38:46 UTC
+++ third_party/roaring_bitmap/roaring.c
@@ -55,6 +55,7 @@
*/
#include "roaring.h"
+#include <sys/endian.h>
/* used for http://dmalloc.com/ Dmalloc - Debug Malloc Library */
#ifdef DMALLOC
+4
View File
@@ -0,0 +1,4 @@
Kuzu is an embedded graph database built for query speed and scalability.
It is optimized for handling complex analytical workloads on very large
databases and provides a set of retrieval features, such as a full text
search and vector indices.
+7
View File
@@ -0,0 +1,7 @@
bin/kuzu
include/kuzu.h
include/kuzu.hpp
lib/libkuzu.a
lib/libkuzu.so
lib/libkuzu.so.0
lib/libkuzu.so.%%VERSION%%