@@ -, +, @@ --- net-libs/pjproject/Manifest | 1 + net-libs/pjproject/metadata.xml | 24 +++++++ net-libs/pjproject/pjproject-2.5.1.ebuild | 102 ++++++++++++++++++++++++++++++ net-misc/asterisk/asterisk-13.8.2.ebuild | 6 +- net-misc/asterisk/metadata.xml | 1 + 5 files changed, 132 insertions(+), 2 deletions(-) create mode 100644 net-libs/pjproject/Manifest create mode 100644 net-libs/pjproject/metadata.xml create mode 100644 net-libs/pjproject/pjproject-2.5.1.ebuild --- a/net-libs/pjproject/Manifest +++ a/net-libs/pjproject/Manifest @@ -0,0 +1, @@ +DIST pjproject-2.5.1.tar.bz2 4180967 SHA256 c5a63bed7a0832ff53ddcd69612cf43148019d0f320b22beb5ca2223bc857dcb SHA512 7722980e5afa4b541614c4117462b0df3fff2bfec45ca5da18a7c3fce2a5dd6c628ed0bb2412da6086abd59c5ba2844bea9466f49737dbc9ca85d32ef67a2628 WHIRLPOOL 5b7845a31a3da765358f0a1b28805e39dadae06b01f94fb84809f01bddec8e5d3bfa3c0ef19be6a5dbb7519e3f5948c4bf1c73eebf3efeb609c6a3bf4598585f --- a/net-libs/pjproject/metadata.xml +++ a/net-libs/pjproject/metadata.xml @@ -0,0 +1,24 @@ + + + + + chainsaw@gentoo.org + Tony Vroon + + + Inlcude AMR codec in the build + Include Video4Linux v2 support in the build + Use /dev/epoll ioqueue on Linux (experimental) + Include G.711 codecs in the build + Include G.722 codec in the build + Include G.722.1 codec in the build + Include iLBC codec in the build + Include Linear/L16 codec family in the build + Include libyuv in the build + Include Open H.264 support in the build + Include OPUS support in the build + Include resampling implementations in the build + Include SILK support in the build + Enable WebRTC support + + --- a/net-libs/pjproject/pjproject-2.5.1.ebuild +++ a/net-libs/pjproject/pjproject-2.5.1.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit flag-o-matic + +DESCRIPTION="Open source SIP, Media, and NAT Traversal Library" +HOMEPAGE="http://www.pjsip.org/" +SRC_URI="http://www.pjsip.org/release/${PV}/${P}.tar.bz2" +KEYWORDS="~amd64 ~x86" + +LICENSE="GPL-2" +SLOT="0" +CODEC_FLAGS="g711 g722 g7221 gsm ilbc speex l16" +VIDEO_FLAGS="sdl ffmpeg v4l2 openh264 libyuv" +SOUND_FLAGS="alsa oss portaudio" +IUSE="amr debug doc epoll examples ipv6 opus resample silk ssl static-libs webrtc ${CODEC_FLAGS} ${VIDEO_FLAGS} ${SOUND_FLAGS}" + +RDEPEND="alsa? ( media-libs/alsa-lib ) + oss? ( media-libs/portaudio[oss] ) + portaudio? ( media-libs/portaudio ) + + amr? ( media-libs/opencore-amr ) + gsm? ( media-sound/gsm ) + ilbc? ( dev-libs/ilbc-rfc3951 ) + opus? ( media-libs/opus ) + speex? ( media-libs/speex ) + + ffmpeg? ( virtual/ffmpeg:= ) + sdl? ( media-libs/libsdl ) + openh264? ( media-libs/openh264 ) + resample? ( media-libs/libsamplerate ) + + ssl? ( dev-libs/openssl:= ) + + net-libs/libsrtp" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +REQUIRED_USE="?? ( ${SOUND_FLAGS} )" + +src_configure() { + local myconf=() + local videnable="--disable-video" + local t + + use ipv6 && append-flags -DPJ_HAS_IPV6=1 + use debug || append-flags -DNDEBUG=1 + + for t in ${CODEC_FLAGS}; do + myconf+=( $(use_enable ${t} ${t}-codec) ) + done + + for t in ${VIDEO_FLAGS}; do + myconf+=( $(use_enable ${t}) ) + use "${t}" && videnable="--enable-video" + done + + econf \ + --enable-shared \ + --with-external-srtp \ + ${videnable} \ + $(use_enable epoll) \ + $(use_with gsm external-gsm) \ + $(use_with speex external-speex) \ + $(use_enable speex speex-aec) \ + $(use_enable resample) \ + $(use_enable resample libsamplerate) \ + $(use_enable resample resample-dll) \ + $(use_enable alsa sound) \ + $(use_enable oss) \ + $(use_with portaudio external-pa) \ + $(use_enable portaudio ext-sound) \ + $(use_enable amr opencore-amr) \ + $(use_enable silk) \ + $(use_enable opus) \ + $(use_enable ssl) \ + $(use_enable webrtc) \ + "${myconf[@]}" +} + +src_compile() { + emake dep + emake +} + +src_install() { + emake DESTDIR="${D}" install + + if use doc; then + dodoc README.txt README-RTEMS + fi + + if use examples; then + insinto "/usr/share/doc/${PF}/examples" + doins -r pjsip-apps/src/samples + fi + + use static-libs || rm "${D}/usr/$(get_libdir)/*.a" +} --- a/net-misc/asterisk/asterisk-13.8.2.ebuild +++ a/net-misc/asterisk/asterisk-13.8.2.ebuild @@ -20,7 +20,7 @@ IUSE_VOICEMAIL_STORAGE=" voicemail_storage_odbc voicemail_storage_imap " -IUSE="${IUSE_VOICEMAIL_STORAGE} alsa bluetooth calendar +caps cluster curl dahdi debug doc freetds gtalk http iconv ilbc xmpp ldap libedit libressl lua mysql newt +samples odbc osplookup oss portaudio postgres radius selinux snmp span speex srtp static syslog vorbis" +IUSE="${IUSE_VOICEMAIL_STORAGE} alsa bluetooth calendar +caps cluster curl dahdi debug doc freetds gtalk http iconv ilbc xmpp ldap libedit libressl lua mysql newt +samples odbc osplookup oss pjproject portaudio postgres radius selinux snmp span speex srtp static syslog vorbis" IUSE_EXPAND="VOICEMAIL_STORAGE" REQUIRED_USE="gtalk? ( xmpp ) ^^ ( ${IUSE_VOICEMAIL_STORAGE/+/} ) @@ -75,6 +75,7 @@ DEPEND="${CDEPEND} !net-libs/pjsip voicemail_storage_imap? ( virtual/imap-c-client ) virtual/pkgconfig + pjproject? ( net-libs/pjproject[srtp,ext-sound] ) " RDEPEND="${CDEPEND} @@ -119,7 +120,8 @@ src_configure() { $(use_with caps cap) \ $(use_with http gmime) \ $(use_with newt) \ - $(use_with portaudio) + $(use_with portaudio) \ + $(use_with pjproject) # Blank out sounds/sounds.xml file to prevent # asterisk from installing sounds files (we pull them in via --- a/net-misc/asterisk/metadata.xml +++ a/net-misc/asterisk/metadata.xml @@ -16,5 +16,6 @@ Enable embedded web server Enable high-availability support through the Corosync Cluster Engine Enable the Internet Low Bitrate Codec (iLBC) + Enable support for pjproject (pjsip) --