summaryrefslogtreecommitdiffstats
path: root/main/xmlrpc-c/APKBUILD
blob: db77a6e23a076dbbed881d73715e3da9fc4f628b (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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=xmlrpc-c
pkgver=1.25.28
pkgrel=0
pkgdesc="This library provides a modular implementation of XML-RPC for C and C++"
url="http://xmlrpc-c.sourceforge.net/"
arch="all"
license="custom:xmlrpc-c"
depends=
makedepends="libtool curl-dev libxml2-dev zlib-dev"
subpackages="$pkgname-dev $pkgname-doc $pkgname-client
	$pkgname-client++:clientxx xmlrpc-c++:cxx $pkgname-abyss"
source="http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tgz
	host-os-uclibc.patch"

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

build() {
	cd "$_builddir"
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--mandir=/usr/share/man \
		--enable-libxml2-backend \
		--disable-cgi-server \
		--disable-libwww-client \
		--disable-wininet-client \
		|| return 1
	# no parallel builds :-(
	make -C include && \
	make -C lib && \
	make -j1 -C src && \
	make
}

package() {
	cd "$_builddir"
	make DESTDIR="$pkgdir" install || return 1
	install -m 644 -D doc/COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
	rm -f "$pkgdir"/usr/lib/*.la
}

client() {
	pkgdesc="C client libraries for xmlrpc-c"
	replaces="$pkgname"
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libxmlrpc_client.so.* "$subpkgdir"/usr/lib/
}

clientxx() {
	replaces="libxml-c++"
	pkgdesc="C++ client libraries for xmlrpc-c"
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libxmlrpc_client++.so.* "$subpkgdir"/usr/lib/
}

cxx() {
	pkgdesc="This library provides a modular implementation of XML-RPC for C++"
	replaces="$pkgname"
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/*++* \
		"$pkgdir"/usr/lib/libxmlrpc_packetsocket.so.* \
		"$pkgdir"/usr/lib/libxmlrpc_cpp.so.* \
		"$subpkgdir"/usr/lib/
}

abyss() {
	pkgdesc="Abyss server libraries for C++"
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/*abyss* \
		"$subpkgdir"/usr/lib/
}

md5sums="60c5e53f93089272cb5e26cec9f5da05  xmlrpc-c-1.25.28.tgz
d3bee91077d3c7e1c0b80f6d7eeb2e63  host-os-uclibc.patch"
sha256sums="0786022c6d82ea1af04efade5b86357196f572c458a9649c6c912c469cd93acf  xmlrpc-c-1.25.28.tgz
0aae483973387c710ddc6103be36287cfe507eaa2e998805e6aa858be8eeaaa5  host-os-uclibc.patch"
sha512sums="e52508d6cc94501deb239dbbdd0f1fa00033052e7c3de145e519b535dfe6d3a94d8475544c21d1e1d41711231161cf9f8f0591505bbf551f5b0e17859e1e0e54  xmlrpc-c-1.25.28.tgz
30b57c5ffd65ea9781a56d1b4535e53c9d51c16e00d269992b239f1ff611fe3a510eb72b4d6ee96100706161d40738bbdf109580c745bfc9899d540ca6b3f1e5  host-os-uclibc.patch"