diff options
author | Sam James <sam@gentoo.org> | 2023-09-24 03:19:14 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-09-24 03:19:14 +0100 |
commit | 120da2933e42c8d0f2b03cb2e6600550a83a55d8 (patch) | |
tree | 58a54fe60231ecab6c427c09d2ff7b492fe1fe26 | |
parent | dev-perl/Net-SSH-Perl: Stabilize 2.141.0 amd64, #913089 (diff) | |
download | gentoo-120da293.tar.gz gentoo-120da293.tar.bz2 gentoo-120da293.zip |
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@gentoo.org>
-rw-r--r-- | dev-libs/rapidjson/files/rapidjson-1.1.0-gcc14-const.patch | 20 | ||||
-rw-r--r-- | dev-libs/rapidjson/rapidjson-1.1.0-r4.ebuild | 59 | ||||
-rw-r--r-- | dev-libs/rapidjson/rapidjson-9999.ebuild | 20 |
3 files changed, 89 insertions, 10 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.chorko@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-1.1.0-r4.ebuild b/dev-libs/rapidjson/rapidjson-1.1.0-r4.ebuild new file mode 100644 index 000000000000..e25d9ba5a30c --- /dev/null +++ b/dev-libs/rapidjson/rapidjson-1.1.0-r4.ebuild @@ -0,0 +1,59 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="A fast JSON parser/generator for C++ with both SAX/DOM style API" +HOMEPAGE="https://rapidjson.org/" + +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 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" + S="${WORKDIR}/rapidjson-${PV}" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="doc examples test" +RESTRICT="!test? ( test )" + +BDEPEND=" + doc? ( app-doc/doxygen ) + test? ( dev-cpp/gtest ) +" + +PATCHES=( + "${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| -Werror||g' CMakeLists.txt example/CMakeLists.txt test/unittest/CMakeLists.txt || die +} + +src_configure() { + local mycmakeargs=( + -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_DOC=$(usex doc) + -DRAPIDJSON_BUILD_EXAMPLES=$(usex examples) + -DRAPIDJSON_BUILD_TESTS=$(usex test) + -DRAPIDJSON_BUILD_THIRDPARTY_GTEST=OFF + ) + use test && mycmakeargs+=( + -DVALGRIND_EXECUTABLE= + ) + cmake_src_configure +} 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" |