summary refs log tree commit diff
path: root/pkgs/development/libraries/gstreamer
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/gstreamer')
-rw-r--r--pkgs/development/libraries/gstreamer/bad/default.nix19
-rw-r--r--pkgs/development/libraries/gstreamer/base/default.nix21
-rw-r--r--pkgs/development/libraries/gstreamer/core/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/ges/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/gnonlin/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/good/default.nix18
-rw-r--r--pkgs/development/libraries/gstreamer/legacy/gst-plugins-good/default.nix10
-rw-r--r--pkgs/development/libraries/gstreamer/legacy/gst-plugins-ugly/default.nix8
-rw-r--r--pkgs/development/libraries/gstreamer/legacy/gstreamer/darwin.patch14
-rw-r--r--pkgs/development/libraries/gstreamer/legacy/gstreamer/default.nix5
-rw-r--r--pkgs/development/libraries/gstreamer/legacy/gstreamermm/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/ugly/default.nix8
12 files changed, 83 insertions, 28 deletions
diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix
index 96a094ca9ccf..b4c962d9e54e 100644
--- a/pkgs/development/libraries/gstreamer/bad/default.nix
+++ b/pkgs/development/libraries/gstreamer/bad/default.nix
@@ -5,11 +5,14 @@
 , openjpeg, libopus, librsvg
 , wildmidi, fluidsynth, libvdpau, wayland
 , libwebp, xvidcore, gnutls
-, mesa
+, mesa, libintlOrEmpty
 }:
 
 assert faacSupport -> faac != null;
 
+let
+  inherit (stdenv.lib) optional optionalString;
+in
 stdenv.mkDerivation rec {
   name = "gst-plugins-bad-1.4.5";
 
@@ -23,7 +26,7 @@ stdenv.mkDerivation rec {
       a real live maintainer, or some actual wide use.
     '';
     license     = licenses.lgpl2Plus;
-    platforms   = platforms.linux;
+    platforms   = platforms.unix;
     maintainers = with maintainers; [ iyzsong ];
   };
 
@@ -39,7 +42,15 @@ stdenv.mkDerivation rec {
     faad2 libass libkate libmms
     libmodplug mpeg2dec mpg123
     openjpeg libopus librsvg
-    wildmidi fluidsynth libvdpau wayland
+    fluidsynth libvdpau
     libwebp xvidcore gnutls mesa
-  ] ++ stdenv.lib.optional faacSupport faac;
+  ]
+    ++ libintlOrEmpty
+    ++ optional faacSupport faac
+    ++ optional stdenv.isLinux wayland
+    # wildmidi requires apple's OpenAL
+    # TODO: package apple's OpenAL, fix wildmidi, include on Darwin
+    ++ optional (!stdenv.isDarwin) wildmidi;
+
+  LDFLAGS = optionalString stdenv.isDarwin "-lintl";
 }
diff --git a/pkgs/development/libraries/gstreamer/base/default.nix b/pkgs/development/libraries/gstreamer/base/default.nix
index 61e0762826a3..f959da4045e7 100644
--- a/pkgs/development/libraries/gstreamer/base/default.nix
+++ b/pkgs/development/libraries/gstreamer/base/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, python, gstreamer, gobjectIntrospection
 , orc, alsaLib, libXv, pango, libtheora
-, cdparanoia, libvisual
+, cdparanoia, libvisual, libintlOrEmpty
 }:
 
 stdenv.mkDerivation rec {
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     description = "Base plugins and helper libraries";
     homepage = "http://gstreamer.freedesktop.org";
     license = stdenv.lib.licenses.lgpl2Plus;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ iyzsong ];
   };
 
@@ -24,12 +24,23 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    orc alsaLib libXv pango libtheora
-    cdparanoia libvisual
-  ];
+    orc libXv pango libtheora cdparanoia
+  ]
+  ++ libintlOrEmpty
+  ++ stdenv.lib.optional stdenv.isLinux alsaLib
+  ++ stdenv.lib.optional (!stdenv.isDarwin) libvisual;
 
   propagatedBuildInputs = [ gstreamer ];
 
