Index: devel/Makefile =================================================================== --- devel/Makefile +++ devel/Makefile @@ -1348,6 +1348,7 @@ SUBDIR += msp430mcu SUBDIR += mspdebug SUBDIR += msrc0 + SUBDIR += mtbl SUBDIR += nana SUBDIR += nant SUBDIR += nasm Index: devel/mtbl/Makefile =================================================================== --- /dev/null +++ devel/mtbl/Makefile @@ -0,0 +1,33 @@ +# $FreeBSD$ + +PORTNAME= mtbl +PORTVERSION= 0.7.0 +CATEGORIES= devel +MASTER_SITES= FARSIGHT LOCAL/truckman/farsight + +MAINTAINER= truckman@FreeBSD.org +COMMENT= Immutable sorted string table library + +LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/COPYRIGHT + +LIB_DEPENDS= libsnappy.so:${PORTSDIR}/archivers/snappy + +GNU_CONFIGURE= yes +USE_LDCONFIG= yes +USES= gmake libtool pathfix pkgconfig +INSTALL_TARGET= install-strip + +.include + +# The version of binutils in base does not understand the crc32 +# instructions used in this code on amd64. Use gcc from ports +# to get a more capable version of binutils. +.if (${OPSYS} == FreeBSD && ${OSVERSION} < 900000 && ${ARCH} == amd64) +USE_GCC= yes +.endif + +CPPFLAGS+= -I${LOCALBASE}/include +LDFLAGS+= -L${LOCALBASE}/lib + +.include Index: devel/mtbl/distinfo =================================================================== --- /dev/null +++ devel/mtbl/distinfo @@ -0,0 +1,2 @@ +SHA256 (mtbl-0.7.0.tar.gz) = d235695a1393bbe2a5b08b42b0e9577edfcb7b38971ece7f6a0e07eb84e91906 +SIZE (mtbl-0.7.0.tar.gz) = 398848 Index: devel/mtbl/pkg-descr =================================================================== --- /dev/null +++ devel/mtbl/pkg-descr @@ -0,0 +1,16 @@ +mtbl is a C library implementation of the Sorted String Table +(SSTable) data structure, based on the SSTable implementation in +the open source Google LevelDB library . +An SSTable is a file containing an immutable mapping of keys to +values. Keys are stored in sorted order, with an index at the end +of the file allowing keys to be located quickly. + +mtbl is not a database library. It does not provide an updateable +key-value data store, but rather exposes primitives for creating, +searching and merging SSTable files. Unlike databases which use the +SSTable data structure internally as part of their data store, +management of SSTable files -- creation, merging, deletion, combining +of search results from multiple SSTables -- is left to the discretion +of the mtbl library user. + +WWW: https://github.com/farsightsec/mtbl Index: devel/mtbl/pkg-plist =================================================================== --- /dev/null +++ devel/mtbl/pkg-plist @@ -0,0 +1,23 @@ +bin/mtbl_dump +bin/mtbl_info +bin/mtbl_merge +include/mtbl.h +lib/libmtbl.a +lib/libmtbl.so +lib/libmtbl.so.0 +lib/libmtbl.so.0.0.0 +libdata/pkgconfig/libmtbl.pc +man/man1/mtbl_dump.1.gz +man/man1/mtbl_info.1.gz +man/man1/mtbl_merge.1.gz +man/man3/mtbl_crc32c.3.gz +man/man3/mtbl_fileset.3.gz +man/man3/mtbl_fixed.3.gz +man/man3/mtbl_iter.3.gz +man/man3/mtbl_merger.3.gz +man/man3/mtbl_reader.3.gz +man/man3/mtbl_sorter.3.gz +man/man3/mtbl_source.3.gz +man/man3/mtbl_varint.3.gz +man/man3/mtbl_writer.3.gz +man/man7/mtbl.7.gz