From 1f19eb46e509c1a2e21cc8ac5f974b706289a131 Mon Sep 17 00:00:00 2001 From: Igor Date: Thu, 31 Mar 2011 01:51:23 +0400 Subject: Ekiga 3.3.0, PTlib 2.8.4, Opal 3.8.4 --- net-libs/opal/Manifest | 4 + net-libs/opal/metadata.xml | 45 ++++ net-libs/opal/opal-3.8.4.ebuild | 239 ++++++++++++++++++ net-libs/ptlib/Manifest | 5 + net-libs/ptlib/files/ptlib-2.6.4-vxml-ptones.patch | 10 + net-libs/ptlib/metadata.xml | 28 +++ net-libs/ptlib/ptlib-2.8.4.ebuild | 267 +++++++++++++++++++++ net-voip/ekiga/Manifest | 5 + net-voip/ekiga/ekiga-3.3.0.ebuild | 183 ++++++++++++++ ....3.0-plugins_resource-list_const-iterator.patch | 48 ++++ ...a-3.3.0-plugins_resource-list_parentheses.patch | 12 + net-voip/ekiga/metadata.xml | 17 ++ 12 files changed, 863 insertions(+) create mode 100644 net-libs/opal/Manifest create mode 100644 net-libs/opal/metadata.xml create mode 100644 net-libs/opal/opal-3.8.4.ebuild create mode 100644 net-libs/ptlib/Manifest create mode 100644 net-libs/ptlib/files/ptlib-2.6.4-vxml-ptones.patch create mode 100644 net-libs/ptlib/metadata.xml create mode 100644 net-libs/ptlib/ptlib-2.8.4.ebuild create mode 100644 net-voip/ekiga/Manifest create mode 100644 net-voip/ekiga/ekiga-3.3.0.ebuild create mode 100644 net-voip/ekiga/files/ekiga-3.3.0-plugins_resource-list_const-iterator.patch create mode 100644 net-voip/ekiga/files/ekiga-3.3.0-plugins_resource-list_parentheses.patch create mode 100644 net-voip/ekiga/metadata.xml diff --git a/net-libs/opal/Manifest b/net-libs/opal/Manifest new file mode 100644 index 0000000..c685dd8 --- /dev/null +++ b/net-libs/opal/Manifest @@ -0,0 +1,4 @@ +DIST opal-3.6.7-htmldoc.tar.bz2 5842269 RMD160 039b138991334e0ecdc243d73a8dbca6d13c4df4 SHA1 cb2c5ee78f8461a2e027f0142c96c0c5a70a55c1 SHA256 d6c11b162b4b26cfc3df2c2c12b5d8a0e1b2dfa5c6869995b0fafa2f2a716e7b +DIST opal-3.8.4.tar.bz2 7463844 RMD160 4123656a20bed925004d215a70de77bf2a3bb0f4 SHA1 49f191f5ce57f0d25e0a9b101e0b4534460a80db SHA256 9c1a3e12f425c34112012574aa623b2b6c465d70fc6f7cebed0aacc6937cd435 +EBUILD opal-3.8.4.ebuild 7164 RMD160 1ea4a1d423fd8c6004e1cda95a8343f78ac1460c SHA1 eab495c693b1a946662492989d4b423e962455d3 SHA256 4610ab4563af7c6a243df7fa86b1b8f3e536572f7fc7b06e5b452112ea9807ac +MISC metadata.xml 2065 RMD160 72f5b31577c61334a802fa85c51b4163c81aced1 SHA1 d1b558b04691f19a9eccc648708487c8d169db82 SHA256 065bbfbad937a4e217f16a4d2f410f4ff282ca5f869ca9387986d85a99add8b4 diff --git a/net-libs/opal/metadata.xml b/net-libs/opal/metadata.xml new file mode 100644 index 0000000..3c95383 --- /dev/null +++ b/net-libs/opal/metadata.xml @@ -0,0 +1,45 @@ + + + + voip + + volkmar@gentoo.org + Mounir Lamouri + + + Enable audio support + Enable CAPI support + Enable CELT ultra-low delay audio codec + Enable DTMF encoding/decoding support + Enable T.38 FAX protocol + Enable H.224 real time control protocol + Enable H.281 Far-End Camera Control protocol + Enable H.323 protocol + Enable Inter-Asterisk eXchange protocol + Enable Interactive Voice Response + Enable xJack cards support + Enable Line Interface Device + Enable plugins support + Enable the Bluetooth low-complexity, SubBand Codec + + Enable Session Initiation Protocol + Enable SIP Instant Messages session + Enable Secure Real-time Transport Protocol + Enable statistic reporting + Use swig to generate bindings + Enable video support + Enable Voicetronics VPB card support + Enable VXML support + Enable WAVFILE support + Install x264 plugin statically linked with x264 + + + Disable audio codecs + Disable video codecs + + + diff --git a/net-libs/opal/opal-3.8.4.ebuild b/net-libs/opal/opal-3.8.4.ebuild new file mode 100644 index 0000000..d4f5c00 --- /dev/null +++ b/net-libs/opal/opal-3.8.4.ebuild @@ -0,0 +1,239 @@ +# 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-r1.ebuild,v 1.2 2011/01/18 16:20:25 fauli Exp $ + +EAPI="2" + +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 +ipv6 ivr ixj java ldap lid +plugins sbc sip sipim srtp ssl stats swig theora ++video vpb vxml wav x264 x264-static xml" + +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? ( dev-libs/ilbc-rfc3951 + media-sound/gsm + capi? ( net-dialup/capi4k-utils ) + celt? ( media-libs/celt ) + ffmpeg? ( >=media-video/ffmpeg-0.5[encode] ) + ixj? ( sys-kernel/linux-headers ) + 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" + + 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 + + if use h281 && ! use h224; then + ewarn "You have enabled h281 but h224 is disabled." + ewarn "H.281 is over H.224 so you should enable h224 if you want h281." + fi + + if use x264-static && ! use x264; then + ewarn "You have enabled x264-static but x264 is disabled." + ewarn "x264-static is going to be useless if x264 is not enabled." + 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 + + # 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 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 automatic swig detection, upstream bug 2712521 (upstream reject it) + if ! use swig; then + sed -i -e "/^SWIG=/d" configure || die "patching configure failed" + fi + + 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 +} diff --git a/net-libs/ptlib/Manifest b/net-libs/ptlib/Manifest new file mode 100644 index 0000000..e9d81df --- /dev/null +++ b/net-libs/ptlib/Manifest @@ -0,0 +1,5 @@ +AUX ptlib-2.6.4-vxml-ptones.patch 250 RMD160 b7eddb71af5d331ab104045c47d763bec1933434 SHA1 e7e586d16a13de169447a392662056549ff84912 SHA256 9d678b1439184728eb28ef7495816c59504b16a5bbc90e978f27f590666f865c +DIST ptlib-2.8.4-htmldoc.tar.bz2 2401421 RMD160 ef178c1718ff78ede8d548425427aaf79babd271 SHA1 c61f9a39da1aebca4330a1d0c4f8bd5231b65d96 SHA256 439840c73b1f642e3ebe83884c219691dfe377e291923eeae3c3572d13b18e53 +DIST ptlib-2.8.4.tar.bz2 3425129 RMD160 1209e23e1c8a6d5599b38aaa865a8a8109ee13a7 SHA1 a8c031f3659767b5538ca665c20656ce9b4cda31 SHA256 349890cdbbcd83af5153c37cbaa8aa12a427137570d36404323e3091e3ce4543 +EBUILD ptlib-2.8.4.ebuild 7065 RMD160 79de7f1efec36d88107f20790446d78d174dfbaf SHA1 df306512e332ab219ba40665498b2d80b2d726d9 SHA256 663c9d1531d42d7fb2692a7110eddd6e4eca8973cd2d45df2e586ea6eadec948 +MISC metadata.xml 1160 RMD160 b259b8631049719fe5c9aed02f15b95232860d41 SHA1 78af21a8a19d1d988329da8a70babd744a4e0e6c SHA256 91aa203d63993f44e881c8ee7908d49596ddd1c03b89ea5b041ac86e2877fdb7 diff --git a/net-libs/ptlib/files/ptlib-2.6.4-vxml-ptones.patch b/net-libs/ptlib/files/ptlib-2.6.4-vxml-ptones.patch new file mode 100644 index 0000000..04b4fe1 --- /dev/null +++ b/net-libs/ptlib/files/ptlib-2.6.4-vxml-ptones.patch @@ -0,0 +1,10 @@ +--- src/Makefile.old 2009-09-12 23:26:39.000000000 +0200 ++++ src/Makefile 2009-09-12 23:35:19.000000000 +0200 +@@ -178,6 +178,7 @@ + endif + + ifdef HAS_VXML ++SOURCES += $(COMPONENT_SRC_DIR)/dtmf.cxx + SOURCES += $(COMPONENT_SRC_DIR)/vxml.cxx + endif + diff --git a/net-libs/ptlib/metadata.xml b/net-libs/ptlib/metadata.xml new file mode 100644 index 0000000..1b6d6f6 --- /dev/null +++ b/net-libs/ptlib/metadata.xml @@ -0,0 +1,28 @@ + + + + voip + + volkmar@gentoo.org + Mounir Lamouri + + + Enable ASN decoding/encoding support + Enable audio support + Enable DTMF encoding/decoding support + Enable HTTP support + Enable mail protocols (POP3/SMTP) + Enable QOS support + Enable remote connection support + Enable serial port support + Enable shared memory video devices + Enable SOCKS protocol support + Enable STUN support + Enable telnet protocol support + Enable Text-To-Speech server support + Enable video support + Enable VoiceXML support + Enable WAVFILE support + + + diff --git a/net-libs/ptlib/ptlib-2.8.4.ebuild b/net-libs/ptlib/ptlib-2.8.4.ebuild new file mode 100644 index 0000000..ba5a113 --- /dev/null +++ b/net-libs/ptlib/ptlib-2.8.4.ebuild @@ -0,0 +1,267 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-libs/ptlib/ptlib-2.6.7-r1.ebuild,v 1.4 2011/03/25 09:47:39 pva Exp $ + +EAPI="2" + +inherit eutils + +HTMLV="2.8.4" +DESCRIPTION="Network focused portable C++ class library providing high level functions" +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" +# default enabled are features from 'minsize', the most used according to ptlib +IUSE="alsa +asn +audio debug doc dtmf esd examples ffmpeg ftp http ieee1394 ipv6 +jabber ldap mail odbc oss pch qos remote sasl sdl serial shmvideo snmp soap +socks ssl +stun telnet v4l v4l2 +video vxml wav xml xmlrpc" + +CDEPEND=" + audio? ( alsa? ( media-libs/alsa-lib ) + esd? ( media-sound/esound ) ) + ldap? ( net-nds/openldap ) + odbc? ( dev-db/unixODBC ) + sasl? ( dev-libs/cyrus-sasl:2 ) + sdl? ( media-libs/libsdl ) + ssl? ( dev-libs/openssl ) + video? ( ieee1394? ( media-libs/libdc1394:1 + media-libs/libdv + sys-libs/libavc1394 + sys-libs/libraw1394 ) + v4l2? ( media-libs/libv4l ) ) + xml? ( dev-libs/expat ) + !!dev-libs/pwlib" +RDEPEND="${CDEPEND} + ffmpeg? ( media-video/ffmpeg )" +DEPEND="${CDEPEND} + dev-util/pkgconfig + sys-devel/bison + sys-devel/flex + video? ( v4l? ( sys-kernel/linux-headers ) + v4l2? ( sys-kernel/linux-headers ) )" + +# NOTES: +# media-libs/libdc1394:2 should be supported but headers location have changed +# tools/ directory is ignored +# looks to have an auto-magic dep with medialibs, but not in the tree so... +# upstream bug 2794736 +# avc plugin is disabled to fix bug 276514, see upstream bug 2821744 + +# TODO: +# manage in a better way the conditional use flags (with eapi-3 ?) +# libv4l is an automagic dep for v4l2 plugin, see upstream bug 2867383 + +conditional_use_warn_msg() { + ewarn "To enable ${1} USE flag, you need ${2} USE flag to be enabled" + ewarn "Please, enable ${2} or disable ${1}" +} + +pkg_setup() { + local use_warn=false + + if use sdl && ! use video; then + conditional_use_warn_msg "sdl" "video" + use_warn=true + fi + + if use jabber && ! use xml; then + conditional_use_warn_msg "jabber" "xml" + use_warn=true + fi + + if use vxml; then + if ! use xml; then + conditional_use_warn_msg "vxml" "xml" + use_warn=true + fi + if ! use http; then + conditional_use_warn_msg "vxml" "http" + use_warn=true + fi + fi + + if use xmlrpc; then + if ! use xml; then + conditional_use_warn_msg "xmlrpc" "xml" + use_warn=true + fi + # configure script tells it needs http but it fails, see bug 277385 + # the bug has been reported at upstream bug 2820814 + if ! use http; then + conditional_use_warn_msg "xmlrpc" "http" + use_warn=true + fi + fi + + if use soap; then + if ! use xml; then + conditional_use_warn_msg "soap" "xml" + use_warn=true + fi + # fix bug 280850, see upstream bug 2844915 + if ! use http; then + conditional_use_warn_msg "soap" "http" + use_warn=true + fi + fi + + if ${use_warn}; then + echo + ewarn "Please look at previous messages and re-emerge accordingly if needed." + ebeep + epause 5 + fi +} + +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 + + # bug 283675, upstream bug 2857750 + if use vxml && ! use dtmf; then + epatch "${FILESDIR}"/${PN}-2.6.4-vxml-ptones.patch + fi +} + +src_configure() { + local myconf="" + + # plugins are disabled only if ! audio and ! video + if ! use audio && ! use video; then + myconf="${myconf} --disable-plugins" + else + myconf="${myconf} --enable-plugins" + fi + + # minsize, openh323, opal: presets of features (overwritten by use flags) + # ansi-bool, atomicity: there is no reason to disable those features + # internalregex: we want to use system one + # sunaudio and bsdvideo are respectively for SunOS and BSD's + # appshare, vfw: only for windows + # samples: no need to build samples + # avc: disabled, bug 276514, upstream bug 2821744 + # pipechan, configfile, resolver, url: force enabling + econf ${myconf} \ + --disable-minsize \ + --disable-openh323 \ + --disable-opal \ + --enable-ansi-bool \ + --enable-atomicity \ + --disable-internalregex \ + --disable-sunaudio \ + --disable-bsdvideo \ + --disable-appshare \ + --disable-vfw \ + --disable-samples \ + --disable-avc \ + --enable-configfile \ + --enable-pipechan \ + --enable-resolver \ + --enable-url \ + --enable-tts \ + $(use_enable audio) \ + $(use_enable alsa) \ + $(use_enable asn) \ + $(use_enable debug exceptions) \ + $(use_enable debug memcheck) \ + $(use_enable debug tracing) \ + $(use_enable dtmf) \ + $(use_enable esd) \ + $(use_enable ffmpeg ffvdev) \ + $(use_enable ftp) \ + $(use_enable http) \ + $(use_enable http httpforms) \ + $(use_enable http httpsvc) \ + $(use_enable ieee1394 dc) \ + $(use_enable ipv6) \ + $(use_enable jabber) \ + $(use_enable ldap openldap) \ + $(use_enable mail pop3smtp) \ + $(use_enable odbc) \ + $(use_enable oss) \ + $(use_enable pch) \ + $(use_enable qos) \ + $(use_enable remote remconn) \ + $(use_enable sasl) \ + $(use_enable sdl) \ + $(use_enable serial) \ + $(use_enable shmvideo) \ + $(use_enable snmp) \ + $(use_enable soap) \ + $(use_enable socks) \ + $(use_enable ssl openssl) \ + $(use_enable stun) \ + $(use_enable telnet) \ + $(use_enable v4l) \ + $(use_enable v4l2) \ + $(use_enable video) $(use_enable video vidfile) \ + $(use_enable vxml) \ + $(use_enable wav wavfile) \ + $(use_enable xml expat) \ + $(use_enable xmlrpc) +} + +src_compile() { + local makeopts="" + + use debug && makeopts="debug" + + emake ${makeopts} || die "emake failed" +} + +src_install() { + local makeopts="" + + use debug && makeopts="DEBUG=1" + + emake DESTDIR="${D}" ${makeopts} install || die "emake install failed" + + if use doc; then + dohtml -r "${WORKDIR}"/html/* || die "dohtml failed" + fi + + dodoc History.txt ReadMe.txt ReadMe_QOS.txt || die "dodoc failed" + + if use audio || use video; then + newdoc plugins/ReadMe.txt ReadMe-Plugins.txt || die "newdoc failed" + fi + + if use examples; then + local exampledir="/usr/share/doc/${PF}/examples" + local basedir="samples" + local sampledirs="`ls samples --hide=Makefile`" + + # first, install Makefile + insinto ${exampledir}/ + doins ${basedir}/Makefile || die "doins failed" + + # now, all examples + for x in ${sampledirs}; do + insinto ${exampledir}/${x}/ + doins ${basedir}/${x}/* || die "doins failed" + done + 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." + ewarn "To test examples, you have to run PTLIBDIR=/usr/share/ptlib make" + fi + + if ! use audio || ! use video; then + ewarn "You have disabled audio or video USE flags." + ewarn "Most audio/video have been disabled silently even if enabled via USE flags." + ewarn "Having a feature enabled via use flag but disabled can lead to issues." + fi +} diff --git a/net-voip/ekiga/Manifest b/net-voip/ekiga/Manifest new file mode 100644 index 0000000..d0a4aac --- /dev/null +++ b/net-voip/ekiga/Manifest @@ -0,0 +1,5 @@ +AUX ekiga-3.3.0-plugins_resource-list_const-iterator.patch 2020 RMD160 cac672282dab2dead8f179c4fb646cba2990422a SHA1 01fcbc63bef99311d8a443423fa93ee96e6a8d8f SHA256 0fff9f2972fb85d888ea2bb66708701becd206219b69967ea793f62f020ffcca +AUX ekiga-3.3.0-plugins_resource-list_parentheses.patch 661 RMD160 ed82309b14452df4fca6a07d55a955fddbafb1e9 SHA1 7ae1a33e89f3768d445c7a26fcc77739f964a540 SHA256 912018742fe2851da4ab7b7b603ee0840524b0e04277a76b012d05776a953627 +DIST ekiga-3.3.0.tar.bz2 9179510 RMD160 7cce53efbc5f097fe5e50b51a422f01ef2406d85 SHA1 d6127b0a8132d572b298e212c2901c02d4a93e45 SHA256 3fb22704e44afebf4294632505fb7a13f3eccb152fcb5878e97aa556d9486d2c +EBUILD ekiga-3.3.0.ebuild 5149 RMD160 ff3a1c30440670e5ff7687998c5d5b579e98524b SHA1 773d1579865cd4b90d83c96b74e6069b32747fe2 SHA256 d61d14706234c04f489652e9f60617f940c405760e6637ad39e2d84903cf7685 +MISC metadata.xml 572 RMD160 ed1c0b6f7b51be67aa96c2c5c042fbef023c6a72 SHA1 33e80a99b5ad43d02439c5454f594adb961307d8 SHA256 6c1b059a423b06dae8acda431a06e0a80568b3fce52d6c9d42cceddc2325a8b2 diff --git a/net-voip/ekiga/ekiga-3.3.0.ebuild b/net-voip/ekiga/ekiga-3.3.0.ebuild new file mode 100644 index 0000000..775ac0a --- /dev/null +++ b/net-voip/ekiga/ekiga-3.3.0.ebuild @@ -0,0 +1,183 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-voip/ekiga/ekiga-3.2.7.ebuild,v 1.8 2011/02/28 17:15:37 ssuominen Exp $ + +EAPI=3 + +KDE_REQUIRED="optional" +CMAKE_REQUIRED="never" +GCONF_DEBUG="no" # debug managed by the ebuild + +inherit eutils kde4-base gnome2 +# gnome2 at the end to make it default + +DESCRIPTION="H.323 and SIP VoIP softphone" +HOMEPAGE="http://www.ekiga.org/" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="avahi dbus debug doc eds gconf gnome gstreamer h323 kde kontact ldap +libnotify mmx nls +shm static v4l xcap xv" + +RDEPEND=">=dev-libs/glib-2.14.0:2 + dev-libs/libsigc++:2 + dev-libs/libxml2:2 + >=net-libs/opal-3.8.3[audio,sip,video,debug=,h323?] + >=net-libs/ptlib-2.8.3[stun,video,wav,debug=] + >=x11-libs/gtk+-2.12.0:2 + avahi? ( >=net-dns/avahi-0.6[dbus] ) + dbus? ( >=sys-apps/dbus-0.36 + >=dev-libs/dbus-glib-0.36 ) + eds? ( >=gnome-extra/evolution-data-server-1.2 ) + gconf? ( >=gnome-base/gconf-2.6.0:2 ) + gnome? ( || ( >=x11-libs/gtk+-2.14:2 + ( >=gnome-base/libgnome-2.14.0 + >=gnome-base/libgnomeui-2.14.0 ) ) ) + gstreamer? ( >=media-libs/gst-plugins-base-0.10.21.3:0.10 ) + kde? ( kontact? ( $(add_kdebase_dep kdepimlibs) ) ) + ldap? ( dev-libs/cyrus-sasl:2 + net-nds/openldap ) + libnotify? ( x11-libs/libnotify ) + shm? ( x11-libs/libXext ) + xcap? ( net-libs/libsoup:2.4 ) + xv? ( x11-libs/libXv )" +DEPEND="${RDEPEND} + >=dev-util/intltool-0.35 + >=dev-util/pkgconfig-0.20 + sys-devel/gettext + doc? ( app-text/scrollkeeper + app-text/gnome-doc-utils ) + v4l? ( sys-kernel/linux-headers )" + +DOCS="AUTHORS ChangeLog FAQ MAINTAINERS NEWS README TODO" + +# NOTES: +# having >=gtk+-2.14 is actually removing need of +gnome but it's clearer to +# represent it with || in gnome dep +# TODO: gnome2 eclass add --[dis|en]able-gtk-doc wich throws a QA warning +# a patch has been submitted, see bug 262491 +# ptlib/opal needed features are not checked by ekiga, upstream bug 577249 +# +doc is not installing dev doc (doxygen) + +# UPSTREAM: +# contact ekiga team to be sure intltool and gettext are not nls deps + +pkg_setup() { + forceconf="" + + if use kde; then + kde4-base_pkg_setup + fi + + if use kontact && ! use kde; then + ewarn "To enable kontact USE flag, you need kde USE flag to be enabled." + ewarn "If you need kontact support, please, re-emerge with kde enabled." + forceconf="${forceconf} --disable-kab" + fi + + # update scrollkeeper database if doc has been enabled + if use doc; then + SCROLLKEEPER_UPDATE=1 + else + SCROLLKEEPER_UPDATE=0 + fi + + # dbus-service: always enable if dbus is enabled, no reason to disable it + # scrollkeeper: updates scrollkeeper database + # schemas-install: install gconf schemas + G2CONF="${G2CONF} + --disable-dependency-tracking + --disable-maintainer-mode + --enable-libtool-lock + $(use_enable avahi) + $(use_enable dbus) + $(use_enable dbus dbus_service) + $(use_enable debug gtk-debug) + $(use_enable debug opal-debug) + $(use_enable doc gdu) + $(use_enable doc scrollkeeper) + $(use_enable eds) + $(use_enable gconf) + $(use_enable gconf schemas-install) + $(use_enable gnome) + $(use_enable gstreamer) + $(use_enable h323) + $(use_enable kde) + $(use_enable kontact kab) + $(use_enable ldap) + $(use_enable libnotify notify) + $(use_enable mmx) + $(use_enable nls) + $(use_enable shm) + $(use_enable static static-libs) + $(use_enable xcap) + $(use_enable xv) + ${forceconf}" +} + +src_prepare() { + epatch "${FILESDIR}"/${P}-plugins_resource-list_parentheses.patch + epatch "${FILESDIR}"/${P}-plugins_resource-list_const-iterator.patch + + gnome2_src_prepare + + # remove call to gconftool-2 --shutdown, upstream bug 555976 + # gnome-2 eclass is reloading schemas with SIGHUP + sed -i -e '/gconftool-2 --shutdown/d' Makefile.in || die "sed failed" + + # V4L support is auto-enabled, want it to be a user choice + # do not contact upstream because that's a hack + # TODO: check if upstream has removed this hack + if ! use v4l; then + sed -i -e "s/V4L=\"enabled\"/V4L=\"disabled\"/" configure \ + || die "sed failed" + fi + + # compatibility with kdeprefix, fix bug 283033 + if use kde; then + sed -i -e "s:\tKDE_CFLAGS=\(.*\):\tKDE_CFLAGS=\"\1 -I${KDEDIR}/include\":" \ + configure || die "sed failed" + sed -i -e "s:\(KDE_LIBS=.*\)\(-lkdeui\):\1-L${KDEDIR}/$(get_libdir) \2:" \ + configure || die "sed failed" + fi +} + +src_test() { + # must be explicit because kde4-base in exporting a src_test function + emake -j1 check || die "emake check failed" +} + +src_install() { + gnome2_src_install + + if use doc && use dbus; then + insinto "/usr/share/doc/${PF}/" + doins doc/using_dbus.html || die "doins failed" + fi +} + +pkg_postinst() { + gnome2_pkg_postinst + + if use kde; then + kde4-base_pkg_postinst + fi + + if ! use gnome; then + ewarn "USE=-gnome is experimental, weirdness with UI and config keys can appear." + fi + + if use gstreamer || use kde || use xcap || use kontact; then + ewarn "You have enabled gstreamer, kde, xcap or kontact USE flags." + ewarn "Those USE flags are considered experimental features." + fi +} + +pkg_postrm() { + gnome2_pkg_postrm + + if use kde; then + kde4-base_pkg_postrm + fi +} diff --git a/net-voip/ekiga/files/ekiga-3.3.0-plugins_resource-list_const-iterator.patch b/net-voip/ekiga/files/ekiga-3.3.0-plugins_resource-list_const-iterator.patch new file mode 100644 index 0000000..26a1cd7 --- /dev/null +++ b/net-voip/ekiga/files/ekiga-3.3.0-plugins_resource-list_const-iterator.patch @@ -0,0 +1,48 @@ +diff -urdb ekiga-3.3.0.orig/plugins/resource-list/rl-heap.cpp ekiga-3.3.0/plugins/resource-list/rl-heap.cpp +--- ekiga-3.3.0.orig/plugins/resource-list/rl-heap.cpp 2010-11-04 20:43:15.000000000 +0300 ++++ ekiga-3.3.0/plugins/resource-list/rl-heap.cpp 2011-03-31 01:30:37.000000000 +0400 +@@ -185,7 +185,7 @@ + { + bool go_on = true; + +- for (std::map >::iterator ++ for (std::map >::const_iterator + iter = presentities.begin (); + go_on && iter != presentities.end (); + ++iter) +@@ -254,7 +254,7 @@ + while ( !presentities.empty ()) { + + presentities.begin()->first->removed (); +- for (std::list::iterator iter2 ++ for (std::list::const_iterator iter2 + = presentities.begin()->second.begin (); + iter2 != presentities.begin()->second.end (); + ++iter2) +@@ -381,7 +381,7 @@ + RL::Heap::push_presence (const std::string uri_, + const std::string presence) + { +- for (std::map >::iterator ++ for (std::map >::const_iterator + iter = presentities.begin (); + iter != presentities.end (); + ++iter) { +@@ -395,7 +395,7 @@ + RL::Heap::push_status (const std::string uri_, + const std::string status) + { +- for (std::map >::iterator ++ for (std::map >::const_iterator + iter = presentities.begin (); + iter != presentities.end (); + ++iter) { +@@ -514,7 +514,7 @@ + "contact on a remote server")); + + std::set all_groups; +- for (std::map >::iterator ++ for (std::map >::const_iterator + iter = presentities.begin (); + iter != presentities.end (); + ++iter) { diff --git a/net-voip/ekiga/files/ekiga-3.3.0-plugins_resource-list_parentheses.patch b/net-voip/ekiga/files/ekiga-3.3.0-plugins_resource-list_parentheses.patch new file mode 100644 index 0000000..1180099 --- /dev/null +++ b/net-voip/ekiga/files/ekiga-3.3.0-plugins_resource-list_parentheses.patch @@ -0,0 +1,12 @@ +diff -urdb ekiga-3.3.0.orig/plugins/resource-list/rl-entry.cpp ekiga-3.3.0/plugins/resource-list/rl-entry.cpp +--- ekiga-3.3.0.orig/plugins/resource-list/rl-entry.cpp 2010-11-22 12:43:04.000000000 +0300 ++++ ekiga-3.3.0/plugins/resource-list/rl-entry.cpp 2011-03-31 01:26:44.000000000 +0400 +@@ -161,7 +161,7 @@ + boost::bind (&RL::Entry::refresh, this)); + + if ( !uri.empty ()) +- populated = presence_core->populate_presentity_menu (Ekiga::PresentityPtr (this, null_deleter), uri, builder) ++ populated = presence_core->populate_presentity_menu (Ekiga::PresentityPtr (this, null_deleter()), uri, builder) + || populated; + + return populated; diff --git a/net-voip/ekiga/metadata.xml b/net-voip/ekiga/metadata.xml new file mode 100644 index 0000000..9cf7a35 --- /dev/null +++ b/net-voip/ekiga/metadata.xml @@ -0,0 +1,17 @@ + + + + voip + + volkmar@gentoo.org + Mounir Lamouri + + + Enable GConf support + Enable H.323 protocol + Enable the Shared Memory Extension from libXext + Statically link to opal and ptlib + Enable XML Configuration Access Protocal + + + -- cgit v1.2.3