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.
This commit is contained in:
Ricardo Wurmus 2023-04-26 22:09:06 +02:00
parent abda97b645
commit 00cf71df80
No known key found for this signature in database
GPG key ID: 197A5888235FACAC
3 changed files with 34 additions and 99 deletions

View file

@ -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 \

View file

@ -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);

View file

@ -1428,39 +1428,41 @@ (define-public krona-tools
(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