summaryrefslogtreecommitdiff
path: root/gnu/packages/serialization.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/serialization.scm')
-rw-r--r--gnu/packages/serialization.scm33
1 files changed, 23 insertions, 10 deletions
diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm
index 3c5a9e7c9d..b01886c775 100644
--- a/gnu/packages/serialization.scm
+++ b/gnu/packages/serialization.scm
@@ -42,6 +42,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages databases)
#:use-module (gnu packages documentation)
+ #:use-module (gnu packages gcc)
#:use-module (gnu packages lua)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@@ -393,17 +394,29 @@ it is comparable to protobuf.")
(define-public nlohmann-json-cpp
(package
(name "nlohmann-json-cpp")
- (version "2.1.1")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "https://github.com/nlohmann/json/"
- "archive/v" version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0lrh6cjd643c7kmvmwafbgq7dqj3b778483gjhjbvp6rc6z5xf2r"))))
+ (version "3.7.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nlohmann/json.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0v7xih4zjixxxfvkfbs7a8j9qcvpwlsv4vrkbyns3hc7b44nb8ap"))))
(build-system cmake-build-system)
+ (native-inputs
+ ;; Integer overflow tests like those from
+ ;; <https://github.com/nlohmann/json/issues/1447> fail when building with
+ ;; gcc@5. Thus, build with a newer GCC.
+ `(("gcc" ,gcc-9)))
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (add-before 'build 'unset-path-variables
+ (lambda _
+ (unsetenv "C_INCLUDE_PATH")
+ (unsetenv "CPLUS_INCLUDE_PATH")
+ #t)))))
(home-page "https://nlohmann.github.io/json/")
(synopsis "JSON library for C++")
(description