diff options
Diffstat (limited to 'net-misc/asterisk-addons/asterisk-addons-1.2.9.ebuild')
-rw-r--r-- | net-misc/asterisk-addons/asterisk-addons-1.2.9.ebuild | 173 |
1 files changed, 173 insertions, 0 deletions
diff --git a/net-misc/asterisk-addons/asterisk-addons-1.2.9.ebuild b/net-misc/asterisk-addons/asterisk-addons-1.2.9.ebuild new file mode 100644 index 000000000000..b0d6bb0f6f57 --- /dev/null +++ b/net-misc/asterisk-addons/asterisk-addons-1.2.9.ebuild @@ -0,0 +1,173 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/asterisk-addons/asterisk-addons-1.2.9.ebuild,v 1.1 2009/05/01 15:43:59 chainsaw Exp $ + +inherit eutils flag-o-matic autotools + +IUSE="elibc_uclibc mysql sqlite h323" +SQLITE_PV="3.2.1" + +MY_P="${P/_/-}" + +DESCRIPTION="Additional Plugins for Asterisk" +HOMEPAGE="http://www.asterisk.org/" +SRC_URI="http://downloads.digium.com/pub/asterisk/old-releases/${MY_P}.tar.gz + sqlite? ( http://www.sqlite.org/sqlite-${SQLITE_PV}.tar.gz )" + +S=${WORKDIR}/${MY_P} + +SLOT="0" +LICENSE="GPL-2" +KEYWORDS="~amd64 ~sparc ~x86" + +RDEPEND="=net-misc/asterisk-1.2* + mysql? ( virtual/mysql )" + +pkg_setup() { + local n dosleep=0 + einfo "Running pre-flight checks..." + + if use h323 && built_with_use net-misc/asterisk h323; then + echo + ewarn "h323: Emerging ${PN} with the h323 flag enabled will overwrite asterisk's chan_h323.so!" + ewarn "h323: Be sure to upgrade ${ROOT}etc/asterisk/h323.conf afterwards!" + dosleep=1 + fi + + if use sqlite && built_with_use net-misc/asterisk sqlite; then + echo + ewarn "sqlite: Emerging ${PN} with the sqlite flag enabled will overwrite asterisk's res_sqlite.so!" + ewarn "sqlite: Be sure to upgrade ${ROOT}etc/asterisk/res_sqlite.conf afterwards!" + dosleep=1 + fi + + echo + if [[ $dosleep -gt 0 ]]; then + ebeep + n=10 + while [[ $n -gt 0 ]]; do + echo -en " Waiting $n seconds...\r" + sleep 1 + (( n-- )) + done + fi +} + +src_unpack() { + unpack ${A} + cd "${S}" + + # + # gentoo patchset + # + epatch "${FILESDIR}/${PN}-1.2.0-gentoo-base.diff" + epatch "${FILESDIR}/${PN}-1.2.0-gentoo-res_sqlite3.diff" + epatch "${FILESDIR}/${PN}-1.2.2-gentoo-format_mp3.diff" + epatch "${FILESDIR}/${PN}-1.2.3-gentoo-ooh323c.diff" + + # patch from jaervosz for uclibc + if use elibc_uclibc; then + epatch "${FILESDIR}/${PN}-1.2.2-uclibc.diff" + epatch "${FILESDIR}/${PN}-1.2.4-uclibc.diff" + fi + # patch sqlite + if use sqlite; then + cd "${WORKDIR}/sqlite-${SQLITE_PV}" + + epatch "${FILESDIR}/sqlite-${SQLITE_PV}-data-corruption.patch" + epunt_cxx + fi + + # rebuild ooh323c configure + if use h323; then + cd "${S}/asterisk-ooh323c" + eautoreconf + fi +} + +src_compile() { + append-flags -fPIC + + emake -j1 OPTIMIZE="${CFLAGS}" || die "Make failed" + + if use sqlite; then + cd "${WORKDIR}/sqlite-${SQLITE_PV}" + econf --enable-threadsafe || die "" + emake || die "" + + cd "${S}" + emake -j1 -C res_sqlite3 \ + SQLITEDIR="${WORKDIR}/sqlite-${SQLITE_PV}" || die "Make res_sqlite failed" + fi + + if use h323; then + cd "${S}/asterisk-ooh323c" + econf || die "econf failed" + emake || die "emake failed" + fi +} + +src_install() { + make DESTDIR="${D}" install || die "Make install failed" + + if use sqlite; then + make -C res_sqlite3 \ + DESTDIR="${D}" install || die "Make install res_sqlite3 failed" + fi + + if use h323; then + make -C asterisk-ooh323c \ + DESTDIR="${D}" install || die "Make instal ooh323c failed" + fi + + # install standard docs... + dodoc README + dodoc doc/cdr_mysql.txt + + insinto "/usr/share/doc/${PF}" + doins configs/*.sample + + if use sqlite; then + cd "${S}/res_sqlite3" + docinto res_sqlite3 + dodoc README + insinto "/usr/share/doc/${PF}/res_sqlite3" + doins res_sqlite.conf dialplan.sql + keepdir /var/lib/asterisk/sqlite + fi + + if use h323; then + cd "${S}/asterisk-ooh323c" + docinto chan_ooh323c + dodoc AUTHORS INSTALL NEWS README ChangeLog + dodoc h323.conf.sample extensions.conf.sample + + insinto /etc/asterisk + newins h323.conf.sample h323.conf + fi + + cd "${S}" + + if use mysql; then + insinto /etc/asterisk + newins configs/cdr_mysql.conf.sample cdr_mysql.conf + newins configs/res_mysql.conf.sample res_mysql.conf + fi + + if use h323 || use mysql; then + einfo "Fixing permissions" + chown -R root:asterisk "${D}etc/asterisk" + chmod -R u=rwX,g=rX,o= "${D}etc/asterisk" + fi +} + +pkg_postinst() { + einfo "********* Some notes from the asterisk-addons readme: **********" + echo + ewarn "\"Using res_config_mysql at the same time as res_config_odbc can create" + ewarn "system instability on some systems. Please load only one or the other.\"" + echo + ewarn "\"format_mp3 can cause Asterisk to crash on certain mp3 files (notably" + ewarn "8k files made with lame) due to bugs in mpglib. If you must use this" + ewarn "module, use it only with mp3's you know will work with it.\"" +} |