aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo-Chuan Hsieh <sunpoet@FreeBSD.org>2021-11-01 13:23:12 +0000
committerPo-Chuan Hsieh <sunpoet@FreeBSD.org>2021-11-01 13:41:20 +0000
commit75356a5906be3cc49cff6c2fcceb39987ea66525 (patch)
treed7d7329c0db52541fccb72b1c02b53ef647cc22f
parentd902c881754a647f4780899b439302af952bb102 (diff)
downloadports-75356a5906be3cc49cff6c2fcceb39987ea66525.tar.gz
ports-75356a5906be3cc49cff6c2fcceb39987ea66525.zip
databases/caterva: Add caterva 0.5.0
Caterva is a C library for handling multi-dimensional, compressed datasets in an easy and convenient manner. It implements a thin metalayer on top of C-Blosc2 for specifying not only the dimensionality of a dataset, but also the dimensionality of the chunks inside the dataset. In addition, Caterva adds machinery for retrieving arbitrary multi-dimensional slices (aka hyper-slices) out of the multi-dimensional containers in the most efficient way. Hence, Caterva brings the convenience of multi-dimensional and compressed containers to your application very easily. WWW: https://github.com/Blosc/caterva
-rw-r--r--databases/Makefile1
-rw-r--r--databases/caterva/Makefile30
-rw-r--r--databases/caterva/distinfo3
-rw-r--r--databases/caterva/files/patch-CMakeLists.txt11
-rw-r--r--databases/caterva/pkg-descr10
-rw-r--r--databases/caterva/pkg-plist5
6 files changed, 60 insertions, 0 deletions
diff --git a/databases/Makefile b/databases/Makefile
index 6742ead6ffe1..0910e48865f4 100644
--- a/databases/Makefile
+++ b/databases/Makefile
@@ -32,6 +32,7 @@
SUBDIR += cassandra3
SUBDIR += cassandra4
SUBDIR += casstcl
+ SUBDIR += caterva
SUBDIR += cayley
SUBDIR += cdb
SUBDIR += cego
diff --git a/databases/caterva/Makefile b/databases/caterva/Makefile
new file mode 100644
index 000000000000..e39ed038aae4
--- /dev/null
+++ b/databases/caterva/Makefile
@@ -0,0 +1,30 @@
+# Created by: Po-Chuan Hsieh <sunpoet@FreeBSD.org>
+
+PORTNAME= caterva
+PORTVERSION= 0.5.0
+DISTVERSIONPREFIX= v
+CATEGORIES= databases
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Multidimensional data container on top of Blosc2
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+LIB_DEPENDS= libblosc2.so:archivers/c-blosc2
+
+USES= cmake pkgconfig
+
+CMAKE_OFF= CATERVA_ENABLE_ASAN CATERVA_ENABLE_COVERAGE
+CMAKE_ON= CATERVA_BUILD_BENCH CATERVA_BUILD_EXAMPLES CATERVA_BUILD_TESTS CATERVA_PREFER_BLOSC2_EXTERNAL CATERVA_SHARED_LIB CATERVA_STATIC_LIB
+USE_LDCONFIG= yes
+
+PLIST_SUB= PORTVERSION=${PORTVERSION}
+
+GH_ACCOUNT= Blosc
+USE_GITHUB= yes
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|%%PORTVERSION%%|${PORTVERSION}|' ${WRKSRC}/CMakeLists.txt
+
+.include <bsd.port.mk>
diff --git a/databases/caterva/distinfo b/databases/caterva/distinfo
new file mode 100644
index 000000000000..4edd82c4cfc2
--- /dev/null
+++ b/databases/caterva/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1635730867
+SHA256 (Blosc-caterva-v0.5.0_GH0.tar.gz) = 733449b36e5e3ba8d87e254daae8bde9a3122510da75416743cbfed3003d9d38
+SIZE (Blosc-caterva-v0.5.0_GH0.tar.gz) = 528006
diff --git a/databases/caterva/files/patch-CMakeLists.txt b/databases/caterva/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..a496642fab91
--- /dev/null
+++ b/databases/caterva/files/patch-CMakeLists.txt
@@ -0,0 +1,11 @@
+--- CMakeLists.txt.orig 2021-07-13 10:42:01 UTC
++++ CMakeLists.txt
+@@ -104,6 +104,8 @@ if(CATERVA_SHARED_LIB)
+ target_link_libraries(caterva_shared ${LIBS})
+ endif()
+ set_target_properties(caterva_shared PROPERTIES OUTPUT_NAME caterva)
++ set_target_properties(caterva_shared PROPERTIES SOVERSION %%PORTVERSION%%)
++ set_target_properties(caterva_shared PROPERTIES VERSION 0)
+ install(TARGETS caterva_shared DESTINATION lib)
+ endif()
+
diff --git a/databases/caterva/pkg-descr b/databases/caterva/pkg-descr
new file mode 100644
index 000000000000..0b4914b37e63
--- /dev/null
+++ b/databases/caterva/pkg-descr
@@ -0,0 +1,10 @@
+Caterva is a C library for handling multi-dimensional, compressed datasets in an
+easy and convenient manner. It implements a thin metalayer on top of C-Blosc2
+for specifying not only the dimensionality of a dataset, but also the
+dimensionality of the chunks inside the dataset. In addition, Caterva adds
+machinery for retrieving arbitrary multi-dimensional slices (aka hyper-slices)
+out of the multi-dimensional containers in the most efficient way. Hence,
+Caterva brings the convenience of multi-dimensional and compressed containers to
+your application very easily.
+
+WWW: https://github.com/Blosc/caterva
diff --git a/databases/caterva/pkg-plist b/databases/caterva/pkg-plist
new file mode 100644
index 000000000000..de3b181a6f4a
--- /dev/null
+++ b/databases/caterva/pkg-plist
@@ -0,0 +1,5 @@
+include/caterva.h
+lib/libcaterva.a
+lib/libcaterva.so
+lib/libcaterva.so.0
+lib/libcaterva.so.%%PORTVERSION%%