git: 56754f5095c9 - main - devel/stringzilla: New port: SIMD-accelerated string search/sort/hashes/fingerprints/edit distances
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 30 Oct 2024 06:29:29 UTC
The branch main has been updated by yuri:
URL: https://cgit.FreeBSD.org/ports/commit/?id=56754f5095c9d0c26c0b5cd4dd1327a09a0b3f61
commit 56754f5095c9d0c26c0b5cd4dd1327a09a0b3f61
Author: Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2024-10-30 05:49:35 +0000
Commit: Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2024-10-30 06:29:19 +0000
devel/stringzilla: New port: SIMD-accelerated string search/sort/hashes/fingerprints/edit distances
---
devel/Makefile | 1 +
devel/stringzilla/Makefile | 37 +++++++++++++++++++++++++++++++++++++
devel/stringzilla/distinfo | 3 +++
devel/stringzilla/pkg-descr | 7 +++++++
devel/stringzilla/pkg-plist | 10 ++++++++++
5 files changed, 58 insertions(+)
diff --git a/devel/Makefile b/devel/Makefile
index 0b24f1ce483f..0d3703eed2fc 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -8121,6 +8121,7 @@
SUBDIR += str
SUBDIR += string_theory
SUBDIR += stringencoders
+ SUBDIR += stringzilla
SUBDIR += stuffbin
SUBDIR += stxxl
SUBDIR += stylua
diff --git a/devel/stringzilla/Makefile b/devel/stringzilla/Makefile
new file mode 100644
index 000000000000..b1d32fd0574c
--- /dev/null
+++ b/devel/stringzilla/Makefile
@@ -0,0 +1,37 @@
+PORTNAME= stringzilla
+DISTVERSIONPREFIX= v
+DISTVERSION= 3.10.6
+CATEGORIES= devel python
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= SIMD-accelerated string search/sort/hashes/fingerprints/edit distances
+WWW= https://ashvardanian.com/posts/stringzilla/ \
+ https://github.com/ashvardanian/stringzilla
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+ONLY_FOR_ARCHS= aarch64 amd64 i386
+
+USES= cmake
+USE_LDCONFIG= yes
+
+USE_GITHUB= yes
+GH_ACCOUNT= ashvardanian
+GH_PROJECT= StringZilla
+
+CMAKE_ON= STRINGZILLA_INSTALL
+CMAKE_ARGS= -DSTRINGZILLA_INCLUDE_INSTALL_DIR=include
+
+post-install: # https://github.com/ashvardanian/StringZilla/issues/188
+ ${INSTALL_LIB} ${BUILD_WRKSRC}/libstringzilla_shared.so.3.10.6 ${STAGEDIR}${PREFIX}/lib
+ ${INSTALL_LIB} ${BUILD_WRKSRC}/libstringzillite.so.3.10.6 ${STAGEDIR}${PREFIX}/lib
+ @cd ${STAGEDIR}${PREFIX}/lib && \
+ ${LN} -s libstringzilla_shared.so.3.10.6 libstringzilla_shared.so.1 && \
+ ${LN} -s libstringzilla_shared.so.1 libstringzilla_shared.so
+ @cd ${STAGEDIR}${PREFIX}/lib && \
+ ${LN} -s libstringzillite.so.3.10.6 libstringzillite.so.1 && \
+ ${LN} -s libstringzillite.so.1 libstringzillite.so
+
+.include <bsd.port.mk>
diff --git a/devel/stringzilla/distinfo b/devel/stringzilla/distinfo
new file mode 100644
index 000000000000..d8871fc38102
--- /dev/null
+++ b/devel/stringzilla/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1730266009
+SHA256 (ashvardanian-StringZilla-v3.10.6_GH0.tar.gz) = 041d122d4defc79b0d007ceb136ac3c72c9eb8797b28487b446e9710bd836e78
+SIZE (ashvardanian-StringZilla-v3.10.6_GH0.tar.gz) = 255125
diff --git a/devel/stringzilla/pkg-descr b/devel/stringzilla/pkg-descr
new file mode 100644
index 000000000000..ec4703ce1e73
--- /dev/null
+++ b/devel/stringzilla/pkg-descr
@@ -0,0 +1,7 @@
+StringZilla is the GodZilla of string libraries, using SIMD and SWAR to
+accelerate string operations on modern CPUs. It is up to 10x faster than the
+default and even other SIMD-accelerated string libraries in C, C++, Python,
+and other languages, while covering broad functionality. It accelerates exact
+and fuzzy string matching, edit distance computations, sorting,
+lazily-evaluated ranges to avoid memory allocations, and even random-string
+generators.
diff --git a/devel/stringzilla/pkg-plist b/devel/stringzilla/pkg-plist
new file mode 100644
index 000000000000..0a0a09fe14ef
--- /dev/null
+++ b/devel/stringzilla/pkg-plist
@@ -0,0 +1,10 @@
+include/stringzilla/drafts.h
+include/stringzilla/module.modulemap
+include/stringzilla/stringzilla.h
+include/stringzilla/stringzilla.hpp
+lib/libstringzilla_shared.so
+lib/libstringzilla_shared.so.1
+lib/libstringzilla_shared.so.3.10.6
+lib/libstringzillite.so
+lib/libstringzillite.so.1
+lib/libstringzillite.so.3.10.6