summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2023-04-26 22:09:06 +0200
committerRicardo Wurmus <rekado@elephly.net>2023-04-26 22:09:06 +0200
commit00cf71df8046b809beefd3d9fd290777eb2e512e (patch)
tree274e7a179d0704cf7d8e25b7bbc4e33e5424a1ec
parentabda97b6458bc5d7a5cf2c5916f97377598e8075 (diff)
gnu: rapidjson: Update to 1.1.0-1.949c771.
* gnu/packages/patches/rapidjson-gcc-compat.patch: Remove file. * gnu/local.mk (dist_patch_DATA): Remove it. * gnu/packages/web.scm (rapidjson): Update to 1.1.0-1.949c771. [source]: Remove obsolete patch.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/rapidjson-gcc-compat.patch66
-rw-r--r--gnu/packages/web.scm66
3 files changed, 34 insertions, 99 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 6ba3c2a422..c0a5c721fc 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1827,7 +1827,6 @@ dist_patch_DATA = \
%D%/packages/patches/ragel-char-signedness.patch \
%D%/packages/patches/randomjungle-disable-static-build.patch \
%D%/packages/patches/range-v3-build-with-gcc10.patch \
- %D%/packages/patches/rapidjson-gcc-compat.patch \
%D%/packages/patches/raptor2-heap-overflow.patch \
%D%/packages/patches/ratpoints-sturm_and_rp_private.patch \
%D%/packages/patches/ratpoison-shell.patch \
diff --git a/gnu/packages/patches/rapidjson-gcc-compat.patch b/gnu/packages/patches/rapidjson-gcc-compat.patch
deleted file mode 100644
index 8bfdb075d9..0000000000
--- a/gnu/packages/patches/rapidjson-gcc-compat.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-Disable -Werror=implicit-fallthrough on GCC7 and later. Taken from upstream:
-https://github.com/Tencent/rapidjson/commit/fe19b7b6016d446722621fb407738209d1a911e8
-https://github.com/Tencent/rapidjson/commit/cba45fe9de6923b858edb0780e257b7257aa4f7b
-
-diff --git a/include/rapidjson/internal/regex.h b/include/rapidjson/internal/regex.h
-index 422a5240..d4039716 100644
---- a/include/rapidjson/internal/regex.h
-+++ b/include/rapidjson/internal/regex.h
-@@ -29,6 +29,9 @@ RAPIDJSON_DIAG_OFF(implicit-fallthrough)
- #ifdef __GNUC__
- RAPIDJSON_DIAG_PUSH
- RAPIDJSON_DIAG_OFF(effc++)
-+#if __GNUC__ >= 7
-+RAPIDJSON_DIAG_OFF(implicit-fallthrough)
-+#endif
- #endif
-
- #ifdef _MSC_VER
-
-Cast destination pointers to avoid a GCC error about memmove writing to
-a different type.
-
-Adapted from this upstream commit:
-https://github.com/Tencent/rapidjson/commit/fa5963a2f5b231ee2babff771f169ccca22870ed
-
-diff --git a/include/rapidjson/document.h b/include/rapidjson/document.h
---- a/include/rapidjson/document.h
-+++ b/include/rapidjson/document.h
-@@ -1425,7 +1425,7 @@ public:
- MemberIterator pos = MemberBegin() + (first - MemberBegin());
- for (MemberIterator itr = pos; itr != last; ++itr)
- itr->~Member();
-- std::memmove(&*pos, &*last, static_cast<size_t>(MemberEnd() - last) * sizeof(Member));
-+ std::memmove(static_cast<void*>(&*pos), &*last, static_cast<size_t>(MemberEnd() - last) * sizeof(Member));
- data_.o.size -= static_cast<SizeType>(last - first);
- return pos;
- }
-@@ -1628,8 +1628,8 @@ public:
- RAPIDJSON_ASSERT(last <= End());
- ValueIterator pos = Begin() + (first - Begin());
- for (ValueIterator itr = pos; itr != last; ++itr)
-- itr->~GenericValue();
-- std::memmove(pos, last, static_cast<size_t>(End() - last) * sizeof(GenericValue));
-+ itr->~GenericValue();
-+ std::memmove(static_cast<void*>(pos), last, static_cast<size_t>(End() - last) * sizeof(GenericValue));
- data_.a.size -= static_cast<SizeType>(last - first);
- return pos;
- }
-@@ -1936,7 +1936,7 @@ private:
- if (count) {
- GenericValue* e = static_cast<GenericValue*>(allocator.Malloc(count * sizeof(GenericValue)));
- SetElementsPointer(e);
-- std::memcpy(e, values, count * sizeof(GenericValue));
-+ std::memcpy(static_cast<void*>(e), values, count * sizeof(GenericValue));
- }
- else
- SetElementsPointer(0);
-@@ -1949,7 +1949,7 @@ private:
- if (count) {
- Member* m = static_cast<Member*>(allocator.Malloc(count * sizeof(Member)));
- SetMembersPointer(m);
-- std::memcpy(m, members, count * sizeof(Member));
-+ std::memcpy(static_cast<void*>(m), members, count * sizeof(Member));
- }
- else
- SetMembersPointer(0);
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 7027fbad08..7cd02921cd 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -1428,39 +1428,41 @@ current version of any major web browser.")
(license license:bsd-3)))
(define-public rapidjson
- (package
- (name "rapidjson")
- (version "1.1.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/Tencent/rapidjson")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1jixgb8w97l9gdh3inihz7avz7i770gy2j2irvvlyrq3wi41f5ab"))
- (patches (search-patches "rapidjson-gcc-compat.patch"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Remove code using the problematic JSON license (see
- ;; <https://www.gnu.org/licenses/license-list.html#JSON>).
- (delete-file-recursively "bin/jsonchecker")))))
- (build-system cmake-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-march=native
- (lambda _
- (substitute* "CMakeLists.txt"
- (("-m[^-]*=native") "")))))))
- (home-page "https://github.com/Tencent/rapidjson")
- (synopsis "JSON parser/generator for C++ with both SAX/DOM style API")
- (description
- "RapidJSON is a fast JSON parser/generator for C++ with both SAX/DOM
+ ;; Last release was in 2016, but this commit is from 2023.
+ (let ((commit "949c771b03de448bdedea80c44a4a5f65284bfeb")
+ (revision "1"))
+ (package
+ (name "rapidjson")
+ (version (git-version "1.1.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Tencent/rapidjson")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1xlj0cj88ls3avwmlhd2gf5757fjpfbqx6qf49z1mzi381gcl72m"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Remove code using the problematic JSON license (see
+ ;; <https://www.gnu.org/licenses/license-list.html#JSON>).
+ (delete-file-recursively "bin/jsonchecker")))))
+ (build-system cmake-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-march=native
+ (lambda _
+ (substitute* "CMakeLists.txt"
+ (("-m[^-]*=native") "")))))))
+ (home-page "https://github.com/Tencent/rapidjson")
+ (synopsis "JSON parser/generator for C++ with both SAX/DOM style API")
+ (description
+ "RapidJSON is a fast JSON parser/generator for C++ with both SAX/DOM
style API.")
- (license license:expat)))
+ (license license:expat))))
(define-public yajl
(package