+  configureFlags = if stdenv.isDarwin then [ 
+    # Does not currently build on Darwin
+    "--disable-libvisual"
+    # Undefined symbols _cdda_identify and _cdda_identify_scsi in cdparanoia
+    "--disable-cdparanoia"
+  ] else null;
+
+  NIX_LDFLAGS = if stdenv.isDarwin then "-lintl" else null;
+
   enableParallelBuilding = true;
 }
 
diff --git a/pkgs/development/libraries/gstreamer/core/default.nix b/pkgs/development/libraries/gstreamer/core/default.nix
index 5e306f5500fc..5dbcb1cee4b6 100644
--- a/pkgs/development/libraries/gstreamer/core/default.nix
+++ b/pkgs/development/libraries/gstreamer/core/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     description = "Open source multimedia framework";
     homepage = "http://gstreamer.freedesktop.org";
     license = stdenv.lib.licenses.lgpl2Plus;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ iyzsong ];
   };
 
diff --git a/pkgs/development/libraries/gstreamer/ges/default.nix b/pkgs/development/libraries/gstreamer/ges/default.nix
index df7078a1365a..47b09e95e6ea 100644
--- a/pkgs/development/libraries/gstreamer/ges/default.nix
+++ b/pkgs/development/libraries/gstreamer/ges/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     description = "Library for creation of audio/video non-linear editors";
     homepage    = "http://gstreamer.freedesktop.org";
     license     = licenses.lgpl2Plus;
-    platforms   = platforms.linux;
+    platforms   = platforms.unix;
     maintainers = with maintainers; [ iyzsong ];
   };
 
diff --git a/pkgs/development/libraries/gstreamer/gnonlin/default.nix b/pkgs/development/libraries/gstreamer/gnonlin/default.nix
index 05113973a9d1..4b6e7957f5cd 100644
--- a/pkgs/development/libraries/gstreamer/gnonlin/default.nix
+++ b/pkgs/development/libraries/gstreamer/gnonlin/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
       applications. It introduces the concept of a timeline.
     '';
     license     = licenses.lgpl2Plus;
-    platforms   = platforms.linux;
+    platforms   = platforms.unix;
     maintainers = with maintainers; [ iyzsong ];
   };
 
diff --git a/pkgs/development/libraries/gstreamer/good/default.nix b/pkgs/development/libraries/gstreamer/good/default.nix
index a06747ddc90c..51ad836b6449 100644
--- a/pkgs/development/libraries/gstreamer/good/default.nix
+++ b/pkgs/development/libraries/gstreamer/good/default.nix
@@ -3,9 +3,12 @@
 , libv4l, libdv, libavc1394, libiec61883
 , libvpx, speex, flac, taglib
 , cairo, gdk_pixbuf, aalib, libcaca
-, libsoup, pulseaudio
+, libsoup, pulseaudio, libintlOrEmpty
 }:
 
+let
+  inherit (stdenv.lib) optionals optionalString;
+in
 stdenv.mkDerivation rec {
   name = "gst-plugins-good-1.4.5";
 
@@ -18,7 +21,7 @@ stdenv.mkDerivation rec {
       code, LGPL or LGPL-compatible for the supporting library).
     '';
     license     = licenses.lgpl2Plus;
-    platforms   = platforms.linux;
+    platforms   = platforms.unix;
     maintainers = with maintainers; [ iyzsong ];
   };
 
@@ -31,9 +34,12 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     gst-plugins-base orc bzip2
-    libv4l libdv libavc1394 libiec61883
-    libvpx speex flac taglib
+    libdv libvpx speex flac taglib
     cairo gdk_pixbuf aalib libcaca
