summaryrefslogtreecommitdiffstats
path: root/main/kamailio/APKBUILD
blob: 292d1942e40efde68c9971061e1c7d453c153b7a (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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# Contributor: Michael Mason <ms13sp@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=kamailio
pkgver=1.5.2
pkgrel=7
pkgdesc="Open Source SIP Server"
url="http://www.kamailio.org/"
pkgusers="kamailio"
pkggroups="kamailio"
license="GPL"
depends=
makedepends="bison flex expat-dev postgresql-dev mysql-dev pcre-dev
	libxml2-dev curl-dev"
install=
subpackages="$pkgname-doc $pkgname-mysql $pkgname-postgres $pkgname-pcre
	$pkgname-presence $pkgname-mediaproxy"
source="http://www.kamailio.org/pub/kamailio/$pkgver/src/$pkgname-$pkgver-notls_src.tar.gz
	kamailio.cfg
	kamailio.initd
	kamailio.pre-install
	kamailio.post-install"

build() {
	cd "$srcdir/$pkgname-$pkgver-notls"
	sed -i -e 's:^cfg-target.*:cfg-target = $(cfg-dir):' \
		-e 's:^cfg-prefix.*:cfg-prefix = $(basedir):' Makefile.defs \
		|| return 1

	cd scripts
	sed -i -e 's:/var/run/kamailio.pid:/var/run/kamailio/kamailio.pid:g' \
		kamctl.base kamctlrc || return 1
	# we actually dont need bash
	sed -i -e '1s:/bin/bash:/bin/sh:' kamctl kamdbctl \
		|| return 1
	cd ..

	make prefix=/usr \
		cfg-dir=/etc/kamailio/ \
		MODS_MYSQL=yes \
		MODS_PCRE=yes \
		MODS_PRESENCE=yes \
		MODS_RADIUS= \
		TLS= \
		include_modules="db_postgres mediaproxy" \
		all || return 1
	make prefix=/usr \
		cfg-dir=/etc/kamailio/ \
		MODS_MYSQL=yes \
		MODS_PCRE=yes \
		MODS_PRESENCE=yes \
		MODS_RADIUS= \
		TLS= \
		include_modules="db_postgres mediaproxy" \
		basedir="$pkgdir" install || return 1

	# move default config to -doc package and use our own default config
	mv "$pkgdir"/etc/kamailio/kamailio.cfg \
		"$pkgdir"/usr/share/doc/kamailio/
	install -m644 -D "$srcdir"/kamailio.cfg \
		"$pkgdir"/etc/kamailio/kamailio.cfg 

	install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
	install -d -o kamailio "$pkgdir"/var/run/kamailio
}

_mv_mod() {
	local moddir=usr/lib/kamailio/modules i=
	mkdir -p "$subpkgdir"/$moddir
	for i in $@; do
		mv "$pkgdir"/$moddir/$i.so "$subpkgdir"/$moddir/ || return 1
	done
}


mysql() {
	pkgdesc="MySQL support for kamailio"
	depends="kamailio mysql-client"
	_mv_mod db_mysql
	mkdir -p "$subpkgdir"/usr/share/kamailio
	mv "$pkgdir"/usr/share/kamailio/mysql \
		"$subpkgdir"/usr/share/kamailio/
}

postgres() {
	pkgdesc="PostgreSQL support for kamailio"
	depends="kamailio postgresql-client"
	_mv_mod db_postgres
	mkdir -p "$subpkgdir"/usr/share/kamailio
	mv "$pkgdir"/usr/share/kamailio/postgres \
		"$subpkgdir"/usr/share/kamailio/
}

pcre() {
	pkgdesc="Regular expressions support for kamailio"
	_mv_mod dialplan lcr regex
}

presence() {
	pkgdesc="Precense support for kamailio"
	_mv_mod presence presence_xml presence_mwi pua pua_bla pua_mi \
		pua_usrloc pua_xmpp rls xcap_client presence_dialoginfo \
		pua_dialoginfo
}

mediaproxy() {
	pkgdesc="Mediaproxy support for kamailio"
	depends="kamailio"
	_mv_mod mediaproxy
}

md5sums="6c6f4ed6fbcb4d008b8ac3de5b99ce99  kamailio-1.5.2-notls_src.tar.gz
eb665248ee39cf755a247286affc5cbb  kamailio.cfg
81100c479890a2a8c2628db22fdd1a0c  kamailio.initd
c646af2dd31f5c4289a2f802c873d98f  kamailio.pre-install
3fbaf633ff1620d0d526fc4047c7bed9  kamailio.post-install"