blob: c98ddccfb66ae75be15bdd011bbfdb528df2436f (
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
116
117
118
119
|
# Contributor: Michael Mason <ms13sp@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=freeswitch
pkgver=1.0.7_p20110323
_ver=${pkgver%_p*}
_snapshot=${pkgver#*_p}
pkgrel=1
pkgdesc="A communications platform written in C from the ground up"
url="http://www.freeswitch.org"
arch="all"
license="GPL"
depends=""
makedepends="curl-dev unixodbc-dev zlib-dev openssl-dev ncurses-dev
autoconf automake libtool libpri-dev bash"
install="$pkgname.pre-install $pkgname.post-install $pkgname.pre-upgrade"
subpackages="$pkgname-dev $pkgname-flite $pkgname-sample-config:conf"
source="saveas-http://latest.freeswitch.org/freeswitch-$_ver.tar.gz/freeswitch-$pkgver.tar.gz
freeswitch-mod_shout-textrels.patch
modules.conf
freeswitch.confd
freeswitch.initd
"
_builddir="$srcdir/$pkgname-$_ver"
prepare() {
cd "$_builddir"
for i in $source; do
case $i in
*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
esac
done
sed -i 's,freetdm.h,../src/include/freetdm.h,' libs/freetdm/mod_freetdm/mod_freetdm.c
}
build() {
cd "$_builddir"
# i think our max cmd len is 32768
# by specifying it here we save our selves from some CPU cycles
export lt_cv_sys_max_cmd_len=8192
./rebootstrap.sh
cp -f "$srcdir/modules.conf" modules.conf || return 1
# remove -Werror since gcc-4.5 is more strict
sed -i -e 's/-Werror//g' configure || return 1
./configure --prefix=/usr \
--sysconfdir=/etc/freeswitch \
--with-modinstdir=/usr/lib/freeswitch \
--with-rundir=/var/run/freeswitch \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--with-devrandom=/dev/urandom \
--with-libpri \
--disable-debug \
|| return 1
# first build libfreeswitch (in parallel)
make src/include/switch_version.h src/include/switch_swigable_cpp.h
make libfreeswitch.la || return 1
# finally we build the rest
make -j1 all || return 1
}
package(){
cd "$_builddir"
make -j1 DESTDIR="$pkgdir" install || return 1
# we need to do some moving/cleanup to allow some... kind of FHS
mkdir -p "$pkgdir"/var/run/freeswitch
mkdir -p "$pkgdir"/var/lib/freeswitch
mkdir -p "$pkgdir"/var/log
mkdir -p "$pkgdir"/usr/share/freeswitch
mv "$pkgdir"/usr/db "$pkgdir"/var/lib/freeswitch/
mv "$pkgdir"/usr/grammar "$pkgdir"/var/lib/freeswitch/
mv "$pkgdir"/usr/htdocs "$pkgdir"/usr/share/freeswitch/
mv "$pkgdir"/usr/recordings "$pkgdir"/var/lib/freeswitch/
mv "$pkgdir"/usr/scripts "$pkgdir"/etc/freeswitch/
mv "$pkgdir"/usr/log "$pkgdir"/var/log/freeswitch
install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
install -m644 -D "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
}
_mv_mod() {
local moddir=usr/lib/freeswitch i=
mkdir -p "$subpkgdir"/$moddir
for i in $@; do
mv "$pkgdir"/$moddir/$i.so "$subpkgdir"/$moddir/ || return 1
done
}
flite() {
pkgdesc="Freeswitch Text To Speech Module"
depends="freeswitch"
install=
_mv_mod mod_flite mod_say_de mod_say_en mod_say_es mod_say_fr \
mod_say_it mod_say_nl mod_say_zh
}
conf() {
pkgdesc="Freeswitch sample configureation"
depends="freeswitch"
install=
mkdir -p "$subpkgdir"/etc/freeswitch
# move all configs except freeswitch.xml
for i in "$pkgdir"/etc/freeswitch/*; do
[ "$i" = "$pkgdir"/etc/freeswitch/freeswitch.xml ] && continue
mv "$i" "$subpkgdir"/etc/freeswitch/ || return 1
done
mkdir -p "$pkgdir"/etc/freeswitch/scripts
}
md5sums="ecca23d810c8ec1853c87c7fdc603bc5 freeswitch-1.0.7_p20110323.tar.gz
11883affe0839a8e15fe680aeb11b86e freeswitch-mod_shout-textrels.patch
8363688bc8dd21ac1da0f840d770504b modules.conf
c608cca8ad773acebf201f581438c7e7 freeswitch.confd
aa358c9ca0d8b93fabb6a36a5ed4c469 freeswitch.initd"
|