blob: fd161475469f2ff9599488dcb39a10fece64d8f8 (
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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
|
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
# Contributor: Michael Mason <ms13sp@gmail.com>
# Contributor: Cameron Banta <cbanta@gmail.com>
pkgname=freeswitch
pkgver=1.6.6
pkgrel=2
pkgdesc="A communications platform written in C from the ground up"
url="http://www.freeswitch.org"
arch="all"
license="GPL"
depends=""
pkgusers="freeswitch"
pkggroups="freeswitch"
makedepends="
bash
bsd-compat-headers
curl-dev
flac-dev
flite-dev
gnutls-dev
ilbc-dev
ldns-dev
lame-dev
libedit-dev
libjpeg-turbo-dev
libogg-dev
libpri-dev
libshout-dev
libsndfile-dev
libvorbis-dev
linux-headers
lua5.2-dev
mpg123-dev
ncurses-dev
net-snmp-dev
openssl-dev
pcre-dev
portaudio-dev
postgresql-dev
sngtc_client-dev
speex-dev
speexdsp-dev
sqlite-dev
unixodbc-dev
util-linux-dev
xmlrpc-c-dev
zlib-dev
opus-dev
autoconf automake libtool
"
install="$pkgname.pre-install $pkgname.pre-upgrade"
subpackages="$pkgname-dbg $pkgname-dev $pkgname-flite $pkgname-timezones
$pkgname-sample-config:conf $pkgname-freetdm $pkgname-sangoma
$pkgname-snmp $pkgname-pgsql"
_json_c="json-c-0.9.tar.gz"
_flite="flite-2.0.0-release.tar.bz2"
_lame="lame-3.98.4.tar.gz"
_libshout="libshout-2.2.2.tar.gz"
_mpg123="mpg123-1.13.2.tar.gz"
_libsources="
"
source="http://files.freeswitch.org/freeswitch-releases/$pkgname-$pkgver.tar.xz
$_libsources
0002-FS-verto-bswap_64.patch
getlib.patch
modules.conf
freeswitch.confd
freeswitch.initd
"
_builddir="$srcdir/$pkgname-$pkgver"
prepare() {
cd "$_builddir"/libs
for i in $_libsources; do
local f=${i##*/}
ln -s ../../${f%.tar*} . || return 1
done
cd "$_builddir"
for i in $source; do
case $i in
*.patch) msg $i; cd "$_builddir"; patch -p1 -i "$srcdir"/$i || return 1;;
esac
done
cd "$srcdir"
update_config_sub || return 1
}
build() {
cd "$_builddir"
cp -f "$srcdir/modules.conf" modules.conf || return 1
CFLAGS="-Wno-unused-but-set-variable" ./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--enable-fhs \
--localstatedir=/var \
--sysconfdir=/etc \
--with-scriptdir=/etc/freeswitch/scripts \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--with-devrandom=/dev/urandom \
--with-libpri \
--disable-debug \
--enable-core-pgsql-support \
--enable-system-lua \
--enable-system-xmlrpc-c \
|| 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 samples-conf samples-htdocs \
|| return 1
install -m755 -D "$srcdir"/$pkgname.initd \
"$pkgdir"/etc/init.d/$pkgname || return 1
install -m644 -D "$srcdir"/$pkgname.confd \
"$pkgdir"/etc/conf.d/$pkgname || return 1
chown -R freeswitch:freeswitch "$pkgdir"/var/*/freeswitch
}
_mv_mod() {
local moddir=usr/lib/freeswitch/mod 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"
install=
_mv_mod mod_flite
##
## The mod_say_xx modules can be used with out flite (for numbers, etc using
## sound files). So they shouldn't be in the flite package -cB
##
# _mv_mod mod_say_de mod_say_en mod_say_es mod_say_fr \
# mod_say_it mod_say_nl mod_say_zh mod_say_hu mod_say_ru \
# mod_say_th mod_say_he
}
freetdm() {
pkgdesc="Freeswitch FreeTDM Module"
install=
_mv_mod mod_freetdm ftmod_analog ftmod_analog_em ftmod_libpri \
ftmod_skel ftmod_zt
mv "$pkgdir"/usr/lib/libfreetdm.so* "$subpkgdir"/usr/lib/
}
sangoma() {
pkgdesc="Freeswitch Sangoma Media Transcode Codec Module"
install=
_mv_mod mod_sangoma_codec
}
timezones() {
pkgdesc="Freeswitch timezone configuration"
arch="noarch"
install=
replaces="freeswitch-sample-config"
mkdir -p "$subpkgdir"/etc/freeswitch/autoload_configs
mv "$pkgdir"/etc/freeswitch/autoload_configs/timezones.conf.xml \
"$subpkgdir"/etc/freeswitch/autoload_configs
}
snmp() {
pkgdesc="Freeswitch SNMP module"
install=
_mv_mod mod_snmp
}
pgsql() {
pkgdesc="Freeswitch PostgreSQL Module"
install=
_mv_mod mod_cdr_pg_csv
}
conf() {
pkgdesc="Freeswitch sample configureation"
arch="noarch"
depends="freeswitch-timezones"
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="9a2383a7f321ab0f8fb1e7a212081a17 freeswitch-1.6.6.tar.xz
1c08df4cf4ef737e6cc6945f9462f08e 0002-FS-verto-bswap_64.patch
1e7f335ee00f589825ecc9affa779346 getlib.patch
18dc414e375a749d60c83a402a0e51ed modules.conf
c608cca8ad773acebf201f581438c7e7 freeswitch.confd
3b0bf4847a61afa28229b58763f4c400 freeswitch.initd"
sha256sums="397b9c63c2c1f7008a2cc269f2e0e9a935d862b3fb074a6044819bcaea02ebc0 freeswitch-1.6.6.tar.xz
2685eb17fcd4510e46bb1d88be5550c3cb7b08f2acccfb41b2c680480c91b63e 0002-FS-verto-bswap_64.patch
ab437c92149b6fc88bc2fc8a228d6a5f8af574e2c90469a6dc4c753d13972c34 getlib.patch
19e868475d6decad2433541b3de1aef5d35a889fe1d5ea8c14a832466f664759 modules.conf
846a29a361ef6eecd77876963b5c0133699c40fa8b34c68df42d5f8a1a1915b1 freeswitch.confd
aa0d89221ffa47eba4a0e085f6041ee198476409dd15d1e90c5c357ba683f432 freeswitch.initd"
sha512sums="1e16904084f8ada7cfea27ed3222eb660a14f08b12e6b4ddc5db2893b690936bf4d945b94d9f6eb1893e62124858c39b658c5c5ac425ad064db69d44f57179a9 freeswitch-1.6.6.tar.xz
5f93150e1acd632df98bc3bed5613fb1e45180ae4096dcfee5c060da213c8355339260eaf5758cd77c785f6d84cf0661650a872ec574b586ab19803d4f6955f8 0002-FS-verto-bswap_64.patch
4ceb48f64d2bc26a02cc0846276506241bfd30c156422b0a1d608fd172c099feb5c121a763652e9a45046dcdd0ba0eb71eab240e0c6ce2ad63ff781719e135a4 getlib.patch
1e74fcb17676c14003d7225f293f77757bf36ec93012009c73be1ed0023e430fa144b9c959b5f54552610b3af7a8780df1e61ea0b7503016d76fcb105fedbf27 modules.conf
a585f6411185a26206137a1ad97a06fd6c73e80c5439e9be45eabfa70e7a83120169ba882971fcd328436c8e0242cbd664170b80754ea2846021689baf1f1595 freeswitch.confd
643d0a2e43f5d3bf3b99fcb6f6422302cb4b74a95eccf844eafb100b15aa9856b4ff41f112d6637255c2e9e2bec9fedc9a9215dfff214dfb83b52eae16b71dca freeswitch.initd"
|