summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-cpp/libjson-rpc-cpp')
-rw-r--r--dev-cpp/libjson-rpc-cpp/Manifest1
-rw-r--r--dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-1.2.0.ebuild67
2 files changed, 68 insertions, 0 deletions
diff --git a/dev-cpp/libjson-rpc-cpp/Manifest b/dev-cpp/libjson-rpc-cpp/Manifest
index b78014b97992..39da56d65db6 100644
--- a/dev-cpp/libjson-rpc-cpp/Manifest
+++ b/dev-cpp/libjson-rpc-cpp/Manifest
@@ -1 +1,2 @@
DIST libjson-rpc-cpp-1.1.1.tar.gz 179249 BLAKE2B bd8b737f76bceaa1be73d89a1f75472d8eae6f3da57a4da5a5a9eee2a52ba06034bcb4404e6b65368f6be1967c1a8b40f71e3bfbaa58f65b0ac8dced1b3f43af SHA512 64043aee3227262da41b56f6d53e4f8f9a56d3a43b695200020b47fb7eb6e121cf086b6e121c0eccecf381be90d77910d0f4371254d147f33310af4584a7d433
+DIST libjson-rpc-cpp-1.2.0.tar.gz 180074 BLAKE2B e44f4ada4430db178949d89c3db8db18b716347d88c4f41fe558a88053ca3e2e4085fee28a87d32f710f76d57e0de9510383bc04e17adec36b754e3db2466d94 SHA512 b03507c9e9dc370d0efe94c3a69b25cbc06b99907a6c145034a283d38d7dd2188a1af89d0ce05837fde28ff96b5bd7bb0903f5865f3eae01d275929a68ea5f99
diff --git a/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-1.2.0.ebuild b/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-1.2.0.ebuild
new file mode 100644
index 000000000000..2ab94282c0a9
--- /dev/null
+++ b/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-1.2.0.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="JSON-RPC (1.0 & 2.0) framework for C++"
+HOMEPAGE="https://github.com/cinemast/libjson-rpc-cpp"
+SRC_URI="https://github.com/cinemast/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/1"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc +http-client +http-server redis-client redis-server +stubgen test"
+
+RDEPEND="
+ dev-libs/jsoncpp:=
+ http-client? ( net-misc/curl:= )
+ http-server? ( net-libs/libmicrohttpd:= )
+ redis-client? ( dev-libs/hiredis:= )
+ redis-server? ( dev-libs/hiredis:= )
+ stubgen? ( dev-libs/argtable:= )"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )
+ test? ( dev-cpp/catch:0 )"
+
+RESTRICT="!test? ( test )"
+
+src_configure() {
+ local mycmakeargs=(
+ -DHTTP_CLIENT=$(usex http-client)
+ -DHTTP_SERVER=$(usex http-server)
+ -DREDIS_CLIENT=$(usex redis-client)
+ -DREDIS_SERVER=$(usex redis-server)
+ # they have no deps
+ -DTCP_SOCKET_CLIENT=ON
+ -DTCP_SOCKET_SERVER=ON
+ -DUNIX_DOMAIN_SOCKET_CLIENT=ON
+ -DUNIX_DOMAIN_SOCKET_SERVER=ON
+ # they are not installed
+ -DCOMPILE_EXAMPLES=OFF
+ -DCOMPILE_STUBGEN=$(usex stubgen)
+ -DCOMPILE_TESTS=$(usex test)
+ -DCATCH_INCLUDE_DIR="${EPREFIX}/usr/include/catch2"
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+
+ use doc && emake -C "${BUILD_DIR}" doc
+}
+
+src_test() {
+ # Tests fail randomly when run in parallel
+ local MAKEOPTS=-j1
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ use doc && dodoc -r "${BUILD_DIR}"/doc/html
+}