summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndreas Enge <andreas@enge.fr>2013-10-30 22:06:57 +0100
committerAndreas Enge <andreas@enge.fr>2013-10-30 22:06:57 +0100
commitf506ed920cdc105f090507e3cf8fc447f61756dc (patch)
tree85233875e7476bc0925b6c5da8bfba1e85bafac8
parent94f48f98f05239c4bd5b8281042452e68d8f99b2 (diff)
downloadguix-f506ed920cdc105f090507e3cf8fc447f61756dc.tar.gz
gnu: Add gstreamer-0.10.
* gnu/packages/gstreamer.scm (gstreamer-0.10): New variable.
* gnu/packages/patches/gstreamer-0.10-bison3.patch,
  gnu/packages/patches/gstreamer-0.10-silly-test.patch: New files.
* gnu-system.am (dist_patch_DATA): Add patches.
-rw-r--r--gnu-system.am2
-rw-r--r--gnu/packages/gstreamer.scm27
-rw-r--r--gnu/packages/patches/gstreamer-0.10-bison3.patch32
-rw-r--r--gnu/packages/patches/gstreamer-0.10-silly-test.patch14
4 files changed, 74 insertions, 1 deletions
diff --git a/gnu-system.am b/gnu-system.am
index 3b5384f354..f77bb03da7 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -226,6 +226,8 @@ dist_patch_DATA =						\
   gnu/packages/patches/glibc-ldd-x86_64.patch			\
   gnu/packages/patches/glibc-no-ld-so-cache.patch		\
   gnu/packages/patches/grub-gets-undeclared.patch		\
+  gnu/packages/patches/gstreamer-0.10-bison3.patch		\
+  gnu/packages/patches/gstreamer-0.10-silly-test.patch		\
   gnu/packages/patches/guile-1.8-cpp-4.5.patch			\
   gnu/packages/patches/guile-default-utf8.patch			\
   gnu/packages/patches/guile-linux-syscalls.patch		\
diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
index 7478dc3188..ffdb4b83ad 100644
--- a/gnu/packages/gstreamer.scm
+++ b/gnu/packages/gstreamer.scm
@@ -21,12 +21,14 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages python))
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages xml))
 
 (define-public gstreamer
   (package
@@ -64,6 +66,29 @@ simple plugin with a clean, generic interface.
 This package provides the core library and elements.")
     (license lgpl2.0+)))
 
+(define-public gstreamer-0.10
+  (package (inherit gstreamer)
+    (version "0.10.36")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-"
+                          version ".tar.xz"))
+      (sha256
+       (base32
+        "1nkid1n2l3rrlmq5qrf5yy06grrkwjh3yxl5g0w58w0pih8allci"))
+      (patches
+        (list (search-patch "gstreamer-0.10-bison3.patch")
+              (search-patch "gstreamer-0.10-silly-test.patch")))))
+    (inputs
+     `(("bison" ,bison)
+       ("flex" ,flex)
+       ("glib" ,glib)
+       ("libxml2" ,libxml2)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-2)))))
+
 (define-public gst-plugins-base
   (package
     (name "gst-plugins-base")
diff --git a/gnu/packages/patches/gstreamer-0.10-bison3.patch b/gnu/packages/patches/gstreamer-0.10-bison3.patch
new file mode 100644
index 0000000000..f6eb90cb02
--- /dev/null
+++ b/gnu/packages/patches/gstreamer-0.10-bison3.patch
@@ -0,0 +1,32 @@
+See https://bugzilla.gnome.org/show_bug.cgi?id=706462
+
+Subject: [PATCH] Make grammar.y work with Bison 3
+
+YYLEX_PARAM is no longer supported in Bison 3.
+---
+ gst/parse/grammar.y | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gst/parse/grammar.y b/gst/parse/grammar.y
+index 8a9019c..f533389 100644
+--- a/gst/parse/grammar.y
++++ b/gst/parse/grammar.y
+@@ -26,7 +26,6 @@
+  */
+ 
+ #define YYERROR_VERBOSE 1
+-#define YYLEX_PARAM scanner
+ 
+ #define YYENABLE_NLS 0
+ 
+@@ -659,6 +658,7 @@ static int yyerror (void *scanner, graph_t *graph, const char *s);
+ %right '.'
+ %left '!' '='
+ 
++%lex-param { void *scanner }
+ %parse-param { void *scanner }
+ %parse-param { graph_t *graph }
+ %pure-parser
+-- 
+1.8.3.4
+
diff --git a/gnu/packages/patches/gstreamer-0.10-silly-test.patch b/gnu/packages/patches/gstreamer-0.10-silly-test.patch
new file mode 100644
index 0000000000..678dd7b122
--- /dev/null
+++ b/gnu/packages/patches/gstreamer-0.10-silly-test.patch
@@ -0,0 +1,14 @@
+See http://lists.freedesktop.org/archives/gstreamer-bugs/2013-January/098461.html
+
+diff -ru gstreamer-0.10.36.orig/tests/check/Makefile.in gstreamer-0.10.36/tests/check/Makefile.in
+--- gstreamer-0.10.36.orig/tests/check/Makefile.in	2012-02-20 23:48:29.000000000 +0100
++++ gstreamer-0.10.36/tests/check/Makefile.in	2013-10-30 21:55:48.000000000 +0100
+@@ -42,7 +42,7 @@
+ 	gst/gstbus$(EXEEXT) gst/gstcaps$(EXEEXT) $(am__EXEEXT_2) \
+ 	gst/gstdatetime$(EXEEXT) gst/gstinfo$(EXEEXT) \
+ 	gst/gstiterator$(EXEEXT) gst/gstmessage$(EXEEXT) \
+-	gst/gstminiobject$(EXEEXT) gst/gstobject$(EXEEXT) \
++	gst/gstminiobject$(EXEEXT) \
+ 	gst/gstpad$(EXEEXT) gst/gstparamspecs$(EXEEXT) \
+ 	gst/gstpoll$(EXEEXT) gst/gstsegment$(EXEEXT) \
+ 	gst/gstsystemclock$(EXEEXT) gst/gstclock$(EXEEXT) \