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.scm133
1 files changed, 64 insertions, 69 deletions
diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm
index 89d362c52f..5b2f023736 100644
--- a/gnu/packages/serialization.scm
+++ b/gnu/packages/serialization.scm
@@ -207,42 +207,6 @@ such as compact binary encodings, XML, or JSON.")
(license:non-copyleft
"file://include/cereal/external/LICENSE")))))
-;; Some packages fail with the latest version. Remove this variable
-;; when unused.
-(define-public cereal-1.3.0
- (package
- (inherit cereal)
- (version "1.3.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/USCiLab/cereal")
- (commit (string-append "v" version))))
- (file-name (git-file-name "cereal" version))
- (sha256
- (base32
- "0hc8wh9dwpc1w1zf5lfss4vg5hmgpblqxbrpp1rggicpx9ar831p"))
- (snippet
- '(delete-file "unittests/doctest.h"))))
- (arguments
- (substitute-keyword-arguments (package-arguments cereal)
- ((#:configure-flags flags #~'())
- #~'("-DSKIP_PORTABILITY_TEST=ON" "-DWITH_WERROR=OFF"))
- ((#:phases phases #~%standard-phases)
- #~(modify-phases #$phases
- (add-after 'unpack 'update-doctest
- (lambda* (#:key inputs #:allow-other-keys)
- (install-file (search-input-file inputs "unittests/doctest.h")
- "unittests/")))
- (add-before 'configure 'skip-sandbox
- (lambda _
- (substitute* "CMakeLists.txt"
- (("add_subdirectory\\(sandbox\\)") ""))))))))
- (native-inputs
- (list doxygen gcc-10
- (package-source cereal)))))
-
(define-public msgpack-c
(package
(name "msgpack-c")
@@ -473,8 +437,17 @@ that implements both the msgpack and msgpack-rpc specifications.")
"1c9i93kr7wvpr01i4wixi9mf991nd3k2adg5fy0vxwwlvvc7dgdw"))))
(build-system qt-build-system)
(arguments
- (list #:qtbase qtbase
- #:test-target "tests"))
+ (list #:modules '((guix build cmake-build-system)
+ (guix build qt-build-system)
+ ((guix build gnu-build-system) #:prefix gnu:)
+ (guix build utils))
+ #:qtbase qtbase
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:rest args)
+ (apply (assoc-ref gnu:%standard-phases 'check)
+ #:test-target "tests" args))))))
(home-page "https://github.com/iamantony/qtcsv")
(synopsis "Library for reading and writing CSV files in Qt")
(description
@@ -597,32 +570,39 @@ character limit for implicit keys.")
(license license:expat)))
(define-public yaml-cpp
- (package
- (name "yaml-cpp")
- (version "0.8.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/jbeder/yaml-cpp")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "0whdn6pqa56532ml20h89p6rchcrrazdrvi5fz6zpmrkl15yiki7"))))
- (build-system cmake-build-system)
- (arguments
- '(#:configure-flags '("-DYAML_BUILD_SHARED_LIBS=ON")))
- (native-inputs
- (list python))
- (home-page "https://github.com/jbeder/yaml-cpp")
- (synopsis "YAML parser and emitter in C++")
- (description "YAML parser and emitter in C++ matching the YAML 1.2 spec.")
- (license license:bsd-3)))
+ (let ((commit "2f86d13775d119edbb69af52e5f566fd65c6953b")
+ (revision "0"))
+ (package
+ (name "yaml-cpp")
+ (version (git-version "0.8.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jbeder/yaml-cpp")
+ (commit commit)))
+ (modules '((guix build utils)))
+ (snippet #~(delete-file-recursively "test/googletest-1.13.0"))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "12ncx2hlsl5vp9yfja6myxalg85j0kgxwbargn37yiwi8rn17m8s"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(#:configure-flags '("-DYAML_BUILD_SHARED_LIBS=ON"
+ "-DYAML_CPP_BUILD_TESTS=ON"
+ "-DYAML_USE_SYSTEM_GTEST=ON")))
+ (native-inputs
+ (list python))
+ (inputs (list googletest))
+ (home-page "https://github.com/jbeder/yaml-cpp")
+ (synopsis "YAML parser and emitter in C++")
+ (description "YAML parser and emitter in C++ matching the YAML 1.2 spec.")
+ (license license:bsd-3))))
(define-public jsoncpp
(package
(name "jsoncpp")
- (version "1.9.5")
+ (version "1.9.6")
(home-page "https://github.com/open-source-parsers/jsoncpp")
(source (origin
(method git-fetch)
@@ -630,7 +610,7 @@ character limit for implicit keys.")
(file-name (git-file-name name version))
(sha256
(base32
- "06zss7z56ykzwcsfdxarmini63hkf8i8gx70q3yw9wb0bw7wj9rv"))))
+ "070xg4i52z3yv5b9bw5k95qskw0daivh0njka87mzj0d3zf1qsyy"))))
(build-system meson-build-system)
(synopsis "C++ library for interacting with JSON")
(description "JsonCpp is a C++ library that allows manipulating JSON values,
@@ -639,6 +619,20 @@ preserve existing comment in unserialization/serialization steps, making
it a convenient format to store user input files.")
(license license:expat)))
+(define-public jsoncpp/pinned
+ (hidden-package
+ ;; Version that rarely changes, depended on by CMake.
+ (package/inherit jsoncpp
+ (version "1.9.6")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference (url (package-home-page jsoncpp)) (commit version)))
+ (file-name (git-file-name (package-name jsoncpp) version))
+ (sha256
+ (base32
+ "070xg4i52z3yv5b9bw5k95qskw0daivh0njka87mzj0d3zf1qsyy")))))))
+
;; Tensorflow does not build with jsoncpp 1.8.x. It is built with commit
;; 4356d9bba191e1e16ce7a92073cbf3e63564e973, which lies between version 1.7.2
;; and 1.7.3.
@@ -657,7 +651,8 @@ it a convenient format to store user input files.")
"1180ln8blrb0mwzpcf78k49hlki6di65q77rsvglf83kfcyh4d7z"))))
(build-system cmake-build-system)
(arguments
- (list #:configure-flags
+ (list #:tests? #f
+ #:configure-flags
#~'("-DBUILD_SHARED_LIBS:BOOL=YES"
#$@(if (%current-target-system)
#~("-DJSONCPP_WITH_POST_BUILD_UNITTEST=OFF")
@@ -845,9 +840,6 @@ includes the following features:
(list python-pytest))
(propagated-inputs
(list python-ruamel.yaml.clib))
- (arguments
- `(;; TODO: Tests require packaging "ruamel.std.pathlib".
- #:tests? #f))
(home-page "https://sourceforge.net/projects/ruamel-yaml/")
(synopsis "YAML 1.2 parser/emitter")
(description
@@ -868,12 +860,15 @@ style and key ordering are kept, so you can diff the source.")
(uri (pypi-uri "ruamel.yaml" version))
(sha256
(base32
- "0hm9yg785f46bkrgqknd6fdvmkby9dpzjnm0b63qf0i748acaj5v"))))))
+ "0hm9yg785f46bkrgqknd6fdvmkby9dpzjnm0b63qf0i748acaj5v"))))
+ (arguments
+ `(;; TODO: Tests require packaging "ruamel.std.pathlib".
+ #:tests? #f))))
(define-public python-ruamel.yaml.clib
(package
(name "python-ruamel.yaml.clib")
- (version "0.2.9")
+ (version "0.2.12")
(source
(origin
;; pypi release code has cythonized code without corresponding source.
@@ -884,7 +879,7 @@ style and key ordering are kept, so you can diff the source.")
(file-name (hg-file-name name version))
(sha256
(base32
- "100nyixfikwivsxiwkq2frgbfkqvvl112wkn0sgc57xq0p1s0dv8"))
+ "12ixp46706pl911f6i4wmik8x0j9vnxy2cqx65ixbdl9cnvqva2l"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -896,7 +891,7 @@ style and key ordering are kept, so you can diff the source.")
#:phases
(modify-phases %standard-phases
(delete 'sanity-check) ; Depends on python-ruamel.yaml
- (add-after 'unpack 'cythonize-code
+ (add-after 'ensure-no-cythonized-files 'cythonize-code
(lambda _
(invoke "cython" "_ruamel_yaml.pyx"))))))
(native-inputs