From 015736185536aab40b78fa48f063385aa9e0d927 Mon Sep 17 00:00:00 2001 From: Alexey Dokuchaev Date: Thu, 6 Dec 2012 06:37:59 +0000 Subject: [PATCH] Add eblob, append-only low-level I/O library, which saves data in blob files. Submitted by: Gvozdikov Veniamin Feature safe: yes --- devel/Makefile | 1 + devel/eblob/Makefile | 75 +++++++++++++++++++++++++++++++++++++++++++ devel/eblob/distinfo | 2 ++ devel/eblob/pkg-descr | 6 ++++ devel/eblob/pkg-plist | 18 +++++++++++ 5 files changed, 102 insertions(+) create mode 100644 devel/eblob/Makefile create mode 100644 devel/eblob/distinfo create mode 100644 devel/eblob/pkg-descr create mode 100644 devel/eblob/pkg-plist diff --git a/devel/Makefile b/devel/Makefile index c9f40849f693..bdf4cda7a7c3 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -363,6 +363,7 @@ SUBDIR += e4graph SUBDIR += e_dbus SUBDIR += easygit + SUBDIR += eblob SUBDIR += ebnf2yacc SUBDIR += ecb SUBDIR += eclipse-eclemma diff --git a/devel/eblob/Makefile b/devel/eblob/Makefile new file mode 100644 index 000000000000..1d7104be153b --- /dev/null +++ b/devel/eblob/Makefile @@ -0,0 +1,75 @@ +# Created by: Gvozdikov Veniamin +# $FreeBSD$ + +PORTNAME= eblob +PORTVERSION= 0.17.5 +CATEGORIES= devel + +MAINTAINER= g.veniamin@googlemail.com +COMMENT= Append-only low-level I/O library + +LICENSE= GPLv2 + +LIB_DEPENDS= boost_iostreams:${PORTSDIR}/devel/boost-libs + +USE_GITHUB= yes +GH_ACCOUNT= zloidemon +GH_COMMIT= 9c2c347 +GH_TAGNAME= master + +USE_CMAKE= yes +USE_LDCONFIG= yes + +OPTIONS_DEFINE= ASSERT PYTHON SNAPPY EXAMPLES TESTS +OPTIONS_DEFAULT=PYTHON SNAPPY EXAMPLES TESTS +TESTS_DESC= Build tests + +.include + +.if ${PORT_OPTIONS:MASSERT} +CMAKE_ARGS+= -DWITH_ASSERTS=ON +.else +CMAKE_ARGS+= -DWITH_ASSERTS=OFF +.endif + +.if ${PORT_OPTIONS:MPYTHON} +LIB_DEPENDS+= boost_python:${PORTSDIR}/devel/boost-python-libs +USE_PYTHON= yes +CMAKE_ARGS+= -DWITH_PYTHON=ON +INSTALLS_EGGINFO= yes +PYDISTUTILS_PKGVERSION= 0.0.1 +PLIST_SUB+= PYTHON="" +.else +CMAKE_ARGS+= -DWITH_PYTHON=OFF +PLIST_SUB+= PYTHON="@comment " +.endif + +.if ${PORT_OPTIONS:MSNAPPY} +LIB_DEPENDS+= snappy:${PORTSDIR}/archivers/snappy +CMAKE_ARGS+= -DWITH_SNAPPY=ON +.else +CMAKE_ARGS+= -DWITH_SNAPPY=OFF +.endif + +.if ${PORT_OPTIONS:MEXAMPLES} +CMAKE_ARGS+= -DWITH_EXAMPLES=ON +PLIST_SUB+= EXAMPLES="" +.else +CMAKE_ARGS+= -DWITH_EXAMPLES=OFF +PLIST_SUB+= EXAMPLES="@comment " +.endif + +.if ${PORT_OPTIONS:MTESTS} +CMAKE_ARGS+= -DWITH_TESTS=ON +.else +CMAKE_ARGS+= -DWITH_TESTS=OFF +.endif + +post-patch: +.if ! ${PORT_OPTIONS:MPYTHON} + @${REINPLACE_CMD} -e 's, python),),' ${WRKSRC}/CMakeLists.txt +.endif + @${REINPLACE_CMD} -e 's, -fstack-protector-all,,' \ + ${WRKSRC}/CMakeLists.txt + +.include diff --git a/devel/eblob/distinfo b/devel/eblob/distinfo new file mode 100644 index 000000000000..01d38f760a14 --- /dev/null +++ b/devel/eblob/distinfo @@ -0,0 +1,2 @@ +SHA256 (eblob-0.17.5.tar.gz) = 5ec72ed3871068602b4bed6022af3d727a75b282cfd71a531577ffc0e22ffa64 +SIZE (eblob-0.17.5.tar.gz) = 93564 diff --git a/devel/eblob/pkg-descr b/devel/eblob/pkg-descr new file mode 100644 index 000000000000..4a922b8358ee --- /dev/null +++ b/devel/eblob/pkg-descr @@ -0,0 +1,6 @@ +Eblob is a low-level local append-only (configurable) storage system. It +combines fast read/write performance with configuration simplicity and rich +feature set. Its main goal was to provide bullet-proof low-level backend +for Elliptics distributed storage (this is default backend now). + +WWW: http://reverbrain.com/eblob/ diff --git a/devel/eblob/pkg-plist b/devel/eblob/pkg-plist new file mode 100644 index 000000000000..9c73015d3684 --- /dev/null +++ b/devel/eblob/pkg-plist @@ -0,0 +1,18 @@ +%%EXAMPLES%%bin/eblob_index_info +%%EXAMPLES%%bin/eblob_merge +%%EXAMPLES%%bin/eblob_open +%%EXAMPLES%%bin/eblob_regex_iter +include/eblob/blob.h +include/eblob/eblob.hpp +lib/libeblob.a +lib/libeblob.so +lib/libeblob.so.0.17 +lib/libeblob.so.0.17.5 +lib/libeblob_cpp.a +lib/libeblob_cpp.so +lib/libeblob_cpp.so.0.17 +lib/libeblob_cpp.so.0.17.5 +%%PYTHON%%lib/libeblob_python.so +%%PYTHON%%%%PYTHON_SITELIBDIR%%/eblob.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/eblob.pyc +@dirrm include/eblob