diff options
Diffstat (limited to 'abs/extra/community/gstreamer0.10')
-rw-r--r-- | abs/extra/community/gstreamer0.10/PKGBUILD | 32 | ||||
-rw-r--r-- | abs/extra/community/gstreamer0.10/bgo555631.patch | 88 |
2 files changed, 16 insertions, 104 deletions
diff --git a/abs/extra/community/gstreamer0.10/PKGBUILD b/abs/extra/community/gstreamer0.10/PKGBUILD index 52934e2..0a52614 100644 --- a/abs/extra/community/gstreamer0.10/PKGBUILD +++ b/abs/extra/community/gstreamer0.10/PKGBUILD @@ -1,29 +1,29 @@ -# $Id: PKGBUILD 18833 2008-11-09 14:51:01Z jgc $ +# $Id: PKGBUILD 87764 2010-08-18 09:05:27Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gstreamer0.10 -pkgver=0.10.21 -pkgrel=2 +pkgver=0.10.30 +pkgrel=1 pkgdesc="GStreamer Multimedia Framework" -arch=(i686 x86_64) +arch=('i686' 'x86_64') license=('LGPL') url="http://gstreamer.freedesktop.org/" -depends=('libxml2>=2.6.32' 'glib2>=2.18.1') -makedepends=('perlxml' 'pkgconfig' 'gtk-doc') +depends=('libxml2>=2.7.7' 'glib2>=2.24.1') +makedepends=('intltool' 'pkgconfig' 'gtk-doc' 'gobject-introspection') options=('!libtool') -source=(${url}/src/gstreamer/gstreamer-${pkgver}.tar.bz2 - bgo555631.patch) -md5sums=('7bad90af3fd81a1535363cf85359125c' - '71eb301845184638e6556dacd1ca7d55') +source=(${url}/src/gstreamer/gstreamer-${pkgver}.tar.bz2) +sha256sums=('e8ef301be423797ff36a0bb3615930b112b4175634051d19fd655e0ed974532a') build() { cd "${srcdir}/gstreamer-${pkgver}" - patch -Np0 -i "${srcdir}/bgo555631.patch" || return 1 - ./configure --prefix=/usr \ - --sysconfdir=/etc --localstatedir=/var \ - --disable-docs-build || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libexecdir=/usr/lib \ + --with-package-name="GStreamer (Archlinux)" \ + --with-package-origin="http://www.archlinux.org/" + make +} +package() { + cd "${srcdir}/gstreamer-${pkgver}" + make DESTDIR="${pkgdir}" install cd "${pkgdir}/usr/bin" #Remove unversioned gst-* binaries to get rid of conflicts diff --git a/abs/extra/community/gstreamer0.10/bgo555631.patch b/abs/extra/community/gstreamer0.10/bgo555631.patch deleted file mode 100644 index b9a18f4..0000000 --- a/abs/extra/community/gstreamer0.10/bgo555631.patch +++ /dev/null @@ -1,88 +0,0 @@ ---- libs/gst/base/gstbasetransform.c 2008/10/20 13:29:06 1.126 -+++ libs/gst/base/gstbasetransform.c 2008/10/21 16:30:41 1.127 -@@ -251,7 +251,7 @@ - /* upstream caps and size suggestions */ - GstCaps *sink_suggest; - guint size_suggest; -- gint suggest_pending; -+ gboolean suggest_pending; - - gboolean reconfigure; - }; -@@ -1224,7 +1224,7 @@ - gst_caps_unref (priv->sink_suggest); - priv->sink_suggest = gst_caps_ref (othercaps); - priv->size_suggest = size_suggest; -- g_atomic_int_set (&trans->priv->suggest_pending, 1); -+ trans->priv->suggest_pending = TRUE; - GST_OBJECT_UNLOCK (trans->sinkpad); - } - gst_caps_unref (othercaps); -@@ -1366,7 +1366,7 @@ - GstBaseTransform *trans; - GstBaseTransformPrivate *priv; - GstFlowReturn res; -- gboolean proxy, suggest; -+ gboolean proxy, suggest, same_caps; - GstCaps *sink_suggest; - guint size_suggest; - -@@ -1384,8 +1384,12 @@ - - /* we remember our previous alloc request to quickly see if we can proxy or - * not. We skip this check if we have a pending suggestion. */ -- if (g_atomic_int_get (&priv->suggest_pending) == 0 && caps && -- gst_caps_is_equal (priv->sink_alloc, caps)) { -+ GST_OBJECT_LOCK (pad); -+ same_caps = !priv->suggest_pending && caps && -+ gst_caps_is_equal (priv->sink_alloc, caps); -+ GST_OBJECT_UNLOCK (pad); -+ -+ if (same_caps) { - /* we have seen this before, see below if we need to proxy */ - GST_DEBUG_OBJECT (trans, "have old caps"); - sink_suggest = caps; -@@ -1414,7 +1418,7 @@ - size_suggest = size; - suggest = FALSE; - } -- g_atomic_int_set (&priv->suggest_pending, 0); -+ priv->suggest_pending = FALSE; - GST_OBJECT_UNLOCK (pad); - - /* check if we actually handle this format on the sinkpad */ -@@ -1462,7 +1466,10 @@ - } - } - /* remember the new caps */ -+ GST_OBJECT_LOCK (pad); - gst_caps_replace (&priv->sink_alloc, sink_suggest); -+ GST_OBJECT_UNLOCK (pad); -+ - proxy = priv->proxy_alloc; - GST_DEBUG_OBJECT (trans, "doing default alloc, proxy %d", proxy); - -@@ -1487,11 +1494,13 @@ - if (!gst_caps_is_equal (newcaps, caps)) { - GST_DEBUG_OBJECT (trans, "caps are new"); - /* we have new caps, see if we can proxy downstream */ -- if (gst_pad_peer_accept_caps (trans->sinkpad, newcaps)) { -+ if (gst_pad_peer_accept_caps (pad, newcaps)) { - /* peer accepts the caps, return a buffer in this format */ - GST_DEBUG_OBJECT (trans, "peer accepted new caps"); - /* remember the format */ -+ GST_OBJECT_LOCK (pad); - gst_caps_replace (&priv->sink_alloc, newcaps); -+ GST_OBJECT_UNLOCK (pad); - } else { - GST_DEBUG_OBJECT (trans, "peer did not accept new caps"); - /* peer does not accept the caps, free the buffer we received and -@@ -2306,7 +2315,7 @@ - caps = gst_caps_copy (caps); - trans->priv->sink_suggest = caps; - trans->priv->size_suggest = size; -- g_atomic_int_set (&trans->priv->suggest_pending, 1); -+ trans->priv->suggest_pending = TRUE; - GST_DEBUG_OBJECT (trans, "new suggest %" GST_PTR_FORMAT, caps); - GST_OBJECT_UNLOCK (trans->sinkpad); - } |