summaryrefslogtreecommitdiff
path: root/net/ekiga/files
diff options
context:
space:
mode:
authorAlexander Leidinger <netchild@FreeBSD.org>2006-04-05 19:20:06 +0000
committerAlexander Leidinger <netchild@FreeBSD.org>2006-04-05 19:20:06 +0000
commit6734070660acc734562994db23995dd2686068e6 (patch)
treed2a616e3872f84156e4c96082291739cbefde424 /net/ekiga/files
parent- Update to 2.4.0 (diff)
Update to 1.2.1.
This is based upon work from kwm and includes patches for vfakeio to make it work with recent pwlib and openh323 versions from Joerg Pulz. You need a recent pwlib and openh323 port for this. Temporary aquire maintainership (ekiga is around the corner). Thanks to: kwm, Joerg Pulz <Joerg.Pulz@frm2.tum.de> Approved by: maintainer timeout (>3 months)
Notes
Notes: svn path=/head/; revision=158885
Diffstat (limited to 'net/ekiga/files')
-rw-r--r--net/ekiga/files/patch-configure70
-rw-r--r--net/ekiga/files/patch-endpoint61
-rw-r--r--net/ekiga/files/patch-lib_gtk-text-buffer-addon.h11
-rw-r--r--net/ekiga/files/patch-lib_gtk-text-tag-addon.c10
-rw-r--r--net/ekiga/files/patch-src_config.cpp15
-rw-r--r--net/ekiga/files/patch-src_druid.cpp26
-rw-r--r--net/ekiga/files/patch-src_gnomemeeting.cpp28
-rw-r--r--net/ekiga/files/patch-src_sound_handling.cpp82
-rw-r--r--net/ekiga/files/patch-src_vfakeio.cpp265
-rw-r--r--net/ekiga/files/patch-src_vfakeio.h39
10 files changed, 559 insertions, 48 deletions
diff --git a/net/ekiga/files/patch-configure b/net/ekiga/files/patch-configure
new file mode 100644
index 000000000000..0662924203af
--- /dev/null
+++ b/net/ekiga/files/patch-configure
@@ -0,0 +1,70 @@
+--- configure.orig Thu Mar 16 13:29:08 2006
++++ configure Thu Mar 16 13:30:44 2006
+@@ -19165,10 +19165,10 @@
+
+
+ # This can be used to rebuild libtool when needed
+-LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
++LIBTOOL_DEPS=" /usr/local/share/libtool/ltmain.sh"
+
+ # Always use our own libtool.
+-LIBTOOL='$(SHELL) $(top_builddir)/libtool'
++LIBTOOL='$(SHELL) /usr/local/bin/libtool'
+
+ # Prevent multiple expansion
+
+@@ -21283,8 +21283,8 @@
+ GNOMEMEETING_LIBS="$GNOMEMEETING_LIBS $EDS_LIBS"
+ fi
+
+-PWLIB_REC_VERSION="1.8.4"
+-OPENH323_REC_VERSION="1.15.3"
++PWLIB_REC_VERSION="1.10.0"
++OPENH323_REC_VERSION="1.18.0"
+
+
+ if test x"${disable_gnome}" = xno ; then
+@@ -21353,7 +21353,7 @@
+
+ FreeBSD* | freebsd* )
+ ARCH_OPENH323_CFLAGS="-Os -Wall -DPTRACING -DNDEBUG -DSTATIC_LIBS_USED"
+- ARCH_OPENH323_LIBS="-lh323_FreeBSD_x86_r_s -lpt_FreeBSD_x86_r_s -pthread -lssl -lcrypto"
++ ARCH_OPENH323_LIBS="-lh323_FreeBSD_x86_r -lpt_FreeBSD_x86_r -pthread -lssl -lcrypto"
+ echo "$as_me:$LINENO: result: yes" >&5
+ echo "${ECHO_T}yes" >&6
+ gm_platform="freebsd"
+@@ -21900,20 +21900,20 @@
+ { (exit 1); exit 1; }; };
+ fi
+
+-echo "$as_me:$LINENO: checking for Quicknet support in OpenH323" >&5
+-echo $ECHO_N "checking for Quicknet support in OpenH323... $ECHO_C" >&6;
+-OPENH323_IXJ_SUPPORT=`cat ${with_openh323_dir}/include/openh323/openh323buildopts.h | grep "HAS_IXJ 1" | cut -f2 -d ' '`
+-if test "x${OPENH323_IXJ_SUPPORT}" != "x1"; then
+- echo "$as_me:$LINENO: result: no" >&5
+-echo "${ECHO_T}no" >&6;
+- { { echo "$as_me:$LINENO: error: Sorry but the OpenH323 version you are using doesn't support Quicknet devices" >&5
+-echo "$as_me: error: Sorry but the OpenH323 version you are using doesn't support Quicknet devices" >&2;}
+- { (exit 1); exit 1; }; };
+-else
+- echo "$as_me:$LINENO: result: yes" >&5
+-echo "${ECHO_T}yes" >&6;
+- HAS_IXJ="enabled";
+-fi
++#echo "$as_me:$LINENO: checking for Quicknet support in OpenH323" >&5
++#echo $ECHO_N "checking for Quicknet support in OpenH323... $ECHO_C" >&6;
++#OPENH323_IXJ_SUPPORT=`cat ${with_openh323_dir}/include/openh323/openh323buildopts.h | grep "HAS_IXJ 1" | cut -f2 -d ' '`
++#if test "x${OPENH323_IXJ_SUPPORT}" != "x1"; then
++# echo "$as_me:$LINENO: result: no" >&5
++#echo "${ECHO_T}no" >&6;
++# { { echo "$as_me:$LINENO: error: Sorry but the OpenH323 version you are using doesn't support Quicknet devices" >&5
++#echo "$as_me: error: Sorry but the OpenH323 version you are using doesn't support Quicknet devices" >&2;}
++# { (exit 1); exit 1; }; };
++#else
++# echo "$as_me:$LINENO: result: yes" >&5
++#echo "${ECHO_T}yes" >&6;
++# HAS_IXJ="enabled";
++#fi
+
+
+
diff --git a/net/ekiga/files/patch-endpoint b/net/ekiga/files/patch-endpoint
index c906400224db..f0aeb3c62898 100644
--- a/net/ekiga/files/patch-endpoint
+++ b/net/ekiga/files/patch-endpoint
@@ -1,37 +1,24 @@
-*** src/endpoint.cpp.orig Thu Jul 31 17:26:36 2003
---- src/endpoint.cpp Fri Sep 5 11:40:58 2003
-*************** GMH323EndPoint::GMH323EndPoint ()
-*** 176,183 ****
-
- /* Use IPv6 address family by default if available. */
- #ifdef P_HAS_IPV6
-! if (PIPSocket::IsIpAddressFamilyV6Supported())
-! PIPSocket::SetDefaultIpAddressFamilyV6();
- #endif
-
- rtp_port_range =
---- 176,185 ----
-
- /* Use IPv6 address family by default if available. */
- #ifdef P_HAS_IPV6
-! // ENABLING THIS CAUSES PWLIB TO GIVE AN ASSERTION WHEN THERE IS AN
-! // INCOMING CALL
-! // if (PIPSocket::IsIpAddressFamilyV6Supported())
-! // PIPSocket::SetDefaultIpAddressFamilyV6();
- #endif
-
- rtp_port_range =
-*************** GMH323EndPoint::TranslateTCPAddress(PIPS
-*** 682,687 ****
---- 684,694 ----
-
- && !((remoteAddr.Byte1() == 172)
- && ((remoteAddr.Byte2() >= 16)&&(remoteAddr.Byte2()<=31)))
-+
-+ && !((remoteAddr.Byte1() == 127)
-+ &&(remoteAddr.Byte2()== 0)
-+ &&(remoteAddr.Byte3()==0)
-+ &&(remoteAddr.Byte4()==1))
-
- && !(remoteAddr.Byte1() == 10)) {
-
+--- src/endpoint.cpp.orig Thu Nov 25 20:12:40 2004
++++ src/endpoint.cpp Mon Dec 13 21:33:19 2004
+@@ -59,6 +59,8 @@
+ #include "gm_conf.h"
+ #include "gm_events.h"
+
++#include <libintl.h>
++
+ #include <h261codec.h>
+
+ #include <ptclib/http.h>
+@@ -89,8 +91,10 @@
+
+ /* Use IPv6 address family by default if available. */
+ #ifdef P_HAS_IPV6
+- if (PIPSocket::IsIpAddressFamilyV6Supported())
+- PIPSocket::SetDefaultIpAddressFamilyV6();
++// ENABLING THIS CAUSES PWLIB TO GIVE AN ASSERTION WHEN THERE IS AN
++// INCOMING CALL
++// if (PIPSocket::IsIpAddressFamilyV6Supported())
++// PIPSocket::SetDefaultIpAddressFamilyV6();
+ #endif
+
+ audio_tester = NULL;
diff --git a/net/ekiga/files/patch-lib_gtk-text-buffer-addon.h b/net/ekiga/files/patch-lib_gtk-text-buffer-addon.h
new file mode 100644
index 000000000000..5d0cc22ca252
--- /dev/null
+++ b/net/ekiga/files/patch-lib_gtk-text-buffer-addon.h
@@ -0,0 +1,11 @@
+--- lib/gtk-text-buffer-addon.h.orig Sun Mar 13 15:13:36 2005
++++ lib/gtk-text-buffer-addon.h Sun Mar 13 15:14:07 2005
+@@ -40,7 +40,7 @@
+
+ #include <gtk/gtk.h>
+ #include <string.h>
+-
++#include <unistd.h>
+
+ #ifndef __GTK_TEXT_BUF_ADD_H
+ #define __GTK_TEXT_BUF_ADD_H
diff --git a/net/ekiga/files/patch-lib_gtk-text-tag-addon.c b/net/ekiga/files/patch-lib_gtk-text-tag-addon.c
new file mode 100644
index 000000000000..39588407e283
--- /dev/null
+++ b/net/ekiga/files/patch-lib_gtk-text-tag-addon.c
@@ -0,0 +1,10 @@
+--- lib/gtk-text-tag-addon.c.orig Sun Mar 13 15:10:05 2005
++++ lib/gtk-text-tag-addon.c Sun Mar 13 15:10:40 2005
+@@ -37,6 +37,7 @@
+ *
+ */
+
++#include <unistd.h>
+ #include "gtk-text-tag-addon.h"
+
+ /*
diff --git a/net/ekiga/files/patch-src_config.cpp b/net/ekiga/files/patch-src_config.cpp
new file mode 100644
index 000000000000..dfd6acbfd49d
--- /dev/null
+++ b/net/ekiga/files/patch-src_config.cpp
@@ -0,0 +1,15 @@
+--- src/config.cpp.orig Sun Jan 30 12:27:01 2005
++++ src/config.cpp Sun Jan 30 12:29:38 2005
+@@ -826,10 +826,12 @@
+ && !strcmp (gm_conf_entry_get_key (entry),
+ AUDIO_DEVICES_KEY "input_device")) {
+
++#ifdef HAS_IXJ
+ if (dev.Find ("/dev/phone") != P_MAX_INDEX)
+ ep->CreateLid (dev);
+ else
+ ep->RemoveLid ();
++#endif
+
+ capa = ep->GetAvailableAudioCapabilities ();
+
diff --git a/net/ekiga/files/patch-src_druid.cpp b/net/ekiga/files/patch-src_druid.cpp
new file mode 100644
index 000000000000..a99103b62826
--- /dev/null
+++ b/net/ekiga/files/patch-src_druid.cpp
@@ -0,0 +1,26 @@
+--- src/druid.cpp.orig Sun Mar 13 15:15:47 2005
++++ src/druid.cpp Sun Mar 13 15:17:05 2005
+@@ -1682,9 +1682,11 @@
+ * not for a random one.
+ */
+ gnomemeeting_sound_daemons_suspend ();
++#ifdef HAS_IXJ
+ if (PString ("Quicknet") == audio_manager)
+ devices = OpalIxJDevice::GetDeviceNames ();
+ else
++#endif
+ devices = PSoundChannel::GetDeviceNames (audio_manager,
+ PSoundChannel::Player);
+ if (devices.GetSize () == 0) {
+@@ -1699,9 +1701,11 @@
+ gm_dw_option_menu_update (dw->audio_player, array, player);
+ free (array);
+
++#ifdef HAS_IXJ
+ if (PString ("Quicknet") == audio_manager)
+ devices = OpalIxJDevice::GetDeviceNames ();
+ else
++#endif
+ devices = PSoundChannel::GetDeviceNames (audio_manager,
+ PSoundChannel::Recorder);
+ if (devices.GetSize () == 0) {
diff --git a/net/ekiga/files/patch-src_gnomemeeting.cpp b/net/ekiga/files/patch-src_gnomemeeting.cpp
new file mode 100644
index 000000000000..cb8a15bfd775
--- /dev/null
+++ b/net/ekiga/files/patch-src_gnomemeeting.cpp
@@ -0,0 +1,28 @@
+--- src/gnomemeeting.cpp.orig Sun Mar 13 15:18:01 2005
++++ src/gnomemeeting.cpp Sun Mar 13 15:19:00 2005
+@@ -256,20 +256,22 @@
+
+ /* Detect the devices */
+ video_input_devices = PVideoInputDevice::GetDriversDeviceNames (video_plugin);
+-
++
++#ifdef HAS_IXJ
+ if (PString ("Quicknet") == audio_plugin) {
+
+ audio_input_devices = OpalIxJDevice::GetDeviceNames ();
+ audio_output_devices = audio_input_devices;
+ }
+ else {
+-
++#endif
+ audio_input_devices =
+ PSoundChannel::GetDeviceNames (audio_plugin, PSoundChannel::Recorder);
+ audio_output_devices =
+ PSoundChannel::GetDeviceNames (audio_plugin, PSoundChannel::Player);
++#ifdef HAS_IXJ
+ }
+-
++#endif
+
+ if (audio_input_devices.GetSize () == 0)
+ audio_input_devices += PString (_("No device found"));
diff --git a/net/ekiga/files/patch-src_sound_handling.cpp b/net/ekiga/files/patch-src_sound_handling.cpp
index 8af2fe631bbc..554e3f3a9a4f 100644
--- a/net/ekiga/files/patch-src_sound_handling.cpp
+++ b/net/ekiga/files/patch-src_sound_handling.cpp
@@ -1,11 +1,71 @@
---- src/sound_handling.cpp.orig Thu Jan 27 14:47:01 2005
-+++ src/sound_handling.cpp Thu Jan 27 14:57:07 2005
-@@ -466,7 +466,7 @@
- dialog =
- gtk_dialog_new_with_buttons ("Audio test running...",
- GTK_WINDOW (gw->druid_window),
-- (enum GtkDialogFlags) (GTK_DIALOG_DESTROY_WITH_PARENT),
-+ (GtkDialogFlags) (GTK_DIALOG_DESTROY_WITH_PARENT),
- GTK_STOCK_OK,
- GTK_RESPONSE_ACCEPT,
- NULL);
+--- src/sound_handling.cpp.orig Sun Mar 6 14:11:32 2005
++++ src/sound_handling.cpp Fri Mar 17 20:27:11 2006
+@@ -278,8 +278,8 @@
+ test anyway */
+ static GMLid *l = NULL;
+ static PMutex lid_mutex;
+- PINDEX i;
+ #endif
++ PINDEX i;
+
+ GMH323EndPoint *ep = NULL;
+
+@@ -335,9 +335,12 @@
+ gdk_threads_leave ();
+ g_free (msg);
+
++#ifdef HAS_IXJ
+ if ((driver_name != "Quicknet" && !channel)
+ || (driver_name == "Quicknet" && (!l || !l->IsOpen ()))) {
+-
++#else
++ if (driver_name != "Quicknet" && !channel) {
++#endif
+ gdk_threads_enter ();
+ if (is_encoding)
+ gnomemeeting_error_dialog (GTK_WINDOW (druid_window), _("Failed to open the device"), _("Impossible to open the selected audio device (%s) for recording. Please check your audio setup, the permissions and that the device is not busy."), (const char *) device_name);
+@@ -374,11 +377,16 @@
+
+ if (is_encoding) {
+
++#ifdef HAS_IXJ
+ if ((driver_name != "Quicknet"
+ && !channel->Read ((void *) buffer, 640))
+ || (driver_name == "Quicknet"
+ && l
+ && !l->ReadFrame (0, (void *) buffer, i))) {
++#else
++ if ((driver_name != "Quicknet"
++ && !channel->Read ((void *) buffer, 640))) {
++#endif
+
+ gdk_threads_enter ();
+ gnomemeeting_error_dialog (GTK_WINDOW (druid_window), _("Cannot use the audio device"), _("The selected audio device (%s) was successfully opened but it is impossible to read data from this device. Please check your audio setup."), (const char*) device_name);
+@@ -450,11 +458,17 @@
+
+ buffer_pos += 640;
+
++#ifdef HAS_IXJ
+ if ((driver_name != "Quicknet"
+ && !channel->Write ((void *) buffer, 640))
+ || (driver_name == "Quicknet"
+ && l
+ && !l->WriteFrame (0, (const void *) buffer, 640, i))) {
++#else
++ if ((driver_name != "Quicknet"
++ && !channel->Write ((void *) buffer, 640))) {
++
++#endif
+
+ gdk_threads_enter ();
+ gnomemeeting_error_dialog (GTK_WINDOW (druid_window), _("Cannot use the audio device"), _("The selected audio device (%s) was successfully opened but it is impossible to write data to this device. Please check your audio setup."), (const char*) device_name);
+@@ -486,7 +500,9 @@
+ nbr_opened_channels = PMAX (nbr_opened_channels--, 0);
+
+ free (buffer);
++#ifdef HAS_IXJ
+ l = NULL;
++#endif
+ }
+
+
diff --git a/net/ekiga/files/patch-src_vfakeio.cpp b/net/ekiga/files/patch-src_vfakeio.cpp
new file mode 100644
index 000000000000..297aa1e310ba
--- /dev/null
+++ b/net/ekiga/files/patch-src_vfakeio.cpp
@@ -0,0 +1,265 @@
+--- src/vfakeio.cpp.orig Wed Apr 5 19:20:41 2006
++++ src/vfakeio.cpp Wed Apr 5 19:20:56 2006
+@@ -51,10 +51,10 @@
+ #ifndef DISABLE_GNOME
+ #include <libgnomevfs/gnome-vfs.h>
+
+-const size_t GMH323FakeVideoInputDevice::buffer_size = 4096;
++const size_t PVideoInputDevice_Picture::buffer_size = 4096;
+ #endif
+
+-GMH323FakeVideoInputDevice::GMH323FakeVideoInputDevice ()
++PVideoInputDevice_Picture::PVideoInputDevice_Picture ()
+ {
+ orig_pix = NULL;
+ cached_pix = NULL;
+@@ -73,7 +73,7 @@
+ }
+
+
+-GMH323FakeVideoInputDevice::~GMH323FakeVideoInputDevice ()
++PVideoInputDevice_Picture::~PVideoInputDevice_Picture ()
+ {
+ Close ();
+
+@@ -83,12 +83,12 @@
+ }
+
+ #ifndef DISABLE_GNOME
+-void GMH323FakeVideoInputDevice::loader_area_updated_cb (GdkPixbufLoader *loader,
++void PVideoInputDevice_Picture::loader_area_updated_cb (GdkPixbufLoader *loader,
+ gint x, gint y, gint width,
+ gint height,
+ gpointer thisclass)
+ {
+- GMH323FakeVideoInputDevice *thisc = static_cast<GMH323FakeVideoInputDevice *> (thisclass);
++ PVideoInputDevice_Picture *thisc = static_cast<PVideoInputDevice_Picture *> (thisclass);
+
+ PWaitAndSignal m(thisc->pixbuf_mutex);
+
+@@ -103,11 +103,11 @@
+ g_object_ref (G_OBJECT (thisc->orig_pix));
+ }
+
+-void GMH323FakeVideoInputDevice::async_close_cb (GnomeVFSAsyncHandle *fp,
++void PVideoInputDevice_Picture::async_close_cb (GnomeVFSAsyncHandle *fp,
+ GnomeVFSResult result,
+ gpointer thisclass)
+ {
+- GMH323FakeVideoInputDevice *thisc = static_cast<GMH323FakeVideoInputDevice *> (thisclass);
++ PVideoInputDevice_Picture *thisc = static_cast<PVideoInputDevice_Picture *> (thisclass);
+
+ PWaitAndSignal m(thisc->pixbuf_mutex);
+
+@@ -118,14 +118,14 @@
+ }
+ }
+
+-void GMH323FakeVideoInputDevice::async_read_cb (GnomeVFSAsyncHandle *fp,
++void PVideoInputDevice_Picture::async_read_cb (GnomeVFSAsyncHandle *fp,
+ GnomeVFSResult result,
+ gpointer buffer,
+ GnomeVFSFileSize requested,
+ GnomeVFSFileSize bytes_read,
+ gpointer thisclass)
+ {
+- GMH323FakeVideoInputDevice *thisc = static_cast<GMH323FakeVideoInputDevice *> (thisclass);
++ PVideoInputDevice_Picture *thisc = static_cast<PVideoInputDevice_Picture *> (thisclass);
+
+ if (result != GNOME_VFS_OK && result != GNOME_VFS_ERROR_EOF) {
+ gnome_vfs_async_close (fp, async_close_cb, thisclass);
+@@ -144,11 +144,11 @@
+ }
+ }
+
+-void GMH323FakeVideoInputDevice::async_open_cb (GnomeVFSAsyncHandle *fp,
++void PVideoInputDevice_Picture::async_open_cb (GnomeVFSAsyncHandle *fp,
+ GnomeVFSResult result,
+ gpointer thisclass)
+ {
+- GMH323FakeVideoInputDevice *thisc = static_cast<GMH323FakeVideoInputDevice *> (thisclass);
++ PVideoInputDevice_Picture *thisc = static_cast<PVideoInputDevice_Picture *> (thisclass);
+
+
+ if (result != GNOME_VFS_OK) {
+@@ -160,7 +160,7 @@
+ async_read_cb, thisclass);
+ }
+
+-gboolean GMH323FakeVideoInputDevice::async_cancel (gpointer data)
++gboolean PVideoInputDevice_Picture::async_cancel (gpointer data)
+ {
+ gnome_vfs_async_cancel ((GnomeVFSAsyncHandle *)data);
+
+@@ -169,7 +169,7 @@
+ #endif
+
+ BOOL
+-GMH323FakeVideoInputDevice::Open (const PString &name,
++PVideoInputDevice_Picture::Open (const PString &name,
+ BOOL start_immediate)
+ {
+ gchar *image_name = NULL;
+@@ -222,7 +222,7 @@
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::IsOpen ()
++PVideoInputDevice_Picture::IsOpen ()
+ {
+ if (orig_pix)
+ return TRUE;
+@@ -232,7 +232,7 @@
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::Close ()
++PVideoInputDevice_Picture::Close ()
+ {
+ gnomemeeting_threads_enter ();
+ #ifndef DISABLE_GNOME
+@@ -264,28 +264,28 @@
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::Start ()
++PVideoInputDevice_Picture::Start ()
+ {
+ return TRUE;
+ }
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::Stop ()
++PVideoInputDevice_Picture::Stop ()
+ {
+ return TRUE;
+ }
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::IsCapturing ()
++PVideoInputDevice_Picture::IsCapturing ()
+ {
+ return IsCapturing ();
+ }
+
+
+ PStringList
+-GMH323FakeVideoInputDevice::GetInputDeviceNames ()
++PVideoInputDevice_Picture::GetInputDeviceNames ()
+ {
+ PStringList l;
+
+@@ -297,7 +297,7 @@
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::SetFrameSize (unsigned int width,
++PVideoInputDevice_Picture::SetFrameSize (unsigned int width,
+ unsigned int height)
+ {
+ if (!PVideoDevice::SetFrameSize (width, height))
+@@ -308,7 +308,7 @@
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::GetFrame (PBYTEArray &a)
++PVideoInputDevice_Picture::GetFrame (PBYTEArray &a)
+ {
+ PINDEX returned;
+
+@@ -322,7 +322,7 @@
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::GetFrameData (BYTE *a, PINDEX *i)
++PVideoInputDevice_Picture::GetFrameData (BYTE *a, PINDEX *i)
+ {
+ WaitFinishPreviousFrame ();
+
+@@ -334,7 +334,7 @@
+ }
+
+
+-BOOL GMH323FakeVideoInputDevice::GetFrameDataNoDelay (BYTE *frame, PINDEX *i)
++BOOL PVideoInputDevice_Picture::GetFrameDataNoDelay (BYTE *frame, PINDEX *i)
+ {
+ guchar *data = NULL;
+
+@@ -418,21 +418,21 @@
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::TestAllFormats ()
++PVideoInputDevice_Picture::TestAllFormats ()
+ {
+ return TRUE;
+ }
+
+
+ PINDEX
+-GMH323FakeVideoInputDevice::GetMaxFrameBytes ()
++PVideoInputDevice_Picture::GetMaxFrameBytes ()
+ {
+ return CalculateFrameBytes (frameWidth, frameHeight, colourFormat);
+ }
+
+
+ void
+-GMH323FakeVideoInputDevice::WaitFinishPreviousFrame ()
++PVideoInputDevice_Picture::WaitFinishPreviousFrame ()
+ {
+ frameTimeError += msBetweenFrames;
+
+@@ -454,28 +454,28 @@
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::SetVideoFormat (VideoFormat newFormat)
++PVideoInputDevice_Picture::SetVideoFormat (VideoFormat newFormat)
+ {
+ return PVideoDevice::SetVideoFormat (newFormat);
+ }
+
+
+ int
+-GMH323FakeVideoInputDevice::GetNumChannels()
++PVideoInputDevice_Picture::GetNumChannels()
+ {
+ return 1;
+ }
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::SetChannel (int newChannel)
++PVideoInputDevice_Picture::SetChannel (int newChannel)
+ {
+ return PVideoDevice::SetChannel (newChannel);
+ }
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::SetColourFormat (const PString &newFormat)
++PVideoInputDevice_Picture::SetColourFormat (const PString &newFormat)
+ {
+ if (newFormat == "BGR32")
+ return PVideoDevice::SetColourFormat (newFormat);
+@@ -485,7 +485,7 @@
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::SetFrameRate (unsigned rate)
++PVideoInputDevice_Picture::SetFrameRate (unsigned rate)
+ {
+ PVideoDevice::SetFrameRate (12);
+
+@@ -494,7 +494,7 @@
+
+
+ BOOL
+-GMH323FakeVideoInputDevice::GetFrameSizeLimits (unsigned & minWidth,
++PVideoInputDevice_Picture::GetFrameSizeLimits (unsigned & minWidth,
+ unsigned & minHeight,
+ unsigned & maxWidth,
+ unsigned & maxHeight)
diff --git a/net/ekiga/files/patch-src_vfakeio.h b/net/ekiga/files/patch-src_vfakeio.h
new file mode 100644
index 000000000000..6427c458371f
--- /dev/null
+++ b/net/ekiga/files/patch-src_vfakeio.h
@@ -0,0 +1,39 @@
+--- src/vfakeio.h.orig Wed Apr 5 19:20:50 2006
++++ src/vfakeio.h Wed Apr 5 19:22:28 2006
+@@ -48,9 +48,9 @@
+ #include <libgnomevfs/gnome-vfs.h>
+ #endif
+
+-class GMH323FakeVideoInputDevice : public PVideoInputDevice
++class PVideoInputDevice_Picture : public PVideoInputDevice
+ {
+- PCLASSINFO(GMH323FakeVideoInputDevice, PVideoInputDevice);
++ PCLASSINFO(PVideoInputDevice_Picture, PVideoInputDevice);
+
+ PMutex pixbuf_mutex; /* To protect the pixbufs that are read and written
+ from various threads */
+@@ -112,14 +112,14 @@
+ * BEHAVIOR : Creates the Fake Input Device.
+ * PRE : /
+ */
+- GMH323FakeVideoInputDevice ();
++ PVideoInputDevice_Picture();
+
+
+ /* DESCRIPTION : The destructor
+ * BEHAVIOR : /
+ * PRE : /
+ */
+- ~GMH323FakeVideoInputDevice ();
++ ~PVideoInputDevice_Picture();
+
+
+ BOOL Open (const PString &,
+@@ -245,6 +245,6 @@
+ { return GetInputDeviceNames(); }
+ };
+
+-PCREATE_VIDINPUT_PLUGIN (Picture, GMH323FakeVideoInputDevice);
++PCREATE_VIDINPUT_PLUGIN (Picture);
+
+ #endif