Gentoo Archives: gentoo-commits

From: "Tony Vroon (chainsaw)" <chainsaw@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in net-misc/asterisk: ChangeLog asterisk-1.8.13.1.ebuild asterisk-10.5.2.ebuild asterisk-1.8.13.0-r1.ebuild asterisk-10.5.1.ebuild asterisk-1.8.13.0.ebuild
Date: Fri, 06 Jul 2012 13:27:32
Message-Id: 20120706132713.C07432004B@flycatcher.gentoo.org
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 }