summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2021-04-20 16:39:34 +0200
committerRicardo Wurmus <rekado@elephly.net>2021-04-20 16:40:10 +0200
commit0e21cf7d0620caf3fe9bed4f6ec1d5239a599a6a (patch)
treef8572d6f4a1a95f755d45a626d8f33941085b7a3 /gnu/packages
parent2be32ecc7479bc714395e13380462c7a0928881a (diff)
downloadguix-0e21cf7d0620caf3fe9bed4f6ec1d5239a599a6a.tar.gz
gnu: Add avro-cpp-1.9.
* gnu/packages/serialization.scm (avro-cpp-1.9): New variable.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/serialization.scm35
1 files changed, 35 insertions, 0 deletions
diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm
index 1a5b445fd6..4ef74c2a7f 100644
--- a/gnu/packages/serialization.scm
+++ b/gnu/packages/serialization.scm
@@ -52,6 +52,41 @@
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages perl))
 
+(define-public avro-cpp-1.9
+  (package
+    (name "avro-cpp")
+    (version "1.9.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://archive.apache.org/dist/avro/avro-" version
+                    "/avro-src-" version ".tar.gz"))
+              (sha256
+               (base32 "0i3fpm7r72yw397qc8yw9ybzk2mxjkv0yk5hnn00ylc1wbd0np73"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'chdir
+           (lambda _ (chdir "lang/c++"))))))
+    (inputs
+     `(("boost" ,boost)
+       ("snappy" ,snappy)))
+    (home-page "https://avro.apache.org/")
+    (synopsis "Data serialization system")
+    (description "Apache Avro is a data serialization system.  Avro provides:
+@enumerate
+@item Rich data structures;
+@item a compact, fast, binary data format;
+@item a container file, to store persistent data;
+@item remote procedure call (RPC); and
+@item simple integration with dynamic languages.
+@end enumerate
+
+Code generation is not required to read or write data files nor to use or
+implement RPC protocols.")
+    (license license:asl2.0)))
+
 (define-public cereal
   (package
     (name "cereal")