From ff97c862958095c9df0b41eb0574e7529ffab123 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 12 Oct 2019 16:49:41 +0200 Subject: gnu: json-modern-cxx: Update to 3.7.0. * gnu/packages/cpp.scm (json-modern-cxx): Update to 3.7.0. [source](snippet): Adjust for new doctest requirement. [native-inputs]: Add DOCTEST. [inputs]: Remove CATCH-FRAMEWORK2. --- gnu/packages/cpp.scm | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) (limited to 'gnu/packages/cpp.scm') diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 1c98e381ab..6aac60d284 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -206,7 +206,7 @@ as ordering relation.") (define-public json-modern-cxx (package (name "json-modern-cxx") - (version "3.1.2") + (version "3.7.0") (home-page "https://github.com/nlohmann/json") (source (origin @@ -215,30 +215,34 @@ as ordering relation.") (commit (string-append "v" version)))) (sha256 (base32 - "1mpr781fb2dfbyscrr7nil75lkxsazg4wkm749168lcf2ksrrbfi")) + "0v7xih4zjixxxfvkfbs7a8j9qcvpwlsv4vrkbyns3hc7b44nb8ap")) (file-name (git-file-name name version)) (modules '((guix build utils))) (snippet '(begin - (delete-file-recursively "./third_party") - (delete-file-recursively "./test/thirdparty") - (delete-file-recursively "./benchmarks/thirdparty") - ;; Splits catch and fifo_map + ;; Delete bundled software. Preserve doctest_compatibility.h, which + ;; is a wrapper library added by this package. + (install-file "./test/thirdparty/doctest/doctest_compatibility.h" "/tmp") + (for-each delete-file-recursively + '("./third_party" "./test/thirdparty" "./benchmarks/thirdparty")) + (install-file "/tmp/doctest_compatibility.h" "./test/thirdparty/doctest") + + ;; Adjust for the unbundled fifo_map and doctest. + (substitute* "./test/thirdparty/doctest/doctest_compatibility.h" + (("#include \"doctest\\.h\"") + "#include ")) (with-directory-excursion "test/src" - (let ((files (find-files "." ".*\\.cpp"))) - (substitute* files - (("#include ?\"(catch.hpp)\"" all catch-hpp) - (string-append "#include "))) + (let ((files (find-files "." "\\.cpp$"))) (substitute* files (("#include ?\"(fifo_map.hpp)\"" all fifo-map-hpp) (string-append "#include "))))) #t)))) (native-inputs - `(("amalgamate" ,amalgamate))) + `(("amalgamate" ,amalgamate) + ("doctest" ,doctest))) (inputs - `(("catch2" ,catch-framework2) - ("fifo-map" ,fifo-map))) + `(("fifo-map" ,fifo-map))) (build-system cmake-build-system) (synopsis "JSON parser and printer library for C++") (description "JSON for Modern C++ is a C++ JSON library that provides -- cgit v1.2.3