-    libsoup pulseaudio
-  ];
+    libsoup
+  ]
+  ++ libintlOrEmpty
+  ++ optionals stdenv.isLinux [ libv4l pulseaudio libavc1394 libiec61883 ];
+
+  LDFLAGS = optionalString stdenv.isDarwin "-lintl";
 }
diff --git a/pkgs/development/libraries/gstreamer/legacy/gst-plugins-good/default.nix b/pkgs/development/libraries/gstreamer/legacy/gst-plugins-good/default.nix
index d4db4fa8de5c..1db7e4dbd550 100644
--- a/pkgs/development/libraries/gstreamer/legacy/gst-plugins-good/default.nix
+++ b/pkgs/development/libraries/gstreamer/legacy/gst-plugins-good/default.nix
@@ -1,7 +1,7 @@
 { fetchurl, stdenv, pkgconfig, gst_plugins_base, aalib, cairo
 , flac, libjpeg, zlib, speex, libpng, libdv, libcaca, libvpx
 , libiec61883, libavc1394, taglib, pulseaudio, gdk_pixbuf, orc
-, glib, gstreamer, bzip2, libsoup
+, glib, gstreamer, bzip2, libsoup, libintlOrEmpty
 , # Whether to build no plugins that have external dependencies
   # (except the PulseAudio plugin).
   minimalDeps ? false
@@ -23,11 +23,15 @@ stdenv.mkDerivation rec {
   configureFlags = "--enable-experimental --disable-oss";
 
   buildInputs =
-    [ pkgconfig glib gstreamer gst_plugins_base pulseaudio ]
+    [ pkgconfig glib gstreamer gst_plugins_base ]
+    ++ stdenv.lib.optional stdenv.isLinux [ pulseaudio ]
+    ++ libintlOrEmpty
     ++ stdenv.lib.optionals (!minimalDeps)
       [ aalib libcaca cairo libdv flac libjpeg libpng speex
         taglib bzip2 libvpx gdk_pixbuf orc libsoup ];
 
+  NIX_LDFLAGS = if stdenv.isDarwin then "-lintl" else null;
+
   enableParallelBuilding = true;
 
   meta = {
@@ -36,7 +40,7 @@ stdenv.mkDerivation rec {
     description = "`Good' plug-ins for GStreamer";
 
     maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
+    platforms = stdenv.lib.platforms.unix;
 
     license = stdenv.lib.licenses.lgpl2Plus;
   };
diff --git a/pkgs/development/libraries/gstreamer/legacy/gst-plugins-ugly/default.nix b/pkgs/development/libraries/gstreamer/legacy/gst-plugins-ugly/default.nix
index e4411fcefbbd..99ac5a5ec541 100644
--- a/pkgs/development/libraries/gstreamer/legacy/gst-plugins-ugly/default.nix
+++ b/pkgs/development/libraries/gstreamer/legacy/gst-plugins-ugly/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, stdenv, pkgconfig, glib, gstreamer, gst_plugins_base
-, libmad, libdvdread, libmpeg2, libcdio, a52dec, x264, orc }:
+, libmad, libdvdread, libmpeg2, libcdio, a52dec, x264, orc, libintlOrEmpty }:
 
 stdenv.mkDerivation rec {
   name = "gst-plugins-ugly-0.10.19";
@@ -13,7 +13,9 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ pkgconfig glib gstreamer gst_plugins_base libmad libdvdread a52dec x264 orc ];
+    [ pkgconfig glib gstreamer gst_plugins_base libmad libdvdread a52dec x264 orc ] ++ libintlOrEmpty;
+
+  NIX_LDFLAGS = if stdenv.isDarwin then "-lintl" else null;
 
   enableParallelBuilding = true;
 
@@ -23,7 +25,7 @@ stdenv.mkDerivation rec {
     description = "‘Ugly’ (potentially patent-encumbered) plug-ins for GStreamer";
 
     maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
+    platforms = stdenv.lib.platforms.unix;
 
     license = stdenv.lib.licenses.lgpl2Plus;
   };
diff --git a/pkgs/development/libraries/gstreamer/legacy/gstreamer/darwin.patch b/pkgs/development/libraries/gstreamer/legacy/gstreamer/darwin.patch
new file mode 100644
index 000000000000..67dfc34434db
--- /dev/null
+++ b/pkgs/development/libraries/gstreamer/legacy/gstreamer/darwin.patch
@@ -0,0 +1,14 @@
+diff --git a/gst/gstdatetime.c b/gst/gstdatetime.c
+index 60f709f..cdc7e75 100644
+--- a/gst/gstdatetime.c
++++ b/gst/gstdatetime.c
+@@ -21,8 +21,8 @@
+ #include "config.h"
+ #endif
+ 
+-#include "glib-compat-private.h"
+ #include "gst_private.h"
++#include "glib-compat-private.h"
+ #include "gstdatetime.h"
+ #include <glib.h>
+ #include <math.h>
diff --git a/pkgs/development/libraries/gstreamer/legacy/gstreamer/default.nix b/pkgs/development/libraries/gstreamer/legacy/gstreamer/default.nix
index b608f891533b..07b846f35b42 100644
--- a/pkgs/development/libraries/gstreamer/legacy/gstreamer/default.nix
+++ b/pkgs/development/libraries/gstreamer/legacy/gstreamer/default.nix
@@ -16,6 +16,11 @@ stdenv.mkDerivation rec {
 
   patchPhase = ''
     sed -i -e 's/^   /\t/' docs/gst/Makefile.in docs/libs/Makefile.in docs/plugins/Makefile.in
+  ''
+  + stdenv.lib.optionalString stdenv.isDarwin ''
+    # Applying this patch manually to avoid a rebuild on Linux. Feel free to refactor later
+    # See https://trac.macports.org/ticket/40783 for explanation of patch
+    patch -p1 < ${./darwin.patch}
   '';
 
   configureFlags = ''
diff --git a/pkgs/development/libraries/gstreamer/legacy/gstreamermm/default.nix b/pkgs/development/libraries/gstreamer/legacy/gstreamermm/default.nix
index 97a4638170f9..ea1c31ccab8e 100644
--- a/pkgs/development/libraries/gstreamer/legacy/gstreamermm/default.nix
+++ b/pkgs/development/libraries/gstreamer/legacy/gstreamermm/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     homepage = http://www.gtkmm.org/;
     license = stdenv.lib.licenses.lgpl2Plus;
     maintainers = "Philip Lykke Carlsen <plcplc@gmail.com>";
-    platforms = stdenv.lib.platforms.linux;
+    platforms = stdenv.lib.platforms.unix;
   };
 
 }
diff --git a/pkgs/development/libraries/gstreamer/ugly/default.nix b/pkgs/development/libraries/gstreamer/ugly/default.nix
index 4e3d7eee78be..c13beb4d5f76 100644
--- a/pkgs/development/libraries/gstreamer/ugly/default.nix
+++ b/pkgs/development/libraries/gstreamer/ugly/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, pkgconfig, python
 , gst-plugins-base, orc
 , a52dec, libcdio, libdvdread
-, lame, libmad, libmpeg2, x264
+, lame, libmad, libmpeg2, x264, libintlOrEmpty
 }:
 
 stdenv.mkDerivation rec {
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
       like. The code might be widely known to present patent problems.
     '';
     license     = licenses.lgpl2Plus;
-    platforms   = platforms.linux;
+    platforms   = platforms.unix;
     maintainers = with maintainers; [ iyzsong ];
   };
 
@@ -32,5 +32,7 @@ stdenv.mkDerivation rec {
     gst-plugins-base orc
     a52dec libcdio libdvdread
     lame libmad libmpeg2 x264
-  ];
+  ] ++ libintlOrEmpty;
+
+  NIX_LDFLAGS = if stdenv.isDarwin then "-lintl" else null;
 }