commit:     120da2933e42c8d0f2b03cb2e6600550a83a55d8
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 24 02:19:14 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Sep 24 02:19:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=120da293

dev-libs/rapidjson: fix compat w/ gcc 14

Revbump to fix installed headers as well as add EAPI 8.

While here, style tweaks to conform w/ skel.ebuild and sync live ebuild.

Closes: https://bugs.gentoo.org/914583
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/rapidjson-1.1.0-gcc14-const.patch        | 20 +++++++++++++++
 ...djson-9999.ebuild => rapidjson-1.1.0-r4.ebuild} | 30 +++++++++++-----------
 dev-libs/rapidjson/rapidjson-9999.ebuild           | 20 +++++++--------
 3 files changed, 45 insertions(+), 25 deletions(-)

diff --git a/dev-libs/rapidjson/files/rapidjson-1.1.0-gcc14-const.patch 
b/dev-libs/rapidjson/files/rapidjson-1.1.0-gcc14-const.patch
new file mode 100644
index 000000000000..0bc9e73b5683
--- /dev/null
+++ b/dev-libs/rapidjson/files/rapidjson-1.1.0-gcc14-const.patch
@@ -0,0 +1,20 @@
+https://bugs.gentoo.org/914583
+https://github.com/Tencent/rapidjson/commit/3b2441b87f99ab65f37b141a7b548ebadb607b96
+https://github.com/Tencent/rapidjson/issues/718
+
+From 3b2441b87f99ab65f37b141a7b548ebadb607b96 Mon Sep 17 00:00:00 2001
+From: Janusz Chorko <janusz.cho...@apdu.pl>
+Date: Fri, 26 Aug 2016 21:17:38 +0200
+Subject: [PATCH] Removed non-compiling assignment operator. Fixed #718
+
+--- a/include/rapidjson/document.h
++++ b/include/rapidjson/document.h
+@@ -316,8 +316,6 @@ struct GenericStringRef {
+ 
+     GenericStringRef(const GenericStringRef& rhs) : s(rhs.s), 
length(rhs.length) {}
+ 
+-    GenericStringRef& operator=(const GenericStringRef& rhs) { s = rhs.s; 
length = rhs.length; }
+-
+     //! implicit conversion to plain CharType pointer
+     operator const Ch *() const { return s; }
+ 

diff --git a/dev-libs/rapidjson/rapidjson-9999.ebuild 
b/dev-libs/rapidjson/rapidjson-1.1.0-r4.ebuild
similarity index 75%
copy from dev-libs/rapidjson/rapidjson-9999.ebuild
copy to dev-libs/rapidjson/rapidjson-1.1.0-r4.ebuild
index a003c49ec84e..e25d9ba5a30c 100644
--- a/dev-libs/rapidjson/rapidjson-9999.ebuild
+++ b/dev-libs/rapidjson/rapidjson-1.1.0-r4.ebuild
@@ -1,44 +1,45 @@
 # Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=7
+EAPI=8
 
 inherit cmake
 
 DESCRIPTION="A fast JSON parser/generator for C++ with both SAX/DOM style API"
 HOMEPAGE="https://rapidjson.org/";
 
-LICENSE="MIT"
-IUSE="doc examples test"
-RESTRICT="!test? ( test )"
-SLOT="0"
-
 if [[ ${PV} == *9999 ]] ; then
        EGIT_REPO_URI="https://github.com/miloyip/rapidjson.git";
        EGIT_SUBMODULES=()
        inherit git-r3
 else
        SRC_URI="https://github.com/miloyip/rapidjson/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
-       KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+       KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc 
~x86"
        S="${WORKDIR}/rapidjson-${PV}"
 fi
 
-DEPEND="
+LICENSE="MIT"
+SLOT="0"
+IUSE="doc examples test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
        doc? ( app-doc/doxygen )
-       test? ( dev-cpp/gtest )"
-RDEPEND=""
+       test? ( dev-cpp/gtest )
+"
 
 PATCHES=(
-       "${FILESDIR}/${PN}-1.1.0-system_gtest.patch"
-       "${FILESDIR}/${PN}-1.1.1-valgrind_optional.patch"
+       "${FILESDIR}/${P}-gcc-7.patch"
+       "${FILESDIR}/${P}-system_gtest.patch"
+       "${FILESDIR}/${P}-valgrind_optional.patch"
+       "${FILESDIR}/${P}-gcc14-const.patch"
 )
 
 src_prepare() {
        cmake_src_prepare
 
        sed -i -e 's| -march=native||g' CMakeLists.txt || die
-       sed -i -e 's| -mcpu=native||g' CMakeLists.txt || die
-       sed -i -e 's| -Werror||g' CMakeLists.txt || die
+       sed -i -e 's| -Werror||g' CMakeLists.txt example/CMakeLists.txt 
test/unittest/CMakeLists.txt || die
 }
 
 src_configure() {
@@ -46,7 +47,6 @@ src_configure() {
                -DDOC_INSTALL_DIR="${EPREFIX}/usr/share/doc/${PF}"
                -DLIB_INSTALL_DIR="${EPREFIX}/usr/$(get_libdir)"
                -DRAPIDJSON_BUILD_CXX11=OFF # latest gtest requires C++14 or 
later
-               -DRAPIDJSON_BUILD_CXX17=ON
                -DRAPIDJSON_BUILD_DOC=$(usex doc)
                -DRAPIDJSON_BUILD_EXAMPLES=$(usex examples)
                -DRAPIDJSON_BUILD_TESTS=$(usex test)

diff --git a/dev-libs/rapidjson/rapidjson-9999.ebuild 
b/dev-libs/rapidjson/rapidjson-9999.ebuild
index a003c49ec84e..a22be37589bc 100644
--- a/dev-libs/rapidjson/rapidjson-9999.ebuild
+++ b/dev-libs/rapidjson/rapidjson-9999.ebuild
@@ -1,32 +1,32 @@
 # Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=7
+EAPI=8
 
 inherit cmake
 
 DESCRIPTION="A fast JSON parser/generator for C++ with both SAX/DOM style API"
 HOMEPAGE="https://rapidjson.org/";
 
-LICENSE="MIT"
-IUSE="doc examples test"
-RESTRICT="!test? ( test )"
-SLOT="0"
-
 if [[ ${PV} == *9999 ]] ; then
        EGIT_REPO_URI="https://github.com/miloyip/rapidjson.git";
        EGIT_SUBMODULES=()
        inherit git-r3
 else
        SRC_URI="https://github.com/miloyip/rapidjson/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
-       KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+       KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc 
~x86"
        S="${WORKDIR}/rapidjson-${PV}"
 fi
 
-DEPEND="
+LICENSE="MIT"
+SLOT="0"
+IUSE="doc examples test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
        doc? ( app-doc/doxygen )
-       test? ( dev-cpp/gtest )"
-RDEPEND=""
+       test? ( dev-cpp/gtest )
+"
 
 PATCHES=(
        "${FILESDIR}/${PN}-1.1.0-system_gtest.patch"

Reply via email to