summaryrefslogtreecommitdiff
blob: 5dfeb52e164881f4b4368125ff5e55ab28ad33d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI=5
PYTHON_COMPAT=( python2_7 )

inherit multilib toolchain-funcs python-any-r1

MY_P="${PN}-src-${PV}"

DESCRIPTION="C++ JSON reader and writer"
HOMEPAGE="http://jsoncpp.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz"
LICENSE="public-domain"

SLOT="0"
KEYWORDS="amd64 ~arm x86"
IUSE="doc"

DEPEND="
	doc? (
		app-doc/doxygen
		${PYTHON_DEPS}
	)"
RDEPEND=""

S="${WORKDIR}/${MY_P}"

pkg_setup() {
	use doc && python-any-r1_pkg_setup
}

cxx_wrapper() {
	set -- $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "$@"
	echo "$@"
	"$@"
}

src_compile() {
	soname=libjsoncpp.so.${PV}
	cxx_wrapper src/lib_json/*.cpp -Iinclude -shared -fPIC \
		-Wl,-soname,${soname} -o ${soname} || die
}

src_install() {
	# Follow Debian, Ubuntu, Arch convention for headers location, bug #452234 .
	insinto /usr/include/jsoncpp
	doins -r include/json

	dolib ${soname}
	dosym ${soname} /usr/$(get_libdir)/libjsoncpp.so

	if use doc; then
		${EPYTHON} doxybuild.py --doxygen=/usr/bin/doxygen || die
		dohtml dist/doxygen/jsoncpp*/*
	fi
}