aboutsummaryrefslogtreecommitdiffstats
path: root/main/jsoncpp/APKBUILD
blob: 576686b77fd0eba7bdee868c0eec65e768fb2cf5 (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
59
60
61
62
63
# Contributor: William Pitcock <nenolod@dereferenced.org>
# Maintainer: William Pitcock <nenolod@dereferenced.org>
pkgname=jsoncpp
pkgver=1.7.3
pkgrel=0
pkgdesc="JSON C++ library"
url="https://github.com/open-source-parsers/jsoncpp"
arch="all"
license="PublicDomain"
depends=
depends_dev=
makedepends="$depends_dev scons"
install=""
subpackages="$pkgname-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/open-source-parsers/jsoncpp/archive/$pkgver.tar.gz"

_builddir="$srcdir"/jsoncpp-$pkgver
prepare() {
	local i
	cd "$_builddir"
	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done
}

build() {
	cd "$_builddir"
	# we cannot use cmake since jsoncpp is a dependency for cmake which
	# means we would get circular buildtime deps
	scons platform=linux-gcc || return 1

	# build a proper shared lib
	g++ -o libjsoncpp.so.0.0.0 -shared -Wl,-soname,libjsoncpp.so.0 \
		buildscons/linux-gcc-*/src/lib_json/*.os -lpthread
}

package() {
	cd "$_builddir"

	mkdir -p "$pkgdir"/usr/lib
	cp "$_builddir"/libjsoncpp.so.0.0.0 "$pkgdir"/usr/lib/ || return 1
	ln -s libjsoncpp.so.0.0.0 "$pkgdir"/usr/lib/libjsoncpp.so.0 || return 1
	ln -s libjsoncpp.so.0.0.0 "$pkgdir"/usr/lib/libjsoncpp.so || return 1

	mkdir -p "$pkgdir"/usr/include/jsoncpp
	cp -r "$_builddir"/include/json/* "$pkgdir"/usr/include/jsoncpp/ \
		|| return 1
	ln -s jsoncpp "$pkgdir"/usr/include/json

	mkdir -p "$pkgdir"/usr/lib/pkgconfig
	sed -e 's:@CMAKE_INSTALL_PREFIX@:/usr:g' \
		-e 's:@LIBRARY_INSTALL_DIR@:lib:g' \
		-e 's:@INCLUDE_INSTALL_DIR@:include/jsoncpp:g'\
		-e "s:@JSONCPP_VERSION@:$pkgver:g"\
		pkg-config/jsoncpp.pc.in \
		> "$pkgdir"/usr/lib/pkgconfig/jsoncpp.pc || return 1
}

md5sums="aff6bfb5b81d9a28785429faa45839c5  jsoncpp-1.7.3.tar.gz"
sha256sums="1cfcad14054039ba97c22531888796cb9369e6353f257aacaad34fda956ada53  jsoncpp-1.7.3.tar.gz"
sha512sums="991af517449432082a4bfc77de7e23cc693c976709bc40053c043209baa09919532fc4c46e3e32dea504c2fcb58ad6b6bc9b2d202f947c736c4498debc45235a  jsoncpp-1.7.3.tar.gz"