Merge pull request #9462 from ts468/upstream.linphone

linphone: update linphone with dependencies
This commit is contained in:
ts468 2015-08-26 22:33:56 +02:00
commit b1db014f40
9 changed files with 90 additions and 45 deletions

View File

@ -1,14 +1,15 @@
{ stdenv, fetchurl, intltool, pkgconfig, readline, openldap, cyrus_sasl, libupnp
, zlib, libxml2, gtk2, libnotify, speex, ffmpeg, libX11, polarssl, libsoup, udev
, ortp, mediastreamer, sqlite, belle-sip, libosip, libexosip
, mediastreamer-openh264, makeWrapper
}:
stdenv.mkDerivation rec {
name = "linphone-3.8.1";
name = "linphone-3.8.5";
src = fetchurl {
url = "mirror://savannah/linphone/3.8.x/sources/${name}.tar.gz";
sha256 = "19xwar8z5hyp1bap1s437ipv90gspmjwcq5zznds55d7r6gbqicd";
sha256 = "10brlbwkk61nhd5v2sim1vfv11xm138l1cqqh3imhs2sigmzzlax";
};
buildInputs = [
@ -16,7 +17,7 @@ stdenv.mkDerivation rec {
polarssl libsoup udev ortp mediastreamer sqlite belle-sip libosip libexosip
];
nativeBuildInputs = [ intltool pkgconfig ];
nativeBuildInputs = [ intltool pkgconfig makeWrapper ];
configureFlags = [
"--enable-ldap"
@ -27,6 +28,12 @@ stdenv.mkDerivation rec {
"--enable-external-mediastreamer"
];
postInstall = ''
for i in $(cd $out/bin && ls); do
wrapProgram $out/bin/$i --set MEDIASTREAMER_PLUGINS_DIR ${mediastreamer-openh264}/lib/mediastreamer/plugins
done
'';
meta = with stdenv.lib; {
homepage = http://www.linphone.org/;
description = "Open Source video SIP softphone";

View File

@ -1,35 +0,0 @@
diff --git a/gtk/main.c b/gtk/main.c
index 7079bc8..f076127 100644
--- a/gtk/main.c
+++ b/gtk/main.c
@@ -1643,7 +1643,7 @@ int main(int argc, char *argv[]){
GdkPixbuf *pbuf;
const char *app_name="Linphone";
- g_thread_init(NULL);
+ g_type_init();
gdk_threads_init();
progpath = strdup(argv[0]);
diff --git a/gtk/setupwizard.c b/gtk/setupwizard.c
index 1c54fca..45c9091 100644
--- a/gtk/setupwizard.c
+++ b/gtk/setupwizard.c
@@ -270,7 +270,7 @@ static void account_username_changed(GtkEntry *entry, GtkWidget *w) {
linphone_account_creator_set_username(creator, gtk_entry_get_text(username));
if (g_regex_match_simple("^[a-zA-Z]+[a-zA-Z0-9.\\-_]{3,}$", gtk_entry_get_text(username), 0, 0)) {
- g_thread_create(check_username_availability, (void*)w, FALSE, NULL);
+ g_thread_new (NULL, check_username_availability, (void*)w);
}
else {
if (gtk_entry_get_text_length(username) < LOGIN_MIN_SIZE) {
@@ -534,7 +534,7 @@ GtkWidget * linphone_gtk_create_assistant(void){
ok = create_pixbuf(linphone_gtk_get_ui_config("ok","ok.png"));
notok = create_pixbuf(linphone_gtk_get_ui_config("notok","notok.png"));
- g_thread_init (NULL);
+ g_type_init ();
gdk_threads_init ();
GtkWidget *p1=create_intro();

View File

@ -9,11 +9,11 @@ let
};
in
stdenv.mkDerivation rec {
name = "belle-sip-1.4.0";
name = "belle-sip-1.4.1";
src = fetchurl {
url = "mirror://savannah/linphone/belle-sip/${name}.tar.gz";
sha256 = "1lwxfvwvclbh0bfwf69jrknqzqh1igzm293wwwbmq4kn8c5fiypz";
sha256 = "0q1d3fqsrxi3kxcjcibr376js25h6in8c1hm7c53wz252jx6f42b";
};
nativeBuildInputs = [ jre ];

View File

@ -4,18 +4,19 @@
}:
stdenv.mkDerivation rec {
name = "mediastreamer-2.11.1";
name = "mediastreamer-2.11.2";
src = fetchurl {
url = "mirror://savannah/linphone/mediastreamer/${name}.tar.gz";
sha256 = "0gfv4k2rsyvyq838xjgsrxmmn0fkw40apqs8vakzjwzsz2c9z8pd";
sha256 = "1g6gawrlz1lixzs1kzckm3rxc401ww8pi00x7r5kb84bdijb02cc";
};
patches = [ ./plugins_dir.patch ];
postPatch = ''
sed -i "s/\(SRTP_LIBS=\"\$SRTP_LIBS -lsrtp\"\)/SRTP_LIBS=\"$(pkg-config --libs-only-l libsrtp)\"/g" configure
'';
# TODO: make it load plugins from *_PLUGIN_PATH
nativeBuildInputs = [ pkgconfig intltool ];
propagatedBuildInputs = [
@ -28,6 +29,8 @@ stdenv.mkDerivation rec {
configureFlags = [
"--enable-external-ortp"
"--with-srtp=${srtp}"
"--enable-xv"
"--enable-glx"
];
meta = with stdenv.lib; {

View File

@ -0,0 +1,20 @@
{ stdenv, fetchurl, autoreconfHook, pkgconfig, mediastreamer, openh264 }:
stdenv.mkDerivation rec {
name = "mediastreamer-openh264-${version}";
version = "1.0.0";
src = fetchurl {
url = "http://download-mirror.savannah.gnu.org/releases/linphone/plugins/sources/msopenh264-${version}.tar.gz";
sha256 = "1622ma8g4yqvxa8pqwddsmhlpwak31i8zfl88f60k71k4dplw845";
};
buildInputs = [ autoreconfHook pkgconfig mediastreamer openh264 ];
meta = with stdenv.lib; {
description = "H.264 encoder/decoder plugin for mediastreamer2";
homepage = http://www.linphone.org/technical-corner/mediastreamer2/overview;
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,24 @@
diff -uNr mediastreamer2/src/base/msfactory.c mediastreamer2-new/src/base/msfactory.c
--- a/src/base/msfactory.c 2015-05-13 16:53:49.801113249 +0200
+++ b/src/base/msfactory.c 2015-08-26 21:35:44.994724647 +0200
@@ -630,12 +630,18 @@
}
void ms_factory_init_plugins(MSFactory *obj) {
+ char *package_plugins_dir;
if (obj->plugins_dir == NULL) {
+ package_plugins_dir=getenv("MEDIASTREAMER_PLUGINS_DIR");
+ if (package_plugins_dir!=NULL){
+ obj->plugins_dir = ms_strdup(package_plugins_dir);
+ } else {
#ifdef PACKAGE_PLUGINS_DIR
- obj->plugins_dir = ms_strdup(PACKAGE_PLUGINS_DIR);
+ obj->plugins_dir = ms_strdup(PACKAGE_PLUGINS_DIR);
#else
- obj->plugins_dir = ms_strdup("");
+ obj->plugins_dir = ms_strdup("");
#endif
+ }
}
if (strlen(obj->plugins_dir) > 0) {
ms_message("Loading ms plugins from [%s]",obj->plugins_dir);

View File

@ -0,0 +1,22 @@
{ stdenv, fetchurl, nasm }:
stdenv.mkDerivation rec {
name = "openh264-1.4.0";
src = fetchurl {
url = "https://github.com/cisco/openh264/archive/v1.4.0.tar.gz";
sha256 = "08haj0xkyjlwbpqdinxk0cmvqw89bx89ly0kqs9lf87fy6ksgfd1";
};
buildInputs = [ nasm ];
installPhase = ''
make PREFIX=$out install
'';
meta = with stdenv.lib; {
description = "A codec library which supports H.264 encoding and decoding";
homepage = http://www.openh264.org;
license = stdenv.lib.licenses.bsd2;
};
}

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "ortp-0.24.1";
name = "ortp-0.24.2";
src = fetchurl {
url = "mirror://savannah/linphone/ortp/sources/${name}.tar.gz";
sha256 = "1mach7cdq4kydqkll8ra1kir818da07z253rf9pihifipqhcxv6i";
sha256 = "05k6ianphr533qnjwxsv7jnh7fb2sq0dj1pdy1bk2w5khmlwfdyb";
};
meta = with stdenv.lib; {

View File

@ -7575,6 +7575,8 @@ let
# failed to build
mediastreamer = callPackage ../development/libraries/mediastreamer { };
mediastreamer-openh264 = callPackage ../development/libraries/mediastreamer/msopenh264.nix { };
menu-cache = callPackage ../development/libraries/menu-cache { };
mesaSupported = lib.elem system lib.platforms.mesaPlatforms;
@ -7787,6 +7789,8 @@ let
opal = callPackage ../development/libraries/opal {};
openh264 = callPackage ../development/libraries/openh264 { };
openjpeg_1 = callPackage ../development/libraries/openjpeg/1.x.nix { };
openjpeg_2_0 = callPackage ../development/libraries/openjpeg/2.0.nix { };
openjpeg_2_1 = callPackage ../development/libraries/openjpeg/2.1.nix { };