summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Rostovtsev <tetromino@gentoo.org>2012-08-11 22:31:59 +0000
committerAlexandre Rostovtsev <tetromino@gentoo.org>2012-08-11 22:31:59 +0000
commitad17efe2480de9a20056bb6c059c0a474a2b4ef1 (patch)
treeb6bb4ed3060f07606fb477db276e30699d5bcd03
parentStable for amd64, wrt bug #430494 (diff)
downloadgentoo-2-ad17efe2480de9a20056bb6c059c0a474a2b4ef1.tar.gz
gentoo-2-ad17efe2480de9a20056bb6c059c0a474a2b4ef1.tar.bz2
gentoo-2-ad17efe2480de9a20056bb6c059c0a474a2b4ef1.zip
Non-maintainer commit: fix building with glib-2.32 (bug #417765, thanks to Petr Gregor) and compatibility with pjsip-1.14.
(Portage version: 2.2.0_alpha120/cvs/Linux x86_64)
-rw-r--r--net-voip/sflphone/ChangeLog12
-rw-r--r--net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-1.patch26
-rw-r--r--net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-2.patch138
-rw-r--r--net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-3.patch317
-rw-r--r--net-voip/sflphone/files/sflphone-1.0.1-pjsip-1.14.patch110
-rw-r--r--net-voip/sflphone/sflphone-1.0.1-r1.ebuild157
6 files changed, 759 insertions, 1 deletions
diff --git a/net-voip/sflphone/ChangeLog b/net-voip/sflphone/ChangeLog
index 932fb4119760..33f6647faf6f 100644
--- a/net-voip/sflphone/ChangeLog
+++ b/net-voip/sflphone/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for net-voip/sflphone
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-voip/sflphone/ChangeLog,v 1.11 2012/03/02 14:58:32 elvanor Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-voip/sflphone/ChangeLog,v 1.12 2012/08/11 22:31:59 tetromino Exp $
+
+*sflphone-1.0.1-r1 (11 Aug 2012)
+
+ 11 Aug 2012; Alexandre Rostovtsev <tetromino@gentoo.org>
+ +sflphone-1.0.1-r1.ebuild, +files/sflphone-1.0.1-glib-2.32-headers-1.patch,
+ +files/sflphone-1.0.1-glib-2.32-headers-2.patch,
+ +files/sflphone-1.0.1-glib-2.32-headers-3.patch,
+ +files/sflphone-1.0.1-pjsip-1.14.patch:
+ Non-maintainer commit: fix building with glib-2.32 (bug #417765, thanks to
+ Petr Gregor) and compatibility with pjsip-1.14.
02 Mar 2012; <elvanor@gentoo.org> sflphone-1.0.1.ebuild:
Fixed bug #396707.
diff --git a/net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-1.patch b/net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-1.patch
new file mode 100644
index 000000000000..683bd9a29c68
--- /dev/null
+++ b/net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-1.patch
@@ -0,0 +1,26 @@
+From 3ed300124a425d43ee627ff35b35aa1168ba01d0 Mon Sep 17 00:00:00 2001
+From: Tristan Matthews <tristan.matthews@savoirfairelinux.com>
+Date: Tue, 6 Mar 2012 10:19:59 -0500
+Subject: [PATCH] * #9144: Fixes "Only <glib.h> can be included directly"
+ error
+
+---
+ plugins/addressbook/evolution/eds.h | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/plugins/addressbook/evolution/eds.h b/plugins/addressbook/evolution/eds.h
+index 0ce1783..5bbf71e 100644
+--- a/plugins/addressbook/evolution/eds.h
++++ b/plugins/addressbook/evolution/eds.h
+@@ -38,7 +38,7 @@
+ #ifndef __EDS_H__
+ #define __EDS_H__
+
+-#include <glib/gtypes.h>
++#include <glib.h>
+ #include <gdk-pixbuf/gdk-pixbuf.h>
+ #include <libebook/e-book.h>
+
+--
+1.7.8.6
+
diff --git a/net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-2.patch b/net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-2.patch
new file mode 100644
index 000000000000..aa6645ab3987
--- /dev/null
+++ b/net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-2.patch
@@ -0,0 +1,138 @@
+From 585ee2588599e295273721418db3bf4d54dd053a Mon Sep 17 00:00:00 2001
+From: Tristan Matthews <tristan.matthews@savoirfairelinux.com>
+Date: Tue, 6 Mar 2012 10:55:47 -0500
+Subject: [PATCH] * #9145: fix "only <glib.h>" can be included error in gnome
+ client
+
+---
+ gnome/src/actions.c | 2 +-
+ gnome/src/conference_obj.h | 2 +-
+ gnome/src/config/addressbook-config.h | 2 +-
+ gnome/src/config/hooks-config.h | 2 +-
+ gnome/src/config/shortcuts-config.h | 2 +-
+ gnome/src/eel-gconf-extensions.c | 2 +-
+ gnome/src/eel-gconf-extensions.h | 2 +-
+ gnome/src/sflphone_const.h | 2 +-
+ gnome/src/uimanager.c | 2 +-
+ 9 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/gnome/src/actions.c b/gnome/src/actions.c
+index 0520be8..abdbddd 100644
+--- a/gnome/src/actions.c
++++ b/gnome/src/actions.c
+@@ -36,7 +36,7 @@
+ #else
+ #include <gdk/gdkkeysyms.h>
+ #endif
+-#include <glib/gprintf.h>
++#include <glib.h>
+ #include <stdlib.h>
+ #include <string.h>
+ #include <sys/types.h>
+diff --git a/gnome/src/conference_obj.h b/gnome/src/conference_obj.h
+index e7f0e3a..0e17bad 100644
+--- a/gnome/src/conference_obj.h
++++ b/gnome/src/conference_obj.h
+@@ -32,7 +32,7 @@
+ #define __CONFERENCE_OBJ_H__
+
+ #include <gtk/gtk.h>
+-#include <glib/gprintf.h>
++#include <glib.h>
+ #include <stdlib.h>
+ #include <time.h>
+
+diff --git a/gnome/src/config/addressbook-config.h b/gnome/src/config/addressbook-config.h
+index cb10260..cd7a9ac 100644
+--- a/gnome/src/config/addressbook-config.h
++++ b/gnome/src/config/addressbook-config.h
+@@ -32,7 +32,7 @@
+ #define _ADDRESS_BOOK_CONFIG
+
+ #include <gtk/gtk.h>
+-#include <glib/gtypes.h>
++#include <glib.h>
+
+ #include "addressbook.h"
+ #include "actions.h"
+diff --git a/gnome/src/config/hooks-config.h b/gnome/src/config/hooks-config.h
+index 6f51be9..e35a5b9 100644
+--- a/gnome/src/config/hooks-config.h
++++ b/gnome/src/config/hooks-config.h
+@@ -32,7 +32,7 @@
+ #define _HOOKS_CONFIG
+
+ #include <gtk/gtk.h>
+-#include <glib/gtypes.h>
++#include <glib.h>
+
+ #include "actions.h"
+ #include "utils.h"
+diff --git a/gnome/src/config/shortcuts-config.h b/gnome/src/config/shortcuts-config.h
+index abcb424..123cb9c 100644
+--- a/gnome/src/config/shortcuts-config.h
++++ b/gnome/src/config/shortcuts-config.h
+@@ -32,7 +32,7 @@
+ #define _SHORTCUTS_CONFIG
+
+ #include <gtk/gtk.h>
+-#include <glib/gtypes.h>
++#include <glib.h>
+
+ #include "actions.h"
+ #include <utils.h>
+diff --git a/gnome/src/eel-gconf-extensions.c b/gnome/src/eel-gconf-extensions.c
+index c1947f2..4631981 100644
+--- a/gnome/src/eel-gconf-extensions.c
++++ b/gnome/src/eel-gconf-extensions.c
+@@ -29,7 +29,7 @@
+ #include <gconf/gconf-client.h>
+ #include <gconf/gconf.h>
+ #include <gtk/gtk.h>
+-#include <glib/gi18n.h>
++#include <glib.h>
+
+ static GConfClient *global_gconf_client = NULL;
+
+diff --git a/gnome/src/eel-gconf-extensions.h b/gnome/src/eel-gconf-extensions.h
+index 0068b15..d380387 100644
+--- a/gnome/src/eel-gconf-extensions.h
++++ b/gnome/src/eel-gconf-extensions.h
+@@ -25,7 +25,7 @@
+ #ifndef EEL_GCONF_EXTENSIONS_H
+ #define EEL_GCONF_EXTENSIONS_H
+
+-#include <glib/gerror.h>
++#include <glib.h>
+ #include <gconf/gconf.h>
+ #include <gconf/gconf-client.h>
+
+diff --git a/gnome/src/sflphone_const.h b/gnome/src/sflphone_const.h
+index 3766562..e642e0a 100644
+--- a/gnome/src/sflphone_const.h
++++ b/gnome/src/sflphone_const.h
+@@ -32,7 +32,7 @@
+ #define __SFLPHONE_CONST_H
+
+ #include <libintl.h>
+-#include <glib/gi18n.h>
++#include <glib.h>
+
+ /* @file sflphone_const.h
+ * @brief Contains the global variables for the client code
+diff --git a/gnome/src/uimanager.c b/gnome/src/uimanager.c
+index 36eb623..2953156 100644
+--- a/gnome/src/uimanager.c
++++ b/gnome/src/uimanager.c
+@@ -36,7 +36,7 @@
+ #include "assistant.h"
+ #include <gtk/gtk.h>
+ #include <string.h>
+-#include <glib/gprintf.h>
++#include <glib.h>
+
+ #include "uimanager.h"
+ #include "statusicon.h"
+--
+1.7.8.6
+
diff --git a/net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-3.patch b/net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-3.patch
new file mode 100644
index 000000000000..4eb8c86c9e49
--- /dev/null
+++ b/net-voip/sflphone/files/sflphone-1.0.1-glib-2.32-headers-3.patch
@@ -0,0 +1,317 @@
+From 733be9d1efbd5b146ed9d48df31561dcfc1379c9 Mon Sep 17 00:00:00 2001
+From: Tristan Matthews <tristan.matthews@savoirfairelinux.com>
+Date: Fri, 9 Mar 2012 16:48:34 -0500
+Subject: [PATCH] * #9145: fix missing <glib/gi18n.h> includes
+
+---
+ gnome/src/accountlist.c | 1 +
+ gnome/src/actions.c | 1 +
+ gnome/src/callable_obj.c | 1 +
+ gnome/src/config/accountconfigdialog.c | 1 +
+ gnome/src/config/accountlistconfigdialog.c | 1 +
+ gnome/src/config/addressbook-config.c | 1 +
+ gnome/src/config/assistant.c | 2 +-
+ gnome/src/config/audioconf.c | 2 +-
+ gnome/src/config/hooks-config.c | 1 +
+ gnome/src/config/preferencesdialog.c | 1 +
+ gnome/src/config/shortcuts-config.c | 1 +
+ gnome/src/config/tlsadvanceddialog.c | 2 +-
+ gnome/src/config/zrtpadvanceddialog.c | 8 ++++----
+ gnome/src/contacts/searchbar.c | 1 +
+ gnome/src/dbus/dbus.c | 2 +-
+ gnome/src/eel-gconf-extensions.c | 3 ++-
+ gnome/src/main.c | 1 +
+ gnome/src/mainwindow.c | 1 +
+ gnome/src/sflnotify.c | 2 ++
+ gnome/src/sliders.c | 1 +
+ gnome/src/statusicon.c | 1 +
+ gnome/src/uimanager.c | 3 ++-
+ 22 files changed, 28 insertions(+), 10 deletions(-)
+
+diff --git a/gnome/src/accountlist.c b/gnome/src/accountlist.c
+index 662c7bc..803e3d3 100644
+--- a/gnome/src/accountlist.c
++++ b/gnome/src/accountlist.c
+@@ -29,6 +29,7 @@
+ * as that of the covered work.
+ */
+
++#include <glib/gi18n.h>
+ #include "accountlist.h"
+ #include "actions.h"
+ #include "unused.h"
+diff --git a/gnome/src/actions.c b/gnome/src/actions.c
+index abdbddd..29dca07 100644
+--- a/gnome/src/actions.c
++++ b/gnome/src/actions.c
+@@ -29,6 +29,7 @@
+ * as that of the covered work.
+ */
+
++#include <glib/gi18n.h>
+ #include <gtk/gtk.h>
+ /* Backward compatibility for gtk < 2.22.0 */
+ #if GTK_CHECK_VERSION(2,22,0)
+diff --git a/gnome/src/callable_obj.c b/gnome/src/callable_obj.c
+index 83449c6..c16d951 100644
+--- a/gnome/src/callable_obj.c
++++ b/gnome/src/callable_obj.c
+@@ -32,6 +32,7 @@
+ #include "codeclist.h"
+ #include "sflphone_const.h"
+ #include <time.h>
++#include <glib/gi18n.h>
+ #include "contacts/calltab.h"
+ #include "contacts/calltree.h"
+ #include "dbus.h"
+diff --git a/gnome/src/config/accountconfigdialog.c b/gnome/src/config/accountconfigdialog.c
+index c623595..7c2de3f 100644
+--- a/gnome/src/config/accountconfigdialog.c
++++ b/gnome/src/config/accountconfigdialog.c
+@@ -31,6 +31,7 @@
+ * as that of the covered work.
+ */
+
++#include <glib/gi18n.h>
+ #include <sys/socket.h>
+ #include <sys/ioctl.h>
+ #include <net/if.h>
+diff --git a/gnome/src/config/accountlistconfigdialog.c b/gnome/src/config/accountlistconfigdialog.c
+index aa8db7a..151f067 100644
+--- a/gnome/src/config/accountlistconfigdialog.c
++++ b/gnome/src/config/accountlistconfigdialog.c
+@@ -38,6 +38,7 @@
+ #include "utils.h"
+ #include "unused.h"
+ #include "logger.h"
++#include <glib/gi18n.h>
+ #include <string.h>
+
+ static const int CONTEXT_ID_REGISTRATION = 0;
+diff --git a/gnome/src/config/addressbook-config.c b/gnome/src/config/addressbook-config.c
+index 4c56da2..8e9c64e 100644
+--- a/gnome/src/config/addressbook-config.c
++++ b/gnome/src/config/addressbook-config.c
+@@ -34,6 +34,7 @@
+ #include "logger.h"
+ #include "searchbar.h"
+ #include "contacts/addrbookfactory.h"
++#include <glib/gi18n.h>
+ #include <string.h>
+ #include <stdlib.h>
+
+diff --git a/gnome/src/config/assistant.c b/gnome/src/config/assistant.c
+index 8ca0021..202767e 100644
+--- a/gnome/src/config/assistant.c
++++ b/gnome/src/config/assistant.c
+@@ -29,7 +29,7 @@
+ */
+
+ #include <string.h>
+-
++#include <glib/gi18n.h>
+ #include "unused.h"
+ #include "assistant.h"
+ #include "logger.h"
+diff --git a/gnome/src/config/audioconf.c b/gnome/src/config/audioconf.c
+index c7dfe38..3bfbad9 100644
+--- a/gnome/src/config/audioconf.c
++++ b/gnome/src/config/audioconf.c
+@@ -28,7 +28,7 @@
+ * as that of the covered work.
+ */
+
+-
++#include <glib/gi18n.h>
+ #include "audioconf.h"
+ #include "utils.h"
+ #include "logger.h"
+diff --git a/gnome/src/config/hooks-config.c b/gnome/src/config/hooks-config.c
+index 2b3e9e8..8a2b419 100644
+--- a/gnome/src/config/hooks-config.c
++++ b/gnome/src/config/hooks-config.c
+@@ -28,6 +28,7 @@
+ * as that of the covered work.
+ */
+
++#include <glib/gi18n.h>
+ #include "hooks-config.h"
+ #include "dbus.h"
+
+diff --git a/gnome/src/config/preferencesdialog.c b/gnome/src/config/preferencesdialog.c
+index 3bd5057..10b11ca 100644
+--- a/gnome/src/config/preferencesdialog.c
++++ b/gnome/src/config/preferencesdialog.c
+@@ -32,6 +32,7 @@
+ * as that of the covered work.
+ */
+
++#include <glib/gi18n.h>
+ #include <gtk/gtk.h>
+ #include <stdlib.h>
+ #include <stdio.h>
+diff --git a/gnome/src/config/shortcuts-config.c b/gnome/src/config/shortcuts-config.c
+index caa354a..f77b2e0 100644
+--- a/gnome/src/config/shortcuts-config.c
++++ b/gnome/src/config/shortcuts-config.c
+@@ -28,6 +28,7 @@
+ * as that of the covered work.
+ */
+
++#include <glib/gi18n.h>
+ #include <gdk/gdk.h>
+ #include "shortcuts-config.h"
+ #include "shortcuts.h"
+diff --git a/gnome/src/config/tlsadvanceddialog.c b/gnome/src/config/tlsadvanceddialog.c
+index 3d6c118..59052ea 100644
+--- a/gnome/src/config/tlsadvanceddialog.c
++++ b/gnome/src/config/tlsadvanceddialog.c
+@@ -32,7 +32,7 @@
+ #include <sflphone_const.h>
+ #include <utils.h>
+ #include <dbus.h>
+-
++#include <glib/gi18n.h>
+ #include <gtk/gtk.h>
+ #include <math.h>
+
+diff --git a/gnome/src/config/zrtpadvanceddialog.c b/gnome/src/config/zrtpadvanceddialog.c
+index e50898a..fe4589b 100644
+--- a/gnome/src/config/zrtpadvanceddialog.c
++++ b/gnome/src/config/zrtpadvanceddialog.c
+@@ -28,11 +28,11 @@
+ * as that of the covered work.
+ */
+
+-#include <zrtpadvanceddialog.h>
+-#include <sflphone_const.h>
+-#include <utils.h>
+-
++#include <glib/gi18n.h>
+ #include <gtk/gtk.h>
++#include <zrtpadvanceddialog.h>
++#include "sflphone_const.h"
++#include "utils.h"
+
+ void show_advanced_zrtp_options(GHashTable * properties)
+ {
+diff --git a/gnome/src/contacts/searchbar.c b/gnome/src/contacts/searchbar.c
+index e48efaf..1ac515b 100644
+--- a/gnome/src/contacts/searchbar.c
++++ b/gnome/src/contacts/searchbar.c
+@@ -31,6 +31,7 @@
+ * as that of the covered work.
+ */
+
++#include <glib/gi18n.h>
+ #include "searchbar.h"
+ #include "calltree.h"
+ #include "calltab.h"
+diff --git a/gnome/src/dbus/dbus.c b/gnome/src/dbus/dbus.c
+index 91241f5..957ae5a 100644
+--- a/gnome/src/dbus/dbus.c
++++ b/gnome/src/dbus/dbus.c
+@@ -30,7 +30,7 @@
+ * as that of the covered work.
+ */
+ #include "config.h"
+-
++#include <glib/gi18n.h>
+ #include "logger.h"
+ #include "calltab.h"
+ #include "callmanager-glue.h"
+diff --git a/gnome/src/eel-gconf-extensions.c b/gnome/src/eel-gconf-extensions.c
+index 4631981..c24251a 100644
+--- a/gnome/src/eel-gconf-extensions.c
++++ b/gnome/src/eel-gconf-extensions.c
+@@ -22,8 +22,9 @@
+ Authors: Ramiro Estrugo <ramiro@eazel.com>
+ */
+
+-#include <stdlib.h>
+ #include "config.h"
++#include <glib/gi18n.h>
++#include <stdlib.h>
+ #include "eel-gconf-extensions.h"
+
+ #include <gconf/gconf-client.h>
+diff --git a/gnome/src/main.c b/gnome/src/main.c
+index 7af5078..8a08c4e 100644
+--- a/gnome/src/main.c
++++ b/gnome/src/main.c
+@@ -36,6 +36,7 @@
+ #include "mainwindow.h"
+ #include "statusicon.h"
+ #include "eel-gconf-extensions.h"
++#include <glib/gi18n.h>
+ #include <gtk/gtk.h>
+ #include <stdlib.h>
+
+diff --git a/gnome/src/mainwindow.c b/gnome/src/mainwindow.c
+index 3b14c6a..e41def4 100644
+--- a/gnome/src/mainwindow.c
++++ b/gnome/src/mainwindow.c
+@@ -50,6 +50,7 @@
+
+ #include "eel-gconf-extensions.h"
+
++#include <glib/gi18n.h>
+ #include <sys/stat.h>
+ #include <gtk/gtk.h>
+
+diff --git a/gnome/src/sflnotify.c b/gnome/src/sflnotify.c
+index 8dd5ed0..44eee7e 100644
+--- a/gnome/src/sflnotify.c
++++ b/gnome/src/sflnotify.c
+@@ -29,6 +29,8 @@
+ */
+
+ #include "config.h"
++#include <glib.h>
++#include <glib/gi18n.h>
+ #include "eel-gconf-extensions.h"
+ #include "sflnotify.h"
+ #include "logger.h"
+diff --git a/gnome/src/sliders.c b/gnome/src/sliders.c
+index 4a2fdd8..ab3e40f 100644
+--- a/gnome/src/sliders.c
++++ b/gnome/src/sliders.c
+@@ -28,6 +28,7 @@
+ * as that of the covered work.
+ */
+
++#include <glib/gi18n.h>
+ #include "sliders.h"
+ #include "dbus/dbus.h"
+ #include "actions.h"
+diff --git a/gnome/src/statusicon.c b/gnome/src/statusicon.c
+index 2fe79ee..b94864c 100644
+--- a/gnome/src/statusicon.c
++++ b/gnome/src/statusicon.c
+@@ -29,6 +29,7 @@
+ * as that of the covered work.
+ */
+
++#include <glib/gi18n.h>
+ #include <gtk/gtk.h>
+ #include "actions.h"
+ #include "mainwindow.h"
+diff --git a/gnome/src/uimanager.c b/gnome/src/uimanager.c
+index 2953156..0ddac4b 100644
+--- a/gnome/src/uimanager.c
++++ b/gnome/src/uimanager.c
+@@ -34,9 +34,10 @@
+ #include "dbus/dbus.h"
+ #include "mainwindow.h"
+ #include "assistant.h"
++#include <glib.h>
++#include <glib/gi18n.h>
+ #include <gtk/gtk.h>
+ #include <string.h>
+-#include <glib.h>
+
+ #include "uimanager.h"
+ #include "statusicon.h"
+--
+1.7.8.6
+
diff --git a/net-voip/sflphone/files/sflphone-1.0.1-pjsip-1.14.patch b/net-voip/sflphone/files/sflphone-1.0.1-pjsip-1.14.patch
new file mode 100644
index 000000000000..aa16bcab29fe
--- /dev/null
+++ b/net-voip/sflphone/files/sflphone-1.0.1-pjsip-1.14.patch
@@ -0,0 +1,110 @@
+From 0d66570e26c6bd728d00d251e592a4154c0c9d1c Mon Sep 17 00:00:00 2001
+From: Alexandre Savard <alexandre.savard@savoirfairelinux.com>
+Date: Mon, 30 Jul 2012 12:12:45 -0400
+Subject: [PATCH] #13961: Fix cipher handling to be compatible with pjsip
+ 1.14.2
+
+[Alexandre Rostovtsev <tetromino@gentoo.org>: backport to 1.0.1]
+---
+ daemon/src/sip/sipaccount.cpp | 24 ++++++++++++++++++++----
+ daemon/src/sip/sipaccount.h | 7 +++++++
+ 2 files changed, 27 insertions(+), 4 deletions(-)
+
+diff --git a/daemon/src/sip/sipaccount.cpp b/daemon/src/sip/sipaccount.cpp
+index fdd4634..44d169f 100644
+--- a/daemon/src/sip/sipaccount.cpp
++++ b/daemon/src/sip/sipaccount.cpp
+@@ -55,6 +55,7 @@ SIPAccount::SIPAccount(const std::string& accountID)
+ , transportType_(PJSIP_TRANSPORT_UNSPECIFIED)
+ , cred_(NULL)
+ , tlsSetting_()
++ , ciphers(100)
+ , stunServerName_()
+ , stunPort_(0)
+ , dtmfType_(OVERRTP)
+@@ -145,7 +146,7 @@ void SIPAccount::serialize(Conf::YamlEmitter *emitter)
+ Conf::ScalarNode tlsport(portstr.str());
+ Conf::ScalarNode certificate(tlsCertificateFile_);
+ Conf::ScalarNode calist(tlsCaListFile_);
+- Conf::ScalarNode ciphers(tlsCiphers_);
++ Conf::ScalarNode ciphersNode(tlsCiphers_);
+ Conf::ScalarNode tlsenabled(tlsEnable_);
+ Conf::ScalarNode tlsmethod(tlsMethod_);
+ Conf::ScalarNode timeout(tlsNegotiationTimeoutSec_);
+@@ -207,7 +208,7 @@ void SIPAccount::serialize(Conf::YamlEmitter *emitter)
+ tlsmap.setKeyValue(tlsPortKey, &tlsport);
+ tlsmap.setKeyValue(certificateKey, &certificate);
+ tlsmap.setKeyValue(calistKey, &calist);
+- tlsmap.setKeyValue(ciphersKey, &ciphers);
++ tlsmap.setKeyValue(ciphersKey, &ciphersNode);
+ tlsmap.setKeyValue(tlsEnableKey, &tlsenabled);
+ tlsmap.setKeyValue(methodKey, &tlsmethod);
+ tlsmap.setKeyValue(timeoutKey, &timeout);
+@@ -586,6 +587,18 @@ pjsip_ssl_method SIPAccount::sslMethodStringToPjEnum(const std::string& method)
+
+ void SIPAccount::initTlsConfiguration()
+ {
++ pj_status_t status;
++ unsigned cipherNum;
++
++ // Determine the cipher list supported on this machine
++ cipherNum = PJ_ARRAY_SIZE(ciphers);
++ status = pj_ssl_cipher_get_availables(&ciphers.front(), &cipherNum);
++ if (status != PJ_SUCCESS) {
++ ERROR("Could not determine cipher list on this system");
++ }
++
++ ciphers.resize(cipherNum);
++
+ // TLS listener is unique and should be only modified through IP2IP_PROFILE
+ tlsListenerPort_ = tlsPort_;
+
+@@ -596,8 +609,8 @@ void SIPAccount::initTlsConfiguration()
+ pj_cstr(&tlsSetting_.privkey_file, tlsPrivateKeyFile_.c_str());
+ pj_cstr(&tlsSetting_.password, tlsPassword_.c_str());
+ tlsSetting_.method = sslMethodStringToPjEnum(tlsMethod_);
+- pj_cstr(&tlsSetting_.ciphers, tlsCiphers_.c_str());
+- pj_cstr(&tlsSetting_.server_name, tlsServerName_.c_str());
++ tlsSetting_.ciphers_num = ciphers.size();
++ tlsSetting_.ciphers = &ciphers.front();
+
+ tlsSetting_.verify_server = tlsVerifyServer_ ? PJ_TRUE: PJ_FALSE;
+ tlsSetting_.verify_client = tlsVerifyClient_ ? PJ_TRUE: PJ_FALSE;
+@@ -605,6 +618,9 @@ void SIPAccount::initTlsConfiguration()
+
+ tlsSetting_.timeout.sec = atol(tlsNegotiationTimeoutSec_.c_str());
+ tlsSetting_.timeout.msec = atol(tlsNegotiationTimeoutMsec_.c_str());
++
++ tlsSetting_.qos_type = PJ_QOS_TYPE_BEST_EFFORT;
++ tlsSetting_.qos_ignore_error = PJ_TRUE;
+ }
+
+ void SIPAccount::initStunConfiguration()
+diff --git a/daemon/src/sip/sipaccount.h b/daemon/src/sip/sipaccount.h
+index 076fe60..7c2af13 100644
+--- a/daemon/src/sip/sipaccount.h
++++ b/daemon/src/sip/sipaccount.h
+@@ -43,6 +43,8 @@
+ #include "pjsip-ua/sip_regc.h"
+ #include "noncopyable.h"
+
++typedef std::vector<pj_ssl_cipher> CipherArray;
++
+ namespace Conf {
+ class YamlEmitter;
+ class MappingNode;
+@@ -478,6 +480,11 @@ class SIPAccount : public Account {
+ // a sip transport.
+ pjsip_tls_setting tlsSetting_;
+
++ /**
++ * Allocate a static array to be used by pjsip to store the supported ciphers on this system.
++ */
++ CipherArray ciphers;
++
+ // The STUN server name, if applicable for internal use only
+ pj_str_t stunServerName_;
+
+--
+1.7.8.6
+
diff --git a/net-voip/sflphone/sflphone-1.0.1-r1.ebuild b/net-voip/sflphone/sflphone-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..571a94911c00
--- /dev/null
+++ b/net-voip/sflphone/sflphone-1.0.1-r1.ebuild
@@ -0,0 +1,157 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-voip/sflphone/sflphone-1.0.1-r1.ebuild,v 1.1 2012/08/11 22:31:59 tetromino Exp $
+
+EAPI="3"
+
+inherit autotools eutils gnome2
+
+DESCRIPTION="SFLphone is a robust standards-compliant enterprise softphone, for desktop and embedded systems."
+HOMEPAGE="http://www.sflphone.org/"
+SRC_URI="http://www.elvanor.net/files/gentoo/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug doxygen gnome gsm networkmanager speex static-libs"
+
+# USE="-iax" does not work. Upstream problem.
+
+CDEPEND="dev-cpp/commoncpp2
+ dev-libs/dbus-c++
+ dev-libs/expat
+ dev-libs/openssl
+ dev-libs/libpcre
+ dev-libs/libyaml
+ media-libs/alsa-lib
+ media-libs/celt
+ media-libs/libsamplerate
+ media-sound/pulseaudio
+ net-libs/ccrtp
+ net-libs/iax
+ net-libs/libzrtpcpp
+ >=net-libs/pjsip-1.8.10
+ sys-apps/dbus
+ gsm? ( media-sound/gsm )
+ speex? ( media-libs/speex )
+ networkmanager? ( net-misc/networkmanager )
+ gnome? ( dev-libs/atk
+ dev-libs/check
+ dev-libs/log4c
+ gnome-base/libgnomeui
+ gnome-base/orbit:2
+ gnome-extra/evolution-data-server
+ media-libs/fontconfig
+ media-libs/freetype
+ media-libs/libart_lgpl
+ net-libs/libsoup:2.4
+ net-libs/webkit-gtk:3
+ x11-libs/cairo
+ x11-libs/libICE
+ x11-libs/libnotify
+ x11-libs/libSM )"
+
+DEPEND="${CDEPEND}
+ >=dev-util/astyle-1.24
+ doxygen? ( app-doc/doxygen )
+ gnome? ( app-text/gnome-doc-utils )"
+
+RDEPEND="${CDEPEND}"
+
+src_prepare() {
+ # Compilation with glib-2.32, bug #427544
+ epatch "${FILESDIR}/${P}-glib-2.32-headers-"{1,2,3}.patch
+ # Compilation with pjsip-1.14
+ epatch "${FILESDIR}/${P}-pjsip-1.14.patch"
+
+ if ! use gnome; then
+ ewarn
+ ewarn "No clients selected. Use USE=gnome to get the gnome client."
+ ewarn "See"
+ ewarn "https://projects.savoirfairelinux.com/repositories/browse/sflphone/tools/pysflphone"
+ ewarn "for a python command line client."
+ ewarn
+ fi
+
+ sed -i -e 's/unpad=paren/unpad-paren/' astylerc || die "sed failed."
+ cd daemon
+ #remove "target" from lib-names, remove dep to shipped pjsip
+ sed -i -e 's/-$(target)//' \
+ -e '/^\t\t\t-L/ d' \
+ -e 's!-I$(src)/libs/pjproject!-I/usr/include!' \
+ globals.mak || die "sed failed."
+ #respect CXXFLAGS
+ sed -i -e 's/CXXFLAGS="-g/CXXFLAGS="-g $CXXFLAGS /' \
+ configure.ac || die "sed failed."
+ rm -r libs/pjproject
+ eautoreconf
+
+ #TODO: remove shipped utilspp (from curlpp), use system one, see #55185
+
+ if use gnome; then
+ cd ../gnome
+ #fix as-needed
+ sed -i -e "s/X11_LIBS)/X11_LIBS) -lebook-1.2/" src/Makefile.am || die "sed failed."
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ cd daemon
+ # $(use_with iax iax2) won't work (compilation failure)
+ econf --disable-dependency-tracking $(use_with debug) \
+ $(use_with gsm) $(use_with networkmanager) $(use_with speex) $(use_enable static-libs static) $(use_enable doxygen)
+
+ if use gnome; then
+ cd ../gnome
+ econf $(use_enable static-libs static)
+ fi
+}
+
+src_compile() {
+ cd daemon
+ emake || die "emake failed."
+
+ if use gnome; then
+ cd ../gnome
+ emake || die "emake failed."
+ fi
+}
+
+src_install() {
+ cd daemon
+ emake -j1 DESTDIR="${D}" install || die "emake install failed"
+ dodoc test/sflphonedrc-sample
+
+ if use gnome; then
+ cd ../gnome
+ gnome2_src_install
+ fi
+}
+
+pkg_postinst() {
+ elog
+ elog "You need to restart dbus, if you want to access"
+ elog "sflphoned through dbus."
+ elog
+ elog
+ elog "If you use the command line client"
+ elog "(https://projects.savoirfairelinux.com/repositories/browse/sflphone/tools/pysflphone)"
+ elog "extract /usr/share/doc/${PF}/${PN}drc-sample to"
+ elog "~/.config/${PN}/${PN}drc for example config."
+ elog
+ elog
+ elog "For calls out of your browser have a look in sflphone-callto"
+ elog "and sflphone-handler. You should consider to install"
+ elog "the \"Telify\" Firefox addon. See"
+ elog "https://projects.savoirfairelinux.com/repositories/browse/sflphone/tools"
+ elog
+ if use gnome; then
+ gnome2_pkg_postinst
+ elog
+ elog "sflphone-client-gnome: To manage your contacts you need"
+ elog "mail-client/evolution or access to an evolution-data-server"
+ elog "connected backend."
+ elog
+ fi
+}