python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / development / libraries / mediastreamer / default.nix
blobbb5bc566bc1d6473eb5e9dcfdd59ab4a3f4a02a9
1 { bctoolbox
2 , bzrtp
3 , cmake
4 , fetchFromGitLab
5 , ffmpeg
6 , glew
7 , gsm
8 , lib
9 , libX11
10 , libXext
11 , libopus
12 , libpulseaudio
13 , libv4l
14 , libvpx
15 , ortp
16 , python3
17 , qtbase
18 , qtdeclarative
19 , speex
20 , srtp
21 , stdenv
24 stdenv.mkDerivation rec {
25   pname = "mediastreamer2";
26   version = "5.1.20";
28   dontWrapQtApps = true;
30   src = fetchFromGitLab {
31     domain = "gitlab.linphone.org";
32     owner = "public";
33     group = "BC";
34     repo = pname;
35     rev = version;
36     sha256 = "sha256-u8YqF5BzyYIF9+XB90Eu6DlwXuu1FDOJUzxebj0errU=";
37   };
39   patches = [
40     # Plugins directory is normally fixed during compile time. This patch makes
41     # it possible to set the plugins directory run time with an environment
42     # variable MEDIASTREAMER_PLUGINS_DIR. This makes it possible to construct a
43     # plugin directory with desired plugins and wrap executables so that the
44     # environment variable points to that directory.
45     ./plugins_dir.patch
46   ];
48   nativeBuildInputs = [
49     cmake
50     python3
51     qtbase
52     qtdeclarative
53   ];
55   propagatedBuildInputs = [
56     # Made by BC
57     bctoolbox
58     bzrtp
59     ortp
61     ffmpeg
62     glew
63     libX11
64     libXext
65     libpulseaudio
66     libv4l
67     speex
68     srtp
70     # Optional
71     gsm  # GSM audio codec
72     libopus  # Opus audio codec
73     libvpx  # VP8 video codec
74   ];
76   strictDeps = true;
78   cmakeFlags = [
79     "-DENABLE_STATIC=NO" # Do not build static libraries
80     "-DENABLE_QT_GL=ON" # Build necessary MSQOGL plugin for Linphone desktop
81     "-DCMAKE_C_FLAGS=-DGIT_VERSION=\"v${version}\""
82     "-DENABLE_STRICT=NO" # Disable -Werror
83     "-DENABLE_UNIT_TESTS=NO" # Do not build test executables
84   ];
86   NIX_LDFLAGS = "-lXext";
88   meta = with lib; {
89     description = "A powerful and lightweight streaming engine specialized for voice/video telephony applications. Part of the Linphone project";
90     homepage = "http://www.linphone.org/technical-corner/mediastreamer2";
91     license = licenses.gpl3Only;
92     platforms = platforms.linux;
93     maintainers = with maintainers; [ jluttine ];
94   };