summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Volkov <pva@gentoo.org>2011-05-01 08:28:32 +0000
committerPeter Volkov <pva@gentoo.org>2011-05-01 08:28:32 +0000
commitf6d92a547a2a04ba4ba56175c6c293295f3d3e58 (patch)
treefac9ad13834c486b33b6c91de2e9006e4d3896d7 /net-libs/opal
parentInitial import from graaff overlay. Forthcoming dependency of dev-ruby/haml (... (diff)
downloadgentoo-2-f6d92a547a2a04ba4ba56175c6c293295f3d3e58.tar.gz
gentoo-2-f6d92a547a2a04ba4ba56175c6c293295f3d3e58.tar.bz2
gentoo-2-f6d92a547a2a04ba4ba56175c6c293295f3d3e58.zip
Use virtual/ffmpeg dependency, bug #362161 wrt Tomáš Chvátal. Add ‘ilbc’ USE flag, bug 348284 by Nico R.
(Portage version: 2.1.9.46/cvs/Linux x86_64)
Diffstat (limited to 'net-libs/opal')
-rw-r--r--net-libs/opal/ChangeLog9
-rw-r--r--net-libs/opal/metadata.xml1
-rw-r--r--net-libs/opal/opal-3.6.8-r2.ebuild272
3 files changed, 281 insertions, 1 deletions
diff --git a/net-libs/opal/ChangeLog b/net-libs/opal/ChangeLog
index 81a0f8eac02c..22e37d2b8158 100644
--- a/net-libs/opal/ChangeLog
+++ b/net-libs/opal/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for net-libs/opal
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/opal/ChangeLog,v 1.71 2011/01/18 16:20:25 fauli Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-libs/opal/ChangeLog,v 1.72 2011/05/01 08:28:32 pva Exp $
+
+*opal-3.6.8-r2 (01 May 2011)
+
+ 01 May 2011; Peter Volkov <pva@gentoo.org> +opal-3.6.8-r2.ebuild,
+ metadata.xml:
+ Use virtual/ffmpeg dependency, bug #362161 wrt Tomáš Chvátal. Add
+ ‘ilbc’ USE flag, bug 348284 by Nico R.
18 Jan 2011; Christian Faulhammer <fauli@gentoo.org> opal-3.6.8-r1.ebuild:
stable x86, bug 348987
diff --git a/net-libs/opal/metadata.xml b/net-libs/opal/metadata.xml
index 3c9538307bec..1aaf488dbc06 100644
--- a/net-libs/opal/metadata.xml
+++ b/net-libs/opal/metadata.xml
@@ -17,6 +17,7 @@
<flag name="h323">Enable H.323 protocol</flag>
<flag name="iax">Enable Inter-Asterisk eXchange protocol</flag>
<flag name="ivr">Enable Interactive Voice Response</flag>
+ <flag name="ilbc">Enable iLBC (RFC 3951) speech codec</flag>
<flag name="ixj">Enable xJack cards support</flag>
<flag name="lid">Enable Line Interface Device</flag>
<flag name="plugins">Enable plugins support</flag>
diff --git a/net-libs/opal/opal-3.6.8-r2.ebuild b/net-libs/opal/opal-3.6.8-r2.ebuild
new file mode 100644
index 000000000000..df94917cb2b1
--- /dev/null
+++ b/net-libs/opal/opal-3.6.8-r2.ebuild
@@ -0,0 +1,272 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-libs/opal/opal-3.6.8-r2.ebuild,v 1.1 2011/05/01 08:28:32 pva Exp $
+
+EAPI="4"
+
+inherit eutils autotools toolchain-funcs java-pkg-opt-2 flag-o-matic
+
+HTMLV="3.6.7" # There is no 3.6.8 release of htmldoc
+DESCRIPTION="C++ class library normalising numerous telephony protocols"
+HOMEPAGE="http://www.opalvoip.org/"
+SRC_URI="mirror://sourceforge/opalvoip/${P}.tar.bz2
+ doc? ( mirror://sourceforge/opalvoip/${PN}-${HTMLV}-htmldoc.tar.bz2 )"
+
+LICENSE="MPL-1.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="+audio capi celt debug doc dtmf examples fax ffmpeg h224 h281 h323 iax
+ilbc ipv6 ivr ixj java ldap lid +plugins sbc sip sipim srtp ssl stats swig
+theora +video vpb vxml wav x264 x264-static xml"
+
+REQUIRED_USE="x264-static? ( x264 )
+ h281? ( h224 )"
+
+RDEPEND=">=net-libs/ptlib-2.6.6[stun,debug=,audio?,dtmf?,ipv6?,ldap?,ssl?,video?,vxml?,wav?,xml?]
+ >=media-libs/speex-1.2_beta
+ fax? ( net-libs/ptlib[asn] )
+ h323? ( net-libs/ptlib[asn] )
+ ivr? ( net-libs/ptlib[xml,vxml] )
+ java? ( >=virtual/jre-1.4 )
+ plugins? (
+ media-sound/gsm
+ capi? ( net-dialup/capi4k-utils )
+ celt? ( media-libs/celt )
+ ffmpeg? ( virtual/ffmpeg[encode] )
+ ixj? ( sys-kernel/linux-headers )
+ ilbc? ( dev-libs/ilbc-rfc3951 )
+ sbc? ( media-libs/libsamplerate )
+ theora? ( media-libs/libtheora )
+ x264? ( >=media-video/ffmpeg-0.4.7
+ media-libs/x264 ) )
+ srtp? ( net-libs/libsrtp )"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ >=sys-devel/gcc-3
+ java? ( swig? ( dev-lang/swig )
+ >=virtual/jdk-1.4 )"
+
+# NOTES:
+# ffmpeg[encode] is for h263 and mpeg4
+# ssl, xml, vxml, ipv6, dtmf, ldap, audio, wav, and video are use flags
+# herited from ptlib: feature is enabled if ptlib has enabled it
+# however, disabling it if ptlib has it looks hard (coz of buildopts.h)
+# forcing ptlib to disable it for opal is not a solution too
+# atm, accepting the "auto-feature" looks like a good solution
+# (asn is used for fax and config _only_ for examples)
+# OPALDIR should not be used anymore but if a package still need it, create it
+
+pkg_setup() {
+ # workaround for bug 282838
+ append-flags "-fno-visibility-inlines-hidden"
+
+ # Upstream fixed this in trunk
+ # http://opalvoip.svn.sourceforge.net/viewvc/opalvoip?view=revision&revision=25165
+ append-flags -D__STDC_CONSTANT_MACROS #324323
+
+ # need >=gcc-3
+ if [[ $(gcc-major-version) -lt 3 ]]; then
+ eerror "You need to use gcc-3 at least."
+ eerror "Please change gcc version with 'gcc-config'."
+ die "You need to use gcc-3 at least."
+ fi
+
+ java-pkg-opt-2_pkg_setup
+}
+
+src_prepare() {
+ # remove visual studio related files from samples/
+ if use examples; then
+ rm -f samples/*/*.vcproj
+ rm -f samples/*/*.sln
+ rm -f samples/*/*.dsp
+ rm -f samples/*/*.dsw
+ fi
+
+ # upstream patch 2808915
+ epatch "${FILESDIR}"/${PN}-3.6.4-jdkroot.patch
+
+ epatch "${FILESDIR}"/${P}-build-fix.patch #343041
+ epatch "${FILESDIR}"/${P}-ldflags.patch
+
+ # h224 really needs h323 ?
+ # TODO: get a confirmation in ml
+ sed -i -e "s:\(.*HAS_H224.*\), \[OPAL_H323\]:\1:" configure.ac \
+ || die "sed failed"
+
+ eaclocal
+ eautoconf
+
+ # in plugins
+ cd plugins/
+ eaclocal
+ eautoconf
+ cd ..
+
+ # disable srtp if srtp is not enabled (prevent auto magic dep)
+ # upstream bug 2686485 (fixed in 3.7)
+ if ! use srtp; then
+ sed -i -e "s/OPAL_SRTP=yes/OPAL_SRTP=no/" configure \
+ || die "patching configure failed"
+ fi
+
+ # disable theora if theora is not enabled (prevent auto magic dep)
+ # upstream bug 2686488 (fixed in 3.7)
+ if ! use theora; then
+ sed -i -e "s/HAVE_THEORA=yes/HAVE_THEORA=no/" plugins/configure \
+ || die "patching plugins/configure failed"
+ fi
+
+ # disable mpeg4 and h263p if ffmpeg is not enabled (prevent auto magic dep)
+ # upstream bug 2686495 (fixed in 3.7)
+ if ! use ffmpeg; then
+ sed -i -e "s/HAVE_H263P=yes/HAVE_H263P=no/" plugins/configure \
+ || die "patching plugins/configure failed"
+ sed -i -e "s/HAVE_MPEG4=yes/HAVE_MPEG4=no/" plugins/configure \
+ || die "patching plugins/configure failed"
+ fi
+
+ # disable celt if celt is not enabled (prevent auto magic dep)
+ # already in repository
+ if ! use celt; then
+ sed -i -e "s/HAVE_CELT=yes/HAVE_CELT=no/" plugins/configure \
+ || die "sed failed"
+ fi
+
+ # fix gsm wav49 support check, upstream bug 2686500 (fixed in 3.7)
+ if use plugins; then
+ sed -i -e "s:gsm\.h:gsm/gsm.h:" plugins/configure \
+ || die "patching plugins/configure failed"
+ fi
+
+ # fix automatic swig detection, upstream bug 2712521 (upstream reject it)
+ if ! use swig; then
+ sed -i -e "/^SWIG=/d" configure || die "patching configure failed"
+ fi
+
+ use ilbc || { rm -r plugins/audio/iLBC/ || die "removing iLBC failed"; }
+
+ java-pkg-opt-2_src_prepare
+}
+
+src_configure() {
+ local forcedconf=""
+
+ # fix bug 277233, upstream bug 2820939
+ if use fax; then
+ forcedconf="${forcedconf} --enable-statistics"
+ fi
+
+ # --with-libavcodec-source-dir should _not_ be set, it's for trunk sources
+ # versioncheck: check for ptlib version
+ # shared: should always be enabled for a lib
+ # localspeex, localspeexdsp, localgsm, localilbc: never use bundled libs
+ # samples: only build some samples, useless
+ # libavcodec-stackalign-hack: prevent hack (default disable by upstream)
+ # default-to-full-capabilties: default enable by upstream
+ # aec: atm, only used when bundled speex, so it's painless for us
+ # zrtp doesn't depend on net-libs/libzrtpcpp but on libzrtp from
+ # http://zfoneproject.com/ wich is not in portage
+ # msrp: highly experimental
+ # spandsp: doesn't work with newest spandsp, upstream bug 2796047
+ # g711plc: force enable
+ # rfc4103: not really used, upstream bug 2795831
+ # t38, spandsp: merged in fax
+ # h450, h460, h501: merged in h323 (they are additional features of h323)
+ econf \
+ --enable-versioncheck \
+ --enable-shared \
+ --disable-zrtp \
+ --disable-localspeex \
+ --disable-localspeexdsp \
+ --disable-localgsm \
+ --disable-localilbc \
+ --disable-samples \
+ --disable-libavcodec-stackalign-hack \
+ --enable-default-to-full-capabilties \
+ --enable-aec \
+ --disable-msrp \
+ --disable-spandsp \
+ --enable-g711plc \
+ --enable-rfc4103 \
+ $(use_enable debug) \
+ $(use_enable capi) \
+ $(use_enable fax) \
+ $(use_enable fax t38) \
+ $(use_enable h224) \
+ $(use_enable h281) \
+ $(use_enable h323) \
+ $(use_enable h323 h450) \
+ $(use_enable h323 h460) \
+ $(use_enable h323 h501) \
+ $(use_enable iax) \
+ $(use_enable ivr) \
+ $(use_enable ixj) \
+ $(use_enable java) \
+ $(use_enable lid) \
+ $(use_enable plugins) \
+ $(use_enable sbc) \
+ $(use_enable sip) \
+ $(use_enable sipim) \
+ $(use_enable stats statistics) \
+ $(use_enable video) $(use_enable video rfc4175) \
+ $(use_enable vpb) \
+ $(use_enable x264 h264) \
+ $(use_enable x264-static x264-link-static) \
+ ${forcedconf}
+}
+
+src_compile() {
+ local makeopts=""
+
+ use debug && makeopts="debug"
+
+ emake ${makeopts} || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ if use doc; then
+ dohtml -r "${WORKDIR}"/html/* docs/* || die "dohtml failed"
+ fi
+
+ # ChangeLog is not standard
+ dodoc ChangeLog-${PN}-v${PV//./_}.txt || die "dodoc failed"
+
+ if use examples; then
+ local exampledir="/usr/share/doc/${PF}/examples"
+ local basedir="samples"
+ local sampledirs="`ls ${basedir} --hide=configure* \
+ --hide=opal_samples.mak.in`"
+
+ # first, install files
+ insinto ${exampledir}/
+ doins ${basedir}/{configure*,opal_samples*} \
+ || die "doins failed"
+
+ # now, all examples
+ for x in ${sampledirs}; do
+ insinto ${exampledir}/${x}/
+ doins ${basedir}/${x}/* || die "doins failed"
+ done
+
+ # some examples need version.h
+ insinto "/usr/share/doc/${PF}/"
+ doins version.h || die "doins failed"
+ fi
+}
+
+pkg_postinst() {
+ if use examples; then
+ ewarn "All examples have been installed, some of them will not work on your system"
+ ewarn "it will depend of the enabled USE flags in ptlib and opal"
+ fi
+
+ if ! use plugins || ! use audio || ! use video; then
+ ewarn "You have disabled audio, video or plugins USE flags."
+ ewarn "Most audio/video features or plugins have been disabled silently"
+ ewarn "even if enabled via USE flags."
+ ewarn "Having a feature enabled via USE flag but disabled can lead to issues."
+ fi
+}