summaryrefslogtreecommitdiff
path: root/gnu/packages/serialization.scm
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2021-06-19 17:38:47 +0200
committerMarius Bakke <marius@gnu.org>2021-06-19 17:38:47 +0200
commit6f9a80b331ae41d142a49fbeb94b90ee587b6155 (patch)
tree2da042a6ccf5368c73d6e3d54c2ee02a62d284e4 /gnu/packages/serialization.scm
parent6500c9a5b364616e38a7e03aa4516fc2d7cee876 (diff)
parentdece03e2b98fc1c2428c2448ce5792f813eb79bf (diff)
downloadguix-patches-6f9a80b331ae41d142a49fbeb94b90ee587b6155.tar
guix-patches-6f9a80b331ae41d142a49fbeb94b90ee587b6155.tar.gz
Merge branch 'master' into core-updates
Note: this merge actually changes the 'curl' and 'python-attrs' derivations, as part of solving caf4a7a2770ef4d05a6e18f40d602e51da749ddc and 12964df69a99de6190422c752fef65ef813f3b6b respectively. 4604d43c0e (gnu: gnutls@3.6.16: Fix cross-compilation.) was ignored because it cannot currently be tested. Conflicts: gnu/local.mk gnu/packages/aidc.scm gnu/packages/boost.scm gnu/packages/curl.scm gnu/packages/nettle.scm gnu/packages/networking.scm gnu/packages/python-xyz.scm gnu/packages/tls.scm
Diffstat (limited to 'gnu/packages/serialization.scm')
-rw-r--r--gnu/packages/serialization.scm53
1 files changed, 46 insertions, 7 deletions
diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm
index 8e4190e533..2f99407b94 100644
--- a/gnu/packages/serialization.scm
+++ b/gnu/packages/serialization.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2017, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2016, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
@@ -46,6 +46,7 @@
#:use-module (gnu packages databases)
#:use-module (gnu packages documentation)
#:use-module (gnu packages gcc)
+ #:use-module (gnu packages llvm)
#:use-module (gnu packages lua)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@@ -88,10 +89,47 @@ Code generation is not required to read or write data files nor to use or
implement RPC protocols.")
(license license:asl2.0)))
+(define-public avro-cpp-1.9-for-irods
+ (package
+ (inherit avro-cpp-1.9)
+ (properties `((hidden? . #true)))
+ (arguments
+ `(#:configure-flags
+ '("-DCMAKE_CXX_COMPILER=clang++"
+ "-DCMAKE_CXX_FLAGS=-stdlib=libc++"
+ "-DCMAKE_EXE_LINKER_FLAGS=-lc++abi -lz")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "lang/c++")))
+ (add-after 'set-paths 'adjust-CPLUS_INCLUDE_PATH
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((gcc (assoc-ref inputs "gcc")))
+ (setenv "CPLUS_INCLUDE_PATH"
+ (string-join
+ (cons* (string-append (assoc-ref inputs "libcxx+libcxxabi")
+ "/include/c++/v1")
+ ;; Hide GCC's C++ headers so that they do not interfere with
+ ;; the Clang headers.
+ (delete (string-append gcc "/include/c++")
+ (string-split (getenv "CPLUS_INCLUDE_PATH")
+ #\:)))
+ ":"))
+ (format #true
+ "environment variable `CPLUS_INCLUDE_PATH' changed to ~a~%"
+ (getenv "CPLUS_INCLUDE_PATH"))))))))
+ (inputs
+ `(("boost" ,boost-for-irods)
+ ("clang" ,clang-toolchain-6)
+ ("libcxx+libcxxabi" ,libcxx+libcxxabi-6)
+ ("libcxxabi" ,libcxxabi-6)
+ ("snappy" ,snappy-with-clang6)
+ ("zlib" ,zlib)))))
+
(define-public cereal
(package
(name "cereal")
- (version "1.2.1")
+ (version "1.3.0")
(source
(origin
(method git-fetch)
@@ -100,7 +138,8 @@ implement RPC protocols.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1vxkrsnxkiblzi1z61vfix167c184fy868sgwj2dxxgbgjcq2nrh"))))
+ (base32
+ "0hc8wh9dwpc1w1zf5lfss4vg5hmgpblqxbrpp1rggicpx9ar831p"))))
(build-system cmake-build-system)
(arguments
`(;; The only included tests are portability tests requiring
@@ -114,9 +153,10 @@ implement RPC protocols.")
(replace 'build
(lambda _
(substitute* "doc/doxygen.in"
+ (("@CMAKE_CURRENT_BINARY_DIR@") ".")
(("@CMAKE_CURRENT_SOURCE_DIR@") "."))
- (invoke "doxygen" "doc/doxygen.in")
- #t))
+ (with-directory-excursion "doc"
+ (invoke "doxygen" "doxygen.in"))))
;; There is no "install" target, so we have to provide our own
;; "install" phase.
(replace 'install
@@ -127,8 +167,7 @@ implement RPC protocols.")
(mkdir-p doc)
(mkdir-p include)
(copy-recursively "include/cereal" include)
- (copy-recursively "doc/html" doc))
- #t)))))
+ (copy-recursively "doc/html" doc)))))))
(native-inputs
`(("doxygen" ,doxygen)))
(home-page "https://uscilab.github.io/cereal/")