1 |
chainsaw 12/07/06 13:27:13 |
2 |
|
3 |
Modified: ChangeLog |
4 |
Added: asterisk-1.8.13.1.ebuild asterisk-10.5.2.ebuild |
5 |
Removed: asterisk-1.8.13.0-r1.ebuild asterisk-10.5.1.ebuild |
6 |
asterisk-1.8.13.0.ebuild |
7 |
Log: |
8 |
Upgrades on the 1.8 & 10 branches to address a potential resource leak when a re-invite transaction is not completed (AST-2012-010) and on the 1.8 branch only for a remote crash vulnerability in the voicemail application (AST-2012-011). Both covered under CVE-2012-3812. Removed any non-stable vulnerable ebuild. |
9 |
|
10 |
(Portage version: 2.1.11.5/cvs/Linux x86_64) |
11 |
|
12 |
Revision Changes Path |
13 |
1.401 net-misc/asterisk/ChangeLog |
14 |
|
15 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/ChangeLog?rev=1.401&view=markup |
16 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/ChangeLog?rev=1.401&content-type=text/plain |
17 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/ChangeLog?r1=1.400&r2=1.401 |
18 |
|
19 |
Index: ChangeLog |
20 |
=================================================================== |
21 |
RCS file: /var/cvsroot/gentoo-x86/net-misc/asterisk/ChangeLog,v |
22 |
retrieving revision 1.400 |
23 |
retrieving revision 1.401 |
24 |
diff -u -r1.400 -r1.401 |
25 |
--- ChangeLog 22 Jun 2012 10:51:26 -0000 1.400 |
26 |
+++ ChangeLog 6 Jul 2012 13:27:13 -0000 1.401 |
27 |
@@ -1,6 +1,18 @@ |
28 |
# ChangeLog for net-misc/asterisk |
29 |
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 |
30 |
-# $Header: /var/cvsroot/gentoo-x86/net-misc/asterisk/ChangeLog,v 1.400 2012/06/22 10:51:26 chainsaw Exp $ |
31 |
+# $Header: /var/cvsroot/gentoo-x86/net-misc/asterisk/ChangeLog,v 1.401 2012/07/06 13:27:13 chainsaw Exp $ |
32 |
+ |
33 |
+*asterisk-10.5.2 (06 Jul 2012) |
34 |
+*asterisk-1.8.13.1 (06 Jul 2012) |
35 |
+ |
36 |
+ 06 Jul 2012; Tony Vroon <chainsaw@g.o> -asterisk-1.8.13.0.ebuild, |
37 |
+ -asterisk-1.8.13.0-r1.ebuild, +asterisk-1.8.13.1.ebuild, |
38 |
+ -asterisk-10.5.1.ebuild, +asterisk-10.5.2.ebuild: |
39 |
+ Upgrades on the 1.8 & 10 branches to address a potential resource leak when a |
40 |
+ re-invite transaction is not completed (AST-2012-010) and on the 1.8 branch |
41 |
+ only for a remote crash vulnerability in the voicemail application |
42 |
+ (AST-2012-011). Both covered under CVE-2012-3812. Removed any non-stable |
43 |
+ vulnerable ebuild. |
44 |
|
45 |
*asterisk-1.8.13.0-r1 (22 Jun 2012) |
46 |
|
47 |
|
48 |
|
49 |
|
50 |
1.1 net-misc/asterisk/asterisk-1.8.13.1.ebuild |
51 |
|
52 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/asterisk-1.8.13.1.ebuild?rev=1.1&view=markup |
53 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/asterisk-1.8.13.1.ebuild?rev=1.1&content-type=text/plain |
54 |
|
55 |
Index: asterisk-1.8.13.1.ebuild |
56 |
=================================================================== |
57 |
# Copyright 1999-2012 Gentoo Foundation |
58 |
# Distributed under the terms of the GNU General Public License v2 |
59 |
# $Header: /var/cvsroot/gentoo-x86/net-misc/asterisk/asterisk-1.8.13.1.ebuild,v 1.1 2012/07/06 13:27:13 chainsaw Exp $ |
60 |
|
61 |
EAPI=4 |
62 |
inherit autotools base eutils linux-info multilib |
63 |
|
64 |
MY_P="${PN}-${PV/_/-}" |
65 |
|
66 |
DESCRIPTION="Asterisk: A Modular Open Source PBX System" |
67 |
HOMEPAGE="http://www.asterisk.org/" |
68 |
SRC_URI="http://downloads.asterisk.org/pub/telephony/asterisk/${MY_P}.tar.gz |
69 |
mirror://gentoo/gentoo-asterisk-patchset-1.13.tar.bz2" |
70 |
LICENSE="GPL-2" |
71 |
SLOT="0" |
72 |
KEYWORDS="~amd64 ~x86" |
73 |
|
74 |
IUSE_VOICEMAIL_STORAGE=" |
75 |
+voicemail_storage_file |
76 |
voicemail_storage_odbc |
77 |
voicemail_storage_imap |
78 |
" |
79 |
IUSE="${IUSE_VOICEMAIL_STORAGE} ais alsa bluetooth calendar +caps curl dahdi debug doc freetds gtalk http iconv jabber jingle ldap lua mysql newt +samples odbc osplookup oss portaudio postgres radius snmp span speex sqlite sqlite3 srtp static syslog usb vorbis" |
80 |
|
81 |
IUSE_EXPAND="VOICEMAIL_STORAGE" |
82 |
|
83 |
REQUIRED_USE=" |
84 |
gtalk? ( jabber ) |
85 |
^^ ( ${IUSE_VOICEMAIL_STORAGE/+/} ) |
86 |
voicemail_storage_odbc? ( odbc ) |
87 |
" |
88 |
|
89 |
EPATCH_SUFFIX="patch" |
90 |
PATCHES=( "${WORKDIR}/asterisk-patchset" ) |
91 |
|
92 |
RDEPEND="dev-libs/popt |
93 |
dev-libs/libxml2 |
94 |
dev-libs/openssl |
95 |
sys-libs/ncurses |
96 |
sys-libs/zlib |
97 |
ais? ( sys-cluster/openais ) |
98 |
alsa? ( media-libs/alsa-lib ) |
99 |
bluetooth? ( net-wireless/bluez ) |
100 |
calendar? ( net-libs/neon |
101 |
dev-libs/libical |
102 |
dev-libs/iksemel ) |
103 |
caps? ( sys-libs/libcap ) |
104 |
curl? ( net-misc/curl ) |
105 |
dahdi? ( >=net-libs/libpri-1.4.12_beta2 |
106 |
net-misc/dahdi-tools ) |
107 |
freetds? ( dev-db/freetds ) |
108 |
gtalk? ( dev-libs/iksemel ) |
109 |
http? ( dev-libs/gmime:2.4 ) |
110 |
iconv? ( virtual/libiconv ) |
111 |
jabber? ( dev-libs/iksemel ) |
112 |
jingle? ( dev-libs/iksemel ) |
113 |
ldap? ( net-nds/openldap ) |
114 |
lua? ( dev-lang/lua ) |
115 |
mysql? ( virtual/mysql ) |
116 |
newt? ( dev-libs/newt ) |
117 |
odbc? ( dev-db/unixODBC ) |
118 |
osplookup? ( net-libs/osptoolkit ) |
119 |
portaudio? ( media-libs/portaudio ) |
120 |
postgres? ( dev-db/postgresql-base ) |
121 |
radius? ( net-dialup/radiusclient-ng ) |
122 |
snmp? ( net-analyzer/net-snmp ) |
123 |
span? ( media-libs/spandsp ) |
124 |
speex? ( media-libs/speex ) |
125 |
sqlite? ( dev-db/sqlite:0 ) |
126 |
sqlite3? ( dev-db/sqlite:3 ) |
127 |
srtp? ( net-libs/libsrtp ) |
128 |
usb? ( virtual/libusb:0 |
129 |
media-libs/alsa-lib ) |
130 |
vorbis? ( media-libs/libvorbis )" |
131 |
|
132 |
DEPEND="${RDEPEND} |
133 |
voicemail_storage_imap? ( virtual/imap-c-client ) |
134 |
!net-libs/openh323" |
135 |
|
136 |
RDEPEND="${RDEPEND} |
137 |
syslog? ( virtual/logger )" |
138 |
|
139 |
PDEPEND="net-misc/asterisk-core-sounds |
140 |
net-misc/asterisk-extra-sounds |
141 |
net-misc/asterisk-moh-opsound" |
142 |
|
143 |
S="${WORKDIR}/${MY_P}" |
144 |
|
145 |
pkg_setup() { |
146 |
CONFIG_CHECK="~!NF_CONNTRACK_SIP" |
147 |
local WARNING_NF_CONNTRACK_SIP="SIP (NAT) connection tracking is enabled. Some users |
148 |
have reported that this module dropped critical SIP packets in their deployments. You |
149 |
may want to disable it if you see such problems." |
150 |
check_extra_config |
151 |
|
152 |
enewgroup asterisk |
153 |
enewgroup dialout 20 |
154 |
enewuser asterisk -1 -1 /var/lib/asterisk "asterisk,dialout" |
155 |
} |
156 |
|
157 |
src_prepare() { |
158 |
base_src_prepare |
159 |
AT_M4DIR=autoconf eautoreconf |
160 |
} |
161 |
|
162 |
src_configure() { |
163 |
local vmst |
164 |
|
165 |
econf \ |
166 |
--libdir="/usr/$(get_libdir)" \ |
167 |
--localstatedir="/var" \ |
168 |
--with-crypto \ |
169 |
--with-gsm=internal \ |
170 |
--with-popt \ |
171 |
--with-ssl \ |
172 |
--with-z \ |
173 |
$(use_with caps cap) \ |
174 |
$(use_with http gmime) \ |
175 |
$(use_with newt) \ |
176 |
$(use_with portaudio) |
177 |
|
178 |
# Blank out sounds/sounds.xml file to prevent |
179 |
# asterisk from installing sounds files (we pull them in via |
180 |
# asterisk-{core,extra}-sounds and asterisk-moh-opsound. |
181 |
>"${S}"/sounds/sounds.xml |
182 |
|
183 |
# Compile menuselect binary for optional components |
184 |
emake menuselect.makeopts |
185 |
|
186 |
# Broken functionality is forcibly disabled (bug #360143) |
187 |
menuselect/menuselect --disable chan_misdn menuselect.makeopts |
188 |
menuselect/menuselect --disable chan_ooh323 menuselect.makeopts |
189 |
|
190 |
# Utility set is forcibly enabled (bug #358001) |
191 |
menuselect/menuselect --enable smsq menuselect.makeopts |
192 |
menuselect/menuselect --enable streamplayer menuselect.makeopts |
193 |
menuselect/menuselect --enable aelparse menuselect.makeopts |
194 |
menuselect/menuselect --enable astman menuselect.makeopts |
195 |
|
196 |
# this is connected, otherwise it would not find |
197 |
# ast_pktccops_gate_alloc symbol |
198 |
menuselect/menuselect --enable chan_mgcp menuselect.makeopts |
199 |
menuselect/menuselect --enable res_pktccops menuselect.makeopts |
200 |
|
201 |
# SSL is forcibly enabled, IAX2 & DUNDI are expected to be available |
202 |
menuselect/menuselect --enable pbx_dundi menuselect.makeopts |
203 |
menuselect/menuselect --enable func_aes menuselect.makeopts |
204 |
menuselect/menuselect --enable chan_iax2 menuselect.makeopts |
205 |
|
206 |
# The others are based on USE-flag settings |
207 |
use_select() { |
208 |
local state=$(use "$1" && echo enable || echo disable) |
209 |
shift # remove use from parameters |
210 |
|
211 |
while [[ -n $1 ]]; do |
212 |
menuselect/menuselect --${state} "$1" menuselect.makeopts |
213 |
shift |
214 |
done |
215 |
} |
216 |
|
217 |
use_select ais res_ais |
218 |
use_select alsa chan_alsa |
219 |
use_select bluetooth chan_mobile |
220 |
use_select calendar res_calendar res_calendar_{caldav,ews,exchange,icalendar} |
221 |
use_select curl func_curl res_config_curl res_curl |
222 |
use_select dahdi app_dahdibarge app_dahdiras chan_dahdi codec_dahdi res_timing_dahdi |
223 |
use_select freetds {cdr,cel}_tds |
224 |
use_select gtalk chan_gtalk |
225 |
use_select http res_http_post |
226 |
use_select iconv func_iconv |
227 |
use_select jabber res_jabber |
228 |
use_select jingle chan_jingle |
229 |
use_select ldap res_config_ldap |
230 |
use_select lua pbx_lua |
231 |
use_select mysql app_mysql cdr_mysql res_config_mysql |
232 |
use_select odbc cdr_adaptive_odbc res_config_odbc {cdr,cel,res,func}_odbc |
233 |
use_select osplookup app_osplookup |
234 |
use_select oss chan_oss |
235 |
use_select postgres {cdr,cel}_pgsql res_config_pgsql |
236 |
use_select radius {cdr,cel}_radius |
237 |
use_select snmp res_snmp |
238 |
use_select span res_fax_spandsp |
239 |
use_select speex {codec,func}_speex |
240 |
use_select sqlite cdr_sqlite |
241 |
use_select sqlite3 {cdr,cel}_sqlite3_custom |
242 |
use_select srtp res_srtp |
243 |
use_select syslog cdr_syslog |
244 |
use_select usb chan_usbradio |
245 |
use_select vorbis format_ogg_vorbis |
246 |
|
247 |
# Voicemail storage ... |
248 |
for vmst in ${IUSE_VOICEMAIL_STORAGE/+/}; do |
249 |
if use ${vmst}; then |
250 |
menuselect/menuselect --enable $(echo ${vmst##*_} | tr '[:lower:]' '[:upper:]')_STORAGE menuselect.makeopts |
251 |
fi |
252 |
done |
253 |
} |
254 |
|
255 |
src_compile() { |
256 |
ASTLDFLAGS="${LDFLAGS}" emake |
257 |
} |
258 |
|
259 |
src_install() { |
260 |
mkdir -p "${D}"usr/$(get_libdir)/pkgconfig || die |
261 |
emake DESTDIR="${D}" installdirs |
262 |
emake DESTDIR="${D}" install |
263 |
|
264 |
if use radius; then |
265 |
insinto /etc/radiusclient-ng/ |
266 |
doins contrib/dictionary.digium |
267 |
fi |
268 |
if use samples; then |
269 |
emake DESTDIR="${D}" samples |
270 |
for conffile in "${D}"etc/asterisk/*.* |
271 |
do |
272 |
chown asterisk:asterisk $conffile |
273 |
chmod 0660 $conffile |
274 |
done |
275 |
einfo "Sample files have been installed" |
276 |
else |
277 |
einfo "Skipping installation of sample files..." |
278 |
rm -f "${D}"var/lib/asterisk/mohmp3/* || die |
279 |
rm -f "${D}"var/lib/asterisk/sounds/demo-* || die |
280 |
rm -f "${D}"var/lib/asterisk/agi-bin/* || die |
281 |
rm -f "${D}"etc/asterisk/* || die |
282 |
fi |
283 |
rm -rf "${D}"var/spool/asterisk/voicemail/default || die |
284 |
|
285 |
# keep directories |
286 |
diropts -m 0770 -o asterisk -g asterisk |
287 |
keepdir /etc/asterisk |
288 |
keepdir /var/lib/asterisk |
289 |
keepdir /var/run/asterisk |
290 |
keepdir /var/spool/asterisk |
291 |
keepdir /var/spool/asterisk/{system,tmp,meetme,monitor,dictate,voicemail} |
292 |
diropts -m 0750 -o asterisk -g asterisk |
293 |
keepdir /var/log/asterisk/{cdr-csv,cdr-custom} |
294 |
|
295 |
newinitd "${FILESDIR}"/1.8.0/asterisk.initd2 asterisk |
296 |
newconfd "${FILESDIR}"/1.8.0/asterisk.confd asterisk |
297 |
|
298 |
# install the upgrade documentation |
299 |
# |
300 |
dodoc README UPGRADE* BUGS CREDITS |
301 |
|
302 |
# install extra documentation |
303 |
# |
304 |
if use doc |
305 |
then |
306 |
dodoc doc/*.txt |
307 |
dodoc doc/*.pdf |
308 |
fi |
309 |
|
310 |
# install SIP scripts; bugs #300832 & #414585 |
311 |
# |
312 |
dodoc "${FILESDIR}/1.6.2/sip_calc_auth" |
313 |
dodoc "${FILESDIR}/1.8.0/find_call_sip_trace.sh" |
314 |
dodoc "${FILESDIR}/1.8.0/find_call_ids.sh" |
315 |
dodoc "${FILESDIR}/1.6.2/call_data.txt" |
316 |
|
317 |
# install logrotate snippet; bug #329281 |
318 |
# |
319 |
insinto /etc/logrotate.d |
320 |
newins "${FILESDIR}/1.6.2/asterisk.logrotate3" asterisk |
321 |
} |
322 |
|
323 |
pkg_postinst() { |
324 |
# |
325 |
# Announcements, warnings, reminders... |
326 |
# |
327 |
einfo "Asterisk has been installed" |
328 |
echo |
329 |
elog "If you want to know more about asterisk, visit these sites:" |
330 |
elog "http://www.asteriskdocs.org/" |
331 |
elog "http://www.voip-info.org/wiki-Asterisk" |
332 |
echo |
333 |
elog "http://www.automated.it/guidetoasterisk.htm" |
334 |
echo |
335 |
elog "Gentoo VoIP IRC Channel:" |
336 |
elog "#gentoo-voip @ irc.freenode.net" |
337 |
echo |
338 |
echo |
339 |
elog "1.6 -> 1.8 changes that you may care about:" |
340 |
elog "http://svn.asterisk.org/svn/${PN}/tags/${PV}/UPGRADE.txt" |
341 |
elog "or: bzless ${ROOT}usr/share/doc/${PF}/UPGRADE.txt.bz2" |
342 |
} |
343 |
|
344 |
pkg_config() { |
345 |
einfo "Do you want to reset file permissions and ownerships (y/N)?" |
346 |
|
347 |
read tmp |
348 |
tmp="$(echo $tmp | tr '[:upper:]' '[:lower:]')" |
349 |
|
350 |
if [[ "$tmp" = "y" ]] ||\ |
351 |
[[ "$tmp" = "yes" ]] |
352 |
then |
353 |
einfo "Resetting permissions to defaults..." |
354 |
|
355 |
for x in spool run lib log; do |
356 |
chown -R asterisk:asterisk "${ROOT}"var/${x}/asterisk |
357 |
chmod -R u=rwX,g=rwX,o= "${ROOT}"var/${x}/asterisk |
358 |
done |
359 |
|
360 |
chown -R root:asterisk "${ROOT}"etc/asterisk |
361 |
chmod -R u=rwX,g=rwX,o= "${ROOT}"etc/asterisk |
362 |
|
363 |
einfo "done" |
364 |
else |
365 |
einfo "skipping" |
366 |
fi |
367 |
} |
368 |
|
369 |
|
370 |
|
371 |
1.1 net-misc/asterisk/asterisk-10.5.2.ebuild |
372 |
|
373 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/asterisk-10.5.2.ebuild?rev=1.1&view=markup |
374 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-misc/asterisk/asterisk-10.5.2.ebuild?rev=1.1&content-type=text/plain |
375 |
|
376 |
Index: asterisk-10.5.2.ebuild |
377 |
=================================================================== |
378 |
# Copyright 1999-2012 Gentoo Foundation |
379 |
# Distributed under the terms of the GNU General Public License v2 |
380 |
# $Header: /var/cvsroot/gentoo-x86/net-misc/asterisk/asterisk-10.5.2.ebuild,v 1.1 2012/07/06 13:27:13 chainsaw Exp $ |
381 |
|
382 |
EAPI=4 |
383 |
inherit autotools base eutils linux-info multilib |
384 |
|
385 |
MY_P="${PN}-${PV/_/-}" |
386 |
|
387 |
DESCRIPTION="Asterisk: A Modular Open Source PBX System" |
388 |
HOMEPAGE="http://www.asterisk.org/" |
389 |
SRC_URI="http://downloads.asterisk.org/pub/telephony/asterisk/${MY_P}.tar.gz |
390 |
mirror://gentoo/gentoo-asterisk-patchset-2.5.tar.bz2" |
391 |
LICENSE="GPL-2" |
392 |
SLOT="0" |
393 |
KEYWORDS="~amd64 ~x86" |
394 |
|
395 |
IUSE="ais alsa bluetooth calendar +caps curl dahdi debug doc freetds gtalk http iconv jabber jingle ldap lua mysql newt +samples odbc osplookup oss portaudio postgres radius snmp span speex srtp static syslog usb vorbis" |
396 |
REQUIRED_USE="gtalk? ( jabber )" |
397 |
|
398 |
EPATCH_SUFFIX="patch" |
399 |
PATCHES=( "${WORKDIR}/asterisk-patchset" ) |
400 |
|
401 |
RDEPEND="dev-db/sqlite:3 |
402 |
dev-libs/popt |
403 |
dev-libs/libxml2 |
404 |
dev-libs/openssl |
405 |
sys-libs/ncurses |
406 |
sys-libs/zlib |
407 |
ais? ( sys-cluster/openais ) |
408 |
alsa? ( media-libs/alsa-lib ) |
409 |
bluetooth? ( net-wireless/bluez ) |
410 |
calendar? ( net-libs/neon |
411 |
dev-libs/libical |
412 |
dev-libs/iksemel ) |
413 |
caps? ( sys-libs/libcap ) |
414 |
curl? ( net-misc/curl ) |
415 |
dahdi? ( >=net-libs/libpri-1.4.12_beta2 |
416 |
net-misc/dahdi-tools ) |
417 |
freetds? ( dev-db/freetds ) |
418 |
gtalk? ( dev-libs/iksemel ) |
419 |
http? ( dev-libs/gmime:2.4 ) |
420 |
iconv? ( virtual/libiconv ) |
421 |
jabber? ( dev-libs/iksemel ) |
422 |
jingle? ( dev-libs/iksemel ) |
423 |
ldap? ( net-nds/openldap ) |
424 |
lua? ( dev-lang/lua ) |
425 |
mysql? ( virtual/mysql ) |
426 |
newt? ( dev-libs/newt ) |
427 |
odbc? ( dev-db/unixODBC ) |
428 |
osplookup? ( net-libs/osptoolkit ) |
429 |
portaudio? ( media-libs/portaudio ) |
430 |
postgres? ( dev-db/postgresql-base ) |
431 |
radius? ( net-dialup/radiusclient-ng ) |
432 |
snmp? ( net-analyzer/net-snmp ) |
433 |
span? ( media-libs/spandsp ) |
434 |
speex? ( media-libs/speex ) |
435 |
srtp? ( net-libs/libsrtp ) |
436 |
usb? ( virtual/libusb:0 |
437 |
media-libs/alsa-lib ) |
438 |
vorbis? ( media-libs/libvorbis )" |
439 |
|
440 |
DEPEND="${RDEPEND} |
441 |
!net-libs/openh323" |
442 |
|
443 |
RDEPEND="${RDEPEND} |
444 |
syslog? ( virtual/logger )" |
445 |
|
446 |
PDEPEND="net-misc/asterisk-core-sounds |
447 |
net-misc/asterisk-extra-sounds |
448 |
net-misc/asterisk-moh-opsound" |
449 |
|
450 |
S="${WORKDIR}/${MY_P}" |
451 |
|
452 |
pkg_setup() { |
453 |
CONFIG_CHECK="~!NF_CONNTRACK_SIP" |
454 |
local WARNING_NF_CONNTRACK_SIP="SIP (NAT) connection tracking is enabled. Some users |
455 |
have reported that this module dropped critical SIP packets in their deployments. You |
456 |
may want to disable it if you see such problems." |
457 |
check_extra_config |
458 |
|
459 |
enewgroup asterisk |
460 |
enewgroup dialout 20 |
461 |
enewuser asterisk -1 -1 /var/lib/asterisk "asterisk,dialout" |
462 |
} |
463 |
|
464 |
src_prepare() { |
465 |
base_src_prepare |
466 |
AT_M4DIR=autoconf eautoreconf |
467 |
} |
468 |
|
469 |
src_configure() { |
470 |
econf \ |
471 |
--libdir="/usr/$(get_libdir)" \ |
472 |
--localstatedir="/var" \ |
473 |
--with-crypto \ |
474 |
--with-gsm=internal \ |
475 |
--with-popt \ |
476 |
--with-ssl \ |
477 |
--with-z \ |
478 |
$(use_with caps cap) \ |
479 |
$(use_with http gmime) \ |
480 |
$(use_with newt) \ |
481 |
$(use_with portaudio) |
482 |
|
483 |
# Blank out sounds/sounds.xml file to prevent |
484 |
# asterisk from installing sounds files (we pull them in via |
485 |
# asterisk-{core,extra}-sounds and asterisk-moh-opsound. |
486 |
>"${S}"/sounds/sounds.xml |
487 |
|
488 |
# Compile menuselect binary for optional components |
489 |
emake menuselect.makeopts |
490 |
|
491 |
# Broken functionality is forcibly disabled (bug #360143) |
492 |
menuselect/menuselect --disable chan_misdn menuselect.makeopts |
493 |
menuselect/menuselect --disable chan_ooh323 menuselect.makeopts |
494 |
|
495 |
# Utility set is forcibly enabled (bug #358001) |
496 |
menuselect/menuselect --enable smsq menuselect.makeopts |
497 |
menuselect/menuselect --enable streamplayer menuselect.makeopts |
498 |
menuselect/menuselect --enable aelparse menuselect.makeopts |
499 |
menuselect/menuselect --enable astman menuselect.makeopts |
500 |
|
501 |
# this is connected, otherwise it would not find |
502 |
# ast_pktccops_gate_alloc symbol |
503 |
menuselect/menuselect --enable chan_mgcp menuselect.makeopts |
504 |
menuselect/menuselect --enable res_pktccops menuselect.makeopts |
505 |
|
506 |
# SSL is forcibly enabled, IAX2 & DUNDI are expected to be available |
507 |
menuselect/menuselect --enable pbx_dundi menuselect.makeopts |
508 |
menuselect/menuselect --enable func_aes menuselect.makeopts |
509 |
menuselect/menuselect --enable chan_iax2 menuselect.makeopts |
510 |
|
511 |
# SQlite3 is now the main database backend, enable related features |
512 |
menuselect/menuselect --enable cdr_sqlite3_custom menuselect.makeopts |
513 |
menuselect/menuselect --enable cel_sqlite3_custom menuselect.makeopts |
514 |
|
515 |
# The others are based on USE-flag settings |
516 |
use_select() { |
517 |
local state=$(use "$1" && echo enable || echo disable) |
518 |
shift # remove use from parameters |
519 |
|
520 |
while [[ -n $1 ]]; do |
521 |
menuselect/menuselect --${state} "$1" menuselect.makeopts |
522 |
shift |
523 |
done |
524 |
} |
525 |
|
526 |
use_select ais res_ais |
527 |
use_select alsa chan_alsa |
528 |
use_select bluetooth chan_mobile |
529 |
use_select calendar res_calendar res_calendar_{caldav,ews,exchange,icalendar} |
530 |
use_select curl func_curl res_config_curl res_curl |
531 |
use_select dahdi app_dahdibarge app_dahdiras chan_dahdi codec_dahdi res_timing_dahdi |
532 |
use_select freetds {cdr,cel}_tds |
533 |
use_select gtalk chan_gtalk |
534 |
use_select http res_http_post |
535 |
use_select iconv func_iconv |
536 |
use_select jabber res_jabber |
537 |
use_select jingle chan_jingle |
538 |
use_select ldap res_config_ldap |
539 |
use_select lua pbx_lua |
540 |
use_select mysql app_mysql cdr_mysql res_config_mysql |
541 |
use_select odbc cdr_adaptive_odbc res_config_odbc {cdr,cel,res,func}_odbc |
542 |
use_select osplookup app_osplookup |
543 |
use_select oss chan_oss |
544 |
use_select postgres {cdr,cel}_pgsql res_config_pgsql |
545 |
use_select radius {cdr,cel}_radius |
546 |
use_select snmp res_snmp |
547 |
use_select span res_fax_spandsp |
548 |
use_select speex {codec,func}_speex |
549 |
use_select srtp res_srtp |
550 |
use_select syslog cdr_syslog |
551 |
use_select usb chan_usbradio |
552 |
use_select vorbis format_ogg_vorbis |
553 |
} |
554 |
|
555 |
src_compile() { |
556 |
ASTLDFLAGS="${LDFLAGS}" emake |
557 |
} |
558 |
|
559 |
src_install() { |
560 |
mkdir -p "${D}"usr/$(get_libdir)/pkgconfig || die |
561 |
emake DESTDIR="${D}" installdirs |
562 |
emake DESTDIR="${D}" install |
563 |
|
564 |
if use radius; then |
565 |
insinto /etc/radiusclient-ng/ |
566 |
doins contrib/dictionary.digium |
567 |
fi |
568 |
if use samples; then |
569 |
emake DESTDIR="${D}" samples |
570 |
for conffile in "${D}"etc/asterisk/*.* |
571 |
do |
572 |
chown asterisk:asterisk $conffile |
573 |
chmod 0660 $conffile |
574 |
done |
575 |
einfo "Sample files have been installed" |
576 |
else |
577 |
einfo "Skipping installation of sample files..." |
578 |
rm -f "${D}"var/lib/asterisk/mohmp3/* || die |
579 |
rm -f "${D}"var/lib/asterisk/sounds/demo-* || die |
580 |
rm -f "${D}"var/lib/asterisk/agi-bin/* || die |
581 |
rm -f "${D}"etc/asterisk/* || die |
582 |
fi |
583 |
rm -rf "${D}"var/spool/asterisk/voicemail/default || die |
584 |
|
585 |
# keep directories |
586 |
diropts -m 0770 -o asterisk -g asterisk |
587 |
keepdir /etc/asterisk |
588 |
keepdir /var/lib/asterisk |
589 |
keepdir /var/run/asterisk |
590 |
keepdir /var/spool/asterisk |
591 |
keepdir /var/spool/asterisk/{system,tmp,meetme,monitor,dictate,voicemail} |
592 |
diropts -m 0750 -o asterisk -g asterisk |
593 |
keepdir /var/log/asterisk/{cdr-csv,cdr-custom} |
594 |
|
595 |
newinitd "${FILESDIR}"/1.8.0/asterisk.initd2 asterisk |
596 |
newconfd "${FILESDIR}"/1.8.0/asterisk.confd asterisk |
597 |
|
598 |
# install the upgrade documentation |
599 |
# |
600 |
dodoc README UPGRADE* BUGS CREDITS |
601 |
|
602 |
# install extra documentation |
603 |
# |
604 |
if use doc |
605 |
then |
606 |
dodoc doc/*.txt |
607 |
dodoc doc/*.pdf |
608 |
fi |
609 |
|
610 |
# install SIP scripts; bug #300832 |
611 |
# |
612 |
dodoc "${FILESDIR}/1.6.2/sip_calc_auth" |
613 |
dodoc "${FILESDIR}/1.8.0/find_call_sip_trace.sh" |
614 |
dodoc "${FILESDIR}/1.8.0/find_call_ids.sh" |
615 |
dodoc "${FILESDIR}/1.6.2/call_data.txt" |
616 |
|
617 |
# install logrotate snippet; bug #329281 |
618 |
# |
619 |
insinto /etc/logrotate.d |
620 |
newins "${FILESDIR}/1.6.2/asterisk.logrotate3" asterisk |
621 |
} |
622 |
|
623 |
pkg_postinst() { |
624 |
# |
625 |
# Announcements, warnings, reminders... |
626 |
# |
627 |
einfo "Asterisk has been installed" |
628 |
echo |
629 |
elog "If you want to know more about asterisk, visit these sites:" |
630 |
elog "http://www.asteriskdocs.org/" |
631 |
elog "http://www.voip-info.org/wiki-Asterisk" |
632 |
echo |
633 |
elog "http://www.automated.it/guidetoasterisk.htm" |
634 |
echo |
635 |
elog "Gentoo VoIP IRC Channel:" |
636 |
elog "#gentoo-voip @ irc.freenode.net" |
637 |
echo |
638 |
echo |
639 |
elog "1.6 -> 1.8 changes that you may care about:" |
640 |
elog "http://svn.asterisk.org/svn/${PN}/tags/${PV}/UPGRADE.txt" |
641 |
elog "or: bzless ${ROOT}usr/share/doc/${PF}/UPGRADE.txt.bz2" |
642 |
} |
643 |
|
644 |
pkg_config() { |
645 |
einfo "Do you want to reset file permissions and ownerships (y/N)?" |
646 |
|
647 |
read tmp |
648 |
tmp="$(echo $tmp | tr '[:upper:]' '[:lower:]')" |
649 |
|
650 |
if [[ "$tmp" = "y" ]] ||\ |
651 |
[[ "$tmp" = "yes" ]] |
652 |
then |
653 |
einfo "Resetting permissions to defaults..." |
654 |
|
655 |
for x in spool run lib log; do |
656 |
chown -R asterisk:asterisk "${ROOT}"var/${x}/asterisk |
657 |
chmod -R u=rwX,g=rwX,o= "${ROOT}"var/${x}/asterisk |
658 |
done |
659 |
|
660 |
chown -R root:asterisk "${ROOT}"etc/asterisk |
661 |
chmod -R u=rwX,g=rwX,o= "${ROOT}"etc/asterisk |
662 |
|
663 |
einfo "done" |
664 |
else |
665 |
einfo "skipping" |
666 |
fi |
667 |
} |