summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2024-09-29 12:48:35 +0200
committerMichał Górny <mgorny@gentoo.org>2024-09-29 12:48:35 +0200
commit09cbba1a603ba17efa14e163c3443ef6231eec1f (patch)
treed44a2e2477342e7aca2cc820b2bf2e7da0fdfb57 /dev-libs/jsoncpp
parentdev-util/spirv-llvm-translator: migrate to llvm-r1 (diff)
downloadgentoo-09cbba1a603ba17efa14e163c3443ef6231eec1f.tar.gz
gentoo-09cbba1a603ba17efa14e163c3443ef6231eec1f.tar.bz2
gentoo-09cbba1a603ba17efa14e163c3443ef6231eec1f.zip
dev-libs/jsoncpp: Fix installed CMake files
Closes: https://bugs.gentoo.org/940272 Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-libs/jsoncpp')
-rw-r--r--dev-libs/jsoncpp/files/jsoncpp-1.9.6-cmake.patch21
-rw-r--r--dev-libs/jsoncpp/jsoncpp-1.9.6-r1.ebuild56
2 files changed, 77 insertions, 0 deletions
diff --git a/dev-libs/jsoncpp/files/jsoncpp-1.9.6-cmake.patch b/dev-libs/jsoncpp/files/jsoncpp-1.9.6-cmake.patch
new file mode 100644
index 000000000000..9e24533ae9f9
--- /dev/null
+++ b/dev-libs/jsoncpp/files/jsoncpp-1.9.6-cmake.patch
@@ -0,0 +1,21 @@
+From 8d9109992e34cdacd3f2750ada5c2460d346898f Mon Sep 17 00:00:00 2001
+From: Rui Chen <rui@chenrui.dev>
+Date: Thu, 19 Sep 2024 15:10:21 -0400
+Subject: [PATCH] fix(build): remove `check_required_components` for meson
+ build
+
+Signed-off-by: Rui Chen <rui@chenrui.dev>
+---
+ jsoncppConfig.cmake.meson.in | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/jsoncppConfig.cmake.meson.in b/jsoncppConfig.cmake.meson.in
+index 0f4866d6d..be8852d0c 100644
+--- a/jsoncppConfig.cmake.meson.in
++++ b/jsoncppConfig.cmake.meson.in
+@@ -4,5 +4,3 @@
+ @MESON_STATIC_TARGET@
+
+ include ( "${CMAKE_CURRENT_LIST_DIR}/jsoncpp-namespaced-targets.cmake" )
+-
+-check_required_components(JsonCpp)
diff --git a/dev-libs/jsoncpp/jsoncpp-1.9.6-r1.ebuild b/dev-libs/jsoncpp/jsoncpp-1.9.6-r1.ebuild
new file mode 100644
index 000000000000..6f29211cc90b
--- /dev/null
+++ b/dev-libs/jsoncpp/jsoncpp-1.9.6-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit meson-multilib python-any-r1
+
+DESCRIPTION="C++ JSON reader and writer"
+HOMEPAGE="https://github.com/open-source-parsers/jsoncpp/"
+SRC_URI="
+ https://github.com/open-source-parsers/${PN}/archive/${PV}.tar.gz
+ -> ${P}.tar.gz
+"
+
+LICENSE="|| ( public-domain MIT )"
+SLOT="0/26"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ doc? ( app-text/doxygen )
+"
+
+PATCHES=(
+ # https://github.com/open-source-parsers/jsoncpp/pull/1570
+ "${FILESDIR}/${P}-cmake.patch"
+)
+
+multilib_src_configure() {
+ local emesonargs=(
+ # Follow Debian, Ubuntu, Arch convention for headers location
+ # bug #452234
+ --includedir include/jsoncpp
+ -Dtests=$(usex test true false)
+ )
+ meson_src_configure
+}
+
+src_compile() {
+ meson-multilib_src_compile
+
+ if use doc; then
+ echo "${PV}" > version || die
+ "${EPYTHON}" doxybuild.py --doxygen="${EPREFIX}"/usr/bin/doxygen || die
+ HTML_DOCS=( dist/doxygen/jsoncpp*/. )
+ fi
+}
+
+multilib_src_test() {
+ # increase test timeout due to failures on slower hardware
+ meson_src_test -t 2
+}