summary refs log tree commit diff
path: root/pkgs/development/libraries/liblinphone
diff options
context:
space:
mode:
authorJaakko Luttinen <jaakko.luttinen@iki.fi>2020-03-20 10:32:57 +0200
committerJaakko Luttinen <jaakko.luttinen@iki.fi>2020-03-28 12:49:49 +0200
commit1e51592037600f9fe17ab672345d33cbcb92f85a (patch)
tree0585e888cffe895ea4df288323c169f5e19f8db3 /pkgs/development/libraries/liblinphone
parentd4988c7c31902d21e9346df708a4135dcd93ef97 (diff)
downloadnixpkgs-1e51592037600f9fe17ab672345d33cbcb92f85a.tar
nixpkgs-1e51592037600f9fe17ab672345d33cbcb92f85a.tar.gz
nixpkgs-1e51592037600f9fe17ab672345d33cbcb92f85a.tar.bz2
nixpkgs-1e51592037600f9fe17ab672345d33cbcb92f85a.tar.lz
nixpkgs-1e51592037600f9fe17ab672345d33cbcb92f85a.tar.xz
nixpkgs-1e51592037600f9fe17ab672345d33cbcb92f85a.tar.zst
nixpkgs-1e51592037600f9fe17ab672345d33cbcb92f85a.zip
liblinphone: init at unstable-2020-03-20
Diffstat (limited to 'pkgs/development/libraries/liblinphone')
-rw-r--r--pkgs/development/libraries/liblinphone/default.nix150
1 files changed, 150 insertions, 0 deletions
diff --git a/pkgs/development/libraries/liblinphone/default.nix b/pkgs/development/libraries/liblinphone/default.nix
new file mode 100644
index 00000000000..c6628e9043c
--- /dev/null
+++ b/pkgs/development/libraries/liblinphone/default.nix
@@ -0,0 +1,150 @@
+{ bcg729
+, bctoolbox
+, bcunit
+, belcard
+, belle-sip
+, belr
+, bzrtp
+, cairo
+, cmake
+, cyrus_sasl
+, doxygen
+, fetchFromGitLab
+, fetchurl
+, ffmpeg
+, gdk-pixbuf
+, git
+, glib
+, graphviz
+, gtk2
+, intltool
+, libexosip
+, libmatroska
+, libnotify
+, libosip
+, libsoup
+, libupnp
+, libX11
+, libxml2
+, lime
+, makeWrapper
+, mbedtls
+, mediastreamer
+, mediastreamer-openh264
+, openldap
+, ortp
+, pango
+, pkgconfig
+, python
+, readline
+, soci
+, speex
+, sqlite
+, stdenv
+, udev
+, xercesc
+, xsd
+, zlib
+}:
+let
+  # Got the following error when building:
+  #
+  #   Your version of Doxygen (1.8.17) is known to malfunction with some of our
+  #   macro definitions, which causes errors while wrapprers generation. Please
+  #   install an older version of Doxygen (< 1.8.17) or disable documentation
+  #   and wrapper generation.
+  #
+  # So, let's then use 1.8.16 version of doxygen in this derivation. Hopefully
+  # this workaround can be removed with some newer release of liblinphone.
+  doxygen_1_8_16 = doxygen.overrideAttrs (
+    oldAttrs: rec {
+      name = "doxygen-1.8.16";
+      src = fetchurl {
+        urls = [
+          "mirror://sourceforge/doxygen/${name}.src.tar.gz" # faster, with https, etc.
+          "http://doxygen.nl/files/${name}.src.tar.gz"
+        ];
+        sha256 = "10iwv8bcz5b5cd85gg8pgn0bmyg04n9hs36xn7ggjjnvynv1z67z";
+      };
+      buildInputs = oldAttrs.buildInputs ++ [ git ];
+    }
+  );
+in
+stdenv.mkDerivation rec {
+  pname = "liblinphone";
+  # Using master branch for linphone-desktop caused a chain reaction that many
+  # of its dependencies needed to use master branch too.
+  version = "unstable-2020-03-20";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
+    repo = pname;
+    rev = "1d762a3e0e304aa579798aed4400d2cee2c1ffa0";
+    sha256 = "0ja38payyqbd8z6q5l5w6hi7xarmfj5021gh0qdk0j832br4c6c3";
+  };
+
+  # Do not build static libraries
+  cmakeFlags = [ "-DENABLE_STATIC=NO" ];
+
+  # TODO: Not sure if all these inputs are actually needed. Most of them were
+  # defined when liblinphone and linphone-desktop weren't separated yet, so some
+  # of them might not be needed for liblinphone alone.
+  buildInputs = [
+    (python.withPackages (ps: [ ps.pystache ps.six ]))
+    bcg729
+    bctoolbox
+    belcard
+    belle-sip
+    belr
+    bzrtp
+    cairo
+    cyrus_sasl
+    ffmpeg
+    gdk-pixbuf
+    git
+    glib
+    gtk2
+    libX11
+    libexosip
+    libmatroska
+    libnotify
+    libosip
+    libsoup
+    libupnp
+    libxml2
+    lime
+    mbedtls
+    mediastreamer
+    openldap
+    ortp
+    pango
+    readline
+    soci
+    speex
+    sqlite
+    udev
+    xercesc
+    xsd
+    zlib
+  ];
+
+  nativeBuildInputs = [
+    bcunit
+    cmake
+    doxygen_1_8_16
+    graphviz
+    intltool
+    makeWrapper
+    pkgconfig
+  ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://www.linphone.org/technical-corner/liblinphone";
+    description = "Library for SIP calls and instant messaging";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ jluttine ];
+  };
+}