Author: ludo
Date: Sat Oct 30 21:44:29 2010
New Revision: 24548
URL: https://svn.nixos.org/websvn/nix/?rev=24548&sc=1

Log:
Add Tokyo Cabinet, a key-value database that performs better.

Added:
   nixpkgs/trunk/pkgs/development/libraries/tokyo-cabinet/
   nixpkgs/trunk/pkgs/development/libraries/tokyo-cabinet/default.nix
Modified:
   nixpkgs/trunk/pkgs/top-level/all-packages.nix

Added: nixpkgs/trunk/pkgs/development/libraries/tokyo-cabinet/default.nix
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ nixpkgs/trunk/pkgs/development/libraries/tokyo-cabinet/default.nix  Sat Oct 
30 21:44:29 2010        (r24548)
@@ -0,0 +1,45 @@
+{ fetchurl, stdenv, zlib, bzip2 }:
+
+stdenv.mkDerivation rec {
+  name = "tokyocabinet-1.4.46";
+
+  src = fetchurl {
+    url = "http://www.1978th.net/tokyocabinet/${name}.tar.gz";;
+    sha256 = "18rkv6kq43cqabc9mvfw534nsv6v8bc2i2r2bmax0yxnbhqa7ahf";
+  };
+
+  buildInputs = [ zlib bzip2 ];
+
+  doCheck = true;
+
+  postInstall =
+    '' sed -i "$out/lib/pkgconfig/tokyocabinet.pc" \
+           -e 's|-lz|-L${zlib}/lib -lz|g;
+               s|-lbz2|-L${bzip2}/lib -lbz2|g'
+    '';
+
+  meta = {
+    description = "Tokyo Cabinet: a modern implementation of DBM";
+
+    longDescription =
+      '' Tokyo 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.  There is neither concept of data tables nor
+         data types.  Records are organized in hash table, B+ tree, or
+         fixed-length array.
+
+         Tokyo Cabinet is developed as the successor of GDBM and QDBM on the
+         following purposes.  They are achieved and Tokyo Cabinet replaces
+         conventional DBM products: improves space efficiency, improves time
+         efficiency, improves parallelism, improves usability, improves
+         robustness, supports 64-bit architecture.
+      '';
+
+    license = "LGPLv2+";
+
+    maintainers = [ stdenv.lib.maintainers.ludo ];
+    platforms = stdenv.lib.platforms.unix;
+  };
+}

Modified: nixpkgs/trunk/pkgs/top-level/all-packages.nix
==============================================================================
--- nixpkgs/trunk/pkgs/top-level/all-packages.nix       Sat Oct 30 21:44:22 
2010        (r24547)
+++ nixpkgs/trunk/pkgs/top-level/all-packages.nix       Sat Oct 30 21:44:29 
2010        (r24548)
@@ -3869,6 +3869,8 @@
 
   tnt = callPackage ../development/libraries/tnt { };
 
+  tokyocabinet = callPackage ../development/libraries/tokyo-cabinet { };
+
   unicap = callPackage ../development/libraries/unicap {};
 
   unixODBC = callPackage ../development/libraries/unixODBC { };
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits

Reply via email to