Package: gst-plugins-good0.10
Version: 0.10.29-1
Severity: important
Tags: patch
User: debian-h...@lists.debian.org
Usertags: hurd

Hi,

currently[1] gst-plugins-good0.10 does not compile on hurd-i386.

There are two problems:
- the oss4 plugin not compiling (and cannot be made compile, due to how
  ioctl() works on Hurd)
- a PATH_MAX usage in the pulse plugin
The attached patch fixes both the issues:
- debian.diff: disable the oss4 plugin on hurd OSes
- hurd.diff: instead of use PATH_MAX for the buffer 'buf', use the
  equivalent value; the reason for this is that that buffer is used for pulse's
  pa_get_binary_name(), hence for storing just the name of the current binary,
  which very unlikely will be more than that value

[1] 
https://buildd.debian.org/status/fetch.php?pkg=gst-plugins-good0.10&arch=hurd-i386&ver=0.10.29-1&stamp=1305308289

Thanks,
-- 
Pino
--- a/debian/rules
+++ b/debian/rules
@@ -73,6 +73,7 @@
 # still need "*.install" to be done by hand
 
 PLUGINS += gconf pulseaudio plugins-good
+CONFIG_ARGS :=
 ifeq ($(DEB_HOST_ARCH_OS),linux)
 PLUGINS +=
 endif
@@ -84,6 +85,12 @@
 video4linux2 = debian/tmp/usr/lib/gstreamer-$(gst_abi)/libgstvideo4linux2.so
 endif
 
+ifeq ($(DEB_HOST_ARCH_OS),hurd)
+CONFIG_ARGS += --disable-oss4
+else
+oss4 = debian/tmp/usr/lib/gstreamer-$(gst_abi)/libgstoss4audio.so
+endif
+
 ifeq ($(DEB_HOST_ARCH_OS),linux)
 DEFAULT_AUDIOSINK = autoaudiosink
 DEFAULT_AUDIOSRC = autoaudiosrc
@@ -123,6 +130,7 @@
                        -e 's/@GST_ABI@/$(gst_abi)/g' \
                        -e 's,@1394@,$(1394),g' \
                        -e 's,@video4linux2@,$(video4linux2),g' \
+                       -e 's,@oss4@,$(oss4),g' \
                        debian/gstreamer-$$p.install \
                        > debian/$(gst_pkgname)-$$p.install; \
        done
@@ -160,7 +168,8 @@
        --with-default-audiosrc=$(DEFAULT_AUDIOSRC) \
        --with-default-videosink=$(DEFAULT_VIDEOSINK) \
        --with-default-videosrc=$(DEFAULT_VIDEOSRC) \
-       --with-default-visualizer=$(DEFAULT_VISUALIZER)
+       --with-default-visualizer=$(DEFAULT_VISUALIZER) \
+       $(CONFIG_ARGS)
 
 clean::
        # get rid of the sym links
--- a/debian/gstreamer-plugins-good.install
+++ b/debian/gstreamer-plugins-good.install
@@ -40,7 +40,7 @@
 debian/tmp/usr/lib/gstreamer-@GST_ABI@/libgstmultipart.so
 debian/tmp/usr/lib/gstreamer-@GST_ABI@/libgstnavigationtest.so
 debian/tmp/usr/lib/gstreamer-@GST_ABI@/libgstossaudio.so
-debian/tmp/usr/lib/gstreamer-@GST_ABI@/libgstoss4audio.so
+@oss4@
 debian/tmp/usr/lib/gstreamer-@GST_ABI@/libgstpng.so
 debian/tmp/usr/lib/gstreamer-@GST_ABI@/libgstisomp4.so
 debian/tmp/usr/lib/gstreamer-@GST_ABI@/libgstreplaygain.so
--- a/ext/pulse/pulseutil.c
+++ b/ext/pulse/pulseutil.c
@@ -123,7 +123,7 @@
 gchar *
 gst_pulse_client_name (void)
 {
-  gchar buf[PATH_MAX];
+  gchar buf[4096];
 
   const char *c;
 

Reply via email to