aboutsummaryrefslogtreecommitdiff
path: root/databases/kyotocabinet
diff options
context:
space:
mode:
authorAkinori MUSHA <knu@FreeBSD.org>2010-04-23 10:42:27 +0000
committerAkinori MUSHA <knu@FreeBSD.org>2010-04-23 10:42:27 +0000
commit5a6852eeb99def2d2b9abb5303c36358fe940d41 (patch)
treee3f4bd68e41c54c37fd58c6abdc1c62c8a37d70a /databases/kyotocabinet
parenta6198a9ca59a6670c6dddf2e4fcfe2e50c5cbc61 (diff)
downloadports-5a6852eeb99def2d2b9abb5303c36358fe940d41.tar.gz
ports-5a6852eeb99def2d2b9abb5303c36358fe940d41.zip
Add kyotocabinet, a straightforward implementation of DBM.
Notes
Notes: svn path=/head/; revision=253078
Diffstat (limited to 'databases/kyotocabinet')
-rw-r--r--databases/kyotocabinet/Makefile50
-rw-r--r--databases/kyotocabinet/distinfo3
-rw-r--r--databases/kyotocabinet/files/patch-Makefile.in28
-rw-r--r--databases/kyotocabinet/files/patch-kccommon.h17
-rw-r--r--databases/kyotocabinet/pkg-descr23
-rw-r--r--databases/kyotocabinet/pkg-plist32
6 files changed, 153 insertions, 0 deletions
diff --git a/databases/kyotocabinet/Makefile b/databases/kyotocabinet/Makefile
new file mode 100644
index 000000000000..abec69a48464
--- /dev/null
+++ b/databases/kyotocabinet/Makefile
@@ -0,0 +1,50 @@
+# New ports collection makefile for: kyotocabinet
+# Date created: 22 April 2010
+# Whom: Akinori MUSHA aka knu <knu@idaemons.org>
+#
+# $FreeBSD$
+#
+
+PORTNAME= kyotocabinet
+PORTVERSION= 0.9.14
+CATEGORIES= databases
+MASTER_SITES= http://1978th.net/kyotocabinet/
+
+MAINTAINER= knu@FreeBSD.org
+COMMENT= A straightforward implementation of DBM
+
+MAKE_JOBS_SAFE= yes
+
+GNU_CONFIGURE= yes
+USE_GMAKE= yes
+USE_LDCONFIG= yes
+MAKE_ARGS= PCDIR="${PREFIX}/libdata/pkgconfig"
+
+.if !defined(NOPORTDOCS)
+PORTDOCS= *
+.endif
+
+MAN1= kccachetest.1 \
+ kchashmgr.1 \
+ kchashtest.1 \
+ kclangctest.1 \
+ kcpolymgr.1 \
+ kcpolytest.1 \
+ kcprototest.1 \
+ kctreemgr.1 \
+ kctreetest.1 \
+ kcutilcodec.1 \
+ kcutiltest.1
+
+check: build
+ cd ${WRKSRC}; ${MAKE} check
+
+post-install:
+ ${MKDIR} ${DATADIR}
+ ${INSTALL_DATA} ${WRKSRC}/kyotocabinet.idl ${DATADIR}/
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${DOCSDIR}
+ cd ${WRKSRC} && ${COPYTREE_SHARE} "COPYING ChangeLog THANKS doc" ${DOCSDIR}/
+.endif
+
+.include <bsd.port.mk>
diff --git a/databases/kyotocabinet/distinfo b/databases/kyotocabinet/distinfo
new file mode 100644
index 000000000000..3784cd6060be
--- /dev/null
+++ b/databases/kyotocabinet/distinfo
@@ -0,0 +1,3 @@
+MD5 (kyotocabinet-0.9.14.tar.gz) = e3ce3b8bcde8d28575b39ade3df5979e
+SHA256 (kyotocabinet-0.9.14.tar.gz) = 09bf431a55499d4b1f36e675d1f7123a3a15c4238d172d20bdde3a7212226b3a
+SIZE (kyotocabinet-0.9.14.tar.gz) = 626170
diff --git a/databases/kyotocabinet/files/patch-Makefile.in b/databases/kyotocabinet/files/patch-Makefile.in
new file mode 100644
index 000000000000..c6e7c6909ea7
--- /dev/null
+++ b/databases/kyotocabinet/files/patch-Makefile.in
@@ -0,0 +1,28 @@
+--- Makefile.in.orig 2010-04-15 16:06:41.000000000 +0900
++++ Makefile.in 2010-04-23 19:34:19.169814890 +0900
+@@ -117,13 +117,13 @@
+ cp -Rf $(LIBRARYFILES) $(DESTDIR)$(LIBDIR)
+ mkdir -p $(DESTDIR)$(BINDIR)
+ cp -Rf $(COMMANDFILES) $(DESTDIR)$(BINDIR)
+- mkdir -p $(DESTDIR)$(DATADIR)
+- cp -Rf $(DOCUMENTFILES) $(DESTDIR)$(DATADIR)
++# mkdir -p $(DESTDIR)$(DATADIR)
++# cp -Rf $(DOCUMENTFILES) $(DESTDIR)$(DATADIR)
+ mkdir -p $(DESTDIR)$(MAN1DIR)
+ cd man && cp -Rf $(MAN1FILES) $(DESTDIR)$(MAN1DIR)
+ mkdir -p $(DESTDIR)$(PCDIR)
+ cp -Rf $(PCFILES) $(DESTDIR)$(PCDIR)
+- [ "$$UID" == 0 ] && ldconfig || true
++# [ "$$UID" = 0 ] && ldconfig || true
+ @printf '\n'
+ @printf '#================================================================\n'
+ @printf '# Thanks for using Kyoto Cabinet.\n'
+@@ -142,7 +142,7 @@
+ cd $(DESTDIR)$(MAN1DIR) && rm -f $(MAN1FILES)
+ rm -rf $(DESTDIR)$(DATADIR)
+ cd $(DESTDIR)$(PCDIR) && rm -f $(PCFILES)
+- [ "$$UID" == 0 ] && ldconfig || true
++# [ "$$UID" = 0 ] && ldconfig || true
+
+
+ dist :
diff --git a/databases/kyotocabinet/files/patch-kccommon.h b/databases/kyotocabinet/files/patch-kccommon.h
new file mode 100644
index 000000000000..f9a570fc63d6
--- /dev/null
+++ b/databases/kyotocabinet/files/patch-kccommon.h
@@ -0,0 +1,17 @@
+--- kccommon.h.orig 2010-04-21 10:21:05.000000000 +0900
++++ kccommon.h 2010-04-23 01:29:11.788967538 +0900
+@@ -84,9 +84,14 @@
+
+ #else
+
++inline double log2(double num) {
++ return log(num) / M_LN2;
++}
++
+ namespace std {
+ using ::log2;
+ using ::modfl;
++using ::snprintf;
+ }
+
+ #endif
diff --git a/databases/kyotocabinet/pkg-descr b/databases/kyotocabinet/pkg-descr
new file mode 100644
index 000000000000..f4c6aa1a097c
--- /dev/null
+++ b/databases/kyotocabinet/pkg-descr
@@ -0,0 +1,23 @@
+Kyoto Cabinet is a library of routines for managing a database. The
+database is a simple data file containing records, each is a pair of a
+key and a value. Every key and value is serial bytes with variable
+length. Both binary data and character string can be used as a key and
+a value. Each key must be unique within a database. There is neither
+concept of data tables nor data types. Records are organized in hash
+table or B+ tree.
+
+Kyoto Cabinet runs very fast. For example, elapsed time to store one
+million records is 0.9 seconds for hash database, and 1.1 seconds for
+B+ tree database. Moreover, the size of database of Kyoto Cabinet is
+very small. For example, overhead for a record is 16 bytes for hash
+database, and 4 bytes for B+ tree database. Furthermore, scalability
+of Kyoto Cabinet is great. The database size can be up to 8EB (9.22e18
+bytes).
+
+Kyoto Cabinet is written in the C++ language, and provided as API of
+C++, C, and Ruby. Kyoto Cabinet is available on platforms which have
+API conforming to C++03 with the TR1 library extensions. Kyoto Cabinet
+is a free software licensed under the GNU General Public License.
+
+Author: Mikio Hirabayashi <hirarin@gmail.com>
+WWW: http://1978th.net/kyotocabinet/
diff --git a/databases/kyotocabinet/pkg-plist b/databases/kyotocabinet/pkg-plist
new file mode 100644
index 000000000000..72558c17881b
--- /dev/null
+++ b/databases/kyotocabinet/pkg-plist
@@ -0,0 +1,32 @@
+bin/kccachetest
+bin/kchashmgr
+bin/kchashtest
+bin/kclangctest
+bin/kcpolymgr
+bin/kcpolytest
+bin/kcprototest
+bin/kctreemgr
+bin/kctreetest
+bin/kcutilcodec
+bin/kcutiltest
+include/kccachedb.h
+include/kccommon.h
+include/kccompare.h
+include/kccompress.h
+include/kcdb.h
+include/kcfile.h
+include/kchashdb.h
+include/kclangc.h
+include/kcmap.h
+include/kcpolydb.h
+include/kcprotodb.h
+include/kcthread.h
+include/kctreedb.h
+include/kcutil.h
+lib/libkyotocabinet.a
+lib/libkyotocabinet.so
+lib/libkyotocabinet.so.2
+lib/libkyotocabinet.so.2.17.0
+libdata/pkgconfig/kyotocabinet.pc
+%%DATADIR%%/kyotocabinet.idl
+@dirrm %%DATADIR%%