aboutsummaryrefslogtreecommitdiffstats
path: root/testing/jsoncpp/APKBUILD
blob: 8bd65abf8decd3862afbe0e7eddd5217fe229627 (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.6.0
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="7c09e69cac6864f9d3ccd8c93ba8cc51  jsoncpp-1.6.0.tar.gz"
sha256sums="ff6953394be63be1c72732a7e8f152e0281bd2a8098ff04d7e81f8a167b4c139  jsoncpp-1.6.0.tar.gz"
sha512sums="22176d143de1083cac3e087488712ac1b3308a75fd7c269b4d26c4878910a10105bef6b8bc770ba06fed7912d5287cb1a45c945b26ec80e46116724264efd4e4  jsoncpp-1.6.0.tar.gz"