[arch-commits] Commit in ekiga/repos (4 files)

Jan Steffens heftig at archlinux.org
Fri Mar 15 17:19:19 UTC 2019


    Date: Friday, March 15, 2019 @ 17:19:19
  Author: heftig
Revision: 348203

archrelease: copy trunk to gnome-unstable-x86_64

Added:
  ekiga/repos/gnome-unstable-x86_64/
  ekiga/repos/gnome-unstable-x86_64/PKGBUILD
    (from rev 348201, ekiga/trunk/PKGBUILD)
  ekiga/repos/gnome-unstable-x86_64/ekiga-4.0.1-boost-signals2.patch
    (from rev 348201, ekiga/trunk/ekiga-4.0.1-boost-signals2.patch)
  ekiga/repos/gnome-unstable-x86_64/ekiga-4.0.1-libresolv.patch
    (from rev 348201, ekiga/trunk/ekiga-4.0.1-libresolv.patch)

----------------------------------+
 PKGBUILD                         |   45 
 ekiga-4.0.1-boost-signals2.patch | 2738 +++++++++++++++++++++++++++++++++++++
 ekiga-4.0.1-libresolv.patch      |   13 
 3 files changed, 2796 insertions(+)

Copied: ekiga/repos/gnome-unstable-x86_64/PKGBUILD (from rev 348201, ekiga/trunk/PKGBUILD)
===================================================================
--- gnome-unstable-x86_64/PKGBUILD	                        (rev 0)
+++ gnome-unstable-x86_64/PKGBUILD	2019-03-15 17:19:19 UTC (rev 348203)
@@ -0,0 +1,45 @@
+# Maintainer: Jan de Groot <jgc at archlinux.org>
+# Contributor: Tom K <tomk at runbox.com>
+
+pkgname=ekiga
+pkgver=4.0.1
+pkgrel=33
+pkgdesc="VOIP/Videoconferencing app with full SIP and H.323 support (GnomeMeeting expanded and renamed)"
+url="http://www.ekiga.org"
+license=(GPL)
+arch=(x86_64)
+depends=('opal' 'boost-libs' 'libxv' 'libnotify' 'avahi' 'gtk2' 'gconf' 'gnome-icon-theme')
+makedepends=('intltool' 'gnome-doc-utils' 'evolution-data-server' 'boost' 'python')
+optdepends=('evolution-data-server: Evolution integration')
+options=(!emptydirs)
+source=(https://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz
+        ekiga-4.0.1-boost-signals2.patch
+        ekiga-4.0.1-libresolv.patch)
+sha256sums=('5f4f491c9496cf65ba057a9345d6bb0278f4eca07bcda5baeecf50bfcd9a4a3b'
+            '940da15bd16f2ca32637033e91138048b3d1bb4e02a0033a9096f93d0f3b6d7a'
+            '5b0e4a8fd7d575f620ff1cbaaf126fcb5d9a48da948b032526084911ed41b63f')
+
+prepare() {
+  cd $pkgname-$pkgver
+  patch -Np1 -i ../ekiga-4.0.1-boost-signals2.patch
+  patch -Np1 -i ../ekiga-4.0.1-libresolv.patch
+  autoreconf -fi
+}
+
+build() {
+  cd "$pkgname-$pkgver"
+  ./configure --prefix=/usr --sysconfdir=/etc \
+      --localstatedir=/var --disable-schemas-install \
+      --disable-scrollkeeper --enable-dbus --enable-avahi
+  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+  make
+}
+
+package() {
+  cd "$pkgname-$pkgver"
+  make DESTDIR="$pkgdir" GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 install
+
+  install -m755 -d "$pkgdir/usr/share/gconf/schemas"
+  gconf-merge-schema "$pkgdir/usr/share/gconf/schemas/$pkgname.schemas" --domain ekiga "$pkgdir"/etc/gconf/schemas/*.schemas
+  rm -f "$pkgdir"/etc/gconf/schemas/*.schemas
+}

Copied: ekiga/repos/gnome-unstable-x86_64/ekiga-4.0.1-boost-signals2.patch (from rev 348201, ekiga/trunk/ekiga-4.0.1-boost-signals2.patch)
===================================================================
--- gnome-unstable-x86_64/ekiga-4.0.1-boost-signals2.patch	                        (rev 0)
+++ gnome-unstable-x86_64/ekiga-4.0.1-boost-signals2.patch	2019-03-15 17:19:19 UTC (rev 348203)
@@ -0,0 +1,2738 @@
+From caecbf81d7c5c9464882d9b730b44497e83f06b9 Mon Sep 17 00:00:00 2001
+From: Julien Puydt <jpuydt at free.fr>
+Date: Sat, 14 Sep 2013 16:59:46 +0200
+Subject: [PATCH 1/2] Made the autotools files use BOOST signals2
+
+---
+ configure.ac                      | 15 ++++++++-------
+ lib/Makefile.am                   | 16 +++++++---------
+ plugins/avahi/Makefile.am         |  7 +++----
+ plugins/evolution/Makefile.am     |  7 +++----
+ plugins/gstreamer/Makefile.am     |  7 +++----
+ plugins/kab/Makefile.am           |  7 +++----
+ plugins/kde/Makefile.am           |  7 +++----
+ plugins/ldap/Makefile.am          |  8 ++++----
+ plugins/libnotify/Makefile.am     |  7 +++----
+ plugins/loudmouth/Makefile.am     |  7 +++----
+ plugins/resource-list/Makefile.am |  9 ++++-----
+ plugins/xcap/Makefile.am          |  7 +++----
+ src/Makefile.am                   | 10 +++++-----
+ 13 files changed, 52 insertions(+), 62 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 45b7ea454..e0de8fc4c 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -173,15 +173,16 @@ AC_SUBST(GLIB_LIBS)
+ dnl ###############################
+ dnl   Mandatory BOOST support
+ dnl ###############################
+-AX_BOOST_BASE([1.34])
+-AX_BOOST_SIGNALS
++AX_BOOST_BASE([1.53])
+ 
+-if test "x${ax_cv_boost_signals}" == "xno"; then
+-   AC_MSG_ERROR([You need the boost signals library to compile Ekiga])
+-fi
++CPPFLAGS_save="$CPPFLAGS"
++CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
++AC_CHECK_HEADER(boost/signals2.hpp,, found_signals2=no)
++CPPFLAGS="$CPPFLAGS_save"
+ 
+-BOOST_LIBS="${BOOST_SIGNALS_LIB}"
+-AC_SUBST(BOOST_LIBS)
++if test "x$found_signals2" = "xno"; then
++   AC_MSG_ERROR([Could not find BOOST signals2 headers])
++fi
+ 
+ 
+ dnl ###############################
+diff --git a/lib/Makefile.am b/lib/Makefile.am
+index 43324c92c..21e538b43 100644
+--- a/lib/Makefile.am
++++ b/lib/Makefile.am
+@@ -2,7 +2,7 @@ stacklib_LTLIBRARIES = libekiga.la
+ stacklib_dir = $(stacklibdir)
+ 
+ libekiga_la_SOURCES =
+-libekiga_la_LDFLAGS = $(STACKLIB_LDFLAGS) $(BOOST_LIBS) $(GLIB_LIBS) $(XML_LIBS) $(GTK_LIBS)
++libekiga_la_LDFLAGS = $(STACKLIB_LDFLAGS) $(GLIB_LIBS) $(XML_LIBS) $(GTK_LIBS)
+ 
+ if !WIN32
+ libekiga_la_LDFLAGS += -lX11
+@@ -10,7 +10,9 @@ endif
+ 
+ CLEANFILES =
+ 
+-INCLUDES = \
++AM_CPPFLAGS = \
++	$(BOOST_CPPFLAGS) $(GLIB_CFLAGS) $(XML_CFLAGS) $(GTK_CFLAGS) \
++	$(DBUS_CFLAGS) $(PTLIB_CFLAGS) $(OPAL_CFLAGS) \
+ 	-DSYSCONFDIR=\""$(sysconfdir)"\" \
+ 	-DEKIGA_PLUGIN_DIR=\"$(PLUGIN_DIR)\" \
+ 	-I$(top_srcdir) \
+@@ -50,11 +52,7 @@ INCLUDES = \
+ AM_CFLAGS = \
+ 	$(GLIB_CFLAGS) $(GTK_CFLAGS) $(GCONF_CFLAGS) $(DBUS_CFLAGS)
+ 
+-AM_CPPFLAGS = \
+-	$(BOOST_CPPFLAGS) $(GLIB_CFLAGS) $(XML_CFLAGS) $(GTK_CFLAGS) \
+-	$(DBUS_CFLAGS) $(PTLIB_CFLAGS) $(OPAL_CFLAGS)
+-AM_LIBS = \
+-	$(BOOST_LIBS) $(GLIB_LIBS) $(XML_LIBS) $(GTK_LIBS)
++AM_LIBS = $(GLIB_LIBS) $(XML_LIBS) $(GTK_LIBS)
+ 
+ engine_dir = $(top_srcdir)/lib/engine
+ components_dir = $(top_srcdir)/lib/engine/components
+@@ -99,7 +97,7 @@ endif
+ ##
+ if !WIN32
+ 
+-INCLUDES += -I$(top_srcdir)/lib/pixops
++AM_CPPFLAGS += -I$(top_srcdir)/lib/pixops
+ EXTRA_DIST += $(top_srcdir)/lib/pixops/README
+ 
+ libekiga_la_SOURCES += \
+@@ -669,7 +667,7 @@ libekiga_la_SOURCES += \
+ 
+ if !WIN32
+ 
+-INCLUDES += \
++AM_CPPFLAGS += \
+ 	-I$(top_srcdir)/lib/engine/components/x-videooutput
+ 
+ libekiga_la_SOURCES += \
+diff --git a/plugins/avahi/Makefile.am b/plugins/avahi/Makefile.am
+index fc8f49c98..404d78c55 100644
+--- a/plugins/avahi/Makefile.am
++++ b/plugins/avahi/Makefile.am
+@@ -2,9 +2,8 @@ plugin_LTLIBRARIES = libgmavahi.la
+ 
+ avahi_dir = $(top_srcdir)/plugins/avahi
+ 
+-AM_CXXFLAGS = $(BOOST_CPPFLAGS) $(AVAHI_CFLAGS)
+-
+-INCLUDES = \
++AM_CXXFLAGS = \
++	$(BOOST_CPPFLAGS) $(AVAHI_CFLAGS) \
+ 	-I$(top_srcdir)/lib/engine/framework \
+ 	-I$(top_srcdir)/lib/engine/account \
+ 	-I$(top_srcdir)/lib/engine/presence \
+@@ -22,4 +21,4 @@ libgmavahi_la_SOURCES = \
+ libgmavahi_la_LDFLAGS = $(PLUGINS_LIBTOOL_FLAGS)
+ libgmavahi_la_LIBADD = \
+ 	$(top_builddir)/lib/libekiga.la \
+-	$(BOOST_LDFLAGS) $(BOOST_LIBS) $(AVAHI_LIBS)
++	$(BOOST_LDFLAGS) $(AVAHI_LIBS)
+diff --git a/plugins/evolution/Makefile.am b/plugins/evolution/Makefile.am
+index 08a50099d..368b2301f 100644
+--- a/plugins/evolution/Makefile.am
++++ b/plugins/evolution/Makefile.am
+@@ -2,9 +2,8 @@ plugin_LTLIBRARIES = libgmevolution.la
+ 
+ evolution_dir = $(top_srcdir)/plugins/evolution
+ 
+-AM_CXXFLAGS = $(BOOST_CPPFLAGS) $(EDS_CFLAGS) $(GLIB_CFLAGS)
+-
+-INCLUDES = \
++AM_CXXFLAGS = \
++	$(BOOST_CPPFLAGS) $(EDS_CFLAGS) $(GLIB_CFLAGS) \
+ 	-I$(top_srcdir)/lib/engine/framework \
+ 	-I$(top_srcdir)/lib/engine/addressbook
+ 
+@@ -21,4 +20,4 @@ libgmevolution_la_SOURCES = \
+ libgmevolution_la_LDFLAGS = $(PLUGINS_LIBTOOL_FLAGS)
+ libgmevolution_la_LIBADD =  \
+ 	$(top_builddir)/lib/libekiga.la \
+-	$(BOOST_LDFLAGS) $(BOOST_LIBS) $(EDS_LIBS) $(GLIB_LIBS)
++	$(BOOST_LDFLAGS) $(EDS_LIBS) $(GLIB_LIBS)
+diff --git a/plugins/gstreamer/Makefile.am b/plugins/gstreamer/Makefile.am
+index 2a8396b2f..cd7f6738a 100644
+--- a/plugins/gstreamer/Makefile.am
++++ b/plugins/gstreamer/Makefile.am
+@@ -2,9 +2,8 @@ plugin_LTLIBRARIES = libgmgstreamer.la
+ 
+ gstreamer_dir = $(top_srcdir)/plugins/gstreamer/
+ 
+-AM_CXXFLAGS = $(BOOST_CPPFLAGS) $(GSTREAMER_CFLAGS) $(PTLIB_CFLAGS)
+-
+-INCLUDES = \
++AM_CXXFLAGS = \
++	$(BOOST_CPPFLAGS) $(GSTREAMER_CFLAGS) $(PTLIB_CFLAGS) \
+ 	-I$(top_srcdir)/lib/gmconf \
+ 	-I$(top_srcdir)/lib/engine/framework \
+ 	-I$(top_srcdir)/lib/engine/notification	\
+@@ -28,4 +27,4 @@ libgmgstreamer_la_SOURCES = \
+ 
+ libgmgstreamer_la_LDFLAGS = $(PLUGINS_LIBTOOL_FLAGS)
+ libgmgstreamer_la_LIBADD = \
+-	$(BOOST_LDFLAGS) $(BOOST_LIBS) $(GSTREAMER_LIBS) $(PTLIB_LIBS)
++	$(BOOST_LDFLAGS) $(GSTREAMER_LIBS) $(PTLIB_LIBS)
+diff --git a/plugins/kab/Makefile.am b/plugins/kab/Makefile.am
+index 99530c4b8..4275411a4 100644
+--- a/plugins/kab/Makefile.am
++++ b/plugins/kab/Makefile.am
+@@ -2,9 +2,8 @@ plugin_LTLIBRARIES = libgmkab.la
+ 
+ kab_dir = $(top_srcdir)/plugins/kab
+ 
+-AM_CPPFLAGS = $(BOOST_CPPFLAGS) $(KAB_CFLAGS)
+-
+-INCLUDES = \
++AM_CPPFLAGS = \
++	$(BOOST_CPPFLAGS) $(KAB_CFLAGS) \
+ 	-I$(top_srcdir)/lib/engine/framework \
+ 	-I$(top_srcdir)/lib/engine/addressbook
+ 
+@@ -20,4 +19,4 @@ libgmkab_la_SOURCES = \
+ 
+ libgmkab_la_LDFLAGS = $(PLUGINS_LIBTOOL_FLAGS)
+ libgmkab_la_LIBADD = \
+-	$(KAB_LIBS)
+\ No newline at end of file
++	$(KAB_LIBS)
+diff --git a/plugins/kde/Makefile.am b/plugins/kde/Makefile.am
+index 3d815773f..e0bee3dbd 100644
+--- a/plugins/kde/Makefile.am
++++ b/plugins/kde/Makefile.am
+@@ -2,9 +2,8 @@ plugin_LTLIBRARIES = libgmkde.la
+ 
+ kde_dir = $(top_srcdir)/plugins/kde
+ 
+-AM_CXXFLAGS = $(BOOST_CPPFLAGS) $(KDE_CFLAGS)
+-
+-INCLUDES = \
++AM_CXXFLAGS = \
++	$(BOOST_CPPFLAGS) $(KDE_CFLAGS) \
+ 	-I$(top_srcdir)/lib/engine/framework
+ 
+ libgmkde_la_SOURCES = \
+@@ -13,4 +12,4 @@ libgmkde_la_SOURCES = \
+ 
+ libgmkde_la_LDFLAGS = $(PLUGINS_LIBTOOL_FLAGS)
+ libgmkde_la_LIBADD = \
+-	$(BOOST_LDFLAGS) $(BOOST_LIBS) $(KDE_LIBS)
+\ No newline at end of file
++	$(BOOST_LDFLAGS) $(KDE_LIBS)
+diff --git a/plugins/ldap/Makefile.am b/plugins/ldap/Makefile.am
+index b27719bcc..eb8d9525a 100644
+--- a/plugins/ldap/Makefile.am
++++ b/plugins/ldap/Makefile.am
+@@ -2,9 +2,8 @@ plugin_LTLIBRARIES = libgmldap.la
+ 
+ ldap_dir = $(top_srcdir)/plugins/ldap
+ 
+-AM_CPPFLAGS = $(LDAP_CFLAGS) $(BOOST_CPPFLAGS) $(GLIB_CFLAGS) $(XML_CFLAGS)
+-
+-INCLUDES = \
++AM_CPPFLAGS = \
++	$(LDAP_CFLAGS) $(BOOST_CPPFLAGS) $(GLIB_CFLAGS) $(XML_CFLAGS) \
+ 	-I$(top_srcdir)/lib/gmconf 			\
+ 	-I$(top_srcdir)/lib/engine/framework 		\
+ 	-I$(top_srcdir)/lib/engine/addressbook
+@@ -20,6 +19,7 @@ libgmldap_la_SOURCES = \
+ 	$(ldap_dir)/ldap-main.cpp
+ 
+ libgmldap_la_LDFLAGS = $(PLUGINS_LIBTOOL_FLAGS)
++
+ libgmldap_la_LIBADD = \
+ 	$(top_builddir)/lib/libekiga.la \
+-	$(LDAP_LIBS) $(BOOST_LDFLAGS) $(BOOST_LIBS) $(GLIB_LIBS) $(XML_LIBS)
++	$(LDAP_LIBS) $(BOOST_LDFLAGS) $(GLIB_LIBS) $(XML_LIBS)
+diff --git a/plugins/libnotify/Makefile.am b/plugins/libnotify/Makefile.am
+index 5ebdb0658..eb9b6e8dc 100644
+--- a/plugins/libnotify/Makefile.am
++++ b/plugins/libnotify/Makefile.am
+@@ -2,9 +2,8 @@ plugin_LTLIBRARIES = libgmlibnotify.la
+ 
+ libnotify_dir = $(top_srcdir)/plugins/libnotify
+ 
+-AM_CXXFLAGS = $(BOOST_CPPFLAGS) $(NOTIFY_CFLAGS)
+-
+-INCLUDES = \
++AM_CXXFLAGS = \
++	$(BOOST_CPPFLAGS) $(NOTIFY_CFLAGS) \
+ 	-I$(top_srcdir)/lib/engine/framework \
+ 	-I$(top_srcdir)/lib/engine/notification \
+ 	-I$(top_srcdir)/lib/engine/protocol
+@@ -15,4 +14,4 @@ libgmlibnotify_la_SOURCES = \
+ libgmlibnotify_la_LDFLAGS = $(PLUGINS_LIBTOOL_FLAGS)
+ libgmlibnotify_la_LIBADD = \
+ 	$(top_builddir)/lib/libekiga.la \
+-	$(BOOST_LDFLAGS) $(BOOST_LIBS) $(NOTIFY_LIBS)
++	$(BOOST_LDFLAGS) $(NOTIFY_LIBS)
+diff --git a/plugins/loudmouth/Makefile.am b/plugins/loudmouth/Makefile.am
+index 1dde55781..82e672d95 100644
+--- a/plugins/loudmouth/Makefile.am
++++ b/plugins/loudmouth/Makefile.am
+@@ -2,9 +2,8 @@ plugin_LTLIBRARIES = libgmloudmouth.la
+ 
+ loudmouth_dir = $(top_srcdir)/plugins/loudmouth
+ 
+-AM_CXXFLAGS = $(BOOST_CPPFLAGS) $(XML_CFLAGS) $(LOUDMOUTH_CFLAGS)
+-
+-INCLUDES = \
++AM_CXXFLAGS = \
++	$(BOOST_CPPFLAGS) $(XML_CFLAGS) $(LOUDMOUTH_CFLAGS) \
+ 	-I$(top_srcdir)/lib/gmconf \
+ 	-I$(top_srcdir)/lib/engine/framework \
+ 	-I$(top_srcdir)/lib/engine/account \
+@@ -36,4 +35,4 @@ libgmloudmouth_la_SOURCES = \
+ libgmloudmouth_la_LDFLAGS = $(PLUGINS_LIBTOOL_FLAGS)
+ libgmloudmouth_la_LIBADD = \
+ 	$(top_builddir)/lib/libekiga.la \
+-	$(BOOST_LDFLAGS) $(BOOST_LIBS) $(XML_LIBS) $(LOUDMOUTH_LIBS)
++	$(BOOST_LDFLAGS) $(XML_LIBS) $(LOUDMOUTH_LIBS)
+diff --git a/plugins/resource-list/Makefile.am b/plugins/resource-list/Makefile.am
+index 263c7610c..d561ecf80 100644
+--- a/plugins/resource-list/Makefile.am
++++ b/plugins/resource-list/Makefile.am
+@@ -2,12 +2,11 @@ plugin_LTLIBRARIES = libgmresource_list.la
+ 
+ resource_list_dir = $(top_srcdir)/plugins/resource-list
+ 
+-AM_CXXFLAGS = $(BOOST_CPPFLAGS) $(GLIB_CFLAGS) $(XML_CFLAGS)
+-
+-INCLUDES = 						\
++AM_CXXFLAGS = \
++	$(BOOST_CPPFLAGS) $(GLIB_CFLAGS) $(XML_CFLAGS) \
+ 	-I$(top_srcdir)/lib/gmconf			\
+ 	-I$(top_srcdir)/lib/engine/framework		\
+-	-I$(top_srcdir)/lib/engine/presence	\
++	-I$(top_srcdir)/lib/engine/presence		\
+ 	-I$(top_srcdir)/lib/engine/account		\
+ 	-I$(top_srcdir)/plugins/xcap
+ 
+@@ -33,4 +32,4 @@ libgmresource_list_la_LDFLAGS = \
+ libgmresource_list_la_LIBADD = \
+ 	$(top_builddir)/lib/libekiga.la \
+ 	$(top_builddir)/plugins/xcap/libgmxcap.la \
+-	$(BOOST_LDFLAGS) $(BOOST_LIBS) $(GLIB_LIBS) $(XML_LIBS)
++	$(BOOST_LDFLAGS) $(GLIB_LIBS) $(XML_LIBS)
+diff --git a/plugins/xcap/Makefile.am b/plugins/xcap/Makefile.am
+index 612c69e35..a870455b6 100644
+--- a/plugins/xcap/Makefile.am
++++ b/plugins/xcap/Makefile.am
+@@ -2,9 +2,8 @@ plugin_LTLIBRARIES = libgmxcap.la
+ 
+ xcap_dir = $(top_srcdir)/plugins/xcap
+ 
+-AM_CXXFLAGS = $(BOOST_CPPFLAGS) $(SOUP_CFLAGS)
+-
+-INCLUDES = \
++AM_CXXFLAGS = \
++	$(BOOST_CPPFLAGS) $(SOUP_CFLAGS) \
+ 	-I$(top_srcdir)/lib/engine/framework
+ 
+ libgmxcap_la_SOURCES = \
+@@ -18,4 +17,4 @@ libgmxcap_la_SOURCES = \
+ libgmxcap_la_LDFLAGS = $(PLUGINS_LIBTOOL_FLAGS)
+ libgmxcap_la_LIBADD = \
+ 	$(top_builddir)/lib/libekiga.la \
+-	$(BOOST_LDFLAGS) $(BOOST_LIBS) $(SOUP_LIBS)
++	$(BOOST_LDFLAGS) $(SOUP_LIBS)
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 985c74959..38478361f 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -1,4 +1,4 @@
+-INCLUDES = \
++AM_CPPFLAGS = \
+ 	-I$(top_srcdir)/lib				\
+ 	-I$(top_srcdir)/lib/gmconf			\
+ 	-I$(top_srcdir)/lib/gui				\
+@@ -30,14 +30,14 @@ BUILT_SOURCES = src/revision.h
+ 
+ # XVideo/X
+ if !WIN32
+-INCLUDES +=                   				\
++AM_CPPFLAGS +=                   				\
+ 	-I$(top_srcdir)/lib/engine/videooutput/common   \
+ 	-I$(top_srcdir)/lib/engine/videooutput/x
+ endif
+ 
+ # DirectX
+ if HAVE_DX
+-INCLUDES +=                   				\
++AM_CPPFLAGS +=                   				\
+ 	-I$(top_srcdir)/lib/engine/videooutput/common   \
+ 	-I$(top_srcdir)/lib/engine/videooutput/dx
+ endif
+@@ -83,7 +83,7 @@ ekiga_SOURCES +=		\
+ 	dbus-helper/dbus.cpp
+ 
+ # find gmmarshallers.h
+-INCLUDES += \
++AM_CPPFLAGS += \
+ 	-I$(top_builddir)/lib
+ 
+ nodist_ekiga_SOURCES +=		\
+@@ -142,7 +142,7 @@ src/revision.h:
+         fi
+ 
+ AM_CXXFLAGS = $(GTK_CFLAGS) $(GLIB_CFLAGS) $(DBUS_CFLAGS) $(OPAL_CFLAGS) $(PTLIB_CFLAGS) $(BOOST_CPPFLAGS) $(XML_CFLAGS)
+-AM_LIBS = $(GTK_LIBS) $(GLIB_LIBS) $(DBUS_LIBS) $(OPAL_LIBS) $(PTLIB_LIBS) $(BOOST_LDFLAGS) $(BOOST_LIBS) $(XML_LIBS)
++AM_LIBS = $(GTK_LIBS) $(GLIB_LIBS) $(DBUS_LIBS) $(OPAL_LIBS) $(PTLIB_LIBS) $(BOOST_LDFLAGS) $(XML_LIBS)
+ 
+ ekiga_LDADD = \
+ 	$(top_builddir)/lib/libekiga.la $(AM_LIBS)
+-- 
+2.20.1
+
+
+From b6124e3c6b175f3a294a4ce23018b1f4bc0a7447 Mon Sep 17 00:00:00 2001
+From: Julien Puydt <jpuydt at free.fr>
+Date: Sat, 14 Sep 2013 17:49:31 +0200
+Subject: [PATCH 2/2] Made the sources use signals2
+
+---
+ lib/engine/account/account-core.h             | 12 +++----
+ lib/engine/account/bank-impl.h                |  2 +-
+ lib/engine/account/bank.h                     |  6 ++--
+ lib/engine/addressbook/book.h                 |  6 ++--
+ lib/engine/addressbook/contact-core.cpp       |  2 +-
+ lib/engine/addressbook/contact-core.h         | 16 ++++-----
+ lib/engine/addressbook/source.h               | 12 +++----
+ lib/engine/audioinput/audioinput-core.h       | 12 +++----
+ lib/engine/audioinput/audioinput-manager.h    |  8 ++---
+ lib/engine/audiooutput/audiooutput-core.h     | 12 +++----
+ lib/engine/audiooutput/audiooutput-manager.h  |  8 ++---
+ lib/engine/chat/chat-core.h                   |  4 +--
+ lib/engine/chat/chat.h                        |  8 ++---
+ lib/engine/chat/dialect-impl.h                | 30 ++++++++--------
+ lib/engine/chat/dialect.h                     |  4 +--
+ .../components/call-history/history-book.h    |  4 +--
+ .../components/call-history/history-contact.h |  2 +-
+ .../components/local-roster/local-cluster.h   |  2 +-
+ .../local-roster/local-presentity.h           |  2 +-
+ lib/engine/components/opal/opal-account.h     |  2 +-
+ lib/engine/components/opal/opal-call.h        |  2 +-
+ .../components/opal/opal-gmconf-bridge.cpp    |  2 +-
+ .../framework/chain-of-responsibility.h       |  7 ++--
+ lib/engine/framework/form-request-simple.h    |  2 +-
+ lib/engine/framework/gmconf-bridge.h          |  4 +--
+ lib/engine/framework/live-object.h            |  4 +--
+ lib/engine/framework/menu-builder.h           |  2 +-
+ lib/engine/framework/personal-details.h       |  4 +--
+ lib/engine/framework/reflister.h              | 20 +++++------
+ lib/engine/framework/runtime.h                |  2 +-
+ lib/engine/framework/services.h               |  4 +--
+ lib/engine/gui/gtk-core/codecsbox.cpp         |  2 ++
+ .../gui/gtk-frontend/accounts-window.cpp      |  6 ++--
+ .../gui/gtk-frontend/addressbook-window.cpp   |  6 ++--
+ lib/engine/gui/gtk-frontend/book-view-gtk.cpp |  4 +--
+ .../gtk-frontend/call-history-view-gtk.cpp    |  6 ++--
+ lib/engine/gui/gtk-frontend/call-window.cpp   |  4 +--
+ lib/engine/gui/gtk-frontend/chat-area.cpp     |  2 +-
+ lib/engine/gui/gtk-frontend/chat-window.cpp   |  4 +--
+ lib/engine/gui/gtk-frontend/heap-view.cpp     |  6 ++--
+ .../gui/gtk-frontend/preferences-window.cpp   |  4 +--
+ .../gui/gtk-frontend/presentity-view.cpp      |  4 +--
+ .../gui/gtk-frontend/roster-view-gtk.cpp      |  6 ++--
+ lib/engine/gui/gtk-frontend/statusicon.cpp    |  6 ++--
+ lib/engine/gui/gtk-frontend/statusicon.h      |  2 +-
+ lib/engine/hal/hal-core.h                     | 20 +++++------
+ lib/engine/hal/hal-manager.h                  | 16 ++++-----
+ lib/engine/notification/notification-core.h   |  4 +--
+ lib/engine/presence/cluster.h                 | 12 +++----
+ lib/engine/presence/heap.h                    |  6 ++--
+ lib/engine/presence/presence-core.cpp         |  2 +-
+ lib/engine/presence/presence-core.h           | 24 ++++++-------
+ lib/engine/presence/uri-presentity.h          |  2 +-
+ lib/engine/protocol/call-core.cpp             |  6 ++--
+ lib/engine/protocol/call-core.h               | 34 +++++++++----------
+ lib/engine/protocol/call-manager.h            |  6 ++--
+ lib/engine/protocol/call.h                    | 28 +++++++--------
+ lib/engine/videoinput/videoinput-core.h       | 14 ++++----
+ lib/engine/videoinput/videoinput-manager.h    |  8 ++---
+ lib/engine/videooutput/videooutput-core.h     | 14 ++++----
+ lib/engine/videooutput/videooutput-manager.h  | 12 +++----
+ plugins/avahi/avahi-cluster.h                 |  2 +-
+ plugins/avahi/avahi-heap.h                    |  2 +-
+ plugins/ldap/ldap-book.h                      |  2 +-
+ plugins/libnotify/libnotify-main.cpp          |  8 ++---
+ plugins/loudmouth/loudmouth-account.h         |  2 +-
+ plugins/loudmouth/loudmouth-heap-roster.h     |  2 +-
+ plugins/loudmouth/loudmouth-helpers.h         |  2 +-
+ plugins/loudmouth/loudmouth-presentity.h      |  2 +-
+ plugins/resource-list/rl-heap.cpp             | 12 +++----
+ plugins/resource-list/rl-heap.h               |  4 +--
+ plugins/resource-list/rl-list.cpp             | 24 ++++++-------
+ plugins/resource-list/rl-list.h               |  6 ++--
+ plugins/resource-list/rl-presentity.h         |  2 +-
+ src/gui/assistant.cpp                         |  4 +--
+ src/gui/main_window.cpp                       |  4 +--
+ src/gui/statusmenu.cpp                        |  4 +--
+ 77 files changed, 280 insertions(+), 279 deletions(-)
+
+diff --git a/lib/engine/account/account-core.h b/lib/engine/account/account-core.h
+index 90bede6aa..2fdcf78a3 100644
+--- a/lib/engine/account/account-core.h
++++ b/lib/engine/account/account-core.h
+@@ -106,26 +106,26 @@ namespace Ekiga
+ 
+     /** This signal is emitted when a bank has been added to the core
+      */
+-    boost::signal1<void, BankPtr> bank_added;
++    boost::signals2::signal<void(BankPtr)> bank_added;
+ 
+     /** This signal is emitted when a bank has been removed from the core
+      */
+-    boost::signal1<void, BankPtr> bank_removed;
++    boost::signals2::signal<void(BankPtr)> bank_removed;
+ 
+     /** This signal is emitted when a account has been added to one of
+      * the banks
+      */
+-    boost::signal2<void, BankPtr, AccountPtr> account_added;
++    boost::signals2::signal<void(BankPtr, AccountPtr)> account_added;
+ 
+     /** This signal is emitted when a account has been removed from one of
+      * the banks
+      */
+-    boost::signal2<void, BankPtr, AccountPtr> account_removed;
++    boost::signals2::signal<void(BankPtr, AccountPtr)> account_removed;
+ 
+     /** This signal is emitted when a account has been updated in one of
+      * the banks
+      */
+-    boost::signal2<void, BankPtr, AccountPtr> account_updated;
++    boost::signals2::signal<void(BankPtr, AccountPtr)> account_updated;
+ 
+   private:
+ 
+@@ -147,7 +147,7 @@ namespace Ekiga
+     /** This signal is emitted when the AccountCore Service has been
+      * updated.
+      */
+-    boost::signal0<void> updated;
++    boost::signals2::signal<void(void)> updated;
+ 
+ 
+     /** This chain allows the AccountCore to present forms to the user
+diff --git a/lib/engine/account/bank-impl.h b/lib/engine/account/bank-impl.h
+index b0a8775d3..52c917a1a 100644
+--- a/lib/engine/account/bank-impl.h
++++ b/lib/engine/account/bank-impl.h
+@@ -74,7 +74,7 @@ namespace Ekiga
+   template<class AccountType = Account>
+   class BankImpl:
+     public Bank,
+-    public boost::signals::trackable,
++    public boost::signals2::trackable,
+     protected RefLister<AccountType>
+   {
+ 
+diff --git a/lib/engine/account/bank.h b/lib/engine/account/bank.h
+index de5549355..a8250237a 100644
+--- a/lib/engine/account/bank.h
++++ b/lib/engine/account/bank.h
+@@ -74,15 +74,15 @@ namespace Ekiga
+ 
+     /** This signal is emitted when a account has been added.
+      */
+-    boost::signal1<void, AccountPtr> account_added;
++    boost::signals2::signal<void(AccountPtr)> account_added;
+ 
+     /** This signal is emitted when a account has been removed.
+      */
+-    boost::signal1<void, AccountPtr> account_removed;
++    boost::signals2::signal<void(AccountPtr)> account_removed;
+ 
+     /** This signal is emitted when a account has been updated.
+      */
+-    boost::signal1<void, AccountPtr> account_updated;
++    boost::signals2::signal<void(AccountPtr)> account_updated;
+ 
+     /** This chain allows the BankImpl to present forms to the user
+      */
+diff --git a/lib/engine/addressbook/book.h b/lib/engine/addressbook/book.h
+index 3712e2cc1..a0dc89313 100644
+--- a/lib/engine/addressbook/book.h
++++ b/lib/engine/addressbook/book.h
+@@ -92,17 +92,17 @@ namespace Ekiga {
+ 
+     /** This signal is emitted when a Contact has been added to the Book.
+      */
+-    boost::signal1<void, ContactPtr > contact_added;
++    boost::signals2::signal<void(ContactPtr)> contact_added;
+ 
+ 
+     /** This signal is emitted when a Contact has been removed from the Book.
+      */
+-    boost::signal1<void, ContactPtr > contact_removed;
++    boost::signals2::signal<void(ContactPtr)> contact_removed;
+ 
+ 
+     /** This signal is emitted when a Contact has been updated in the Book.
+      */
+-    boost::signal1<void, ContactPtr > contact_updated;
++    boost::signals2::signal<void(ContactPtr)> contact_updated;
+   };
+ 
+   typedef boost::shared_ptr<Book> BookPtr;
+diff --git a/lib/engine/addressbook/contact-core.cpp b/lib/engine/addressbook/contact-core.cpp
+index 00eb282d9..dd181d6ba 100644
+--- a/lib/engine/addressbook/contact-core.cpp
++++ b/lib/engine/addressbook/contact-core.cpp
+@@ -50,7 +50,7 @@ on_search ()
+ 
+ Ekiga::ContactCore::~ContactCore ()
+ {
+-  for (std::list<boost::signals::connection>::iterator iter = conns.begin (); iter != conns.end (); ++iter)
++  for (std::list<boost::signals2::connection>::iterator iter = conns.begin (); iter != conns.end (); ++iter)
+     iter->disconnect ();
+ }
+ 
+diff --git a/lib/engine/addressbook/contact-core.h b/lib/engine/addressbook/contact-core.h
+index 4eab10766..d8786a5f1 100644
+--- a/lib/engine/addressbook/contact-core.h
++++ b/lib/engine/addressbook/contact-core.h
+@@ -118,37 +118,37 @@ namespace Ekiga
+     /** This signal is emitted when a Ekiga::Source has been
+      * added to the ContactCore Service.
+      */
+-    boost::signal1<void, SourcePtr > source_added;
++    boost::signals2::signal<void(SourcePtr)> source_added;
+ 
+     /** This signal is emitted when a book has been added to one of
+      * the sources
+      */
+-    boost::signal2<void, SourcePtr, BookPtr > book_added;
++    boost::signals2::signal<void(SourcePtr, BookPtr )> book_added;
+ 
+     /** This signal is emitted when a book has been removed from one of
+      * the sources
+      */
+-    boost::signal2<void, SourcePtr, BookPtr > book_removed;
++    boost::signals2::signal<void(SourcePtr, BookPtr )> book_removed;
+ 
+     /** This signal is emitted when a book has been updated in one of
+      * the sources
+      */
+-    boost::signal2<void, SourcePtr, BookPtr > book_updated;
++    boost::signals2::signal<void(SourcePtr, BookPtr )> book_updated;
+ 
+     /** This signal is emitted when a contact has been added to one of
+      * the book of one of the sources
+      */
+-    boost::signal3<void, SourcePtr, BookPtr, ContactPtr > contact_added;
++    boost::signals2::signal<void(SourcePtr, BookPtr, ContactPtr )> contact_added;
+ 
+     /** This signal is emitted when a contact has been removed from one of
+      * the book of one of the sources
+      */
+-    boost::signal3<void, SourcePtr, BookPtr, ContactPtr > contact_removed;
++    boost::signals2::signal<void(SourcePtr, BookPtr, ContactPtr )> contact_removed;
+ 
+     /** This signal is emitted when a contact has been updated in one of
+      * the book of one of the sources
+      */
+-    boost::signal3<void, SourcePtr, BookPtr, ContactPtr > contact_updated;
++    boost::signals2::signal<void(SourcePtr, BookPtr, ContactPtr )> contact_updated;
+ 
+   private:
+ 
+@@ -174,7 +174,7 @@ namespace Ekiga
+     std::list<boost::shared_ptr<ContactDecorator> > contact_decorators;
+ 
+     /*** Misc stuff ***/
+-    std::list<boost::signals::connection> conns;
++    std::list<boost::signals2::connection> conns;
+   };
+ 
+ /**
+diff --git a/lib/engine/addressbook/source.h b/lib/engine/addressbook/source.h
+index 35accd672..e26aa099a 100644
+--- a/lib/engine/addressbook/source.h
++++ b/lib/engine/addressbook/source.h
+@@ -63,32 +63,32 @@ namespace Ekiga {
+ 
+     /** This signal is emitted when a Book has been added to the Source.
+      */
+-    boost::signal1<void, BookPtr > book_added;
++    boost::signals2::signal<void(BookPtr)> book_added;
+     
+     
+     /** This signal is emitted when a Book has been updated in the Source.
+      */
+-    boost::signal1<void, BookPtr > book_updated;
++    boost::signals2::signal<void(BookPtr)> book_updated;
+     
+     
+     /** This signal is emitted when a Book has been removed in the Source.
+      */
+-    boost::signal1<void, BookPtr > book_removed;
++    boost::signals2::signal<void(BookPtr)> book_removed;
+ 
+     /** This signal is emitted when a Contact has been added to a book in
+      *  this source.
+      */
+-    boost::signal2<void, BookPtr, ContactPtr > contact_added;
++    boost::signals2::signal<void(BookPtr, ContactPtr )> contact_added;
+ 
+     /** This signal is emitted when a Contact has been removed from a book in
+      *  this source.
+      */
+-    boost::signal2<void, BookPtr, ContactPtr > contact_removed;
++    boost::signals2::signal<void(BookPtr, ContactPtr )> contact_removed;
+ 
+     /** This signal is emitted when a Contact has been updated in a book in
+      *  this source
+      */
+-    boost::signal2<void, BookPtr, ContactPtr > contact_updated;
++    boost::signals2::signal<void(BookPtr, ContactPtr )> contact_updated;
+   };
+ 
+   typedef boost::shared_ptr<Source> SourcePtr;
+diff --git a/lib/engine/audioinput/audioinput-core.h b/lib/engine/audioinput/audioinput-core.h
+index 70737a694..97cfc5d57 100644
+--- a/lib/engine/audioinput/audioinput-core.h
++++ b/lib/engine/audioinput/audioinput-core.h
+@@ -136,7 +136,7 @@ namespace Ekiga
+       /** This signal is emitted when a Ekiga::AudioInputManager has been
+        * added to the AudioInputCore Service.
+        */
+-      boost::signal1<void, AudioInputManager &> manager_added;
++      boost::signals2::signal<void(AudioInputManager &)> manager_added;
+ 
+ 
+       /*** AudioInput Device Management ***/
+@@ -254,23 +254,23 @@ namespace Ekiga
+ 
+       /** See audioinput-manager.h for the API
+        */
+-      boost::signal3<void, AudioInputManager &, AudioInputDevice &, AudioInputSettings&> device_opened;
+-      boost::signal2<void, AudioInputManager &, AudioInputDevice &> device_closed;
+-      boost::signal3<void, AudioInputManager &, AudioInputDevice &, AudioInputErrorCodes> device_error;
++      boost::signals2::signal<void(AudioInputManager &, AudioInputDevice &, AudioInputSettings&)> device_opened;
++      boost::signals2::signal<void(AudioInputManager &, AudioInputDevice &)> device_closed;
++      boost::signals2::signal<void(AudioInputManager &, AudioInputDevice &, AudioInputErrorCodes)> device_error;
+ 
+       /** This signal is emitted when an audio device input has been added to the system.
+        * This signal will be emitted if add_device was called with a device name and
+        * a manager claimed support for this device.
+        * @param device the audio input device that was added.
+        */
+-      boost::signal2<void, AudioInputDevice, bool> device_added;
++      boost::signals2::signal<void(AudioInputDevice, bool)> device_added;
+ 
+       /** This signal is emitted when an audio input device has been removed from the system.
+        * This signal will be emitted if remove_device was called with a device name and
+        * a manager claimed support for this device.
+        * @param device the audio input device that was removed.
+        */
+-      boost::signal2<void, AudioInputDevice, bool> device_removed;
++      boost::signals2::signal<void(AudioInputDevice, bool)> device_removed;
+ 
+   private:
+       void on_set_device (const AudioInputDevice & device);
+diff --git a/lib/engine/audioinput/audioinput-manager.h b/lib/engine/audioinput/audioinput-manager.h
+index 0ae9296dd..28e9f794b 100644
+--- a/lib/engine/audioinput/audioinput-manager.h
++++ b/lib/engine/audioinput/audioinput-manager.h
+@@ -39,7 +39,7 @@
+ #define __AUDIOINPUT_MANAGER_H__
+ 
+ #include <vector>
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #include "audioinput-info.h"
+@@ -148,18 +148,18 @@ namespace Ekiga
+        * @param device the audio input device that was opened.
+        * @param config the current audio input device configuration (current volume, etc.).
+        */
+-      boost::signal2<void, AudioInputDevice, AudioInputSettings> device_opened;
++      boost::signals2::signal<void(AudioInputDevice, AudioInputSettings)> device_opened;
+ 
+       /** This signal is emitted when an audio input device is closed.
+        * @param device the audio input device that was closed.
+        */
+-      boost::signal1<void, AudioInputDevice> device_closed;
++      boost::signals2::signal<void(AudioInputDevice)> device_closed;
+ 
+       /** This signal is emitted when an error occurs when opening a audio input device.
+        * @param device the audio input device that caused the error.
+        * @param error_code the audio input device error code.
+        */
+-      boost::signal2<void, AudioInputDevice, AudioInputErrorCodes> device_error;
++      boost::signals2::signal<void(AudioInputDevice, AudioInputErrorCodes)> device_error;
+ 
+ 
+   protected:  
+diff --git a/lib/engine/audiooutput/audiooutput-core.h b/lib/engine/audiooutput/audiooutput-core.h
+index 627e4142e..a1db8e680 100644
+--- a/lib/engine/audiooutput/audiooutput-core.h
++++ b/lib/engine/audiooutput/audiooutput-core.h
+@@ -128,7 +128,7 @@ namespace Ekiga
+       /** This signal is emitted when a Ekiga::AudioOutputManager has been
+        * added to the AudioOutputCore Service.
+        */
+-      boost::signal1<void, AudioOutputManager &> manager_added;
++      boost::signals2::signal<void(AudioOutputManager &)> manager_added;
+ 
+ 
+       /** Get a list of all devices supported by all managers registered to the core.
+@@ -299,23 +299,23 @@ namespace Ekiga
+ 
+       /** See audiooutput-manager.h for the API
+        */
+-      boost::signal4<void, AudioOutputManager &, AudioOutputPS, AudioOutputDevice&, AudioOutputSettings&> device_opened;
+-      boost::signal3<void, AudioOutputManager &, AudioOutputPS, AudioOutputDevice&> device_closed;
+-      boost::signal4<void, AudioOutputManager &, AudioOutputPS, AudioOutputDevice&, AudioOutputErrorCodes> device_error;
++      boost::signals2::signal<void(AudioOutputManager &, AudioOutputPS, AudioOutputDevice&, AudioOutputSettings&)> device_opened;
++      boost::signals2::signal<void(AudioOutputManager &, AudioOutputPS, AudioOutputDevice&)> device_closed;
++      boost::signals2::signal<void(AudioOutputManager &, AudioOutputPS, AudioOutputDevice&, AudioOutputErrorCodes)> device_error;
+ 
+       /** This signal is emitted when an audio output device has been added to the system.
+        * This signal will be emitted if add_device was called with a device name and
+        * a manager claimed support for this device.
+        * @param device the audio output device that was added.
+        */
+-      boost::signal2<void, AudioOutputDevice, bool> device_added;
++      boost::signals2::signal<void(AudioOutputDevice, bool)> device_added;
+ 
+       /** This signal is emitted when an audio output device has been removed from the system.
+        * This signal will be emitted if remove_device was called with a device name and
+        * a manager claimed support for this device.
+        * @param device the audio output device that was removed.
+        */
+-      boost::signal2<void, AudioOutputDevice, bool> device_removed;
++      boost::signals2::signal<void(AudioOutputDevice, bool)> device_removed;
+ 
+   private:
+       void on_set_device (const AudioOutputDevice & device);
+diff --git a/lib/engine/audiooutput/audiooutput-manager.h b/lib/engine/audiooutput/audiooutput-manager.h
+index e613e0021..78cc20c79 100644
+--- a/lib/engine/audiooutput/audiooutput-manager.h
++++ b/lib/engine/audiooutput/audiooutput-manager.h
+@@ -39,7 +39,7 @@
+ #define __AUDIOOUTPUT_MANAGER_H__
+ 
+ #include <vector>
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #include "audiooutput-info.h"
+@@ -152,20 +152,20 @@ namespace Ekiga
+        * @param device the audio output device that was opened.
+        * @param config the current audio output device configuration (current volume, etc.).
+        */
+-      boost::signal3<void, AudioOutputPS, AudioOutputDevice, AudioOutputSettings> device_opened;
++      boost::signals2::signal<void(AudioOutputPS, AudioOutputDevice, AudioOutputSettings)> device_opened;
+ 
+       /** This signal is emitted when an audio output device is closed.
+        * @param prim whether the primary or secondary audio output device was closed.
+        * @param device the audio output device that was closed.
+        */
+-      boost::signal2<void, AudioOutputPS, AudioOutputDevice> device_closed;
++      boost::signals2::signal<void(AudioOutputPS, AudioOutputDevice)> device_closed;
+ 
+       /** This signal is emitted when an error occurs when opening an audio output device.
+        * @param prim whether the primary or secondary audio output device caused the error.
+        * @param device the audio output device that caused the error.
+        * @param error_code the audio output device error code.
+        */
+-      boost::signal3<void, AudioOutputPS, AudioOutputDevice, AudioOutputErrorCodes> device_error;
++      boost::signals2::signal<void(AudioOutputPS, AudioOutputDevice, AudioOutputErrorCodes)> device_error;
+ 
+   protected:  
+       typedef struct ManagerState {
+diff --git a/lib/engine/chat/chat-core.h b/lib/engine/chat/chat-core.h
+index 9a7d7e17f..444663cf7 100644
+--- a/lib/engine/chat/chat-core.h
++++ b/lib/engine/chat/chat-core.h
+@@ -100,7 +100,7 @@ namespace Ekiga
+     /** This signal is emitted when an Ekiga::Dialect has been added to
+      * the ChatCore service.
+      */
+-    boost::signal1<void, DialectPtr > dialect_added;
++    boost::signals2::signal<void(DialectPtr)> dialect_added;
+ 
+   private:
+ 
+@@ -116,7 +116,7 @@ namespace Ekiga
+ 
+     /** This signal is emitted when the ChatCore service has been updated.
+      */
+-    boost::signal0<void> updated;
++    boost::signals2::signal<void(void)> updated;
+ 
+     /** This chain allows the ChatCore to present forms to the user
+      */
+diff --git a/lib/engine/chat/chat.h b/lib/engine/chat/chat.h
+index 08f568f83..bcaf85cf4 100644
+--- a/lib/engine/chat/chat.h
++++ b/lib/engine/chat/chat.h
+@@ -37,7 +37,7 @@
+ #define __CHAT_H__
+ 
+ #include <string>
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #include <boost/smart_ptr.hpp>
+@@ -113,15 +113,15 @@ namespace Ekiga
+ 
+     /** This signal is emitted when the Chat has been updated.
+      */
+-    boost::signal0<void> updated;
++    boost::signals2::signal<void(void)> updated;
+ 
+     /** This signal is emitted when the user requested to see this Chat
+      */
+-    boost::signal0<void> user_requested;
++    boost::signals2::signal<void(void)> user_requested;
+ 
+     /** This signal is emitted when the Chat has been removed.
+      */
+-    boost::signal0<void> removed;
++    boost::signals2::signal<void(void)> removed;
+ 
+     /** Feed possible actions on this Chat to the given MenuBuilder
+      * @param A MenuBuilder object to populate.
+diff --git a/lib/engine/chat/dialect-impl.h b/lib/engine/chat/dialect-impl.h
+index f14b48acd..7c3208e37 100644
+--- a/lib/engine/chat/dialect-impl.h
++++ b/lib/engine/chat/dialect-impl.h
+@@ -47,7 +47,7 @@ namespace Ekiga
+ 	   typename MultipleChatType = MultipleChat>
+   class DialectImpl:
+     public Dialect,
+-    public boost::signals::trackable
++    public boost::signals2::trackable
+   {
+   public:
+ 
+@@ -75,10 +75,10 @@ namespace Ekiga
+ 
+     /* More STL-like ways to access the chats within this Ekiga::DialectImpl
+      */
+-    typedef typename Ekiga::map_key_iterator<std::map<boost::shared_ptr<SimpleChatType>, std::list<boost::signals::connection> > > simple_iterator;
+-    typedef typename Ekiga::map_key_const_iterator<std::map<boost::shared_ptr<SimpleChatType>, std::list<boost::signals::connection> > > simple_const_iterator;
+-    typedef typename Ekiga::map_key_iterator<std::map<boost::shared_ptr<MultipleChatType>, std::list<boost::signals::connection> > > multiple_iterator;
+-    typedef typename Ekiga::map_key_const_iterator<std::map<boost::shared_ptr<MultipleChatType>, std::list<boost::signals::connection> > > multiple_const_iterator;
++    typedef typename Ekiga::map_key_iterator<std::map<boost::shared_ptr<SimpleChatType>, std::list<boost::signals2::connection> > > simple_iterator;
++    typedef typename Ekiga::map_key_const_iterator<std::map<boost::shared_ptr<SimpleChatType>, std::list<boost::signals2::connection> > > simple_const_iterator;
++    typedef typename Ekiga::map_key_iterator<std::map<boost::shared_ptr<MultipleChatType>, std::list<boost::signals2::connection> > > multiple_iterator;
++    typedef typename Ekiga::map_key_const_iterator<std::map<boost::shared_ptr<MultipleChatType>, std::list<boost::signals2::connection> > > multiple_const_iterator;
+ 
+     simple_iterator simple_begin ();
+     simple_iterator simple_end ();
+@@ -116,8 +116,8 @@ namespace Ekiga
+ 
+   private:
+ 
+-    std::map<boost::shared_ptr<SimpleChatType>, std::list<boost::signals::connection> > simple_chats;
+-    std::map<boost::shared_ptr<MultipleChatType>, std::list<boost::signals::connection> > multiple_chats;
++    std::map<boost::shared_ptr<SimpleChatType>, std::list<boost::signals2::connection> > simple_chats;
++    std::map<boost::shared_ptr<MultipleChatType>, std::list<boost::signals2::connection> > multiple_chats;
+ 
+     void on_simple_chat_removed (boost::shared_ptr<SimpleChatType> chat);
+ 
+@@ -133,22 +133,22 @@ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::DialectImpl ()
+ template<typename SimpleChatType, typename MultipleChatType>
+ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::~DialectImpl ()
+ {
+-  for (typename std::map<boost::shared_ptr<SimpleChatType>,std::list<boost::signals::connection> >::iterator iter = simple_chats.begin ();
++  for (typename std::map<boost::shared_ptr<SimpleChatType>,std::list<boost::signals2::connection> >::iterator iter = simple_chats.begin ();
+        iter != simple_chats.end ();
+        iter++) {
+ 
+-    for (std::list<boost::signals::connection>::iterator conn_iter = iter->second.begin ();
++    for (std::list<boost::signals2::connection>::iterator conn_iter = iter->second.begin ();
+ 	 conn_iter != iter->second.end ();
+ 	 ++conn_iter) {
+ 
+       conn_iter->disconnect ();
+     }
+   }
+-  for (typename std::map<boost::shared_ptr<MultipleChatType>,std::list<boost::signals::connection> >::iterator iter = multiple_chats.begin ();
++  for (typename std::map<boost::shared_ptr<MultipleChatType>,std::list<boost::signals2::connection> >::iterator iter = multiple_chats.begin ();
+        iter != multiple_chats.end ();
+        iter++) {
+ 
+-    for (std::list<boost::signals::connection>::iterator conn_iter = iter->second.begin ();
++    for (std::list<boost::signals2::connection>::iterator conn_iter = iter->second.begin ();
+ 	 conn_iter != iter->second.end ();
+ 	 ++conn_iter) {
+ 
+@@ -163,7 +163,7 @@ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::visit_simple_chats (boost:
+ {
+   bool go_on = true;
+ 
+-  for (typename std::map<boost::shared_ptr<SimpleChatType>,std::list<boost::signals::connection> >::const_iterator iter = simple_chats.begin ();
++  for (typename std::map<boost::shared_ptr<SimpleChatType>,std::list<boost::signals2::connection> >::const_iterator iter = simple_chats.begin ();
+        go_on && iter != simple_chats.end ();
+        iter++) {
+ 
+@@ -177,7 +177,7 @@ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::visit_multiple_chats (boos
+ {
+   bool go_on = true;
+ 
+-  for (typename std::map<boost::shared_ptr<MultipleChatType>,std::list<boost::signals::connection> >::const_iterator iter = multiple_chats.begin ();
++  for (typename std::map<boost::shared_ptr<MultipleChatType>,std::list<boost::signals2::connection> >::const_iterator iter = multiple_chats.begin ();
+        go_on && iter != multiple_chats.end ();
+        iter++) {
+ 
+@@ -275,7 +275,7 @@ template<typename SimpleChatType, typename MultipleChatType>
+ void
+ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::on_simple_chat_removed (boost::shared_ptr<SimpleChatType> chat)
+ {
+-  for (typename std::list<boost::signals::connection>::iterator iter = simple_chats[chat].begin ();
++  for (typename std::list<boost::signals2::connection>::iterator iter = simple_chats[chat].begin ();
+        iter != simple_chats[chat].end ();
+        ++iter) {
+ 
+@@ -288,7 +288,7 @@ template<typename SimpleChatType, typename MultipleChatType>
+ void
+ Ekiga::DialectImpl<SimpleChatType, MultipleChatType>::on_multiple_chat_removed (boost::shared_ptr<MultipleChatType> chat)
+ {
+-  for (typename std::list<boost::signals::connection>::iterator iter = multiple_chats[chat].begin ();
++  for (typename std::list<boost::signals2::connection>::iterator iter = multiple_chats[chat].begin ();
+        iter != multiple_chats[chat].end ();
+        ++iter) {
+ 
+diff --git a/lib/engine/chat/dialect.h b/lib/engine/chat/dialect.h
+index c6d8986bb..0af7832c7 100644
+--- a/lib/engine/chat/dialect.h
++++ b/lib/engine/chat/dialect.h
+@@ -72,12 +72,12 @@ namespace Ekiga
+     /** This signal is emitted when an Ekiga::SimpleChat has been added to
+      * the dialect.
+      */
+-    boost::signal1<void, SimpleChatPtr> simple_chat_added;
++    boost::signals2::signal<void(SimpleChatPtr)> simple_chat_added;
+ 
+     /** This signal is emitted when an Ekiga::MultipleChat has been added to
+      * the dialect.
+      */
+-    boost::signal1<void, MultipleChatPtr> multiple_chat_added;
++    boost::signals2::signal<void(MultipleChatPtr)> multiple_chat_added;
+ 
+     /** This chain allows the Dialect to present forms to the user.
+      */
+diff --git a/lib/engine/components/call-history/history-book.h b/lib/engine/components/call-history/history-book.h
+index 91b7e33d7..2097c16e3 100644
+--- a/lib/engine/components/call-history/history-book.h
++++ b/lib/engine/components/call-history/history-book.h
+@@ -53,7 +53,7 @@ namespace History
+ 
+   class Book:
+     public Ekiga::Book,
+-    public boost::signals::trackable
++    public boost::signals2::trackable
+   {
+   public:
+ 
+@@ -86,7 +86,7 @@ namespace History
+ 
+     void clear ();
+ 
+-    boost::signal0<void> cleared;
++    boost::signals2::signal<void(void)> cleared;
+ 
+   private:
+ 
+diff --git a/lib/engine/components/call-history/history-contact.h b/lib/engine/components/call-history/history-contact.h
+index d109f6bc4..c727660ea 100644
+--- a/lib/engine/components/call-history/history-contact.h
++++ b/lib/engine/components/call-history/history-contact.h
+@@ -61,7 +61,7 @@ namespace History
+ 
+   class Contact:
+     public Ekiga::Contact,
+-    public boost::signals::trackable
++    public boost::signals2::trackable
+   {
+   public:
+ 
+diff --git a/lib/engine/components/local-roster/local-cluster.h b/lib/engine/components/local-roster/local-cluster.h
+index dc8fa4621..bdf1fc0e3 100644
+--- a/lib/engine/components/local-roster/local-cluster.h
++++ b/lib/engine/components/local-roster/local-cluster.h
+@@ -51,7 +51,7 @@ namespace Local
+   class Cluster :
+     public Ekiga::ClusterImpl<Heap>,
+     public Ekiga::Trigger,
+-    public boost::signals::trackable
++    public boost::signals2::trackable
+   {
+   public:
+ 
+diff --git a/lib/engine/components/local-roster/local-presentity.h b/lib/engine/components/local-roster/local-presentity.h
+index 9b315b3df..05f4898c4 100644
+--- a/lib/engine/components/local-roster/local-presentity.h
++++ b/lib/engine/components/local-roster/local-presentity.h
+@@ -162,7 +162,7 @@ namespace Local
+      * This signal makes the Local::Heap know that the XML tree changed
+      * and hence should be saved
+      */
+-    boost::signal0<void> trigger_saving;
++    boost::signals2::signal<void(void)> trigger_saving;
+ 
+ 
+   private:
+diff --git a/lib/engine/components/opal/opal-account.h b/lib/engine/components/opal/opal-account.h
+index ba908ca18..d55dc7bb1 100644
+--- a/lib/engine/components/opal/opal-account.h
++++ b/lib/engine/components/opal/opal-account.h
+@@ -153,7 +153,7 @@ public:
+ 
+     const std::string as_string () const;
+ 
+-    boost::signal0<void> trigger_saving;
++    boost::signals2::signal<void(void)> trigger_saving;
+ 
+     /*
+      * This is because an opal account is an Ekiga::PresencePublisher
+diff --git a/lib/engine/components/opal/opal-call.h b/lib/engine/components/opal/opal-call.h
+index 0e2a2a3c6..ac53afa9a 100644
+--- a/lib/engine/components/opal/opal-call.h
++++ b/lib/engine/components/opal/opal-call.h
+@@ -55,7 +55,7 @@ namespace Opal {
+   class Call
+     : public OpalCall,
+       public Ekiga::Call,
+-      public boost::signals::trackable
++      public boost::signals2::trackable
+   {
+ 
+ public:
+diff --git a/lib/engine/components/opal/opal-gmconf-bridge.cpp b/lib/engine/components/opal/opal-gmconf-bridge.cpp
+index ce8804471..eb2a4093a 100644
+--- a/lib/engine/components/opal/opal-gmconf-bridge.cpp
++++ b/lib/engine/components/opal/opal-gmconf-bridge.cpp
+@@ -35,7 +35,7 @@
+  */
+ 
+ #include <iostream>
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #include "config.h"
+diff --git a/lib/engine/framework/chain-of-responsibility.h b/lib/engine/framework/chain-of-responsibility.h
+index 399992bb0..46c95fe59 100644
+--- a/lib/engine/framework/chain-of-responsibility.h
++++ b/lib/engine/framework/chain-of-responsibility.h
+@@ -36,7 +36,7 @@
+ #ifndef __CHAIN_OF_RESPONSIBILITY_H__
+ #define __CHAIN_OF_RESPONSIBILITY_H__
+ 
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ /* This code uses boost signals to implement the "chain of responsibility"
+@@ -117,9 +117,8 @@ namespace Ekiga
+ 
+   template<typename T_request>
+   struct ChainOfResponsibility:
+-    public boost::signal1<bool,
+-			 T_request,
+-			 responsibility_accumulator>
++    public boost::signals2::signal<bool(T_request),
++			           responsibility_accumulator>
+   {
+   };
+ };
+diff --git a/lib/engine/framework/form-request-simple.h b/lib/engine/framework/form-request-simple.h
+index 85211ab36..74b84ae30 100644
+--- a/lib/engine/framework/form-request-simple.h
++++ b/lib/engine/framework/form-request-simple.h
+@@ -36,7 +36,7 @@
+ #ifndef __FORM_REQUEST_SIMPLE_H__
+ #define __FORM_REQUEST_SIMPLE_H__
+ 
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #include "form-builder.h"
+diff --git a/lib/engine/framework/gmconf-bridge.h b/lib/engine/framework/gmconf-bridge.h
+index 8c9ee68c9..94f50a134 100644
+--- a/lib/engine/framework/gmconf-bridge.h
++++ b/lib/engine/framework/gmconf-bridge.h
+@@ -38,7 +38,7 @@
+ #define __GMCONF_BRIDGE_H__
+ 
+ #include <vector>
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #include "gmconf.h"
+@@ -94,7 +94,7 @@ namespace Ekiga
+        * @param key is the GmConf key whose value changed
+        * @param entry is the new GmConf entry
+        */
+-      boost::signal2<void, std::string /*key*/, GmConfEntry * /*entry*/> property_changed;
++      boost::signals2::signal<void(std::string /*key*/, GmConfEntry * /*entry*/)> property_changed;
+ 
+   protected :
+       Ekiga::Service & service;
+diff --git a/lib/engine/framework/live-object.h b/lib/engine/framework/live-object.h
+index c672ad3bd..dfd33a8dd 100644
+--- a/lib/engine/framework/live-object.h
++++ b/lib/engine/framework/live-object.h
+@@ -62,12 +62,12 @@ namespace Ekiga
+ 
+     /** This signal is emitted when the object has been updated.
+      */
+-    boost::signal0<void> updated;
++    boost::signals2::signal<void(void)> updated;
+ 
+ 
+     /** This signal is emitted when the object has been removed.
+      */
+-    boost::signal0<void> removed;
++    boost::signals2::signal<void(void)> removed;
+ 
+     /** This chain allows the object to present forms to the user
+      */
+diff --git a/lib/engine/framework/menu-builder.h b/lib/engine/framework/menu-builder.h
+index c67d71211..2d2717dfd 100644
+--- a/lib/engine/framework/menu-builder.h
++++ b/lib/engine/framework/menu-builder.h
+@@ -37,7 +37,7 @@
+ #define __MENU_BUILDER_H__
+ 
+ #include <string>
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ 
+diff --git a/lib/engine/framework/personal-details.h b/lib/engine/framework/personal-details.h
+index 04ddf97b1..d620ea9ac 100644
+--- a/lib/engine/framework/personal-details.h
++++ b/lib/engine/framework/personal-details.h
+@@ -37,7 +37,7 @@
+ #define __PERSONAL_DETAILS_H__
+ 
+ #include <string>
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #include "services.h"
+@@ -66,7 +66,7 @@ namespace Ekiga
+     virtual void set_presence_info (const std::string presence,
+                                     const std::string status) = 0;
+ 
+-    boost::signal0<void> updated;
++    boost::signals2::signal<void(void)> updated;
+   };
+ };
+ 
+diff --git a/lib/engine/framework/reflister.h b/lib/engine/framework/reflister.h
+index 3c23c2184..a8bc920ec 100644
+--- a/lib/engine/framework/reflister.h
++++ b/lib/engine/framework/reflister.h
+@@ -37,7 +37,7 @@
+ #ifndef __REFLISTER_H__
+ #define __REFLISTER_H__
+ 
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ #include <list>
+ 
+@@ -55,7 +55,7 @@ namespace Ekiga
+   {
+   protected:
+ 
+-    typedef std::map<boost::shared_ptr<ObjectType>,std::list<boost::signals::connection> > container_type;
++    typedef std::map<boost::shared_ptr<ObjectType>,std::list<boost::signals2::connection> > container_type;
+     typedef Ekiga::map_key_iterator<container_type> iterator;
+     typedef Ekiga::map_key_const_iterator<container_type> const_iterator;
+ 
+@@ -66,7 +66,7 @@ namespace Ekiga
+     void add_object (boost::shared_ptr<ObjectType> obj);
+ 
+     void add_connection (boost::shared_ptr<ObjectType> obj,
+-			 boost::signals::connection connection);
++			 boost::signals2::connection connection);
+ 
+     void remove_object (boost::shared_ptr<ObjectType> obj);
+ 
+@@ -78,9 +78,9 @@ namespace Ekiga
+     const_iterator begin () const;
+     const_iterator end () const;
+ 
+-    boost::signal1<void, boost::shared_ptr<ObjectType> > object_added;
+-    boost::signal1<void, boost::shared_ptr<ObjectType> > object_removed;
+-    boost::signal1<void, boost::shared_ptr<ObjectType> > object_updated;
++    boost::signals2::signal<void(boost::shared_ptr<ObjectType>)> object_added;
++    boost::signals2::signal<void(boost::shared_ptr<ObjectType>)> object_removed;
++    boost::signals2::signal<void(boost::shared_ptr<ObjectType>)> object_updated;
+ 
+   private:
+     container_type objects;
+@@ -95,7 +95,7 @@ Ekiga::RefLister<ObjectType>::~RefLister ()
+        iter != objects.end ();
+        ++iter) {
+ 
+-    for (std::list<boost::signals::connection>::iterator conn_iter = iter->second.begin ();
++    for (std::list<boost::signals2::connection>::iterator conn_iter = iter->second.begin ();
+ 	 conn_iter != iter->second.end ();
+ 	 ++conn_iter) {
+ 
+@@ -130,7 +130,7 @@ Ekiga::RefLister<ObjectType>::add_object (boost::shared_ptr<ObjectType> obj)
+ template<typename ObjectType>
+ void
+ Ekiga::RefLister<ObjectType>::add_connection (boost::shared_ptr<ObjectType> obj,
+-					      boost::signals::connection connection)
++					      boost::signals2::connection connection)
+ {
+   objects[obj].push_back (connection);
+ }
+@@ -139,8 +139,8 @@ template<typename ObjectType>
+ void
+ Ekiga::RefLister<ObjectType>::remove_object (boost::shared_ptr<ObjectType> obj)
+ {
+-  std::list<boost::signals::connection> connections = objects[obj];
+-  for (std::list<boost::signals::connection>::iterator iter = connections.begin ();
++  std::list<boost::signals2::connection> connections = objects[obj];
++  for (std::list<boost::signals2::connection>::iterator iter = connections.begin ();
+        iter != connections.end ();
+        ++iter)
+     iter->disconnect ();
+diff --git a/lib/engine/framework/runtime.h b/lib/engine/framework/runtime.h
+index 1bb29a87d..8fa2657bb 100644
+--- a/lib/engine/framework/runtime.h
++++ b/lib/engine/framework/runtime.h
+@@ -34,7 +34,7 @@
+  *
+  */
+ 
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #ifndef __RUNTIME_H__
+diff --git a/lib/engine/framework/services.h b/lib/engine/framework/services.h
+index 1c92d9008..cfa6e2599 100644
+--- a/lib/engine/framework/services.h
++++ b/lib/engine/framework/services.h
+@@ -45,7 +45,7 @@
+ 
+ #include <list>
+ #include <string>
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ namespace Ekiga
+@@ -101,7 +101,7 @@ namespace Ekiga
+ 
+     void dump (std::ostream &stream) const;
+ 
+-    boost::signal1<void, ServicePtr> service_added;
++    boost::signals2::signal<void(ServicePtr)> service_added;
+ 
+   private:
+ 
+diff --git a/lib/engine/gui/gtk-core/codecsbox.cpp b/lib/engine/gui/gtk-core/codecsbox.cpp
+index 160aad659..25d315c08 100644
+--- a/lib/engine/gui/gtk-core/codecsbox.cpp
++++ b/lib/engine/gui/gtk-core/codecsbox.cpp
+@@ -38,6 +38,8 @@
+ #include "config.h"
+ #include "codecsbox.h"
+ 
++#include <sstream>
++
+ #include "gmconf.h"
+ #include "codec-description.h"
+ 
+diff --git a/lib/engine/gui/gtk-frontend/accounts-window.cpp b/lib/engine/gui/gtk-frontend/accounts-window.cpp
+index d9506a4cb..ad310ece5 100644
+--- a/lib/engine/gui/gtk-frontend/accounts-window.cpp
++++ b/lib/engine/gui/gtk-frontend/accounts-window.cpp
+@@ -62,7 +62,7 @@ struct _AccountsWindowPrivate
+   GtkAccelGroup *accel;
+ 
+   Ekiga::ServiceCore &core;
+-  std::vector<boost::signals::connection> connections;
++  std::vector<boost::signals2::connection> connections;
+ 
+   std::string presence;
+ 
+@@ -502,7 +502,7 @@ accounts_window_finalize (GObject *obj)
+ {
+   AccountsWindow *self = ACCOUNTS_WINDOW (obj);
+ 
+-  for (std::vector<boost::signals::connection>::iterator iter
++  for (std::vector<boost::signals2::connection>::iterator iter
+ 	 = self->priv->connections.begin ();
+        iter != self->priv->connections.end ();
+        iter++)
+@@ -535,7 +535,7 @@ accounts_window_new (Ekiga::ServiceCore &core)
+ {
+   AccountsWindow *self = NULL;
+ 
+-  boost::signals::connection conn;
++  boost::signals2::connection conn;
+ 
+   GtkWidget *vbox = NULL;
+   GtkWidget *menu_bar = NULL;
+diff --git a/lib/engine/gui/gtk-frontend/addressbook-window.cpp b/lib/engine/gui/gtk-frontend/addressbook-window.cpp
+index 722fa835c..b91d000fe 100644
+--- a/lib/engine/gui/gtk-frontend/addressbook-window.cpp
++++ b/lib/engine/gui/gtk-frontend/addressbook-window.cpp
+@@ -52,7 +52,7 @@ struct _AddressBookWindowPrivate
+   _AddressBookWindowPrivate (Ekiga::ContactCore & _core):core (_core) { }
+ 
+   Ekiga::ContactCore & core;
+-  std::vector<boost::signals::connection> connections;
++  std::vector<boost::signals2::connection> connections;
+   GtkWidget *tree_view;
+   GtkWidget *notebook;
+   GtkTreeSelection *selection;
+@@ -579,7 +579,7 @@ addressbook_window_finalize (GObject *obj)
+ {
+   AddressBookWindow *self = ADDRESSBOOK_WINDOW (obj);
+ 
+-  for (std::vector<boost::signals::connection>::iterator iter
++  for (std::vector<boost::signals2::connection>::iterator iter
+ 	 = self->priv->connections.begin ();
+        iter != self->priv->connections.end ();
+        iter++)
+@@ -613,7 +613,7 @@ addressbook_window_new (Ekiga::ContactCore &core)
+ {
+   AddressBookWindow *self = NULL;
+ 
+-  boost::signals::connection conn;
++  boost::signals2::connection conn;
+ 
+   GtkWidget *menu_bar = NULL;
+   GtkWidget *frame = NULL;
+diff --git a/lib/engine/gui/gtk-frontend/book-view-gtk.cpp b/lib/engine/gui/gtk-frontend/book-view-gtk.cpp
+index bf7ad791d..de540c9c5 100644
+--- a/lib/engine/gui/gtk-frontend/book-view-gtk.cpp
++++ b/lib/engine/gui/gtk-frontend/book-view-gtk.cpp
+@@ -62,7 +62,7 @@ struct _BookViewGtkPrivate
+   GtkWidget *scrolled_window;
+ 
+   Ekiga::BookPtr book;
+-  std::list<boost::signals::connection> connections;
++  std::list<boost::signals2::connection> connections;
+ };
+ 
+ 
+@@ -447,7 +447,7 @@ book_view_gtk_dispose (GObject *obj)
+ 
+   view = BOOK_VIEW_GTK (obj);
+ 
+-  for (std::list<boost::signals::connection>::iterator iter
++  for (std::list<boost::signals2::connection>::iterator iter
+ 	 = view->priv->connections.begin ();
+        iter != view->priv->connections.end ();
+        ++iter)
+diff --git a/lib/engine/gui/gtk-frontend/call-history-view-gtk.cpp b/lib/engine/gui/gtk-frontend/call-history-view-gtk.cpp
+index 1857e3968..882f166fa 100644
+--- a/lib/engine/gui/gtk-frontend/call-history-view-gtk.cpp
++++ b/lib/engine/gui/gtk-frontend/call-history-view-gtk.cpp
+@@ -56,7 +56,7 @@ struct _CallHistoryViewGtkPrivate
+   boost::shared_ptr<History::Book> book;
+   GtkListStore* store;
+   GtkTreeView* tree;
+-  std::vector<boost::signals::connection> connections;
++  std::vector<boost::signals2::connection> connections;
+ };
+ 
+ /* this is what we put in the view */
+@@ -229,7 +229,7 @@ call_history_view_gtk_dispose (GObject* obj)
+ 
+   view = CALL_HISTORY_VIEW_GTK (obj);
+ 
+-  for (std::vector<boost::signals::connection>::iterator iter
++  for (std::vector<boost::signals2::connection>::iterator iter
+ 	 = view->priv->connections.begin ();
+        iter != view->priv->connections.end ();
+        iter++)
+@@ -314,7 +314,7 @@ call_history_view_gtk_new (boost::shared_ptr<History::Book> book)
+   GtkCellRenderer *renderer = NULL;
+   GtkTreeSelection *selection = NULL;
+ 
+-  boost::signals::connection conn;
++  boost::signals2::connection conn;
+ 
+   g_return_val_if_fail (book, (GtkWidget*)NULL);
+ 
+diff --git a/lib/engine/gui/gtk-frontend/call-window.cpp b/lib/engine/gui/gtk-frontend/call-window.cpp
+index 68fad6f47..ad6b360e5 100644
+--- a/lib/engine/gui/gtk-frontend/call-window.cpp
++++ b/lib/engine/gui/gtk-frontend/call-window.cpp
+@@ -181,7 +181,7 @@ struct _EkigaCallWindowPrivate
+ 
+   GtkWidget *transfer_call_popup;
+ 
+-  std::vector<boost::signals::connection> connections;
++  std::vector<boost::signals2::connection> connections;
+ };
+ 
+ /* properties */
+@@ -2207,7 +2207,7 @@ ekiga_call_window_transfer_dialog_run (EkigaCallWindow *cw,
+ static void
+ ekiga_call_window_connect_engine_signals (EkigaCallWindow *cw)
+ {
+-  boost::signals::connection conn;
++  boost::signals2::connection conn;
+ 
+   g_return_if_fail (EKIGA_IS_CALL_WINDOW (cw));
+ 
+diff --git a/lib/engine/gui/gtk-frontend/chat-area.cpp b/lib/engine/gui/gtk-frontend/chat-area.cpp
+index 9811378c4..766b04a4a 100644
+--- a/lib/engine/gui/gtk-frontend/chat-area.cpp
++++ b/lib/engine/gui/gtk-frontend/chat-area.cpp
+@@ -58,7 +58,7 @@ class ChatAreaHelper;
+ struct _ChatAreaPrivate
+ {
+   Ekiga::Chat* chat;
+-  boost::signals::connection connection;
++  boost::signals2::connection connection;
+   boost::shared_ptr<ChatAreaHelper> helper;
+   GmTextBufferEnhancer* enhancer;
+   GtkWidget* smiley_menu;
+diff --git a/lib/engine/gui/gtk-frontend/chat-window.cpp b/lib/engine/gui/gtk-frontend/chat-window.cpp
+index 6471aa527..fa42ec82b 100644
+--- a/lib/engine/gui/gtk-frontend/chat-window.cpp
++++ b/lib/engine/gui/gtk-frontend/chat-window.cpp
+@@ -54,7 +54,7 @@ struct _ChatWindowPrivate
+   {}
+ 
+   Ekiga::ServiceCore& core;
+-  std::list<boost::signals::connection> connections;
++  std::list<boost::signals2::connection> connections;
+ 
+   GtkWidget* notebook;
+ };
+@@ -405,7 +405,7 @@ chat_window_finalize (GObject* obj)
+ 
+   self = CHAT_WINDOW (obj);
+ 
+-  for (std::list<boost::signals::connection>::iterator iter
++  for (std::list<boost::signals2::connection>::iterator iter
+ 	 = self->priv->connections.begin ();
+        iter != self->priv->connections.end ();
+        ++iter)
+diff --git a/lib/engine/gui/gtk-frontend/heap-view.cpp b/lib/engine/gui/gtk-frontend/heap-view.cpp
+index 89450480b..cfea71639 100644
+--- a/lib/engine/gui/gtk-frontend/heap-view.cpp
++++ b/lib/engine/gui/gtk-frontend/heap-view.cpp
+@@ -47,7 +47,7 @@
+ struct _HeapViewPrivate
+ {
+   Ekiga::HeapPtr heap;
+-  std::vector<boost::signals::connection> connections;
++  std::vector<boost::signals2::connection> connections;
+ 
+   GtkTreeStore* store;
+   GtkTreeView* view;
+@@ -454,7 +454,7 @@ heap_view_set_heap (HeapView* self,
+ {
+   if (self->priv->heap) {
+ 
+-    for (std::vector<boost::signals::connection>::iterator iter
++    for (std::vector<boost::signals2::connection>::iterator iter
+ 	   = self->priv->connections.begin ();
+ 	 iter != self->priv->connections.end ();
+ 	 iter++)
+@@ -465,7 +465,7 @@ heap_view_set_heap (HeapView* self,
+ 
+   if (heap) {
+ 
+-    boost::signals::connection conn;
++    boost::signals2::connection conn;
+ 
+     conn = heap->removed.connect (boost::bind (&on_heap_removed, self));
+     self->priv->connections.push_back (conn);
+diff --git a/lib/engine/gui/gtk-frontend/preferences-window.cpp b/lib/engine/gui/gtk-frontend/preferences-window.cpp
+index 447e104e3..a972b6ccd 100644
+--- a/lib/engine/gui/gtk-frontend/preferences-window.cpp
++++ b/lib/engine/gui/gtk-frontend/preferences-window.cpp
+@@ -88,7 +88,7 @@ typedef struct _GmPreferencesWindow
+   GtkWidget *iface;
+   GtkWidget *fsbutton;
+   Ekiga::ServiceCore *core;
+-  std::vector<boost::signals::connection> connections;
++  std::vector<boost::signals2::connection> connections;
+ } GmPreferencesWindow;
+ 
+ #define GM_PREFERENCES_WINDOW(x) (GmPreferencesWindow *) (x)
+@@ -1357,7 +1357,7 @@ preferences_window_new (Ekiga::ServiceCore & core)
+ 
+   gm_window_hide_on_delete (window);
+ 
+-  boost::signals::connection conn;
++  boost::signals2::connection conn;
+   boost::shared_ptr<Ekiga::VideoInputCore> videoinput_core = core.get<Ekiga::VideoInputCore> ("videoinput-core");
+   boost::shared_ptr<Ekiga::AudioInputCore> audioinput_core = core.get<Ekiga::AudioInputCore> ("audioinput-core");
+   boost::shared_ptr<Ekiga::AudioOutputCore> audiooutput_core = core.get<Ekiga::AudioOutputCore> ("audiooutput-core");
+diff --git a/lib/engine/gui/gtk-frontend/presentity-view.cpp b/lib/engine/gui/gtk-frontend/presentity-view.cpp
+index d05ff8ab7..8a6a0f33c 100644
+--- a/lib/engine/gui/gtk-frontend/presentity-view.cpp
++++ b/lib/engine/gui/gtk-frontend/presentity-view.cpp
+@@ -40,8 +40,8 @@
+ struct _PresentityViewPrivate
+ {
+   Ekiga::Presentity* presentity;
+-  boost::signals::connection updated_conn;
+-  boost::signals::connection removed_conn;
++  boost::signals2::connection updated_conn;
++  boost::signals2::connection removed_conn;
+ 
+   /* we contain those, so no need to unref them */
+   GtkWidget* presence_image;
+diff --git a/lib/engine/gui/gtk-frontend/roster-view-gtk.cpp b/lib/engine/gui/gtk-frontend/roster-view-gtk.cpp
+index 883fcd697..b0305c4a3 100644
+--- a/lib/engine/gui/gtk-frontend/roster-view-gtk.cpp
++++ b/lib/engine/gui/gtk-frontend/roster-view-gtk.cpp
+@@ -60,7 +60,7 @@ struct _RosterViewGtkPrivate
+ {
+   boost::shared_ptr<Ekiga::PresenceCore> core;
+ 
+-  std::vector<boost::signals::connection> connections;
++  std::vector<boost::signals2::connection> connections;
+   GtkTreeStore *store;
+   GtkTreeView *tree_view;
+   GSList *folded_groups;
+@@ -1382,7 +1382,7 @@ roster_view_gtk_set_core (RosterViewGtk* self,
+ {
+   if (self->priv->core) {
+ 
+-    for (std::vector<boost::signals::connection>::iterator iter
++    for (std::vector<boost::signals2::connection>::iterator iter
+ 	   = self->priv->connections.begin ();
+ 	 iter != self->priv->connections.end ();
+ 	 iter++)
+@@ -1393,7 +1393,7 @@ roster_view_gtk_set_core (RosterViewGtk* self,
+ 
+   if (core) {
+ 
+-    boost::signals::connection conn;
++    boost::signals2::connection conn;
+ 
+     conn = core->cluster_added.connect (boost::bind (&on_cluster_added, self, _1));
+     self->priv->connections.push_back (conn);
+diff --git a/lib/engine/gui/gtk-frontend/statusicon.cpp b/lib/engine/gui/gtk-frontend/statusicon.cpp
+index 55c59072d..cd7311b70 100644
+--- a/lib/engine/gui/gtk-frontend/statusicon.cpp
++++ b/lib/engine/gui/gtk-frontend/statusicon.cpp
+@@ -68,7 +68,7 @@ struct _StatusIconPrivate
+   GtkWidget *popup_menu;
+   gboolean has_message;
+ 
+-  std::vector<boost::signals::connection> connections;
++  std::vector<boost::signals2::connection> connections;
+ 
+   int blink_id;
+   std::string status;
+@@ -174,7 +174,7 @@ statusicon_finalize (GObject *obj)
+   if (self->priv->blink_image)
+     g_free (self->priv->blink_image);
+ 
+-  for (std::vector<boost::signals::connection>::iterator iter = self->priv->connections.begin () ;
++  for (std::vector<boost::signals2::connection>::iterator iter = self->priv->connections.begin () ;
+        iter != self->priv->connections.end ();
+        iter++)
+     iter->disconnect ();
+@@ -548,7 +548,7 @@ status_icon_new (Ekiga::ServiceCore & core)
+   if (!statusicon_should_run ())
+     return self;
+ 
+-  boost::signals::connection conn;
++  boost::signals2::connection conn;
+ 
+   self = STATUSICON (g_object_new (STATUSICON_TYPE, NULL));
+   self->priv = new StatusIconPrivate (core);
+diff --git a/lib/engine/gui/gtk-frontend/statusicon.h b/lib/engine/gui/gtk-frontend/statusicon.h
+index 19f81e1d2..ac78bab10 100644
+--- a/lib/engine/gui/gtk-frontend/statusicon.h
++++ b/lib/engine/gui/gtk-frontend/statusicon.h
+@@ -42,7 +42,7 @@
+ 
+ #include <gtk/gtk.h>
+ 
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ G_BEGIN_DECLS
+diff --git a/lib/engine/hal/hal-core.h b/lib/engine/hal/hal-core.h
+index 3a66314ec..0b0cce804 100644
+--- a/lib/engine/hal/hal-core.h
++++ b/lib/engine/hal/hal-core.h
+@@ -40,7 +40,7 @@
+ 
+ #include "services.h"
+ 
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #include <set>
+@@ -114,24 +114,24 @@ namespace Ekiga
+       /** This signal is emitted when an Ekiga::HalManager has been
+        * added to the HalCore Service.
+        */
+-       boost::signal1<void, HalManager &> manager_added;
++       boost::signals2::signal<void(HalManager &)> manager_added;
+ 
+ 
+       /*** API to act on HAL events ***/
+ 
+       /** See hal-manager.h for the API
+        */
+-      boost::signal4<void, const std::string &, const std::string &, unsigned, HalManager*> videoinput_device_added;
+-      boost::signal4<void, const std::string &, const std::string &, unsigned, HalManager*> videoinput_device_removed;
++      boost::signals2::signal<void(const std::string &, const std::string &, unsigned, HalManager*)> videoinput_device_added;
++      boost::signals2::signal<void(const std::string &, const std::string &, unsigned, HalManager*)> videoinput_device_removed;
+ 
+-      boost::signal3<void, const std::string &, const std::string &, HalManager*> audioinput_device_added;
+-      boost::signal3<void, const std::string &, const std::string &, HalManager*> audioinput_device_removed;
++      boost::signals2::signal<void(const std::string &, const std::string &, HalManager*)> audioinput_device_added;
++      boost::signals2::signal<void(const std::string &, const std::string &, HalManager*)> audioinput_device_removed;
+ 
+-      boost::signal3<void, const std::string &, const std::string &, HalManager*> audiooutput_device_added;
+-      boost::signal3<void, const std::string &, const std::string &, HalManager*> audiooutput_device_removed;
++      boost::signals2::signal<void(const std::string &, const std::string &, HalManager*)> audiooutput_device_added;
++      boost::signals2::signal<void(const std::string &, const std::string &, HalManager*)> audiooutput_device_removed;
+ 
+-      boost::signal3<void, const std::string &, const std::string &, HalManager*> network_interface_up;
+-      boost::signal3<void, const std::string &, const std::string &, HalManager*> network_interface_down;
++      boost::signals2::signal<void(const std::string &, const std::string &, HalManager*)> network_interface_up;
++      boost::signals2::signal<void(const std::string &, const std::string &, HalManager*)> network_interface_down;
+ 
+   private:
+ 
+diff --git a/lib/engine/hal/hal-manager.h b/lib/engine/hal/hal-manager.h
+index e0b2e75bc..7638214c6 100644
+--- a/lib/engine/hal/hal-manager.h
++++ b/lib/engine/hal/hal-manager.h
+@@ -75,50 +75,50 @@ namespace Ekiga
+        * @param device the device name.
+        * @param capabilities source-dependent device capabilites (e.g. V4L1 or V4L2 for video4linux).
+        */
+-      boost::signal3<void, std::string, std::string, unsigned> videoinput_device_added;
++      boost::signals2::signal<void(std::string, std::string, unsigned)> videoinput_device_added;
+ 
+       /** This signal is emitted when a video input device is removed from the system.
+        * @param source the video input framework (e.g. video4linux, etc.).
+        * @param device the device name.
+        * @param capabilities source-dependent device capabilites (e.g. V4L1 or V4L2 for video4linux).
+        */
+-      boost::signal3<void, std::string, std::string, unsigned> videoinput_device_removed;
++      boost::signals2::signal<void(std::string, std::string, unsigned)> videoinput_device_removed;
+ 
+       /** This signal is emitted when an audio input device is added to the system.
+        * @param source the audio input framework (e.g. alsa, oss, etc.).
+        * @param device the device name.
+        */
+-      boost::signal2<void, std::string, std::string> audioinput_device_added;
++      boost::signals2::signal<void(std::string, std::string)> audioinput_device_added;
+ 
+       /** This signal is emitted when an audio input device is removed from the system.
+        * @param source the audio input framework (e.g. alsa, oss, etc.).
+        * @param device the device name.
+        */
+-      boost::signal2<void, std::string, std::string> audioinput_device_removed;
++      boost::signals2::signal<void(std::string, std::string)> audioinput_device_removed;
+ 
+       /** This signal is emitted when an audio output device is added to the system.
+        * @param source the audio output framework (e.g. alsa, oss, etc.).
+        * @param device the device name.
+        */
+-      boost::signal2<void, std::string, std::string> audiooutput_device_added;
++      boost::signals2::signal<void(std::string, std::string)> audiooutput_device_added;
+ 
+       /** This signal is emitted when an audio output device is removed from the system.
+        * @param source the audio output framework (e.g. alsa, oss, etc.).
+        * @param device the device name.
+        */
+-      boost::signal2<void, std::string, std::string> audiooutput_device_removed;
++      boost::signals2::signal<void(std::string, std::string)> audiooutput_device_removed;
+ 
+       /** This signal is emitted when a network device comes up.
+        * @param interface_name the interface name (e.g. eth0, etc.).
+        * @param ip4_address the IPv4 address (e.g. "192.168.0.1").
+        */
+-      boost::signal2<void, std::string, std::string> network_interface_up;
++      boost::signals2::signal<void(std::string, std::string)> network_interface_up;
+ 
+       /** This signal is emitted when a network device goes down.
+        * @param interface_name the interface name (e.g. eth0, etc.).
+        * @param ip4_address the IPv4 address (e.g. "192.168.0.1").
+        */
+-      boost::signal2<void, std::string, std::string> network_interface_down;
++      boost::signals2::signal<void(std::string, std::string)> network_interface_down;
+   };
+ 
+ /**
+diff --git a/lib/engine/notification/notification-core.h b/lib/engine/notification/notification-core.h
+index caa8e00b0..323e0de68 100644
+--- a/lib/engine/notification/notification-core.h
++++ b/lib/engine/notification/notification-core.h
+@@ -77,7 +77,7 @@ namespace Ekiga
+     void action_trigger ()
+     { if (action_callback) action_callback (); }
+ 
+-    boost::signal0<void> removed;
++    boost::signals2::signal<void(void)> removed;
+ 
+   private:
+ 
+@@ -109,7 +109,7 @@ namespace Ekiga
+     void push_notification (boost::shared_ptr<Notification> notification)
+     { notification_added (notification); }
+ 
+-    boost::signal1<void, boost::shared_ptr<Notification> > notification_added;
++    boost::signals2::signal<void(boost::shared_ptr<Notification>)> notification_added;
+   };
+ };
+ 
+diff --git a/lib/engine/presence/cluster.h b/lib/engine/presence/cluster.h
+index df4441052..1677162b5 100644
+--- a/lib/engine/presence/cluster.h
++++ b/lib/engine/presence/cluster.h
+@@ -66,16 +66,16 @@ namespace Ekiga
+      * from the Cluster.
+      * @param The Heap in question.
+      */
+-    boost::signal1<void, HeapPtr > heap_added;
+-    boost::signal1<void, HeapPtr > heap_removed;
++    boost::signals2::signal<void(HeapPtr)> heap_added;
++    boost::signals2::signal<void(HeapPtr)> heap_removed;
+ 
+     /** Those signals are forwarded from the given Heap
+      * @param The Heap in question.
+      */
+-    boost::signal1<void, HeapPtr > heap_updated;
+-    boost::signal2<void, HeapPtr , PresentityPtr > presentity_added;
+-    boost::signal2<void, HeapPtr , PresentityPtr > presentity_updated;
+-    boost::signal2<void, HeapPtr , PresentityPtr > presentity_removed;
++    boost::signals2::signal<void(HeapPtr)> heap_updated;
++    boost::signals2::signal<void(HeapPtr , PresentityPtr )> presentity_added;
++    boost::signals2::signal<void(HeapPtr , PresentityPtr )> presentity_updated;
++    boost::signals2::signal<void(HeapPtr , PresentityPtr )> presentity_removed;
+   };
+ 
+   typedef boost::shared_ptr<Cluster> ClusterPtr;
+diff --git a/lib/engine/presence/heap.h b/lib/engine/presence/heap.h
+index 859168a43..753f16c3a 100644
+--- a/lib/engine/presence/heap.h
++++ b/lib/engine/presence/heap.h
+@@ -83,15 +83,15 @@ namespace Ekiga
+ 
+     /** This signal is emitted  when a Presentity has been added to the Heap.
+      */
+-    boost::signal1<void, PresentityPtr > presentity_added;
++    boost::signals2::signal<void(PresentityPtr)> presentity_added;
+ 
+     /** This signal is emitted when a Presentity has been updated in the Heap.
+      */
+-    boost::signal1<void, PresentityPtr > presentity_updated;
++    boost::signals2::signal<void(PresentityPtr)> presentity_updated;
+ 
+     /** This signal is emitted when a Presentity has been removed from the Heap.
+      */
+-    boost::signal1<void, PresentityPtr > presentity_removed;
++    boost::signals2::signal<void(PresentityPtr)> presentity_removed;
+   };
+ 
+   typedef boost::shared_ptr<Heap> HeapPtr;
+diff --git a/lib/engine/presence/presence-core.cpp b/lib/engine/presence/presence-core.cpp
+index 93de3475a..05214796f 100644
+--- a/lib/engine/presence/presence-core.cpp
++++ b/lib/engine/presence/presence-core.cpp
+@@ -49,7 +49,7 @@ Ekiga::PresenceCore::PresenceCore (Ekiga::ServiceCore& core)
+ 
+ Ekiga::PresenceCore::~PresenceCore ()
+ {
+-  for (std::list<boost::signals::connection>::iterator iter = conns.begin (); iter != conns.end (); ++iter)
++  for (std::list<boost::signals2::connection>::iterator iter = conns.begin (); iter != conns.end (); ++iter)
+     iter->disconnect ();
+ }
+ 
+diff --git a/lib/engine/presence/presence-core.h b/lib/engine/presence/presence-core.h
+index 22606428a..55709dd8c 100644
+--- a/lib/engine/presence/presence-core.h
++++ b/lib/engine/presence/presence-core.h
+@@ -97,8 +97,8 @@ namespace Ekiga
+      * presence information about an uri it was required to handle.
+      * The information is given as a pair of strings (uri, data).
+      */
+-    boost::signal2<void, std::string, std::string> presence_received;
+-    boost::signal2<void, std::string, std::string> status_received;
++    boost::signals2::signal<void(std::string, std::string)> presence_received;
++    boost::signals2::signal<void(std::string, std::string)> status_received;
+   };
+ 
+   class PresencePublisher
+@@ -180,22 +180,22 @@ namespace Ekiga
+     /** This signal is emitted when an Ekiga::Cluster has been added
+      * to the PresenceCore Service.
+      */
+-    boost::signal1<void, ClusterPtr > cluster_added;
++    boost::signals2::signal<void(ClusterPtr)> cluster_added;
+ 
+     /** Those signals are forwarding the heap_added, heap_updated
+      * and heap_removed from the given Cluster.
+      *
+      */
+-    boost::signal2<void, ClusterPtr , HeapPtr > heap_added;
+-    boost::signal2<void, ClusterPtr , HeapPtr > heap_updated;
+-    boost::signal2<void, ClusterPtr , HeapPtr > heap_removed;
++    boost::signals2::signal<void(ClusterPtr , HeapPtr )> heap_added;
++    boost::signals2::signal<void(ClusterPtr , HeapPtr )> heap_updated;
++    boost::signals2::signal<void(ClusterPtr , HeapPtr )> heap_removed;
+ 
+     /** Those signals are forwarding the presentity_added, presentity_updated
+      * and presentity_removed from the given Heap of the given Cluster.
+      */
+-    boost::signal3<void, ClusterPtr , HeapPtr , PresentityPtr > presentity_added;
+-    boost::signal3<void, ClusterPtr , HeapPtr , PresentityPtr > presentity_updated;
+-    boost::signal3<void, ClusterPtr , HeapPtr , PresentityPtr > presentity_removed;
++    boost::signals2::signal<void(ClusterPtr , HeapPtr , PresentityPtr )> presentity_added;
++    boost::signals2::signal<void(ClusterPtr , HeapPtr , PresentityPtr )> presentity_updated;
++    boost::signals2::signal<void(ClusterPtr , HeapPtr , PresentityPtr )> presentity_removed;
+ 
+   private:
+ 
+@@ -256,8 +256,8 @@ namespace Ekiga
+     /** Those signals are emitted whenever information has been received
+      * about an uri ; the information is a pair of strings (uri, information).
+      */
+-    boost::signal2<void, std::string, std::string> presence_received;
+-    boost::signal2<void, std::string, std::string> status_received;
++    boost::signals2::signal<void(std::string, std::string)> presence_received;
++    boost::signals2::signal<void(std::string, std::string)> status_received;
+ 
+   private:
+ 
+@@ -321,7 +321,7 @@ namespace Ekiga
+ 
+   private:
+ 
+-    std::list<boost::signals::connection> conns;
++    std::list<boost::signals2::connection> conns;
+   };
+ 
+ /**
+diff --git a/lib/engine/presence/uri-presentity.h b/lib/engine/presence/uri-presentity.h
+index 6300a7062..213ec410f 100644
+--- a/lib/engine/presence/uri-presentity.h
++++ b/lib/engine/presence/uri-presentity.h
+@@ -60,7 +60,7 @@ namespace Ekiga
+    */
+   class URIPresentity:
+     public Ekiga::Presentity,
+-    public boost::signals::trackable
++    public boost::signals2::trackable
+   {
+   public:
+ 
+diff --git a/lib/engine/protocol/call-core.cpp b/lib/engine/protocol/call-core.cpp
+index dd6fbbb4b..b96d888a0 100644
+--- a/lib/engine/protocol/call-core.cpp
++++ b/lib/engine/protocol/call-core.cpp
+@@ -48,7 +48,7 @@ using namespace Ekiga;
+ 
+ CallCore::~CallCore ()
+ {
+-  for (std::list<boost::signals::connection>::iterator iter = manager_connections.begin ();
++  for (std::list<boost::signals2::connection>::iterator iter = manager_connections.begin ();
+        iter != manager_connections.end ();
+        ++iter)
+     iter->disconnect ();
+@@ -103,7 +103,7 @@ bool CallCore::dial (const std::string uri)
+ 
+ void CallCore::add_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallManager> manager)
+ {
+-  std::list<boost::signals::connection> conns;
++  std::list<boost::signals2::connection> conns;
+ 
+   conns.push_back (call->ringing.connect (boost::bind (&CallCore::on_ringing_call, this, call, manager)));
+   conns.push_back (call->setup.connect (boost::bind (&CallCore::on_setup_call, this, call, manager)));
+@@ -124,7 +124,7 @@ void CallCore::add_call (boost::shared_ptr<Call> call, boost::shared_ptr<CallMan
+ 
+ void CallCore::remove_call (boost::shared_ptr<Call> call)
+ {
+-  for (std::list<boost::signals::connection>::iterator iter2 = call_connections [call->get_id ()].begin ();
++  for (std::list<boost::signals2::connection>::iterator iter2 = call_connections [call->get_id ()].begin ();
+        iter2 != call_connections [call->get_id ()].end ();
+        ++iter2)
+     iter2->disconnect ();
+diff --git a/lib/engine/protocol/call-core.h b/lib/engine/protocol/call-core.h
+index bbd7f6bcc..24270c18b 100644
+--- a/lib/engine/protocol/call-core.h
++++ b/lib/engine/protocol/call-core.h
+@@ -45,7 +45,7 @@
+ #include "call-protocol-manager.h"
+ #include <boost/smart_ptr.hpp>
+ 
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ #include <set>
+ #include <map>
+@@ -126,7 +126,7 @@ namespace Ekiga
+       /** This signal is emitted when a Ekiga::CallManager has been
+        * added to the CallCore Service.
+        */
+-      boost::signal1<void, boost::shared_ptr<CallManager> > manager_added;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>)> manager_added;
+ 
+ 
+       /*** Call Management ***/                 
+@@ -141,21 +141,21 @@ namespace Ekiga
+       
+       /** See call.h for the API
+        */
+-      boost::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > ringing_call;
+-      boost::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > setup_call;
+-      boost::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > missed_call;
+-      boost::signal3<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call>, std::string> cleared_call;
+-      boost::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > established_call;
+-      boost::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > held_call;
+-      boost::signal2<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call> > retrieved_call;
+-      boost::signal5<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call>, std::string, Call::StreamType, bool> stream_opened;
+-      boost::signal5<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call>, std::string, Call::StreamType, bool> stream_closed;
+-      boost::signal4<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call>, std::string, Call::StreamType> stream_paused;
+-      boost::signal4<void, boost::shared_ptr<CallManager> , boost::shared_ptr<Call>, std::string, Call::StreamType> stream_resumed;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>, boost::shared_ptr<Call>)> ringing_call;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>, boost::shared_ptr<Call>)> setup_call;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>, boost::shared_ptr<Call>)> missed_call;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>, boost::shared_ptr<Call>, std::string)> cleared_call;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>, boost::shared_ptr<Call>)> established_call;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>, boost::shared_ptr<Call>)> held_call;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>, boost::shared_ptr<Call>)> retrieved_call;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>, boost::shared_ptr<Call>, std::string, Call::StreamType, bool)> stream_opened;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>, boost::shared_ptr<Call>, std::string, Call::StreamType, bool)> stream_closed;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>, boost::shared_ptr<Call>, std::string, Call::StreamType)> stream_paused;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>, boost::shared_ptr<Call>, std::string, Call::StreamType)> stream_resumed;
+ 
+       /*** Misc ***/
+-      boost::signal1<void, boost::shared_ptr<CallManager> > manager_ready;
+-      boost::signal0<void> ready;
++      boost::signals2::signal<void(boost::shared_ptr<CallManager>)> manager_ready;
++      boost::signals2::signal<void(void)> ready;
+ 
+       /** This chain allows the CallCore to report errors to the user
+        */
+@@ -186,8 +186,8 @@ namespace Ekiga
+ 
+       
+       std::set<boost::shared_ptr<CallManager> > managers;
+-      std::list<boost::signals::connection> manager_connections;
+-      std::map<std::string, std::list<boost::signals::connection> > call_connections;
++      std::list<boost::signals2::connection> manager_connections;
++      std::map<std::string, std::list<boost::signals2::connection> > call_connections;
+       unsigned nr_ready;
+     };
+ 
+diff --git a/lib/engine/protocol/call-manager.h b/lib/engine/protocol/call-manager.h
+index ec10091b2..2a0df32c6 100644
+--- a/lib/engine/protocol/call-manager.h
++++ b/lib/engine/protocol/call-manager.h
+@@ -40,7 +40,7 @@
+ #define __CALL_MANAGER_H__
+ 
+ #include <set>
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #include <boost/smart_ptr.hpp>
+@@ -99,7 +99,7 @@ namespace Ekiga
+     /** This signal is emitted when a Ekiga::CallProtocolManager has been
+      * added to the CallManager.
+      */
+-    boost::signal1<void, boost::shared_ptr<CallProtocolManager> > manager_added;
++    boost::signals2::signal<void(boost::shared_ptr<CallProtocolManager>)> manager_added;
+ 
+ 
+     /*                 
+@@ -213,7 +213,7 @@ namespace Ekiga
+     /*
+      * MISC
+      */
+-    boost::signal0<void> ready;
++    boost::signals2::signal<void(void)> ready;
+ 
+     private:
+     std::set<boost::shared_ptr<CallProtocolManager> > managers;
+diff --git a/lib/engine/protocol/call.h b/lib/engine/protocol/call.h
+index f0eaa8189..8d21996e1 100644
+--- a/lib/engine/protocol/call.h
++++ b/lib/engine/protocol/call.h
+@@ -38,7 +38,7 @@
+ #ifndef __CALL_H__
+ #define __CALL_H__
+ 
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ #include <string>
+ 
+@@ -198,69 +198,69 @@ namespace Ekiga
+ 
+       /* Signal emitted when the call is established
+        */
+-      boost::signal0<void> established;
++      boost::signals2::signal<void(void)> established;
+ 
+       /* Signal emitted when an established call is cleared
+        * @param: a string describing why the call was cleared
+        */
+-      boost::signal1<void, std::string> cleared;
++      boost::signals2::signal<void(std::string)> cleared;
+ 
+       /* Signal emitted when the call is missed, ie cleared
+        * without having been established
+        */
+-      boost::signal0<void> missed;
++      boost::signals2::signal<void(void)> missed;
+ 
+       /* Signal emitted when the call is forwarded
+        */
+-      boost::signal0<void> forwarded;
++      boost::signals2::signal<void(void)> forwarded;
+ 
+       /* Signal emitted when the call is held
+        */
+-      boost::signal0<void> held;
++      boost::signals2::signal<void(void)> held;
+ 
+       /* Signal emitted when the call is retrieved
+        */
+-      boost::signal0<void> retrieved;
++      boost::signals2::signal<void(void)> retrieved;
+ 
+       /* Signal emitted when the call is being setup
+        */
+-      boost::signal0<void> setup;
++      boost::signals2::signal<void(void)> setup;
+ 
+       /* Signal emitted when the remote party is ringing
+        */
+-      boost::signal0<void> ringing;
++      boost::signals2::signal<void(void)> ringing;
+ 
+       /* Signal emitted when a stream is opened
+        * @param the stream name
+        * @param the stream type
+        * @param transmission or reception
+        */
+-      boost::signal3<void, std::string, StreamType, bool> stream_opened;
++      boost::signals2::signal<void(std::string, StreamType, bool)> stream_opened;
+ 
+       /* Signal emitted when a stream is closed
+        * @param the stream name
+        * @param the stream type
+        * @param transmission or reception
+        */
+-      boost::signal3<void, std::string, StreamType, bool> stream_closed;
++      boost::signals2::signal<void(std::string, StreamType, bool)> stream_closed;
+ 
+       /* Signal emitted when a transmitted stream is paused
+        * @param the stream name
+        * @param the stream type
+        * @param transmission or reception
+        */
+-      boost::signal2<void, std::string, StreamType> stream_paused;
++      boost::signals2::signal<void(std::string, StreamType)> stream_paused;
+ 
+       /* Signal emitted when a transmitted stream is resumed
+        * @param the stream name
+        * @param the stream type
+        * @param transmission or reception
+        */
+-      boost::signal2<void, std::string, StreamType> stream_resumed;
++      boost::signals2::signal<void(std::string, StreamType)> stream_resumed;
+ 
+       /** This signal is emitted when the Call is removed.
+        */
+-      boost::signal0<void> removed;
++      boost::signals2::signal<void(void)> removed;
+      
+     };
+ 
+diff --git a/lib/engine/videoinput/videoinput-core.h b/lib/engine/videoinput/videoinput-core.h
+index 3f87f89a8..869569375 100644
+--- a/lib/engine/videoinput/videoinput-core.h
++++ b/lib/engine/videoinput/videoinput-core.h
+@@ -45,7 +45,7 @@
+ #include "videoinput-manager.h"
+ #include "videoinput-gmconf-bridge.h"
+ 
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ #include <glib.h>
+ #include <set>
+@@ -146,7 +146,7 @@ namespace Ekiga
+       /** This signal is emitted when a Ekiga::VideoInputManager has been
+        * added to the VideoInputCore Service.
+        */
+-       boost::signal1<void, VideoInputManager &> manager_added;
++       boost::signals2::signal<void(VideoInputManager &)> manager_added;
+ 
+ 
+       /*** VideoInput Device Management ***/
+@@ -277,23 +277,23 @@ namespace Ekiga
+ 
+       /** See videoinput-manager.h for the API
+        */
+-      boost::signal3<void, VideoInputManager &, VideoInputDevice &, VideoInputSettings&> device_opened;
+-      boost::signal2<void, VideoInputManager &, VideoInputDevice &> device_closed;
+-      boost::signal3<void, VideoInputManager &, VideoInputDevice &, VideoInputErrorCodes> device_error;
++      boost::signals2::signal<void(VideoInputManager &, VideoInputDevice &, VideoInputSettings&)> device_opened;
++      boost::signals2::signal<void(VideoInputManager &, VideoInputDevice &)> device_closed;
++      boost::signals2::signal<void(VideoInputManager &, VideoInputDevice &, VideoInputErrorCodes)> device_error;
+ 
+       /** This signal is emitted when a video input has been added to the system.
+        * This signal will be emitted if add_device was called with a device name and
+        * a manager claimed support for this device.
+        * @param device the video input device that was added.
+        */
+-      boost::signal2<void, VideoInputDevice, bool> device_added;
++      boost::signals2::signal<void(VideoInputDevice, bool)> device_added;
+ 
+       /** This signal is emitted when a video input has been removed from the system.
+        * This signal will be emitted if remove_device was called with a device name and
+        * a manager claimed support for this device.
+        * @param device the video input device that was removed.
+        */
+-      boost::signal2<void, VideoInputDevice, bool> device_removed;
++      boost::signals2::signal<void(VideoInputDevice, bool)> device_removed;
+ 
+   private:
+       void on_set_device (const VideoInputDevice & device);
+diff --git a/lib/engine/videoinput/videoinput-manager.h b/lib/engine/videoinput/videoinput-manager.h
+index 7235c541b..3b09c41d0 100644
+--- a/lib/engine/videoinput/videoinput-manager.h
++++ b/lib/engine/videoinput/videoinput-manager.h
+@@ -39,7 +39,7 @@
+ #define __VIDEOINPUT_MANAGER_H__
+ 
+ #include <vector>
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #include "videoinput-info.h"
+@@ -159,18 +159,18 @@ namespace Ekiga
+        * @param device the video input device that was opened.
+        * @param config the current video input device configuration (current brightness, colour, etc.).
+        */
+-      boost::signal2<void, VideoInputDevice, VideoInputSettings> device_opened;
++      boost::signals2::signal<void(VideoInputDevice, VideoInputSettings)> device_opened;
+ 
+       /** This signal is emitted when a video input device is closed.
+        * @param device the video input device that was closed.
+        */
+-      boost::signal1<void, VideoInputDevice> device_closed;
++      boost::signals2::signal<void(VideoInputDevice)> device_closed;
+ 
+       /** This signal is emitted when an error occurs when opening a video input device.
+        * @param device the video input device that caused the error.
+        * @param error_code the video input device error code.
+        */
+-      boost::signal2<void, VideoInputDevice, VideoInputErrorCodes> device_error;
++      boost::signals2::signal<void(VideoInputDevice, VideoInputErrorCodes)> device_error;
+ 
+   protected:  
+       typedef struct ManagerState {
+diff --git a/lib/engine/videooutput/videooutput-core.h b/lib/engine/videooutput/videooutput-core.h
+index b8968dada..e3e5936f4 100644
+--- a/lib/engine/videooutput/videooutput-core.h
++++ b/lib/engine/videooutput/videooutput-core.h
+@@ -42,7 +42,7 @@
+ #include "videooutput-gmconf-bridge.h"
+ #include "videooutput-manager.h"
+ 
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ #include <set>
+ #include <map>
+@@ -116,7 +116,7 @@ namespace Ekiga
+       /** This signal is emitted when a Ekiga::VideoOutputManager has been
+        * added to the VideoOutputCore Service.
+        */
+-      boost::signal1<void, VideoOutputManager &> manager_added;
++      boost::signals2::signal<void(VideoOutputManager &)> manager_added;
+ 
+ 
+       /*** Videooutput Management ***/
+@@ -165,11 +165,11 @@ namespace Ekiga
+ 
+       /** See videooutput-manager.h for the API
+        */
+-      boost::signal6<void, VideoOutputManager &, VideoOutputAccel, VideoOutputMode, unsigned, bool, bool> device_opened;
+-      boost::signal1<void, VideoOutputManager &> device_closed;
+-      boost::signal2<void, VideoOutputManager &, VideoOutputErrorCodes> device_error;
+-      boost::signal2<void, VideoOutputManager &, VideoOutputFSToggle> fullscreen_mode_changed;
+-      boost::signal3<void, VideoOutputManager &, unsigned, unsigned> size_changed;
++      boost::signals2::signal<void(VideoOutputManager &, VideoOutputAccel, VideoOutputMode, unsigned, bool, bool)> device_opened;
++      boost::signals2::signal<void(VideoOutputManager &)> device_closed;
++      boost::signals2::signal<void(VideoOutputManager &, VideoOutputErrorCodes)> device_error;
++      boost::signals2::signal<void(VideoOutputManager &, VideoOutputFSToggle)> fullscreen_mode_changed;
++      boost::signals2::signal<void(VideoOutputManager &, unsigned, unsigned)> size_changed;
+ 
+ 
+   private:
+diff --git a/lib/engine/videooutput/videooutput-manager.h b/lib/engine/videooutput/videooutput-manager.h
+index 0a1f337a1..58b361a01 100644
+--- a/lib/engine/videooutput/videooutput-manager.h
++++ b/lib/engine/videooutput/videooutput-manager.h
+@@ -38,7 +38,7 @@
+ #ifndef __VIDEOOUTPUT_MANAGER_H__
+ #define __VIDEOOUTPUT_MANAGER_H__
+ 
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <boost/bind.hpp>
+ 
+ #include "videooutput-info.h"
+@@ -108,16 +108,16 @@ namespace Ekiga
+        * @param both_streams if a frame from both local and remote stream has been received.
+        * @param ext_stream if a frame from an extended video stream has been received.
+        */
+-      boost::signal5<void, VideoOutputAccel, VideoOutputMode, unsigned, bool, bool> device_opened;
++      boost::signals2::signal<void(VideoOutputAccel, VideoOutputMode, unsigned, bool, bool)> device_opened;
+ 
+       /** This signal is emitted when a video output device is closed.
+        */
+-      boost::signal0<void> device_closed;
++      boost::signals2::signal<void(void)> device_closed;
+ 
+       /** This signal is emitted when an error occurs when opening a video output device.
+        * @param error_code the video output device error code.
+        */
+-      boost::signal1<void, VideoOutputErrorCodes> device_error;
++      boost::signals2::signal<void(VideoOutputErrorCodes)> device_error;
+ 
+       /** This signal is emitted when a manager switches autonomously into or out of fullscreen mode.
+        * Some managers like DX and XV  allow the user to switch between FS
+@@ -127,7 +127,7 @@ namespace Ekiga
+        * or when it is being zoomed in or out.
+        * @param toggle VO_FS_ON or VO_FS_OFF depending on whether FS was activated or deactivated.
+        */
+-      boost::signal1<void, VideoOutputFSToggle> fullscreen_mode_changed;
++      boost::signals2::signal<void(VideoOutputFSToggle)> fullscreen_mode_changed;
+ 
+       /** This signal is emitted the video output size has changed.
+        * This signal is called whenever the size of the widget carrying the video signal
+@@ -136,7 +136,7 @@ namespace Ekiga
+        * @param width the new width of the widget.
+        * @param height the new height of the widget.
+        */
+-      boost::signal2<void, unsigned, unsigned> size_changed;
++      boost::signals2::signal<void(unsigned, unsigned)> size_changed;
+ 
+   protected:  
+       virtual void get_display_info (DisplayInfo &) { };
+diff --git a/plugins/avahi/avahi-cluster.h b/plugins/avahi/avahi-cluster.h
+index 602e8d061..1821553ea 100644
+--- a/plugins/avahi/avahi-cluster.h
++++ b/plugins/avahi/avahi-cluster.h
+@@ -53,7 +53,7 @@ namespace Avahi
+   class Cluster:
+     public Ekiga::Service,
+     public Ekiga::ClusterImpl<Heap>,
+-    public boost::signals::trackable
++    public boost::signals2::trackable
+   {
+   public:
+ 
+diff --git a/plugins/avahi/avahi-heap.h b/plugins/avahi/avahi-heap.h
+index dea994638..07dff41b9 100644
+--- a/plugins/avahi/avahi-heap.h
++++ b/plugins/avahi/avahi-heap.h
+@@ -60,7 +60,7 @@ namespace Avahi
+   class Heap:
+     public Ekiga::PresenceFetcher,
+     public Ekiga::HeapImpl<Ekiga::URIPresentity>,
+-    public boost::signals::trackable
++    public boost::signals2::trackable
+   {
+   public:
+ 
+diff --git a/plugins/ldap/ldap-book.h b/plugins/ldap/ldap-book.h
+index f02ba3b7f..bcf051989 100644
+--- a/plugins/ldap/ldap-book.h
++++ b/plugins/ldap/ldap-book.h
+@@ -124,7 +124,7 @@ namespace OPENLDAP
+ 
+     xmlNodePtr get_node ();
+ 
+-    boost::signal0<void> trigger_saving;
++    boost::signals2::signal<void(void)> trigger_saving;
+ 
+     bool is_ekiga_net_book () const;
+ 
+diff --git a/plugins/libnotify/libnotify-main.cpp b/plugins/libnotify/libnotify-main.cpp
+index 502e53bdf..bb40c578f 100644
+--- a/plugins/libnotify/libnotify-main.cpp
++++ b/plugins/libnotify/libnotify-main.cpp
+@@ -51,7 +51,7 @@
+ 
+ class LibNotify:
+   public Ekiga::Service,
+-  public boost::signals::trackable
++  public boost::signals2::trackable
+ {
+ public:
+ 
+@@ -77,7 +77,7 @@ private:
+                              boost::shared_ptr<Ekiga::Call>  call);
+   void on_call_notification_closed (gpointer self);
+ 
+-  typedef std::map<boost::shared_ptr<Ekiga::Notification>, std::pair<boost::signals::connection, boost::shared_ptr<NotifyNotification> > > container_type;
++  typedef std::map<boost::shared_ptr<Ekiga::Notification>, std::pair<boost::signals2::connection, boost::shared_ptr<NotifyNotification> > > container_type;
+   container_type live;
+ };
+ 
+@@ -234,10 +234,10 @@ LibNotify::on_notification_added (boost::shared_ptr<Ekiga::Notification> notific
+                                     notify_action_cb, notification.get (), NULL);
+ 
+   g_signal_connect (notif, "closed", G_CALLBACK (on_notif_closed), notification.get ());
+-  boost::signals::connection conn = notification->removed.connect (boost::bind (&LibNotify::on_notification_removed,
++  boost::signals2::connection conn = notification->removed.connect (boost::bind (&LibNotify::on_notification_removed,
+                                                                                 this, notification));
+ 
+-  live[notification] = std::pair<boost::signals::connection, boost::shared_ptr<NotifyNotification> > (conn, boost::shared_ptr<NotifyNotification> (notif, g_object_unref));
++  live[notification] = std::pair<boost::signals2::connection, boost::shared_ptr<NotifyNotification> > (conn, boost::shared_ptr<NotifyNotification> (notif, g_object_unref));
+ 
+   notify_notification_show (notif, NULL);
+ }
+diff --git a/plugins/loudmouth/loudmouth-account.h b/plugins/loudmouth/loudmouth-account.h
+index c7a86b274..0e7e595fc 100644
+--- a/plugins/loudmouth/loudmouth-account.h
++++ b/plugins/loudmouth/loudmouth-account.h
+@@ -70,7 +70,7 @@ namespace LM
+ 
+     xmlNodePtr get_node () const;
+ 
+-    boost::signal0<void> trigger_saving;
++    boost::signals2::signal<void(void)> trigger_saving;
+ 
+     const std::string get_name () const;
+ 
+diff --git a/plugins/loudmouth/loudmouth-heap-roster.h b/plugins/loudmouth/loudmouth-heap-roster.h
+index f2ad46b20..1fee4f5d0 100644
+--- a/plugins/loudmouth/loudmouth-heap-roster.h
++++ b/plugins/loudmouth/loudmouth-heap-roster.h
+@@ -46,7 +46,7 @@ namespace LM
+   class HeapRoster:
+     public Ekiga::HeapImpl<Presentity>,
+     public LM::Handler,
+-    public boost::signals::trackable
++    public boost::signals2::trackable
+   {
+   public:
+ 
+diff --git a/plugins/loudmouth/loudmouth-helpers.h b/plugins/loudmouth/loudmouth-helpers.h
+index dff9cda4b..486056117 100644
+--- a/plugins/loudmouth/loudmouth-helpers.h
++++ b/plugins/loudmouth/loudmouth-helpers.h
+@@ -37,7 +37,7 @@
+ #define __LOUDMOUTH_HELPERS_H__
+ 
+ #include <boost/smart_ptr.hpp>
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ 
+ #include <loudmouth/loudmouth.h>
+ 
+diff --git a/plugins/loudmouth/loudmouth-presentity.h b/plugins/loudmouth/loudmouth-presentity.h
+index d8d522275..63f9d476f 100644
+--- a/plugins/loudmouth/loudmouth-presentity.h
++++ b/plugins/loudmouth/loudmouth-presentity.h
+@@ -78,7 +78,7 @@ namespace LM
+ 
+     bool has_chat;
+ 
+-    boost::signal0<void> chat_requested;
++    boost::signals2::signal<void(void)> chat_requested;
+ 
+   private:
+     LmConnection* connection;
+diff --git a/plugins/resource-list/rl-heap.cpp b/plugins/resource-list/rl-heap.cpp
+index beeac6b0c..1d38776bc 100644
+--- a/plugins/resource-list/rl-heap.cpp
++++ b/plugins/resource-list/rl-heap.cpp
+@@ -185,7 +185,7 @@ RL::Heap::visit_presentities (boost::function1<bool, Ekiga::PresentityPtr > visi
+ {
+   bool go_on = true;
+ 
+-  for (std::map<PresentityPtr,std::list<boost::signals::connection> >::const_iterator
++  for (std::map<PresentityPtr,std::list<boost::signals2::connection> >::const_iterator
+ 	 iter = presentities.begin ();
+        go_on && iter != presentities.end ();
+        ++iter)
+@@ -254,7 +254,7 @@ RL::Heap::refresh ()
+   while ( !presentities.empty ()) {
+ 
+     presentities.begin()->first->removed ();
+-    for (std::list<boost::signals::connection>::const_iterator iter2
++    for (std::list<boost::signals2::connection>::const_iterator iter2
+ 	   = presentities.begin()->second.begin ();
+ 	 iter2 != presentities.begin()->second.end ();
+ 	 ++iter2)
+@@ -366,7 +366,7 @@ RL::Heap::parse_list (xmlNodePtr list)
+ 	&& xmlStrEqual (BAD_CAST ("entry"), child->name)) {
+ 
+       PresentityPtr presentity(new Presentity (services, path, doc, child, writable));
+-      std::list<boost::signals::connection> conns;
++      std::list<boost::signals2::connection> conns;
+       conns.push_back (presentity->updated.connect (boost::bind (boost::ref (presentity_updated), presentity)));
+       conns.push_back (presentity->removed.connect (boost::bind(boost::ref (presentity_removed),presentity)));
+       conns.push_back (presentity->trigger_reload.connect (boost::bind (&RL::Heap::refresh, this)));
+@@ -381,7 +381,7 @@ void
+ RL::Heap::push_presence (const std::string uri_,
+ 			 const std::string presence)
+ {
+-  for (std::map<PresentityPtr,std::list<boost::signals::connection> >::const_iterator
++  for (std::map<PresentityPtr,std::list<boost::signals2::connection> >::const_iterator
+ 	 iter = presentities.begin ();
+        iter != presentities.end ();
+        ++iter) {
+@@ -395,7 +395,7 @@ void
+ RL::Heap::push_status (const std::string uri_,
+ 		       const std::string status)
+ {
+-  for (std::map<PresentityPtr,std::list<boost::signals::connection> >::const_iterator
++  for (std::map<PresentityPtr,std::list<boost::signals2::connection> >::const_iterator
+ 	 iter = presentities.begin ();
+        iter != presentities.end ();
+        ++iter) {
+@@ -514,7 +514,7 @@ RL::Heap::new_entry ()
+ 			   "contact on a remote server"));
+ 
+   std::set<std::string> all_groups;
+-  for (std::map<PresentityPtr,std::list<boost::signals::connection> >::const_iterator
++  for (std::map<PresentityPtr,std::list<boost::signals2::connection> >::const_iterator
+ 	 iter = presentities.begin ();
+        iter != presentities.end ();
+        ++iter) {
+diff --git a/plugins/resource-list/rl-heap.h b/plugins/resource-list/rl-heap.h
+index 67f38bd27..de3b41d04 100644
+--- a/plugins/resource-list/rl-heap.h
++++ b/plugins/resource-list/rl-heap.h
+@@ -90,7 +90,7 @@ namespace RL {
+     void push_status (const std::string uri,
+ 		      const std::string status);
+ 
+-    boost::signal0<void> trigger_saving;
++    boost::signals2::signal<void(void)> trigger_saving;
+ 
+   private:
+ 
+@@ -106,7 +106,7 @@ namespace RL {
+     boost::shared_ptr<xmlDoc> doc;
+     xmlNodePtr list_node;
+ 
+-    std::map<PresentityPtr, std::list<boost::signals::connection> > presentities;
++    std::map<PresentityPtr, std::list<boost::signals2::connection> > presentities;
+ 
+     void refresh ();
+ 
+diff --git a/plugins/resource-list/rl-list.cpp b/plugins/resource-list/rl-list.cpp
+index 1049a46b8..45fc9acdf 100644
+--- a/plugins/resource-list/rl-list.cpp
++++ b/plugins/resource-list/rl-list.cpp
+@@ -94,9 +94,9 @@ public: // no need to make anything private
+ 
+   void publish () const;
+ 
+-  boost::signal1<void, boost::shared_ptr<Entry> > entry_added;
+-  boost::signal1<void, boost::shared_ptr<Entry> > entry_updated;
+-  boost::signal1<void, boost::shared_ptr<Entry> > entry_removed;
++  boost::signals2::signal<void(boost::shared_ptr<Entry>)> entry_added;
++  boost::signals2::signal<void(boost::shared_ptr<Entry>)> entry_updated;
++  boost::signals2::signal<void(boost::shared_ptr<Entry>)> entry_removed;
+ 
+ 
+   /* data for its children */
+@@ -104,7 +104,7 @@ public: // no need to make anything private
+ 
+   std::list<ChildType> ordering;
+   std::list<boost::shared_ptr<List> > lists;
+-  std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals::connection> > > entries;
++  std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals2::connection> > > entries;
+ };
+ 
+ 
+@@ -235,12 +235,12 @@ RL::ListImpl::flush ()
+     (*iter)->flush ();
+   lists.clear ();
+ 
+-  for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals::connection> > >::iterator iter = entries.begin ();
++  for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals2::connection> > >::iterator iter = entries.begin ();
+        iter != entries.end ();
+        ++iter) {
+ 
+     iter->first->removed ();
+-    for (std::list<boost::signals::connection>::iterator conn_iter
++    for (std::list<boost::signals2::connection>::iterator conn_iter
+ 	   = iter->second.begin ();
+ 	 conn_iter != iter->second.end ();
+ 	 ++conn_iter)
+@@ -342,10 +342,10 @@ RL::ListImpl::parse ()
+ 							    entry_pos,
+ 							    display_name,
+ 							    doc, child));
+-      std::list<boost::signals::connection> conns;
++      std::list<boost::signals2::connection> conns;
+       conns.push_back (entry->updated.connect (boost::bind (boost::ref (entry_updated), entry)));
+       conns.push_back (entry->removed.connect (boost::bind (boost::ref (entry_removed), entry)));
+-      entries.push_back (std::pair<boost::shared_ptr<Entry>, std::list<boost::signals::connection> > (entry, conns));
++      entries.push_back (std::pair<boost::shared_ptr<Entry>, std::list<boost::signals2::connection> > (entry, conns));
+       ordering.push_back (ENTRY);
+       entry_pos++;
+       entry_added (entry);
+@@ -363,7 +363,7 @@ RL::ListImpl::push_presence (const std::string uri_,
+        ++iter)
+     (*iter)->push_presence (uri_, presence);
+ 
+-  for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals::connection> > >::const_iterator iter = entries.begin ();
++  for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals2::connection> > >::const_iterator iter = entries.begin ();
+        iter != entries.end ();
+        ++iter) {
+ 
+@@ -381,7 +381,7 @@ RL::ListImpl::push_status (const std::string uri_,
+        ++iter)
+     (*iter)->push_status (uri_, status);
+ 
+-  for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals::connection> > >::const_iterator iter = entries.begin ();
++  for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals2::connection> > >::const_iterator iter = entries.begin ();
+        iter != entries.end ();
+        ++iter) {
+ 
+@@ -400,7 +400,7 @@ RL::ListImpl::visit_presentities (boost::function1<bool, Ekiga::Presentity&> vis
+        ++iter)
+     go_on = (*iter)->visit_presentities (visitor);
+ 
+-  for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals::connection> > >::const_iterator iter = entries.begin ();
++  for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals2::connection> > >::const_iterator iter = entries.begin ();
+        go_on && iter != entries.end ();
+        ++iter) {
+ 
+@@ -418,7 +418,7 @@ RL::ListImpl::publish () const
+        ++iter)
+     (*iter)->publish ();
+ 
+-  for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals::connection> > >::const_iterator iter = entries.begin ();
++  for (std::list<std::pair<boost::shared_ptr<Entry>, std::list<boost::signals2::connection> > >::const_iterator iter = entries.begin ();
+        iter != entries.end ();
+        ++iter) {
+ 
+diff --git a/plugins/resource-list/rl-list.h b/plugins/resource-list/rl-list.h
+index 77a64d45f..ca5c02bcc 100644
+--- a/plugins/resource-list/rl-list.h
++++ b/plugins/resource-list/rl-list.h
+@@ -74,9 +74,9 @@ namespace RL
+ 
+     void publish () const;
+ 
+-    boost::signal1<void, boost::shared_ptr<Entry> > entry_added;
+-    boost::signal1<void, boost::shared_ptr<Entry> > entry_updated;
+-    boost::signal1<void, boost::shared_ptr<Entry> > entry_removed;
++    boost::signals2::signal<void(boost::shared_ptr<Entry>)> entry_added;
++    boost::signals2::signal<void(boost::shared_ptr<Entry>)> entry_updated;
++    boost::signals2::signal<void(boost::shared_ptr<Entry>)> entry_removed;
+ 
+     /* this method orders the list to get rid of all its children */
+     void flush ();
+diff --git a/plugins/resource-list/rl-presentity.h b/plugins/resource-list/rl-presentity.h
+index fbd998a79..53bfd1030 100644
+--- a/plugins/resource-list/rl-presentity.h
++++ b/plugins/resource-list/rl-presentity.h
+@@ -79,7 +79,7 @@ namespace RL
+ 
+     bool populate_menu (Ekiga::MenuBuilder &);
+ 
+-    boost::signal0<void> trigger_reload;
++    boost::signals2::signal<void(void)> trigger_reload;
+ 
+   private:
+ 
+diff --git a/src/gui/assistant.cpp b/src/gui/assistant.cpp
+index 778b02151..74e17cd1f 100644
+--- a/src/gui/assistant.cpp
++++ b/src/gui/assistant.cpp
+@@ -95,7 +95,7 @@ struct _EkigaAssistantPrivate
+   gint last_active_page;
+ 
+   GtkListStore *summary_model;
+-  std::vector<boost::signals::connection> connections;
++  std::vector<boost::signals2::connection> connections;
+ };
+ 
+ /* presenting the network connection type to the user */
+@@ -1679,7 +1679,7 @@ ekiga_assistant_new (Ekiga::ServiceCore& service_core)
+   g_signal_connect (assistant, "key-press-event",
+                     G_CALLBACK (ekiga_assistant_key_press_cb), NULL);
+ 
+-  boost::signals::connection conn;
++  boost::signals2::connection conn;
+   assistant->priv->videoinput_core = service_core.get<Ekiga::VideoInputCore> ("videoinput-core");
+   assistant->priv->audioinput_core = service_core.get<Ekiga::AudioInputCore> ("audioinput-core");
+   assistant->priv->audiooutput_core = service_core.get<Ekiga::AudioOutputCore> ("audiooutput-core");
+diff --git a/src/gui/main_window.cpp b/src/gui/main_window.cpp
+index 318ed5a22..0aec09ec2 100644
+--- a/src/gui/main_window.cpp
++++ b/src/gui/main_window.cpp
+@@ -129,7 +129,7 @@ struct _EkigaMainWindowPrivate
+   unsigned calling_state;
+ 
+   gulong roster_selection_connection_id;
+-  std::vector<boost::signals::connection> connections;
++  std::vector<boost::signals2::connection> connections;
+ };
+ 
+ /* properties */
+@@ -1706,7 +1706,7 @@ ekiga_main_window_class_init (EkigaMainWindowClass *klass)
+ static void
+ ekiga_main_window_connect_engine_signals (EkigaMainWindow *mw)
+ {
+-  boost::signals::connection conn;
++  boost::signals2::connection conn;
+ 
+   g_return_if_fail (EKIGA_IS_MAIN_WINDOW (mw));
+ 
+diff --git a/src/gui/statusmenu.cpp b/src/gui/statusmenu.cpp
+index 791089294..e937f77ca 100644
+--- a/src/gui/statusmenu.cpp
++++ b/src/gui/statusmenu.cpp
+@@ -51,7 +51,7 @@
+ struct _StatusMenuPrivate
+ {
+   boost::shared_ptr<Ekiga::PersonalDetails> personal_details;
+-  std::vector<boost::signals::connection> connections;
++  std::vector<boost::signals2::connection> connections;
+ 
+   GtkListStore *list_store; // List store storing the menu
+   GtkWindow    *parent;     // Parent window
+@@ -796,7 +796,7 @@ status_menu_new (Ekiga::ServiceCore & core)
+ {
+   StatusMenu *self = NULL;
+ 
+-  boost::signals::connection conn;
++  boost::signals2::connection conn;
+   GtkCellRenderer *renderer = NULL;
+   GSList *custom_status_array [NUM_STATUS_TYPES];
+ 
+-- 
+2.20.1
+

Copied: ekiga/repos/gnome-unstable-x86_64/ekiga-4.0.1-libresolv.patch (from rev 348201, ekiga/trunk/ekiga-4.0.1-libresolv.patch)
===================================================================
--- gnome-unstable-x86_64/ekiga-4.0.1-libresolv.patch	                        (rev 0)
+++ gnome-unstable-x86_64/ekiga-4.0.1-libresolv.patch	2019-03-15 17:19:19 UTC (rev 348203)
@@ -0,0 +1,13 @@
+diff -up ekiga-4.0.1/configure.ac.libresolv ekiga-4.0.1/configure.ac
+--- ekiga-4.0.1/configure.ac.libresolv	2017-02-23 02:30:42.051227852 -0600
++++ ekiga-4.0.1/configure.ac	2017-02-23 02:32:04.609519837 -0600
+@@ -324,7 +324,8 @@ if test "x$enable_ldap" = "xyes"; then
+ 
+   dnl Checking for libresolv
+   if test ${gm_platform} = "linux" ; then
+-  	AC_CHECK_LIB(resolv, res_gethostbyaddr, [LIBS="-lresolv $LIBS"], AC_MSG_ERROR([You need the libresolv library to compile Ekiga]), -lresolv)
++  	# AC_CHECK_LIB(resolv, res_gethostbyaddr, [LIBS="-lresolv $LIBS"], AC_MSG_ERROR([You need the libresolv library to compile Ekiga]), -lresolv)
++	AC_WARNING([Just adding libresolv to LDAP_LIBS, without checking anything])
+   	LDAP_LIBS="${LDAP_LIBS} -lresolv"
+   fi
+   found_ldap="yes"


More information about the arch-commits mailing list