summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /net-libs/opal
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'net-libs/opal')
-rw-r--r--net-libs/opal/Manifest4
-rw-r--r--net-libs/opal/files/opal-3.10.11-libav9-gentoo.patch262
-rw-r--r--net-libs/opal/files/opal-3.10.9-avoid_cflags_mixup.patch131
-rw-r--r--net-libs/opal/files/opal-3.10.9-disable-h323-workaround.patch13
-rw-r--r--net-libs/opal/files/opal-3.10.9-ffmpeg.patch189
-rw-r--r--net-libs/opal/files/opal-3.10.9-java-ruby-swig-fix.patch29
-rw-r--r--net-libs/opal/files/opal-3.10.9-labs_is_in_stdlib.patch11
-rw-r--r--net-libs/opal/files/opal-3.10.9-svn_revision_override.patch15
-rw-r--r--net-libs/opal/files/opal-3.12.4-avoid_cflags_mixup.patch132
-rw-r--r--net-libs/opal/files/opal-3.12.4-java-ruby-swig-fix.patch28
-rw-r--r--net-libs/opal/metadata.xml43
-rw-r--r--net-libs/opal/opal-3.10.11.ebuild253
-rw-r--r--net-libs/opal/opal-3.12.4.ebuild235
13 files changed, 1345 insertions, 0 deletions
diff --git a/net-libs/opal/Manifest b/net-libs/opal/Manifest
new file mode 100644
index 000000000000..3ac3ffff331e
--- /dev/null
+++ b/net-libs/opal/Manifest
@@ -0,0 +1,4 @@
+DIST opal-3.10.11-htmldoc.tar.bz2 2944338 SHA256 66708e69f1bea6a1160f3aa904643f49b2e2679822c1446d5aeb1f29dd973cea SHA512 6075487344d4cfa5c2e2219376e3eccd98028475eac6f89d20d24d611a8806a27eb354ce8e77e16c620c8cb3d398b9502082f3fe8f67763d3f67feea835819b5 WHIRLPOOL a23aafd7da85d00db2c285641ab75f1c0850c6eaaaa649c8278891282d86312d062be7ac4d89ec3955eac11eb91c018c7b05a89282b35f1b129af90f36e34033
+DIST opal-3.10.11.tar.bz2 8590616 SHA256 f38e7969e88a28dd9a10a6051315aceecde79d0bbd1a35676868dc5787aed706 SHA512 970745375e7ebb29178ce9d0bc29254e69dd952e5f754038979a8613489a26f0fb68d63ec2709ffa1964e50fe9cfde874489f683a451d83e7a075d62d9228fa1 WHIRLPOOL b4387f8a664c2763f1e62dc16772ce869dee6d5aaac271ef0013d1e7f207d19c5e3578c26215ce246c278bc4de9aa538dabae8a3b6a794b250a5f30f9be7d206
+DIST opal-3.12.4-htmldoc.tar.bz2 3094840 SHA256 858cd14bf2de54a6aeb5397d8627a7e50ea6b63e18b0f47c057386d079b07fbc SHA512 c80ed1b0df9fffbfc07ea590a0e80afd9b985ed2971deb640e92776723f12e6a544eaf3441261d34df0ad0bbca6b03a983f7a7b0b92fbf333f1a8688d2ca735d WHIRLPOOL e2d5ba8e4429c60003dd995add2aea12b22a2f23da8dd3ed0025fa451752412805d4f25160809542dd8d61684edca35d73174037650b3546cedc97495faa29b9
+DIST opal-3.12.4.tar.bz2 9694052 SHA256 2786bc27f83c59d74165e318656ada230164ebcba61f0d8cb1b55bfcd13b2d82 SHA512 83c44dbd077e45a5bf63963b8a5348c24c65e9ab8b25afccacbf4632aa55fce26b6133c8c40f06da90fe73865165509c67b19286e868eada0270adefd3e38733 WHIRLPOOL 3063d5b9d64e690898d60e5e26f3936b28b954ce7fb2a2dc2f78cfde05932efc63ec7874dd73c87561d1a3c3f564837855559ca031121e7d9fe18c25508042d7
diff --git a/net-libs/opal/files/opal-3.10.11-libav9-gentoo.patch b/net-libs/opal/files/opal-3.10.11-libav9-gentoo.patch
new file mode 100644
index 000000000000..6288866262d2
--- /dev/null
+++ b/net-libs/opal/files/opal-3.10.11-libav9-gentoo.patch
@@ -0,0 +1,262 @@
+--- plugins/video/common/dyna.cxx
++++ plugins/video/common/dyna.cxx
+@@ -37,6 +37,7 @@
+ * Craig Southeren (craigs@postincrement.com)
+ * Matthias Schneider (ma30002000@yahoo.de)
+ */
++#include <stdio.h>
+ #include "dyna.h"
+
+ bool DynaLink::Open(const char *name)
+@@ -210,14 +211,14 @@
+ #endif
+
+
+-FFMPEGLibrary::FFMPEGLibrary(CodecID codec)
++FFMPEGLibrary::FFMPEGLibrary(AVCodecID codec)
+ {
+ m_codec = codec;
+- if (m_codec==CODEC_ID_H264)
++ if (m_codec==AV_CODEC_ID_H264)
+ snprintf( m_codecString, sizeof(m_codecString), "H264");
+- if (m_codec==CODEC_ID_H263P)
++ if (m_codec==AV_CODEC_ID_H263P)
+ snprintf( m_codecString, sizeof(m_codecString), "H263+");
+- if (m_codec==CODEC_ID_MPEG4)
++ if (m_codec==AV_CODEC_ID_MPEG4)
+ snprintf( m_codecString, sizeof(m_codecString), "MPEG4");
+ m_isLoadedOK = false;
+ }
+@@ -348,12 +349,12 @@
+ return true;
+ }
+
+-AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum CodecID id)
++AVCodec *FFMPEGLibrary::AvcodecFindEncoder(enum AVCodecID id)
+ {
+ return Favcodec_find_encoder(id);
+ }
+
+-AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum CodecID id)
++AVCodec *FFMPEGLibrary::AvcodecFindDecoder(enum AVCodecID id)
+ {
+ WaitAndSignal m(processLock);
+
+--- plugins/video/common/dyna.h
++++ plugins/video/common/dyna.h
+@@ -88,13 +88,13 @@
+ class FFMPEGLibrary
+ {
+ public:
+- FFMPEGLibrary(CodecID codec);
++ FFMPEGLibrary(AVCodecID codec);
+ ~FFMPEGLibrary();
+
+ bool Load();
+
+- AVCodec *AvcodecFindEncoder(enum CodecID id);
+- AVCodec *AvcodecFindDecoder(enum CodecID id);
++ AVCodec *AvcodecFindEncoder(enum AVCodecID id);
++ AVCodec *AvcodecFindDecoder(enum AVCodecID id);
+ AVCodecContext *AvcodecAllocContext(void);
+ AVFrame *AvcodecAllocFrame(void);
+ int AvcodecOpen(AVCodecContext *ctx, AVCodec *codec);
+@@ -117,15 +117,15 @@
+ DynaLink m_libAvcodec;
+ DynaLink m_libAvutil;
+
+- CodecID m_codec;
++ AVCodecID m_codec;
+ char m_codecString[32];
+
+ void (*Favcodec_init)(void);
+ void (*Fav_init_packet)(AVPacket *pkt);
+
+ void (*Favcodec_register_all)(void);
+- AVCodec *(*Favcodec_find_encoder)(enum CodecID id);
+- AVCodec *(*Favcodec_find_decoder)(enum CodecID id);
++ AVCodec *(*Favcodec_find_encoder)(enum AVCodecID id);
++ AVCodec *(*Favcodec_find_decoder)(enum AVCodecID id);
+ AVCodecContext *(*Favcodec_alloc_context)(void);
+ AVFrame *(*Favcodec_alloc_frame)(void);
+ int (*Favcodec_open)(AVCodecContext *ctx, AVCodec *codec);
+--- plugins/video/H.263-1998/h263-1998.cxx
++++ plugins/video/H.263-1998/h263-1998.cxx
+@@ -43,6 +43,12 @@
+ * $Date: 2014/04/29 09:02:06 $
+ */
+
++#define CODEC_FLAG_H263P_UMV 0x02000000
++#define CODEC_FLAG_H263P_SLICE_STRUCT 0x10000000
++#define CODEC_FLAG_H263P_AIV 0x00000008
++#define CODEC_FLAG_OBMC 0x00000001
++#define FF_I_TYPE 1
++
+ #ifndef PLUGIN_CODEC_DLL_EXPORTS
+ #include "plugin-config.h"
+ #endif
+@@ -94,7 +100,7 @@
+ { CIF16_WIDTH, CIF16_HEIGHT, PLUGINCODEC_CIF16_MPI },
+ };
+
+-static FFMPEGLibrary FFMPEGLibraryInstance(CODEC_ID_H263P);
++static FFMPEGLibrary FFMPEGLibraryInstance(AV_CODEC_ID_H263P);
+
+
+ /////////////////////////////////////////////////////////////////////////////
+@@ -203,7 +209,7 @@
+ PTRACE(4, m_prefix, "Encoder closed");
+ }
+
+-bool H263_Base_EncoderContext::Init(CodecID codecId)
++bool H263_Base_EncoderContext::Init(AVCodecID codecId)
+ {
+ PTRACE(5, m_prefix, "Opening encoder");
+
+@@ -616,7 +622,7 @@
+
+ bool H263_RFC2190_EncoderContext::Init()
+ {
+- if (!H263_Base_EncoderContext::Init(CODEC_ID_H263))
++ if (!H263_Base_EncoderContext::Init(AV_CODEC_ID_H263))
+ return false;
+
+ #if LIBAVCODEC_RTP_MODE
+@@ -661,7 +667,7 @@
+
+ bool H263_RFC2429_EncoderContext::Init()
+ {
+- return H263_Base_EncoderContext::Init(CODEC_ID_H263P);
++ return H263_Base_EncoderContext::Init(AV_CODEC_ID_H263P);
+ }
+
+
+@@ -685,7 +691,7 @@
+ if (!FFMPEGLibraryInstance.Load())
+ return;
+
+- if ((m_codec = FFMPEGLibraryInstance.AvcodecFindDecoder(CODEC_ID_H263)) == NULL) {
++ if ((m_codec = FFMPEGLibraryInstance.AvcodecFindDecoder(AV_CODEC_ID_H263)) == NULL) {
+ PTRACE(1, m_prefix, "Codec not found for decoder");
+ return;
+ }
+--- plugins/video/H.263-1998/h263-1998.h
++++ plugins/video/H.263-1998/h263-1998.h
+@@ -115,7 +115,7 @@
+ virtual ~H263_Base_EncoderContext();
+
+ virtual bool Init() = 0;
+- virtual bool Init(CodecID codecId);
++ virtual bool Init(AVCodecID codecId);
+
+ virtual bool SetOptions(const char * const * options);
+ virtual void SetOption(const char * option, const char * value);
+--- plugins/video/H.263-1998/Makefile.in
++++ plugins/video/H.263-1998/Makefile.in
+@@ -34,7 +34,7 @@
+ $(COMMONDIR)/mpi.cxx \
+ $(COMMONDIR)/dyna.cxx
+
+-CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
++CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR) -fpermissive
+ LIBS += @DL_LIBS@
+
+ HAVE_LIBAVCODEC_RTP_MODE=@HAVE_LIBAVCODEC_RTP_MODE@
+--- plugins/video/H.264/h264-x264.cxx
++++ plugins/video/H.264/h264-x264.cxx
+@@ -36,6 +36,15 @@
+ * $Date: 2014/04/29 09:02:06 $
+ */
+
++#define FF_ER_AGGRESSIVE 3
++#define CODEC_FLAG2_BRDO 0x00000400
++#define CODEC_FLAG2_MEMC_ONLY 0x00001000
++#define CODEC_FLAG2_DROP_FRAME_TIMECODE 0x00002000
++#define CODEC_FLAG2_SKIP_RD 0x00004000 ///< RD optimal MB level residual skipping
++#define FF_IDCT_H264 11
++
++#include <stdio.h>
++
+ #ifndef PLUGIN_CODEC_DLL_EXPORTS
+ #include "plugin-config.h"
+ #endif
+@@ -104,7 +113,7 @@
+
+ ///////////////////////////////////////////////////////////////////////////////
+
+-FFMPEGLibrary FFMPEGLibraryInstance(CODEC_ID_H264);
++FFMPEGLibrary FFMPEGLibraryInstance(AV_CODEC_ID_H264);
+
+ PLUGINCODEC_CONTROL_LOG_FUNCTION_DEF
+
+@@ -1064,7 +1073,7 @@
+ allows you to fail the create operation (return false), which cannot
+ be done in the normal C++ constructor. */
+
+- if ((m_codec = FFMPEGLibraryInstance.AvcodecFindDecoder(CODEC_ID_H264)) == NULL)
++ if ((m_codec = FFMPEGLibraryInstance.AvcodecFindDecoder(AV_CODEC_ID_H264)) == NULL)
+ return false;
+
+ if ((m_context = FFMPEGLibraryInstance.AvcodecAllocContext()) == NULL)
+@@ -1072,7 +1081,7 @@
+
+ m_context->workaround_bugs = FF_BUG_AUTODETECT;
+ #ifdef FF_ER_AGGRESSIVE
+- m_context->error_recognition = FF_ER_AGGRESSIVE;
++ m_context->err_recognition = FF_ER_AGGRESSIVE;
+ #endif
+ m_context->idct_algo = FF_IDCT_H264;
+ m_context->error_concealment = FF_EC_GUESS_MVS | FF_EC_DEBLOCK;
+
+--- plugins/video/MPEG4-ffmpeg/mpeg4.cxx
++++ plugins/video/MPEG4-ffmpeg/mpeg4.cxx
+@@ -53,6 +53,11 @@
+
+ */
+
++#define CODEC_FLAG_H263P_UMV 0x02000000
++#define CODEC_FLAG_H263P_SLICE_STRUCT 0x10000000
++#define FF_I_TYPE 1
++#define CODEC_FLAG_PART 0x0080
++
+ // Plugin specific
+ #define _CRT_SECURE_NO_DEPRECATE
+
+@@ -205,7 +210,7 @@
+ { 0 }
+ };
+
+-FFMPEGLibrary FFMPEGLibraryInstance(CODEC_ID_MPEG4);
++FFMPEGLibrary FFMPEGLibraryInstance(AV_CODEC_ID_MPEG4);
+
+
+ static bool mpeg4IsIframe (BYTE * frameBuffer, unsigned int frameLen )
+@@ -701,7 +706,7 @@
+ return false;
+ }
+
+- if((m_avcodec = FFMPEGLibraryInstance.AvcodecFindEncoder(CODEC_ID_MPEG4)) == NULL){
++ if((m_avcodec = FFMPEGLibraryInstance.AvcodecFindEncoder(AV_CODEC_ID_MPEG4)) == NULL){
+ PTRACE(1, "MPEG4", "Encoder not found");
+ return false;
+ }
+@@ -1391,7 +1396,7 @@
+
+ bool MPEG4DecoderContext::OpenCodec()
+ {
+- if ((m_avcodec = FFMPEGLibraryInstance.AvcodecFindDecoder(CODEC_ID_MPEG4)) == NULL) {
++ if ((m_avcodec = FFMPEGLibraryInstance.AvcodecFindDecoder(AV_CODEC_ID_MPEG4)) == NULL) {
+ PTRACE(1, "MPEG4", "Decoder not found for encoder");
+ return false;
+ }
+--- plugins/video/MPEG4-ffmpeg/Makefile.in
++++ plugins/video/MPEG4-ffmpeg/Makefile.in
+@@ -30,7 +30,7 @@
+ SRCDIR := .
+ SRCS := mpeg4.cxx $(COMMONDIR)/dyna.cxx
+
+-CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
++CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR) -fpermissive
+ LIBS += @DL_LIBS@
+
+ # Add LIBAVCODEC_SOURCE_DIR to the include path so we can #include <libavcodec/...h>
diff --git a/net-libs/opal/files/opal-3.10.9-avoid_cflags_mixup.patch b/net-libs/opal/files/opal-3.10.9-avoid_cflags_mixup.patch
new file mode 100644
index 000000000000..7f9a3b5c0766
--- /dev/null
+++ b/net-libs/opal/files/opal-3.10.9-avoid_cflags_mixup.patch
@@ -0,0 +1,131 @@
+diff -uNr opal-3.10.8.orig/plugins/plugin-inc.mak.in opal-3.10.8/plugins/plugin-inc.mak.in
+--- opal-3.10.8.orig/plugins/plugin-inc.mak.in 2012-10-24 12:07:31.000000000 -0400
++++ opal-3.10.8/plugins/plugin-inc.mak.in 2012-10-24 12:09:22.000000000 -0400
+@@ -31,11 +31,13 @@
+ CC := @CC@
+ CXX := @CXX@
+ CFLAGS += @CFLAGS@ -I@prefix@/include -I$(PLUGINDIR)/../include -I$(PLUGINDIR)
++CXXFLAGS += @CXXFLAGS@ -I@prefix@/include -I$(PLUGINDIR)/../include -I$(PLUGINDIR)
+ LDFLAGS += @LDFLAGS@ @LDSO@
+ PLUGINEXT :=@PLUGINEXT@
+
+ ifneq ($(DEBUG),)
+ CFLAGS += -g
++CXXFLAGS += -g
+ endif
+
+ OBJDIR := $(PLUGINDIR)/../lib_@OSTYPE@_@MACHTYPE@/plugins/$(BASENAME)
+@@ -64,11 +66,11 @@
+
+ $(OBJDIR)/%.o : %.cxx
+ @mkdir -p $(OBJDIR) >/dev/null 2>&1
+- $(Q_CC)$(CXX) -c $(CXXFLAGS) $(CFLAGS) -o $@ $<
++ $(Q_CC)$(CXX) -c $(CXXFLAGS) -o $@ $<
+
+ $(OBJDIR)/%.o : %.cpp
+ @mkdir -p $(OBJDIR) >/dev/null 2>&1
+- $(Q_CC)$(CXX) -c $(CXXFLAGS) $(CFLAGS) -o $@ $<
++ $(Q_CC)$(CXX) -c $(CXXFLAGS) -o $@ $<
+
+ OBJECTS = $(addprefix $(OBJDIR)/,$(patsubst %.cxx,%.o,$(patsubst %.cpp,%.o,$(patsubst %.c,%.o,$(notdir $(SRCS))))))
+
+diff -uNr opal-3.10.8.orig/plugins/video/H.261-vic/Makefile.in opal-3.10.8/plugins/video/H.261-vic/Makefile.in
+--- opal-3.10.8.orig/plugins/video/H.261-vic/Makefile.in 2012-10-24 12:07:46.000000000 -0400
++++ opal-3.10.8/plugins/video/H.261-vic/Makefile.in 2012-10-24 12:04:10.000000000 -0400
+@@ -39,7 +39,7 @@
+ $(SRCDIR)/bv.c \
+
+
+-CFLAGS += -I$(COMMONDIR)
++CXXFLAGS += -I$(COMMONDIR)
+
+ INSTALL_DIR := @VC_PLUGIN_DIR@
+ PLUGINDIR := @PLUGINDIR@
+diff -uNr opal-3.10.8.orig/plugins/video/H.263-1998/Makefile.in opal-3.10.8/plugins/video/H.263-1998/Makefile.in
+--- opal-3.10.8.orig/plugins/video/H.263-1998/Makefile.in 2012-10-24 12:08:02.000000000 -0400
++++ opal-3.10.8/plugins/video/H.263-1998/Makefile.in 2012-10-24 12:04:00.000000000 -0400
+@@ -34,12 +34,12 @@
+ $(COMMONDIR)/mpi.cxx \
+ $(COMMONDIR)/dyna.cxx
+
+-CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
++CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
+ LIBS += @DL_LIBS@
+
+ HAVE_LIBAVCODEC_RTP_MODE=@HAVE_LIBAVCODEC_RTP_MODE@
+ ifeq ($(HAVE_LIBAVCODEC_RTP_MODE),yes)
+-CFLAGS += -DLIBAVCODEC_RTP_MODE=1
++CXXFLAGS += -DLIBAVCODEC_RTP_MODE=1
+ endif
+
+ vpath %.cxx $(COMMONDIR)
+diff -uNr opal-3.10.8.orig/plugins/video/H.264/gpl/Makefile.in opal-3.10.8/plugins/video/H.264/gpl/Makefile.in
+--- opal-3.10.8.orig/plugins/video/H.264/gpl/Makefile.in 2012-10-24 12:06:15.000000000 -0400
++++ opal-3.10.8/plugins/video/H.264/gpl/Makefile.in 2012-10-24 12:11:11.000000000 -0400
+@@ -47,6 +47,7 @@
+ CC =@CC@
+ CXX =@CXX@
+ CFLAGS =@X264_CFLAGS@ -I.. -I$(PLUGINDIR) -I$(OPALDIR)/include -DGPL_HELPER_APP -DPLUGINCODEC_TRACING
++CXXFLAGS =@X264_CFLAGS@ -I.. -I$(PLUGINDIR) -I$(OPALDIR)/include -DGPL_HELPER_APP -DPLUGINCODEC_TRACING
+ LDFLAGS =@LDFLAGS@ @X264_LIBS@
+
+
+@@ -59,7 +60,7 @@
+
+ $(OBJDIR)/%.o : %.cxx
+ @mkdir -p $(OBJDIR) >/dev/null 2>&1
+- $(Q_CC)$(CXX) $(CFLAGS) -c $< -o $@
++ $(Q_CC)$(CXX) $(CXXFLAGS) -c $< -o $@
+
+ $(OBJDIR)/%.o : %.c
+ @mkdir -p $(OBJDIR) >/dev/null 2>&1
+diff -uNr opal-3.10.8.orig/plugins/video/H.264/Makefile.in opal-3.10.8/plugins/video/H.264/Makefile.in
+--- opal-3.10.8.orig/plugins/video/H.264/Makefile.in 2012-10-24 12:08:17.000000000 -0400
++++ opal-3.10.8/plugins/video/H.264/Makefile.in 2012-10-24 12:04:29.000000000 -0400
+@@ -34,12 +34,12 @@
+ $(SHAREDDIR)/x264wrap.cxx \
+ $(COMMONDIR)/dyna.cxx \
+
+-CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR) -DLIB_DIR='"$(libdir)"' -DVC_PLUGIN_DIR='"@VC_PLUGIN_DIR@"'
++CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR) -DLIB_DIR='"$(libdir)"' -DVC_PLUGIN_DIR='"@VC_PLUGIN_DIR@"'
+ LIBS += @DL_LIBS@
+
+ IS_H264_LICENSED:=@IS_H264_LICENSED@
+ ifeq ($(IS_H264_LICENSED),yes)
+- CFLAGS += @X264_CFLAGS@ -DX264_LICENSED
++ CXXFLAGS += @X264_CFLAGS@ -DX264_LICENSED
+ LIBS += @X264_LIBS@
+ else
+ SUBDIRS := gpl
+diff -uNr opal-3.10.8.orig/plugins/video/MPEG4-ffmpeg/Makefile.in opal-3.10.8/plugins/video/MPEG4-ffmpeg/Makefile.in
+--- opal-3.10.8.orig/plugins/video/MPEG4-ffmpeg/Makefile.in 2012-10-24 12:08:36.000000000 -0400
++++ opal-3.10.8/plugins/video/MPEG4-ffmpeg/Makefile.in 2012-10-24 12:04:45.000000000 -0400
+@@ -30,14 +30,14 @@
+ SRCDIR := .
+ SRCS := mpeg4.cxx $(COMMONDIR)/dyna.cxx
+
+-CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
++CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
+ LIBS += @DL_LIBS@
+
+ # Add LIBAVCODEC_SOURCE_DIR to the include path so we can #include <libavcodec/...h>
+ # Also add libavutil, so ffmpeg headers can #include "log.h".
+ LIBAVCODEC_SOURCE_DIR := @LIBAVCODEC_SOURCE_DIR@
+ ifneq (,$(LIBAVCODEC_SOURCE_DIR))
+-CFLAGS += -I$(LIBAVCODEC_SOURCE_DIR) -I$(LIBAVCODEC_SOURCE_DIR)/libavutil
++CXXFLAGS += -I$(LIBAVCODEC_SOURCE_DIR) -I$(LIBAVCODEC_SOURCE_DIR)/libavutil
+ endif
+
+ vpath %.cxx $(COMMONDIR)
+diff -uNr opal-3.10.8.orig/plugins/video/THEORA/Makefile.in opal-3.10.8/plugins/video/THEORA/Makefile.in
+--- opal-3.10.8.orig/plugins/video/THEORA/Makefile.in 2012-10-24 12:08:47.000000000 -0400
++++ opal-3.10.8/plugins/video/THEORA/Makefile.in 2012-10-24 12:05:00.000000000 -0400
+@@ -30,7 +30,7 @@
+ SRCDIR := .
+ SRCS := theora_frame.cxx theora_plugin.cxx
+
+-CFLAGS += @THEORA_CFLAGS@ -I$(COMMONDIR)
++CXXFLAGS += @THEORA_CFLAGS@ -I$(COMMONDIR)
+ LIBS += @THEORA_LIBS@
+
+ INSTALL_DIR := @VC_PLUGIN_DIR@
diff --git a/net-libs/opal/files/opal-3.10.9-disable-h323-workaround.patch b/net-libs/opal/files/opal-3.10.9-disable-h323-workaround.patch
new file mode 100644
index 000000000000..3d1761566ed1
--- /dev/null
+++ b/net-libs/opal/files/opal-3.10.9-disable-h323-workaround.patch
@@ -0,0 +1,13 @@
+# Sent to upstream on 2012-10-23
+# By Jesus Rivero <neurogeek@gentoo.org>
+diff -uNr opal-3.10.8.orig/include/h323/h323.h opal-3.10.8/include/h323/h323.h
+--- opal-3.10.8.orig/include/h323/h323.h 2012-10-22 07:50:37.000000000 -0400
++++ opal-3.10.8/include/h323/h323.h 2012-10-23 14:10:37.000000000 -0400
+@@ -40,6 +40,7 @@
+ #include <h323/h323con.h>
+ #include <h323/gkclient.h>
+ #include <opal/buildopts.h>
++#include <ptlib.h>
+
+ PString OpalGetVersion();
+ unsigned OpalGetMajorVersion();
diff --git a/net-libs/opal/files/opal-3.10.9-ffmpeg.patch b/net-libs/opal/files/opal-3.10.9-ffmpeg.patch
new file mode 100644
index 000000000000..18608651eaeb
--- /dev/null
+++ b/net-libs/opal/files/opal-3.10.9-ffmpeg.patch
@@ -0,0 +1,189 @@
+Note: This is not optimal but is backported from what is in the 3.12 branch.
+
+
+r28871 | rjongbloed | 2013-01-13 02:18:43 -0300 (Sun, 13 Jan 2013) | 2 lines
+
+Fixed compile against latest FFMPEG, specifically Mac OS-X "port" version. Have no idea what all the deprecated symbols are replaced by!
+
+Index: opal-3.10.9/plugins/video/H.263-1998/h263-1998.cxx
+===================================================================
+--- opal-3.10.9.orig/plugins/video/H.263-1998/h263-1998.cxx
++++ opal-3.10.9/plugins/video/H.263-1998/h263-1998.cxx
+@@ -312,6 +312,7 @@ void H263_Base_EncoderContext::SetOption
+ return;
+ }
+
++#ifdef CODEC_FLAG_H263P_UMV
+ if (STRCMPI(option, H263_ANNEX_D) == 0) {
+ // Annex D: Unrestructed Motion Vectors
+ // Level 2+
+@@ -322,7 +323,9 @@ void H263_Base_EncoderContext::SetOption
+ m_context->flags &= ~CODEC_FLAG_H263P_UMV;
+ return;
+ }
++#endif
+
++#ifdef CODEC_FLAG_OBMC
+ #if 0 // DO NOT ENABLE THIS FLAG. FFMPEG IS NOT THREAD_SAFE WHEN THIS FLAG IS SET
+ if (STRCMPI(option, H263_ANNEX_F) == 0) {
+ // Annex F: Advanced Prediction Mode
+@@ -334,7 +337,9 @@ void H263_Base_EncoderContext::SetOption
+ return;
+ }
+ #endif
++#endif
+
++#ifdef CODEC_FLAG_AC_PRED
+ if (STRCMPI(option, H263_ANNEX_I) == 0) {
+ // Annex I: Advanced Intra Coding
+ // Level 3+
+@@ -345,7 +350,9 @@ void H263_Base_EncoderContext::SetOption
+ m_context->flags &= ~CODEC_FLAG_AC_PRED;
+ return;
+ }
++#endif
+
++#ifdef CODEC_FLAG_LOOP_FILTER
+ if (STRCMPI(option, H263_ANNEX_J) == 0) {
+ // Annex J: Deblocking Filter
+ // works with eyeBeam
+@@ -355,7 +362,9 @@ void H263_Base_EncoderContext::SetOption
+ m_context->flags &= ~CODEC_FLAG_LOOP_FILTER;
+ return;
+ }
++#endif
+
++#ifdef CODEC_FLAG_H263P_SLICE_STRUCT
+ if (STRCMPI(option, H263_ANNEX_K) == 0) {
+ // Annex K: Slice Structure
+ // does not work with eyeBeam
+@@ -365,7 +374,9 @@ void H263_Base_EncoderContext::SetOption
+ m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT;
+ return;
+ }
++#endif
+
++#ifdef CODEC_FLAG_H263P_AIV
+ if (STRCMPI(option, H263_ANNEX_S) == 0) {
+ // Annex S: Alternative INTER VLC mode
+ // does not work with eyeBeam
+@@ -375,6 +386,7 @@ void H263_Base_EncoderContext::SetOption
+ m_context->flags &= ~CODEC_FLAG_H263P_AIV;
+ return;
+ }
++#endif
+
+ if (STRCMPI(option, PLUGINCODEC_MEDIA_PACKETIZATION) == 0 ||
+ STRCMPI(option, PLUGINCODEC_MEDIA_PACKETIZATIONS) == 0) {
+@@ -452,12 +464,24 @@ bool H263_Base_EncoderContext::OpenCodec
+
+ #define CODEC_TRACER_FLAG(tracer, flag) \
+ PTRACE(4, m_prefix, #flag " is " << ((m_context->flags & flag) ? "enabled" : "disabled"));
++#ifdef CODEC_FLAG_H263P_UMV
+ CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_UMV);
++#endif
++#ifdef CODEC_FLAG_OBMC
+ CODEC_TRACER_FLAG(tracer, CODEC_FLAG_OBMC);
++#endif
++#ifdef CODEC_FLAG_AC_PRED
+ CODEC_TRACER_FLAG(tracer, CODEC_FLAG_AC_PRED);
++#endif
++#ifdef CODEC_FLAG_H263P_SLICE_STRUCT
+ CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_SLICE_STRUCT)
++#endif
++#ifdef CODEC_FLAG_LOOP_FILTER
+ CODEC_TRACER_FLAG(tracer, CODEC_FLAG_LOOP_FILTER);
++#endif
++#ifdef CODEC_FLAG_H263P_AIV
+ CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_AIV);
++#endif
+
+ return FFMPEGLibraryInstance.AvcodecOpen(m_context, m_codec) == 0;
+ }
+@@ -521,7 +545,7 @@ bool H263_Base_EncoderContext::EncodeFra
+
+ // Need to copy to local buffer to guarantee 16 byte alignment
+ memcpy(m_inputFrame->data[0], OPAL_VIDEO_FRAME_DATA_PTR(header), header->width*header->height*3/2);
+- m_inputFrame->pict_type = (flags & PluginCodec_CoderForceIFrame) ? FF_I_TYPE : AV_PICTURE_TYPE_NONE;
++ m_inputFrame->pict_type = (flags & PluginCodec_CoderForceIFrame) ? AV_PICTURE_TYPE_I : AV_PICTURE_TYPE_NONE;
+
+ /*
+ m_inputFrame->pts = (int64_t)srcRTP.GetTimestamp()*m_context->time_base.den/m_context->time_base.num/VIDEO_CLOCKRATE;
+@@ -603,13 +627,21 @@ bool H263_RFC2190_EncoderContext::Init()
+ m_context->rtp_callback = &H263_RFC2190_EncoderContext::RTPCallBack;
+ m_context->opaque = this; // used to separate out packets from different encode threads
+
++#ifdef CODEC_FLAG_H263P_UMV
+ m_context->flags &= ~CODEC_FLAG_H263P_UMV;
++#endif
++#ifdef CODEC_FLAG_4MV
+ m_context->flags &= ~CODEC_FLAG_4MV;
+-#if LIBAVCODEC_RTP_MODE
++#endif
++#if LIBAVCODEC_RTP_MODE && defined(CODEC_FLAG_H263P_AIC)
+ m_context->flags &= ~CODEC_FLAG_H263P_AIC;
+ #endif
++#ifdef CODEC_FLAG_H263P_AIV
+ m_context->flags &= ~CODEC_FLAG_H263P_AIV;
++#endif
++#ifdef CODEC_FLAG_H263P_SLICE_STRUCT
+ m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT;
++#endif
+
+ return true;
+ }
+Index: opal-3.10.9/plugins/video/H.264/h264-x264.cxx
+===================================================================
+--- opal-3.10.9.orig/plugins/video/H.264/h264-x264.cxx
++++ opal-3.10.9/plugins/video/H.264/h264-x264.cxx
+@@ -1071,13 +1071,13 @@ class MyDecoder : public PluginCodec<MY_
+ return false;
+
+ m_context->workaround_bugs = FF_BUG_AUTODETECT;
++#ifdef FF_ER_AGGRESSIVE
+ m_context->error_recognition = FF_ER_AGGRESSIVE;
++#endif
+ m_context->idct_algo = FF_IDCT_H264;
+ m_context->error_concealment = FF_EC_GUESS_MVS | FF_EC_DEBLOCK;
+ m_context->flags = CODEC_FLAG_INPUT_PRESERVED | CODEC_FLAG_EMU_EDGE;
+- m_context->flags2 = CODEC_FLAG2_BRDO |
+- CODEC_FLAG2_MEMC_ONLY |
+- CODEC_FLAG2_DROP_FRAME_TIMECODE |
++ m_context->flags2 = CODEC_FLAG2_DROP_FRAME_TIMECODE |
+ CODEC_FLAG2_SKIP_RD |
+ CODEC_FLAG2_CHUNKS;
+
+Index: opal-3.10.9/plugins/video/MPEG4-ffmpeg/mpeg4.cxx
+===================================================================
+--- opal-3.10.9.orig/plugins/video/MPEG4-ffmpeg/mpeg4.cxx
++++ opal-3.10.9/plugins/video/MPEG4-ffmpeg/mpeg4.cxx
+@@ -594,12 +594,10 @@ void MPEG4EncoderContext::SetStaticEncod
+ #else
+ m_avcontext->max_b_frames=0; /*don't use b frames*/
+ m_avcontext->flags|=CODEC_FLAG_AC_PRED;
+- m_avcontext->flags|=CODEC_FLAG_H263P_UMV;
+ /*c->flags|=CODEC_FLAG_QPEL;*/ /*don't enable this one: this forces profile_level to advanced simple profile */
+ m_avcontext->flags|=CODEC_FLAG_4MV;
+ m_avcontext->flags|=CODEC_FLAG_GMC;
+ m_avcontext->flags|=CODEC_FLAG_LOOP_FILTER;
+- m_avcontext->flags|=CODEC_FLAG_H263P_SLICE_STRUCT;
+ #endif
+ m_avcontext->opaque = this; // for use in RTP callback
+ }
+@@ -804,7 +802,7 @@ int MPEG4EncoderContext::EncodeFrames(co
+ // Should the next frame be an I-Frame?
+ if ((flags & PluginCodec_CoderForceIFrame) || (m_frameNum == 0))
+ {
+- m_avpicture->pict_type = FF_I_TYPE;
++ m_avpicture->pict_type = AV_PICTURE_TYPE_I;
+ }
+ else // No IFrame requested, let avcodec decide what to do
+ {
+@@ -1325,7 +1323,6 @@ void MPEG4DecoderContext::SetFrameHeight
+
+ void MPEG4DecoderContext::SetStaticDecodingParams() {
+ m_avcontext->flags |= CODEC_FLAG_4MV;
+- m_avcontext->flags |= CODEC_FLAG_PART;
+ m_avcontext->workaround_bugs = 0; // no workaround for buggy implementations
+ }
+
diff --git a/net-libs/opal/files/opal-3.10.9-java-ruby-swig-fix.patch b/net-libs/opal/files/opal-3.10.9-java-ruby-swig-fix.patch
new file mode 100644
index 000000000000..65708635a34d
--- /dev/null
+++ b/net-libs/opal/files/opal-3.10.9-java-ruby-swig-fix.patch
@@ -0,0 +1,29 @@
+diff -uNr opal-3.10.9.orig/Makefile.in opal-3.10.9/Makefile.in
+--- opal-3.10.9.orig/Makefile.in 2012-12-03 11:09:17.000000000 -0500
++++ opal-3.10.9/Makefile.in 2012-12-03 11:09:35.000000000 -0500
+@@ -371,9 +371,9 @@
+ ifeq ($(OPAL_JAVA), yes)
+
+ JAVA_SRCDIR = $(OPAL_SRCDIR)/java
+-JAVA_WRAPPER = $(JAVA_SRCDIR)/java_swig_wrapper.c
++JAVA_WRAPPER = $(JAVA_SRCDIR)/java_swig_wrapper.cxx
+
+-VPATH_C += $(JAVA_SRCDIR)
++VPATH_CXX += $(JAVA_SRCDIR)
+ SOURCES += $(JAVA_WRAPPER)
+
+ endif
+@@ -384,10 +384,10 @@
+
+ ifeq ($(OPAL_RUBY), yes)
+
+-RUBY_SRCDIR = $(OPAL_SRCDIR)/ruby
+-RUBY_WRAPPER = $(JAVA_SRCDIR)/ruby_swig_wrapper.c
++RUBY_SRCDIR = $(OPAL_SRCDIR)/Ruby
++RUBY_WRAPPER = $(JAVA_SRCDIR)/ruby_swig_wrapper.cxx
+
+-VPATH_C += $(RUBY_SRCDIR)
++VPATH_CXX += $(RUBY_SRCDIR)
+ SOURCES += $(RUBY_WRAPPER)
+
+ endif
diff --git a/net-libs/opal/files/opal-3.10.9-labs_is_in_stdlib.patch b/net-libs/opal/files/opal-3.10.9-labs_is_in_stdlib.patch
new file mode 100644
index 000000000000..ac8a7ef2000f
--- /dev/null
+++ b/net-libs/opal/files/opal-3.10.9-labs_is_in_stdlib.patch
@@ -0,0 +1,11 @@
+diff -uNr opal-3.10.8.orig/plugins/audio/G.722.2/AMR-WB/dec_lpc.c opal-3.10.8/plugins/audio/G.722.2/AMR-WB/dec_lpc.c
+--- opal-3.10.8.orig/plugins/audio/G.722.2/AMR-WB/dec_lpc.c 2012-10-22 07:50:37.000000000 -0400
++++ opal-3.10.8/plugins/audio/G.722.2/AMR-WB/dec_lpc.c 2012-10-22 10:20:49.000000000 -0400
+@@ -3,6 +3,7 @@
+ * 3GPP AMR Wideband Floating-point Speech Codec
+ *===================================================================
+ */
++#include <stdlib.h>
+ #include <math.h>
+ #include "typedef.h"
+ #include "dec_util.h"
diff --git a/net-libs/opal/files/opal-3.10.9-svn_revision_override.patch b/net-libs/opal/files/opal-3.10.9-svn_revision_override.patch
new file mode 100644
index 000000000000..c2a15b16ef82
--- /dev/null
+++ b/net-libs/opal/files/opal-3.10.9-svn_revision_override.patch
@@ -0,0 +1,15 @@
+diff -uNr opal-3.10.8.orig/src/opal/manager.cxx opal-3.10.8/src/opal/manager.cxx
+--- opal-3.10.8.orig/src/opal/manager.cxx 2012-10-22 07:50:36.000000000 -0400
++++ opal-3.10.8/src/opal/manager.cxx 2012-10-22 08:30:45.000000000 -0400
+@@ -56,7 +56,10 @@
+ #include <ptclib/url.h>
+
+ #include "../../version.h"
+-#include "../../revision.h"
++
++# define SVN_REVISION 0
++//#include "../../revision.h"
++
+
+
+ static const char * const DefaultMediaFormatOrder[] = {
diff --git a/net-libs/opal/files/opal-3.12.4-avoid_cflags_mixup.patch b/net-libs/opal/files/opal-3.12.4-avoid_cflags_mixup.patch
new file mode 100644
index 000000000000..24686110a42e
--- /dev/null
+++ b/net-libs/opal/files/opal-3.12.4-avoid_cflags_mixup.patch
@@ -0,0 +1,132 @@
+diff -urN opal-3.12.4.old/plugins/plugin-inc.mak.in opal-3.12.4/plugins/plugin-inc.mak.in
+--- opal-3.12.4.old/plugins/plugin-inc.mak.in 2013-06-22 21:14:01.528580888 +0200
++++ opal-3.12.4/plugins/plugin-inc.mak.in 2013-06-22 21:14:42.652579425 +0200
+@@ -32,11 +32,13 @@
+ CXX := @CXX@
+ INSTALL := @INSTALL@
+ CFLAGS += @CFLAGS@ -I@prefix@/include -I$(PLUGINDIR)/../include -I$(PLUGINDIR)
++CXXFLAGS += @CXXFLAGS@ -I@prefix@/include -I$(PLUGINDIR)/../include -I$(PLUGINDIR)
+ LDFLAGS += @LDFLAGS@ @LDSO@
+ PLUGINEXT :=@PLUGINEXT@
+
+ ifneq ($(DEBUG),)
+ CFLAGS += -g
++CXXFLAGS += -g
+ endif
+
+ OBJDIR := $(PLUGINDIR)/../lib_@target@/plugins/$(BASENAME)
+@@ -65,11 +67,11 @@
+
+ $(OBJDIR)/%.o : %.cxx
+ @mkdir -p $(OBJDIR) >/dev/null 2>&1
+- $(Q_CC)$(CXX) -c $(CXXFLAGS) $(CFLAGS) -o $@ $<
++ $(Q_CC)$(CXX) -c $(CXXFLAGS) -o $@ $<
+
+ $(OBJDIR)/%.o : %.cpp
+ @mkdir -p $(OBJDIR) >/dev/null 2>&1
+- $(Q_CC)$(CXX) -c $(CXXFLAGS) $(CFLAGS) -o $@ $<
++ $(Q_CC)$(CXX) -c $(CXXFLAGS) -o $@ $<
+
+ OBJECTS = $(addprefix $(OBJDIR)/,$(patsubst %.cxx,%.o,$(patsubst %.cpp,%.o,$(patsubst %.c,%.o,$(notdir $(SRCS))))))
+
+diff -urN opal-3.12.4.old/plugins/video/H.261-vic/Makefile.in opal-3.12.4/plugins/video/H.261-vic/Makefile.in
+--- opal-3.12.4.old/plugins/video/H.261-vic/Makefile.in 2013-06-22 21:14:01.503580889 +0200
++++ opal-3.12.4/plugins/video/H.261-vic/Makefile.in 2013-06-22 21:14:42.652579425 +0200
+@@ -39,7 +39,7 @@
+ $(SRCDIR)/bv.c \
+
+
+-CFLAGS += -I$(COMMONDIR)
++CXXFLAGS += -I$(COMMONDIR)
+
+ INSTALL_DIR := @VC_PLUGIN_DIR@
+ PLUGINDIR := @PLUGINDIR@
+diff -urN opal-3.12.4.old/plugins/video/H.263-1998/Makefile.in opal-3.12.4/plugins/video/H.263-1998/Makefile.in
+--- opal-3.12.4.old/plugins/video/H.263-1998/Makefile.in 2013-06-22 21:14:01.499580889 +0200
++++ opal-3.12.4/plugins/video/H.263-1998/Makefile.in 2013-06-22 21:16:18.196576026 +0200
+@@ -34,12 +34,12 @@
+ $(COMMONDIR)/ffmpeg.cxx \
+ $(COMMONDIR)/dyna.cxx
+
+-CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
++CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
+ LIBS += @LIBAVCODEC_LIBS@ @LIBAVUTIL_LIBS@
+
+ HAVE_LIBAVCODEC_RTP_MODE=@HAVE_LIBAVCODEC_RTP_MODE@
+ ifeq ($(HAVE_LIBAVCODEC_RTP_MODE),yes)
+-CFLAGS += -DLIBAVCODEC_RTP_MODE=1
++CXXFLAGS += -DLIBAVCODEC_RTP_MODE=1
+ endif
+
+ vpath %.cxx $(COMMONDIR)
+diff -urN opal-3.12.4.old/plugins/video/H.264/gpl/Makefile.in opal-3.12.4/plugins/video/H.264/gpl/Makefile.in
+--- opal-3.12.4.old/plugins/video/H.264/gpl/Makefile.in 2013-06-22 21:14:01.500580889 +0200
++++ opal-3.12.4/plugins/video/H.264/gpl/Makefile.in 2013-06-22 21:16:35.515575410 +0200
+@@ -48,7 +48,7 @@
+
+ CC =@CC@
+ CXX =@CXX@
+-CFLAGS =@X264_CFLAGS@ @LIBAVCODEC_CFLAGS@ -I.. -I$(PLUGINDIR) -I$(OPALDIR)/include -DGPL_HELPER_APP -DPLUGINCODEC_TRACING
++CXXFLAGS =@X264_CFLAGS@ @LIBAVCODEC_CFLAGS@ -I.. -I$(PLUGINDIR) -I$(OPALDIR)/include -DGPL_HELPER_APP -DPLUGINCODEC_TRACING
+ LDFLAGS = @X264_LIBS@ @LIBAVCODEC_LIBS@ @LIBAVUTIL_LIBS@ @DL_LIBS@ @LDFLAGS@
+
+
+@@ -61,7 +61,7 @@
+
+ $(OBJDIR)/%.o : %.cxx
+ @mkdir -p $(OBJDIR) >/dev/null 2>&1
+- $(Q_CC)$(CXX) $(CFLAGS) -c $< -o $@
++ $(Q_CC)$(CXX) $(CXXFLAGS) -c $< -o $@
+
+ $(OBJDIR)/%.o : %.c
+ @mkdir -p $(OBJDIR) >/dev/null 2>&1
+diff -urN opal-3.12.4.old/plugins/video/H.264/Makefile.in opal-3.12.4/plugins/video/H.264/Makefile.in
+--- opal-3.12.4.old/plugins/video/H.264/Makefile.in 2013-06-22 21:14:01.500580889 +0200
++++ opal-3.12.4/plugins/video/H.264/Makefile.in 2013-06-22 21:16:52.874574792 +0200
+@@ -35,12 +35,12 @@
+ $(COMMONDIR)/ffmpeg.cxx \
+ $(COMMONDIR)/dyna.cxx
+
+-CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR) -DLIB_DIR='"$(libdir)"' -DVC_PLUGIN_DIR='"@VC_PLUGIN_DIR@"'
++CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR) -DLIB_DIR='"$(libdir)"' -DVC_PLUGIN_DIR='"@VC_PLUGIN_DIR@"'
+ LIBS += @LIBAVCODEC_LIBS@ @LIBAVUTIL_LIBS@
+
+ IS_H264_LICENSED:=@IS_H264_LICENSED@
+ ifeq ($(IS_H264_LICENSED),yes)
+- CFLAGS += @X264_CFLAGS@ -DX264_LICENSED
++ CXXFLAGS += @X264_CFLAGS@ -DX264_LICENSED
+ LIBS += @X264_LIBS@
+ else
+ SUBDIRS := gpl
+diff -urN opal-3.12.4.old/plugins/video/MPEG4-ffmpeg/Makefile.in opal-3.12.4/plugins/video/MPEG4-ffmpeg/Makefile.in
+--- opal-3.12.4.old/plugins/video/MPEG4-ffmpeg/Makefile.in 2013-06-22 21:14:01.499580889 +0200
++++ opal-3.12.4/plugins/video/MPEG4-ffmpeg/Makefile.in 2013-06-22 21:15:53.183576916 +0200
+@@ -32,14 +32,14 @@
+ $(COMMONDIR)/ffmpeg.cxx \
+ $(COMMONDIR)/dyna.cxx
+
+-CFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
++CXXFLAGS += @LIBAVCODEC_CFLAGS@ -I$(COMMONDIR)
+ LIBS += @LIBAVCODEC_LIBS@ @LIBAVUTIL_LIBS@
+
+ # Add LIBAVCODEC_SOURCE_DIR to the include path so we can #include <libavcodec/...h>
+ # Also add libavutil, so ffmpeg headers can #include "log.h".
+ LIBAVCODEC_SOURCE_DIR := @LIBAVCODEC_SOURCE_DIR@
+ ifneq (,$(LIBAVCODEC_SOURCE_DIR))
+-CFLAGS += -I$(LIBAVCODEC_SOURCE_DIR) -I$(LIBAVCODEC_SOURCE_DIR)/libavutil
++CXXFLAGS += -I$(LIBAVCODEC_SOURCE_DIR) -I$(LIBAVCODEC_SOURCE_DIR)/libavutil
+ endif
+
+ vpath %.cxx $(COMMONDIR)
+diff -urN opal-3.12.4.old/plugins/video/THEORA/Makefile.in opal-3.12.4/plugins/video/THEORA/Makefile.in
+--- opal-3.12.4.old/plugins/video/THEORA/Makefile.in 2013-06-22 21:14:01.503580889 +0200
++++ opal-3.12.4/plugins/video/THEORA/Makefile.in 2013-06-22 21:14:42.654579425 +0200
+@@ -30,7 +30,7 @@
+ SRCDIR := .
+ SRCS := theora_frame.cxx theora_plugin.cxx
+
+-CFLAGS += @THEORA_CFLAGS@ -I$(COMMONDIR)
++CXXFLAGS += @THEORA_CFLAGS@ -I$(COMMONDIR)
+ LIBS += @THEORA_LIBS@
+
+ INSTALL_DIR := @VC_PLUGIN_DIR@
diff --git a/net-libs/opal/files/opal-3.12.4-java-ruby-swig-fix.patch b/net-libs/opal/files/opal-3.12.4-java-ruby-swig-fix.patch
new file mode 100644
index 000000000000..616468ea5772
--- /dev/null
+++ b/net-libs/opal/files/opal-3.12.4-java-ruby-swig-fix.patch
@@ -0,0 +1,28 @@
+--- opal-3.12.4.old/make/toplevel.mak.in 2013-06-22 21:14:01.536580887 +0200
++++ opal-3.12.4/make/toplevel.mak.in 2013-06-22 21:21:08.342565703 +0200
+@@ -407,9 +407,9 @@
+ ifeq ($(OPAL_JAVA), yes)
+
+ JAVA_SRCDIR = $(OPAL_SRCDIR)/java
+-JAVA_WRAPPER = $(JAVA_SRCDIR)/java_swig_wrapper.c
++JAVA_WRAPPER = $(JAVA_SRCDIR)/java_swig_wrapper.cxx
+
+-VPATH_C += $(JAVA_SRCDIR)
++VPATH_CXX += $(JAVA_SRCDIR)
+ SOURCES += $(JAVA_WRAPPER)
+
+ endif
+@@ -420,10 +420,10 @@
+
+ ifeq ($(OPAL_RUBY), yes)
+
+-RUBY_SRCDIR = $(OPAL_SRCDIR)/ruby
+-RUBY_WRAPPER = $(JAVA_SRCDIR)/ruby_swig_wrapper.c
++RUBY_SRCDIR = $(OPAL_SRCDIR)/Ruby
++RUBY_WRAPPER = $(JAVA_SRCDIR)/ruby_swig_wrapper.cxx
+
+-VPATH_C += $(RUBY_SRCDIR)
++VPATH_CXX += $(RUBY_SRCDIR)
+ SOURCES += $(RUBY_WRAPPER)
+
+ endif
diff --git a/net-libs/opal/metadata.xml b/net-libs/opal/metadata.xml
new file mode 100644
index 000000000000..8704acbfbf02
--- /dev/null
+++ b/net-libs/opal/metadata.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>maintainer-needed@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="capi">Enable CAPI support</flag>
+ <flag name="celt">Enable CELT ultra-low delay audio codec</flag>
+ <flag name="dtmf">Enable DTMF encoding/decoding support</flag>
+ <flag name="fax">Enable T.38 FAX protocol</flag>
+ <flag name="h224">Enable H.224 real time control protocol</flag>
+ <flag name="h281">Enable H.281 Far-End Camera Control protocol</flag>
+ <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>
+ <flag name="sbc">Enable the Bluetooth low-complexity, SubBand Codec
+ </flag>
+ <flag name="sip">Enable Session Initiation Protocol</flag>
+ <flag name="sipim">Enable SIP Instant Messages session</flag>
+ <flag name="srtp">Enable Secure Real-time Transport Protocol</flag>
+ <flag name="stats">Enable statistic reporting</flag>
+ <flag name="swig">Use swig to generate bindings</flag>
+ <flag name="video">Enable video support</flag>
+ <flag name="vpb">Enable Voicetronics VPB card support</flag>
+ <flag name="vxml">Enable VXML support</flag>
+ <flag name="wav">Enable WAVFILE support</flag>
+ <flag name="x264-static">Install x264 plugin statically linked with x264
+ </flag>
+ <!-- unused atm
+ <flag name="g711plc">Enable G711 Packet Loss Concealment</flag>
+ <flag name="msrp">Enable Message Session Relay Protocol</flag>
+ <flag name="rfc4103">Enable RTP Payload for Text Conversation</flag>
+ -->
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">opalvoip</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/net-libs/opal/opal-3.10.11.ebuild b/net-libs/opal/opal-3.10.11.ebuild
new file mode 100644
index 000000000000..d4968eb46db8
--- /dev/null
+++ b/net-libs/opal/opal-3.10.11.ebuild
@@ -0,0 +1,253 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils autotools toolchain-funcs java-pkg-opt-2 flag-o-matic
+
+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/${P}-htmldoc.tar.bz2 )"
+
+LICENSE="MPL-1.0"
+SLOT="0"
+KEYWORDS="~alpha amd64 ia64 ppc ppc64 sparc x86"
+IUSE="capi celt debug doc +dtmf examples fax ffmpeg h224 h281 h323 iax ilbc
+ipv6 ivr ixj java ldap lid +plugins sbc sip sipim +sound srtp ssl static-libs
+stats swig theora +video vpb vxml wav x264 x264-static xml"
+
+REQUIRED_USE="x264-static? ( x264 )
+ h281? ( h224 )
+ sip? ( sipim )"
+
+RDEPEND=">=net-libs/ptlib-2.10.10:=[stun,debug=,dtmf,http,ipv6?,ldap?,sound?,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[http,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? ( virtual/ffmpeg
+ media-libs/x264 ) )
+ srtp? ( net-libs/libsrtp )
+ vxml? ( net-libs/ptlib[http,vxml] )"
+DEPEND="${RDEPEND}
+ virtual/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, ldap, sound, 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-cxxflags "-fno-visibility-inlines-hidden"
+ append-cxxflags "-fno-strict-aliasing"
+
+ # 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
+
+ epatch "${FILESDIR}/${PN}-3.10.9-svn_revision_override.patch" \
+ "${FILESDIR}/${PN}-3.10.9-labs_is_in_stdlib.patch" \
+ "${FILESDIR}/${PN}-3.10.9-avoid_cflags_mixup.patch" \
+ "${FILESDIR}/${PN}-3.10.9-ffmpeg.patch" \
+ "${FILESDIR}/${PN}-3.10.11-libav9-gentoo.patch"
+
+ if ! use h323; then
+ # Without this patch, ekiga wont compile, even with
+ # USE=-h323.
+ epatch "${FILESDIR}/${PN}-3.10.9-disable-h323-workaround.patch"
+ fi
+
+ epatch "${FILESDIR}/${PN}-3.10.9-java-ruby-swig-fix.patch"
+
+ 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
+
+ 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"
+
+ # Get rid of static libraries if not requested
+ # There seems to be no easy way to disable this in the build system
+ if ! use static-libs; then
+ rm -v "${D}"/usr/lib*/*.a || die
+ fi
+
+ if use doc; then
+ dohtml -r "${WORKDIR}"/html/* docs/* || die "dohtml failed"
+ fi
+
+ # ChangeLog is not standard and does not exist on 3.10.10
+# 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 sound || ! use video; then
+ ewarn "You have disabled sound, 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/opal/opal-3.12.4.ebuild b/net-libs/opal/opal-3.12.4.ebuild
new file mode 100644
index 000000000000..a3d79b4f8d9d
--- /dev/null
+++ b/net-libs/opal/opal-3.12.4.ebuild
@@ -0,0 +1,235 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils autotools toolchain-funcs java-pkg-opt-2 flag-o-matic
+
+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/${P}-htmldoc.tar.bz2 )"
+
+LICENSE="MPL-1.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="capi celt debug doc +dtmf examples fax ffmpeg h224 h281 h323 iax ilbc
+ipv6 ivr ixj java ldap lid +plugins sbc sip sipim +sound srtp ssl static-libs
+stats swig theora +video vpb vxml wav x264 x264-static xml"
+
+REQUIRED_USE="x264-static? ( x264 )
+ h281? ( h224 )
+ sip? ( sipim )"
+
+RDEPEND=">=net-libs/ptlib-2.12.4:=[stun,debug=,dtmf,http,ipv6?,ldap?,sound?,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[http,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? ( virtual/ffmpeg
+ media-libs/x264 ) )
+ srtp? ( net-libs/libsrtp )
+ vxml? ( net-libs/ptlib[http,vxml] )"
+DEPEND="${RDEPEND}
+ virtual/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, ldap, sound, 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-cxxflags "-fno-visibility-inlines-hidden"
+ append-cxxflags "-fno-strict-aliasing"
+
+ 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
+
+ epatch "${FILESDIR}/${PN}-3.10.9-svn_revision_override.patch"
+ epatch "${FILESDIR}/${PN}-3.10.9-labs_is_in_stdlib.patch"
+ epatch "${FILESDIR}/${PN}-3.12.4-avoid_cflags_mixup.patch"
+
+ if ! use h323; then
+ # Without this patch, ekiga wont compile, even with
+ # USE=-h323.
+ epatch "${FILESDIR}/${PN}-3.10.9-disable-h323-workaround.patch"
+ fi
+
+ epatch "${FILESDIR}/${PN}-3.12.4-java-ruby-swig-fix.patch"
+
+ 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
+
+ use ilbc || { rm -r plugins/audio/iLBC/ || die "removing iLBC failed"; }
+
+ java-pkg-opt-2_src_prepare
+}
+
+src_configure() {
+ # --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)
+}
+
+src_compile() {
+ local makeopts=""
+
+ use debug && makeopts="debug"
+
+ emake ${makeopts}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # Get rid of static libraries if not requested
+ # There seems to be no easy way to disable this in the build system
+ if ! use static-libs; then
+ rm -v "${D}"/usr/lib*/*.a || die
+ fi
+
+ if use doc; then
+ dohtml -r "${WORKDIR}"/html/* docs/*
+ fi
+
+ # ChangeLog is not standard and does not exist on 3.10.10
+# 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 --hide=ReadMe.txt`"
+
+ # first, install files
+ insinto ${exampledir}/
+ doins ${basedir}/{configure*,opal_samples*,ReadMe.txt}
+
+ # now, all examples
+ for x in ${sampledirs}; do
+ insinto ${exampledir}/${x}/
+ doins ${basedir}/${x}/*
+ done
+
+ # some examples need version.h
+ insinto "/usr/share/doc/${PF}/"
+ doins version.h
+ 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 sound || ! use video; then
+ ewarn "You have disabled sound, 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
+}