Subject: gnu: Add libbson.

From: Corentin Bocquillon <[email-masked]>
Date: Fri, 21 Apr 2017 14:05:30 +0200

>From 73b6d5e67cc9bee67d88f50c9319dcaa6f81f60b Mon Sep 17 00:00:00 2001
From: Corentin Bocquillon <[email-masked]>
Date: Fri, 21 Apr 2017 13:11:24 +0200
Subject: [PATCH] gnu: Add libbson.

* gnu/packages/serialization.scm (libbson): New variables.
---
 gnu/packages/serialization.scm | 25 ++++++++++++++++++++++++-
 1 file changed, 24 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm
index 9e073b7a9..1a5313377 100644
--- a/gnu/packages/serialization.scm
+++ b/gnu/packages/serialization.scm
@@ -35,7 +35,8 @@
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages python))
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages perl))
 
 (define-public cereal
   (package
@@ -287,3 +288,25 @@ it a convenient format to store user input files.")
      "Cap'n Proto is a very fast data interchange format and capability-based
 RPC system.  Think JSON, except binary.  Or think Protocol Buffers, except faster.")
     (license license:expat)))
+
+(define-public libbson
+  (package
+    (name "libbson")
+    (version "1.6.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/mongodb/libbson/releases/download/"
+                    version "/libbson-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1fj4554msq0rrz14snbj908dzqj46gh7jg9w9j0akn2b7q911m5a"))))
+    (build-system gnu-build-system)
+    (native-inputs `(("perl" ,perl)))
+    (home-page "http://mongoc.org/libbson/current/index.html")
+    (synopsis "C BSON library")
+    (description
+     "Libbson can create and parse BSON documents.
+It can also convert JSON documents to BSON and the opposite.
+BSON stands for Binary JSON, it is comparable to protobuf.")
+    (license license:asl2.0)))
-- 
2.12.2