From 6d2a78fc40513de2a97d20282d3da057eb3bf09c Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Wed, 14 Mar 2012 19:35:26 +0000 Subject: [PATCH] Add qt-gstreamer svn path=/nixpkgs/trunk/; revision=33076 --- .../libraries/gstreamer/default.nix | 2 + .../gstreamer/qt-gstreamer/boost1.48.patch | 49 +++++++++++++++++++ .../gstreamer/qt-gstreamer/default.nix | 17 +++++++ 3 files changed, 68 insertions(+) create mode 100644 pkgs/development/libraries/gstreamer/qt-gstreamer/boost1.48.patch create mode 100644 pkgs/development/libraries/gstreamer/qt-gstreamer/default.nix diff --git a/pkgs/development/libraries/gstreamer/default.nix b/pkgs/development/libraries/gstreamer/default.nix index 0394bb5fadb..60678459b6d 100644 --- a/pkgs/development/libraries/gstreamer/default.nix +++ b/pkgs/development/libraries/gstreamer/default.nix @@ -17,6 +17,8 @@ rec { gst_python = callPackage ./gst-python {}; + qt_gstreamer = callPackage ./qt-gstreamer {}; + # Header files are in include/${prefix}/ prefix = "gstreamer-0.10"; } diff --git a/pkgs/development/libraries/gstreamer/qt-gstreamer/boost1.48.patch b/pkgs/development/libraries/gstreamer/qt-gstreamer/boost1.48.patch new file mode 100644 index 00000000000..c48eec68a64 --- /dev/null +++ b/pkgs/development/libraries/gstreamer/qt-gstreamer/boost1.48.patch @@ -0,0 +1,49 @@ +Description: Work around moc limitations + Some parts of Boost, introduced in Boost 1.48 are not + understood by the limited C++ parser of moc. This + patch defines header guards that prevent the troublesome boost + headers from being processed. +Bug-Debian: #653796 +Author: Tobias Frost +Reviewed-By: Steve Robbins + +--- a/src/QGlib/connect.h ++++ b/src/QGlib/connect.h +@@ -19,6 +19,11 @@ + #ifndef QGLIB_CONNECT_H + #define QGLIB_CONNECT_H + ++#ifdef Q_MOC_RUN ++#define BOOST_TT_HAS_OPERATOR_HPP_INCLUDED ++#endif ++ ++ + #include "global.h" + #include "quark.h" + #include +--- a/src/QGst/bin.h ++++ b/src/QGst/bin.h +@@ -19,6 +19,10 @@ + #ifndef QGST_BIN_H + #define QGST_BIN_H + ++#ifdef Q_MOC_RUN ++#define BOOST_TT_HAS_OPERATOR_HPP_INCLUDED ++#endif ++ + #include "element.h" + #include "childproxy.h" + +--- a/src/QGst/Ui/videowidget.h ++++ b/src/QGst/Ui/videowidget.h +@@ -19,6 +19,10 @@ + #ifndef QGST_UI_VIDEOWIDGET_H + #define QGST_UI_VIDEOWIDGET_H + ++#ifdef Q_MOC_RUN ++#define BOOST_TT_HAS_OPERATOR_HPP_INCLUDED ++#endif ++ + #include "global.h" + #include "../element.h" + #include diff --git a/pkgs/development/libraries/gstreamer/qt-gstreamer/default.nix b/pkgs/development/libraries/gstreamer/qt-gstreamer/default.nix new file mode 100644 index 00000000000..5ae24178664 --- /dev/null +++ b/pkgs/development/libraries/gstreamer/qt-gstreamer/default.nix @@ -0,0 +1,17 @@ +{ stdenv, fetchurl, gstreamer, gstPluginsBase, boost, glib, qt4, cmake +, automoc4, flex, bison, pkgconfig }: + +stdenv.mkDerivation rec { + name = "${pname}-0.10.1"; + pname = "qt-gstreamer"; + + src = fetchurl { + url = "http://gstreamer.freedesktop.org/src/${pname}/${name}.tar.bz2"; + sha256 = "0g377jlzlwgywgk7nbv9fd0aimv8wpzrymwzdiaffczxv5xvip5h"; + }; + + buildInputs = [ gstreamer gstPluginsBase boost glib qt4 ]; + buildNativeInputs = [ cmake automoc4 flex bison pkgconfig ]; + + patches = [ ./boost1.48.patch ]; +}