public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: media-libs/gstreamer/files/, media-libs/gstreamer/
@ 2016-05-10 23:39 Anthony G. Basile
  0 siblings, 0 replies; 6+ messages in thread
From: Anthony G. Basile @ 2016-05-10 23:39 UTC (permalink / raw
  To: gentoo-commits

commit:     a5b3ac3122541498c65575114ee2baa2fc43c849
Author:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
AuthorDate: Tue May 10 23:38:49 2016 +0000
Commit:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Tue May 10 23:39:56 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a5b3ac31

Revert "media-libs/gstreamer: fix bug #577312"

This reverts commit f59f39fb234fe5ce1c2a4c1c63be575fa494302c.

The gstreamer folks made a mistake in backporting this form libcheck.

See https://bugzilla.gnome.org/show_bug.cgi?id=763567#c12

 .../files/gstreamer-1.6.3-fix-strsignal.patch      | 29 ----------------------
 media-libs/gstreamer/gstreamer-1.6.3.ebuild        |  4 ---
 2 files changed, 33 deletions(-)

diff --git a/media-libs/gstreamer/files/gstreamer-1.6.3-fix-strsignal.patch b/media-libs/gstreamer/files/gstreamer-1.6.3-fix-strsignal.patch
deleted file mode 100644
index e237f9b..0000000
--- a/media-libs/gstreamer/files/gstreamer-1.6.3-fix-strsignal.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From c9da8b0e7f53005ab125e48165dae39fbfee2352 Mon Sep 17 00:00:00 2001
-From: "Anthony G. Basile" <blueness@gentoo.org>
-Date: Sun, 13 Mar 2016 11:05:29 -0400
-Subject: libcompat.h: strsignal() should be not be decleared const
-
-POSIX standards requires strsignal() to return a pointer to a char,
-not a const pointer to a char. [1]  On uClibc, and possibly other
-libc's, that do not HAVE_DECL_STRSIGNAL, libcompat.h declares
-const char *strsignal (int sig) which causes a type error.
-
-[1] man 3 strsignal
-
-https://bugzilla.gnome.org/show_bug.cgi?id=763567
-
-diff --git a/libs/gst/check/libcheck/strsignal.c b/libs/gst/check/libcheck/strsignal.c
-index b79409b..57e71cd 100644
---- a/libs/gst/check/libcheck/strsignal.c
-+++ b/libs/gst/check/libcheck/strsignal.c
-@@ -1,6 +1,6 @@
- #include "libcompat.h"
- 
--const char *
-+char *
- strsignal (int sig)
- {
-   static char signame[40];
--- 
-cgit v0.10.2
-

diff --git a/media-libs/gstreamer/gstreamer-1.6.3.ebuild b/media-libs/gstreamer/gstreamer-1.6.3.ebuild
index 63ff72f..3b77847 100644
--- a/media-libs/gstreamer/gstreamer-1.6.3.ebuild
+++ b/media-libs/gstreamer/gstreamer-1.6.3.ebuild
@@ -30,10 +30,6 @@ DEPEND="${RDEPEND}
 "
 # gtk-doc-am to install API docs
 
-src_prepare() {
-	epatch "${FILESDIR}"/${P}-fix-strsignal.patch #577312
-}
-
 src_configure() {
 	if [[ ${CHOST} == *-interix* ]] ; then
 		export ac_cv_lib_dl_dladdr=no


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-libs/gstreamer/files/, media-libs/gstreamer/
@ 2017-01-26  5:18 Mart Raudsepp
  0 siblings, 0 replies; 6+ messages in thread
From: Mart Raudsepp @ 2017-01-26  5:18 UTC (permalink / raw
  To: gentoo-commits

commit:     da8b7bad7890541869742903ecd25339e95569b7
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 26 05:17:48 2017 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Thu Jan 26 05:17:48 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=da8b7bad

media-libs/gstreamer: Remove old

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 media-libs/gstreamer/Manifest                      |   2 -
 .../files/gstreamer-1.6.3-fix-strsignal.patch      |  32 ------
 media-libs/gstreamer/gstreamer-1.6.3.ebuild        | 110 ---------------------
 media-libs/gstreamer/gstreamer-1.8.2.ebuild        | 101 -------------------
 4 files changed, 245 deletions(-)

diff --git a/media-libs/gstreamer/Manifest b/media-libs/gstreamer/Manifest
index 086fe15..3ce503d 100644
--- a/media-libs/gstreamer/Manifest
+++ b/media-libs/gstreamer/Manifest
@@ -1,4 +1,2 @@
 DIST gstreamer-0.10.36.tar.xz 3025876 SHA256 9151aa108c177054387885763fa0e433e76780f7c5655c70a5390f2a6c6871da SHA512 7468abb578398681d2adb0e9bbc9ee8ae25aaef72369d45a66ada6c67d1759afdce606cb32e68d9e30ae813196bdfef3d4d33202bc77839cc1fbf5fc436c1bd8 WHIRLPOOL 03b841624552be860d4bf824bde9d6d5d6afc629048244b02037c96370c88191f34a6d09f02af61f295a9d6f84952efec2c5d4b0a28e8e70cd17966ed1b01d93
-DIST gstreamer-1.6.3.tar.xz 3553256 SHA256 22f9568d67b87cf700a111f381144bd37cb93790a77e4e331db01fe854a37f24 SHA512 f5ab2461469d489da956a0dd4e785e8f0a130b104a37289f7821be6e8f8e5049864888fdcf3a7d281406bf48b40737afa75347c22e6bec05ff2cf525734b51f7 WHIRLPOOL 386efbe1f431e247e11f7369ababb8bb5f2d457b046de1eb955cb9d2322f995c862b22124efcbeeeb9b4d25def664de952b98fe54ba71cd2438502e86ac1db7c
-DIST gstreamer-1.8.2.tar.xz 3609500 SHA256 9dbebe079c2ab2004ef7f2649fa317cabea1feb4fb5605c24d40744b90918341 SHA512 135d0a389fee3a9ebbd9df646c2d77affa4681721c4215dc6edd23be91d86c83f32c80498c37fcd19d97b3e534e6c45a96c3aa2650155696ca756bbeb7271b15 WHIRLPOOL 09836f8cca9aa9e10ac1758497c7b020357ab8b359dd309be9997f86252f8a32e665bed6adfa2c506175f70701ba809b164dad81d37b27a2adea09960d0e328a
 DIST gstreamer-1.8.3.tar.xz 3711068 SHA256 66b37762d4fdcd63bce5a2bec57e055f92420e95037361609900278c0db7c53f SHA512 a5f0c2b1d16fd03e3bd3968a8304ed1c32a5b733440cd656ab2e0caabb2f7803ae1bfe7a8e331d5ebb1e8adbe21c5c47263bc73a8480bc16cc28f995241e9f4e WHIRLPOOL 8581d57e65f77b918ed98614e96726629c36c59e07700a32983482c16e0e40775351309465c55c4994fb830ca3044f9f74de05b673a63eeea53d1dc511a9b2ef

diff --git a/media-libs/gstreamer/files/gstreamer-1.6.3-fix-strsignal.patch b/media-libs/gstreamer/files/gstreamer-1.6.3-fix-strsignal.patch
deleted file mode 100644
index 9d717e8..00000000
--- a/media-libs/gstreamer/files/gstreamer-1.6.3-fix-strsignal.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Upstream split this one commit into two: c9da8b0 and d6e25dd because
-of some confusion.  I've recombined it here.  See:
-
-https://bugzilla.gnome.org/show_bug.cgi?id=763567
-https://bugs.gentoo.org/show_bug.cgi?id=577312
-
-diff --git a/libs/gst/check/libcheck/strsignal.c b/libs/gst/check/libcheck/strsignal.c
-index b79409b..57e71cd 100644
---- a/libs/gst/check/libcheck/strsignal.c
-+++ b/libs/gst/check/libcheck/strsignal.c
-@@ -1,6 +1,6 @@
- #include "libcompat.h"
- 
--const char *
-+char *
- strsignal (int sig)
- {
-   static char signame[40];
-
-diff --git a/libs/gst/check/libcheck/libcompat.h b/libs/gst/check/libcheck/libcompat.h
-index 32f944c..f09289b 100644
---- a/libs/gst/check/libcheck/libcompat.h
-+++ b/libs/gst/check/libcheck/libcompat.h
-@@ -101,7 +101,7 @@ CK_DLL_EXP char *strdup (const char *str);
- #endif /* !HAVE_DECL_STRDUP && HAVE__STRDUP */
- 
- #if !HAVE_DECL_STRSIGNAL
--CK_DLL_EXP const char *strsignal (int sig);
-+CK_DLL_EXP char *strsignal (int sig);
- #endif /* !HAVE_DECL_STRSIGNAL */
- 
- /*

diff --git a/media-libs/gstreamer/gstreamer-1.6.3.ebuild b/media-libs/gstreamer/gstreamer-1.6.3.ebuild
deleted file mode 100644
index fd465ed..00000000
--- a/media-libs/gstreamer/gstreamer-1.6.3.ebuild
+++ /dev/null
@@ -1,110 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="5"
-
-inherit bash-completion-r1 eutils multilib multilib-minimal pax-utils
-
-# yes the manifest code should get fixed
-
-DESCRIPTION="Open source multimedia framework"
-HOMEPAGE="https://gstreamer.freedesktop.org/"
-SRC_URI="https://${PN}.freedesktop.org/src/${PN}/${P}.tar.xz"
-
-LICENSE="LGPL-2+"
-SLOT="1.0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="+caps +introspection nls +orc test"
-
-RDEPEND="
-	>=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}]
-	caps? ( sys-libs/libcap )
-	introspection? ( >=dev-libs/gobject-introspection-1.31.1:= )
-"
-DEPEND="${RDEPEND}
-	app-arch/xz-utils
-	>=dev-util/gtk-doc-am-1.12
-	sys-devel/bison
-	sys-devel/flex
-	>=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
-	nls? ( sys-devel/gettext )
-"
-# gtk-doc-am to install API docs
-
-src_prepare() {
-	epatch "${FILESDIR}"/${P}-fix-strsignal.patch #577312
-}
-
-src_configure() {
-	if [[ ${CHOST} == *-interix* ]] ; then
-		export ac_cv_lib_dl_dladdr=no
-		export ac_cv_func_poll=no
-	fi
-	if [[ ${CHOST} == powerpc-apple-darwin* ]] ; then
-		# GCC groks this, but then refers to an implementation (___multi3,
-		# ___udivti3) that don't exist (at least I can't find it), so force
-		# this one to be off, such that we use 2x64bit emulation code.
-		export gst_cv_uint128_t=no
-	fi
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	# Set 'libexecdir' to ABI-specific location for the library spawns
-	# helpers from there.
-	# Disable static archives, dependency tracking and examples
-	# to speed up build time
-	# Disable debug, as it only affects -g passing (debugging symbols), this must done through make.conf in gentoo
-	local myconf=(
-		--libexecdir="${EPREFIX}"/usr/$(get_libdir)
-		--disable-debug
-		--disable-examples
-		--disable-static
-		--disable-valgrind
-		--enable-check
-		$(multilib_native_use_enable introspection)
-		$(use_enable nls)
-		$(use_enable test tests)
-		--with-bash-completion-dir="$(get_bashcompdir)"
-		--with-package-name="GStreamer ebuild for Gentoo"
-		--with-package-origin="https://packages.gentoo.org/package/media-libs/gstreamer"
-	)
-
-	if use caps ; then
-		myconf+=( --with-ptp-helper-permissions=capabilities )
-	else
-		myconf+=(
-			--with-ptp-helper-permissions=setuid-root
-			--with-ptp-helper-setuid-user=nobody
-			--with-ptp-helper-setuid-group=nobody
-		)
-	fi
-
-	ECONF_SOURCE="${S}" econf ${myconf[$@]}
-
-	if multilib_is_native_abi; then
-		local x
-		for x in gst libs plugins; do
-			ln -s "${S}"/docs/${x}/html docs/${x}/html || die
-		done
-	fi
-}
-
-multilib_src_install() {
-	# can't do "default", we want to install docs in multilib_src_install_all
-	emake DESTDIR="${D}" install
-
-	# Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
-	use orc && pax-mark -m "${ED}usr/$(get_libdir)/gstreamer-${SLOT}/gst-plugin-scanner"
-}
-
-multilib_src_install_all() {
-	DOCS="AUTHORS ChangeLog NEWS MAINTAINERS README RELEASE"
-	einstalldocs
-	prune_libtool_files --modules
-
-	# Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
-	use orc && pax-mark -m "${ED}usr/bin/gst-launch-${SLOT}"
-}

diff --git a/media-libs/gstreamer/gstreamer-1.8.2.ebuild b/media-libs/gstreamer/gstreamer-1.8.2.ebuild
deleted file mode 100644
index ac376ec..00000000
--- a/media-libs/gstreamer/gstreamer-1.8.2.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-inherit bash-completion-r1 eutils multilib multilib-minimal pax-utils
-
-DESCRIPTION="Open source multimedia framework"
-HOMEPAGE="https://gstreamer.freedesktop.org/"
-SRC_URI="https://${PN}.freedesktop.org/src/${PN}/${P}.tar.xz"
-
-LICENSE="LGPL-2+"
-SLOT="1.0"
-KEYWORDS="alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="+caps +introspection nls +orc test"
-
-RDEPEND="
-	>=dev-libs/glib-2.40.0:2[${MULTILIB_USEDEP}]
-	caps? ( sys-libs/libcap )
-	introspection? ( >=dev-libs/gobject-introspection-1.31.1:= )
-"
-DEPEND="${RDEPEND}
-	>=dev-util/gtk-doc-am-1.12
-	sys-devel/bison
-	sys-devel/flex
-	>=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
-	nls? ( sys-devel/gettext )
-"
-# gtk-doc-am to install API docs
-
-src_configure() {
-	if [[ ${CHOST} == *-interix* ]] ; then
-		export ac_cv_lib_dl_dladdr=no
-		export ac_cv_func_poll=no
-	fi
-	if [[ ${CHOST} == powerpc-apple-darwin* ]] ; then
-		# GCC groks this, but then refers to an implementation (___multi3,
-		# ___udivti3) that don't exist (at least I can't find it), so force
-		# this one to be off, such that we use 2x64bit emulation code.
-		export gst_cv_uint128_t=no
-	fi
-
-	multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
-	# Set 'libexecdir' to ABI-specific location for the library spawns
-	# helpers from there.
-	# Disable static archives and examples to speed up build time
-	# Disable debug, as it only affects -g passing (debugging symbols), this must done through make.conf in gentoo
-	local myconf=(
-		--libexecdir="${EPREFIX}"/usr/$(get_libdir)
-		--disable-debug
-		--disable-examples
-		--disable-static
-		--disable-valgrind
-		--enable-check
-		$(multilib_native_use_enable introspection)
-		$(use_enable nls)
-		$(use_enable test tests)
-		--with-bash-completion-dir="$(get_bashcompdir)"
-		--with-package-name="GStreamer ebuild for Gentoo"
-		--with-package-origin="https://packages.gentoo.org/package/media-libs/gstreamer"
-	)
-
-	if use caps ; then
-		myconf+=( --with-ptp-helper-permissions=capabilities )
-	else
-		myconf+=(
-			--with-ptp-helper-permissions=setuid-root
-			--with-ptp-helper-setuid-user=nobody
-			--with-ptp-helper-setuid-group=nobody
-		)
-	fi
-
-	ECONF_SOURCE="${S}" econf ${myconf[$@]}
-
-	if multilib_is_native_abi; then
-		local x
-		for x in gst libs plugins; do
-			ln -s "${S}"/docs/${x}/html docs/${x}/html || die
-		done
-	fi
-}
-
-multilib_src_install() {
-	# can't do "default", we want to install docs in multilib_src_install_all
-	emake DESTDIR="${D}" install
-
-	# Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
-	use orc && pax-mark -m "${ED}usr/$(get_libdir)/gstreamer-${SLOT}/gst-plugin-scanner"
-}
-
-multilib_src_install_all() {
-	DOCS="AUTHORS ChangeLog NEWS MAINTAINERS README RELEASE"
-	einstalldocs
-	prune_libtool_files --modules
-
-	# Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
-	use orc && pax-mark -m "${ED}usr/bin/gst-launch-${SLOT}"
-}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-libs/gstreamer/files/, media-libs/gstreamer/
@ 2019-08-25 18:02 Mart Raudsepp
  0 siblings, 0 replies; 6+ messages in thread
From: Mart Raudsepp @ 2019-08-25 18:02 UTC (permalink / raw
  To: gentoo-commits

commit:     8b160c7a4ec1f63d76c9cb0781a0c26e4d8194d6
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 25 18:00:46 2019 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sun Aug 25 18:01:21 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8b160c7a

media-libs/gstreamer: fix gsturi test with glib-2.60

Closes: https://bugs.gentoo.org/690940
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 .../files/1.14-glib-2.60-tests-compat.patch        | 56 ++++++++++++++++++++++
 media-libs/gstreamer/gstreamer-1.14.4.ebuild       |  4 ++
 2 files changed, 60 insertions(+)

diff --git a/media-libs/gstreamer/files/1.14-glib-2.60-tests-compat.patch b/media-libs/gstreamer/files/1.14-glib-2.60-tests-compat.patch
new file mode 100644
index 00000000000..ca74bf0cc2e
--- /dev/null
+++ b/media-libs/gstreamer/files/1.14-glib-2.60-tests-compat.patch
@@ -0,0 +1,56 @@
+From 4a7739f4b6442814696bbd0706ab9a1ce1462d80 Mon Sep 17 00:00:00 2001
+From: Havard Graff <havard.graff@gmail.com>
+Date: Wed, 31 Oct 2018 10:27:23 +0100
+Subject: [PATCH] tests/uri: fix test after GHashTable changes in GLib 2.59
+
+Maybe the implementation should not be dependent on a "random" hash-table
+ordering, but at least this shows the problem clearly.
+---
+ tests/check/gst/gsturi.c | 16 +++++++++++++++-
+ 1 file changed, 15 insertions(+), 1 deletion(-)
+
+diff --git a/tests/check/gst/gsturi.c b/tests/check/gst/gsturi.c
+index ee623dbcf..fa87c7c77 100644
+--- a/tests/check/gst/gsturi.c
++++ b/tests/check/gst/gsturi.c
+@@ -414,7 +414,11 @@ static const struct URITest url_presenting_tests[] = {
+   {.uri = {"scheme", "user:pass", "host", 1234, "/path/to/dir",
+           {{"query", NULL}, {"key", "value"}}, "fragment"},
+       .str =
++#if GLIB_CHECK_VERSION(2, 59, 0)
++      "scheme://user:pass@host:1234/path/to/dir?key=value&query#fragment"},
++#else
+       "scheme://user:pass@host:1234/path/to/dir?query&key=value#fragment"},
++#endif
+ 
+   /* IPv6 literal should render in square brackets */
+   {.uri = {"scheme", "user:pass", "12:34:56:78:9a:bc:de:f0", 1234,
+@@ -977,14 +981,24 @@ GST_START_TEST (test_url_get_set)
+ 
+   fail_unless (gst_uri_set_query_value (url, "key", "value"));
+   tmp_str = gst_uri_to_string (url);
++#if GLIB_CHECK_VERSION(2, 59, 0)
++  fail_unless_equals_string (tmp_str,
++     "//example.com/path/to/file/there/segment?key=value&query#fragment");
++#else
+   fail_unless_equals_string (tmp_str,
+-      "//example.com/path/to/file/there/segment?query&key=value#fragment");
++     "//example.com/path/to/file/there/segment?query&key=value#fragment");
++#endif
+   g_free (tmp_str);
+ 
+   fail_unless (gst_uri_set_query_value (url, "key", NULL));
+   tmp_str = gst_uri_to_string (url);
++#if GLIB_CHECK_VERSION(2, 59, 0)
++  fail_unless_equals_string (tmp_str,
++      "//example.com/path/to/file/there/segment?key&query#fragment");
++#else
+   fail_unless_equals_string (tmp_str,
+       "//example.com/path/to/file/there/segment?query&key#fragment");
++#endif
+   g_free (tmp_str);
+ 
+   fail_unless (!gst_uri_set_query_value (NULL, "key", "value"));
+-- 
+2.20.1
+

diff --git a/media-libs/gstreamer/gstreamer-1.14.4.ebuild b/media-libs/gstreamer/gstreamer-1.14.4.ebuild
index 7bb095742b0..19677ed3d4f 100644
--- a/media-libs/gstreamer/gstreamer-1.14.4.ebuild
+++ b/media-libs/gstreamer/gstreamer-1.14.4.ebuild
@@ -34,6 +34,10 @@ DEPEND="${RDEPEND}
 "
 # gtk-doc-am to install API docs
 
+PATCHES=(
+	"${FILESDIR}"/1.14-glib-2.60-tests-compat.patch
+)
+
 src_configure() {
 	if [[ ${CHOST} == *-interix* ]] ; then
 		export ac_cv_lib_dl_dladdr=no


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-libs/gstreamer/files/, media-libs/gstreamer/
@ 2020-03-18 11:22 David Seifert
  0 siblings, 0 replies; 6+ messages in thread
From: David Seifert @ 2020-03-18 11:22 UTC (permalink / raw
  To: gentoo-commits

commit:     d26d94695c46be522bea60762c7f4a0a47e6778b
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 18 11:22:10 2020 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Wed Mar 18 11:22:10 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d26d9469

media-libs/gstreamer: Fix for >=make-4.3

Closes: https://bugs.gentoo.org/705974
Package-Manager: Portage-2.3.94, Repoman-2.3.21
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 .../gstreamer/files/gstreamer-1.14.5-make43.patch  | 84 ++++++++++++++++++++++
 media-libs/gstreamer/gstreamer-1.14.5.ebuild       |  1 +
 2 files changed, 85 insertions(+)

diff --git a/media-libs/gstreamer/files/gstreamer-1.14.5-make43.patch b/media-libs/gstreamer/files/gstreamer-1.14.5-make43.patch
new file mode 100644
index 00000000000..e22cc9f8b45
--- /dev/null
+++ b/media-libs/gstreamer/files/gstreamer-1.14.5-make43.patch
@@ -0,0 +1,84 @@
+--- a/common/glib-gen.mak
++++ b/common/glib-gen.mak
+@@ -1,11 +1,13 @@
+ # these are the variables your Makefile.am should set
+ # the example is based on the colorbalance interface
+ 
++H := \#
++
+ #glib_enum_headers=$(colorbalance_headers)
+ #glib_enum_define=GST_COLOR_BALANCE
+ #glib_enum_prefix=gst_color_balance
+ 
+-enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers=$(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
+ 
+ # these are all the rules generating the relevant files
+ %-marshal.h: %-marshal.list
+--- a/common/gst-glib-gen.mak
++++ b/common/gst-glib-gen.mak
+@@ -1,14 +1,16 @@
+ # these are the variables your Makefile.am should set
+ # the example is based on the colorbalance interface
+ 
++H := \#
++
+ #glib_enum_headers=$(colorbalance_headers)
+ #glib_enum_define=GST_COLOR_BALANCE
+ #glib_gen_prefix=gst_color_balance
+ #glib_gen_basename=colorbalance
+ #glib_gen_decl_banner=GST_EXPORT
+-#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
++#glib_gen_decl_include=$(H)include <gst/foo/foo-prelude.h>
+ 
+-enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++enum_headers=$(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
+ 
+ # these are all the rules generating the relevant files
+ $(glib_gen_basename)-marshal.h: $(glib_gen_basename)-marshal.list
+--- a/libs/gst/controller/Makefile.in
++++ b/libs/gst/controller/Makefile.in
+@@ -17,13 +17,6 @@
+ # these are the variables your Makefile.am should set
+ # the example is based on the colorbalance interface
+ 
+-#glib_enum_headers=$(colorbalance_headers)
+-#glib_enum_define=GST_COLOR_BALANCE
+-#glib_gen_prefix=gst_color_balance
+-#glib_gen_basename=colorbalance
+-#glib_gen_decl_banner=GST_EXPORT
+-#glib_gen_decl_include=\#include <gst/foo/foo-prelude.h>
+-
+ 
+ 
+ VPATH = @srcdir@
+@@ -550,11 +543,12 @@
+ 	gstinterpolationcontrolsource.h \
+ 	gstlfocontrolsource.h
+ 
++H := \#
+ glib_enum_define = GST_CONTROLLER
+ glib_gen_prefix = gst
+ glib_gen_basename = controller
+ glib_gen_decl_banner = GST_CONTROLLER_API
+-glib_gen_decl_include = \#include <gst/controller/controller-prelude.h>
++glib_gen_decl_include = $(H)include <gst/controller/controller-prelude.h>
+ built_sources = controller-enumtypes.c
+ built_headers = controller-enumtypes.h
+ BUILT_SOURCES = $(built_sources) $(built_headers)
+@@ -587,7 +581,14 @@
+ libgstcontroller_@GST_API_VERSION@_la_LIBADD = $(GST_OBJ_LIBS) $(LIBM)
+ libgstcontroller_@GST_API_VERSION@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) $(GST_LT_LDFLAGS)
+ CLEANFILES = *.gcno *.gcda *.gcov $(BUILT_SOURCES) $(am__append_1)
+-enum_headers = $(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
++
++#glib_enum_headers=$(colorbalance_headers)
++#glib_enum_define=GST_COLOR_BALANCE
++#glib_gen_prefix=gst_color_balance
++#glib_gen_basename=colorbalance
++#glib_gen_decl_banner=GST_EXPORT
++#glib_gen_decl_include=$(H)include <gst/foo/foo-prelude.h>
++enum_headers = $(foreach h,$(glib_enum_headers),\n$(H)include \"$(h)\")
+ @HAVE_INTROSPECTION_TRUE@BUILT_GIRSOURCES = GstController-@GST_API_VERSION@.gir
+ @HAVE_INTROSPECTION_TRUE@gir_headers = $(patsubst %,$(srcdir)/%, \
+ @HAVE_INTROSPECTION_TRUE@	$(libgstcontroller_@GST_API_VERSION@_include_HEADERS)) \

diff --git a/media-libs/gstreamer/gstreamer-1.14.5.ebuild b/media-libs/gstreamer/gstreamer-1.14.5.ebuild
index 3de3bd8ed03..d1e6df24377 100644
--- a/media-libs/gstreamer/gstreamer-1.14.5.ebuild
+++ b/media-libs/gstreamer/gstreamer-1.14.5.ebuild
@@ -37,6 +37,7 @@ DEPEND="${RDEPEND}
 
 PATCHES=(
 	"${FILESDIR}"/1.14-glib-2.60-tests-compat.patch
+	"${FILESDIR}"/${PN}-1.14.5-make43.patch # remove when bumping and switching to Meson
 )
 
 src_configure() {


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-libs/gstreamer/files/, media-libs/gstreamer/
@ 2023-01-29  7:33 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2023-01-29  7:33 UTC (permalink / raw
  To: gentoo-commits

commit:     2c57b02687ae18efdc6638b6562e6472167b6e8a
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 29 07:29:20 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jan 29 07:33:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2c57b026

media-libs/gstreamer: backport race condition fix for tests

Closes: https://bugs.gentoo.org/888986
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/gstreamer-1.20.5-tests-race.patch        | 293 +++++++++++++++++++++
 media-libs/gstreamer/gstreamer-1.20.5.ebuild       |   1 +
 2 files changed, 294 insertions(+)

diff --git a/media-libs/gstreamer/files/gstreamer-1.20.5-tests-race.patch b/media-libs/gstreamer/files/gstreamer-1.20.5-tests-race.patch
new file mode 100644
index 000000000000..05b183ec3054
--- /dev/null
+++ b/media-libs/gstreamer/files/gstreamer-1.20.5-tests-race.patch
@@ -0,0 +1,293 @@
+https://bugs.gentoo.org/888986
+https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/ccd582c3321312fe96b28ce90fe6f2fd7adfa058
+
+From ccd582c3321312fe96b28ce90fe6f2fd7adfa058 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
+Date: Tue, 21 Jun 2022 11:51:35 +0300
+Subject: [PATCH] bin: Fix race conditions in tests
+
+The latency messages are non-deterministic and can arrive before/after
+async-done or during state-changes as they are posted by e.g. sinks from
+their streaming thread but bins are finishing asynchronous state changes
+from a secondary helper thread.
+
+To solve this, expect latency messages at any time and assert that we
+receive one at some point during the test.
+
+Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3647>
+--- a/tests/check/gst/gstbin.c
++++ b/tests/check/gst/gstbin.c
+@@ -27,50 +27,95 @@
+ #include <gst/base/gstbasesrc.h>
+ 
+ static void
+-pop_async_done (GstBus * bus)
++pop_async_done (GstBus * bus, gboolean * had_latency)
+ {
+   GstMessage *message;
++  GstMessageType types = GST_MESSAGE_ASYNC_DONE;
++
++  if (!*had_latency)
++    types |= GST_MESSAGE_LATENCY;
+ 
+   GST_DEBUG ("popping async-done message");
+-  message = gst_bus_poll (bus, GST_MESSAGE_ASYNC_DONE, -1);
+ 
+-  fail_unless (message && GST_MESSAGE_TYPE (message)
+-      == GST_MESSAGE_ASYNC_DONE, "did not get GST_MESSAGE_ASYNC_DONE");
++  do {
++    message = gst_bus_poll (bus, types, -1);
+ 
+-  gst_message_unref (message);
+-  GST_DEBUG ("popped message");
++    fail_unless (message);
++    GST_DEBUG ("popped message %s",
++        gst_message_type_get_name (GST_MESSAGE_TYPE (message)));
++
++    if (GST_MESSAGE_TYPE (message) == GST_MESSAGE_LATENCY) {
++      fail_unless (*had_latency == FALSE);
++      *had_latency = TRUE;
++      gst_clear_message (&message);
++      types &= ~GST_MESSAGE_LATENCY;
++      continue;
++    }
++
++    fail_unless (GST_MESSAGE_TYPE (message)
++        == GST_MESSAGE_ASYNC_DONE, "did not get GST_MESSAGE_ASYNC_DONE");
++
++    gst_clear_message (&message);
++    break;
++  } while (TRUE);
+ }
+ 
+ static void
+-pop_latency (GstBus * bus)
++pop_latency (GstBus * bus, gboolean * had_latency)
+ {
+   GstMessage *message;
+ 
+-  GST_DEBUG ("popping async-done message");
++  if (*had_latency)
++    return;
++
++  GST_DEBUG ("popping latency message");
+   message = gst_bus_poll (bus, GST_MESSAGE_LATENCY, -1);
+ 
+-  fail_unless (message && GST_MESSAGE_TYPE (message)
++  fail_unless (message);
++  fail_unless (GST_MESSAGE_TYPE (message)
+       == GST_MESSAGE_LATENCY, "did not get GST_MESSAGE_LATENCY");
+ 
+-  gst_message_unref (message);
+-  GST_DEBUG ("popped message");
++  GST_DEBUG ("popped message %s",
++      gst_message_type_get_name (GST_MESSAGE_TYPE (message)));
++  gst_clear_message (&message);
++
++  *had_latency = TRUE;
+ }
+ 
+ static void
+-pop_state_changed (GstBus * bus, int count)
++pop_state_changed (GstBus * bus, int count, gboolean * had_latency)
+ {
+   GstMessage *message;
+-
++  GstMessageType types = GST_MESSAGE_STATE_CHANGED;
+   int i;
+ 
++  if (!*had_latency)
++    types |= GST_MESSAGE_LATENCY;
++
+   GST_DEBUG ("popping %d messages", count);
+   for (i = 0; i < count; ++i) {
+-    message = gst_bus_poll (bus, GST_MESSAGE_STATE_CHANGED, -1);
+-
+-    fail_unless (message && GST_MESSAGE_TYPE (message)
+-        == GST_MESSAGE_STATE_CHANGED, "did not get GST_MESSAGE_STATE_CHANGED");
+-
+-    gst_message_unref (message);
++    do {
++      message = gst_bus_poll (bus, types, -1);
++
++      fail_unless (message);
++      GST_DEBUG ("popped message %s",
++          gst_message_type_get_name (GST_MESSAGE_TYPE (message)));
++
++      if (GST_MESSAGE_TYPE (message) == GST_MESSAGE_LATENCY) {
++        fail_unless (*had_latency == FALSE);
++        *had_latency = TRUE;
++        gst_clear_message (&message);
++        types &= ~GST_MESSAGE_LATENCY;
++        continue;
++      }
++
++      fail_unless (GST_MESSAGE_TYPE (message)
++          == GST_MESSAGE_STATE_CHANGED,
++          "did not get GST_MESSAGE_STATE_CHANGED");
++
++      gst_message_unref (message);
++      break;
++    } while (TRUE);
+   }
+   GST_DEBUG ("popped %d messages", count);
+ }
+@@ -538,6 +583,7 @@ GST_START_TEST (test_message_state_changed_children)
+   GstBus *bus;
+   GstStateChangeReturn ret;
+   GstState current, pending;
++  gboolean had_latency = FALSE;
+ 
+   pipeline = GST_PIPELINE (gst_pipeline_new (NULL));
+   fail_unless (pipeline != NULL, "Could not create pipeline");
+@@ -576,7 +622,7 @@ GST_START_TEST (test_message_state_changed_children)
+   ASSERT_OBJECT_REFCOUNT (sink, "sink", 2);
+   ASSERT_OBJECT_REFCOUNT (pipeline, "pipeline", 2);
+ 
+-  pop_state_changed (bus, 3);
++  pop_state_changed (bus, 3, &had_latency);
+   fail_if (gst_bus_have_pending (bus), "unexpected pending messages");
+ 
+   ASSERT_OBJECT_REFCOUNT (bus, "bus", 2);
+@@ -619,9 +665,9 @@ GST_START_TEST (test_message_state_changed_children)
+    * its state_change message */
+   ASSERT_OBJECT_REFCOUNT_BETWEEN (pipeline, "pipeline", 3, 4);
+ 
+-  pop_state_changed (bus, 3);
+-  pop_async_done (bus);
+-  pop_latency (bus);
++  pop_state_changed (bus, 3, &had_latency);
++  pop_async_done (bus, &had_latency);
++  pop_latency (bus, &had_latency);
+   fail_if ((gst_bus_pop (bus)) != NULL);
+ 
+   ASSERT_OBJECT_REFCOUNT_BETWEEN (bus, "bus", 2, 3);
+@@ -648,7 +694,7 @@ GST_START_TEST (test_message_state_changed_children)
+   ASSERT_OBJECT_REFCOUNT_BETWEEN (sink, "sink", 2, 4);
+   ASSERT_OBJECT_REFCOUNT (pipeline, "pipeline", 3);
+ 
+-  pop_state_changed (bus, 3);
++  pop_state_changed (bus, 3, &had_latency);
+   fail_if ((gst_bus_pop (bus)) != NULL);
+ 
+   ASSERT_OBJECT_REFCOUNT (bus, "bus", 2);
+@@ -669,7 +715,7 @@ GST_START_TEST (test_message_state_changed_children)
+   ASSERT_OBJECT_REFCOUNT_BETWEEN (sink, "sink", 3, 4);
+   ASSERT_OBJECT_REFCOUNT (pipeline, "pipeline", 3);
+ 
+-  pop_state_changed (bus, 6);
++  pop_state_changed (bus, 6, &had_latency);
+   fail_if ((gst_bus_pop (bus)) != NULL);
+ 
+   ASSERT_OBJECT_REFCOUNT (src, "src", 1);
+@@ -696,6 +742,7 @@ GST_START_TEST (test_watch_for_state_change)
+   GstElement *src, *sink, *bin;
+   GstBus *bus;
+   GstStateChangeReturn ret;
++  gboolean had_latency = FALSE;
+ 
+   bin = gst_element_factory_make ("bin", NULL);
+   fail_unless (bin != NULL, "Could not create bin");
+@@ -722,9 +769,9 @@ GST_START_TEST (test_watch_for_state_change)
+       GST_CLOCK_TIME_NONE);
+   fail_unless (ret == GST_STATE_CHANGE_SUCCESS);
+ 
+-  pop_state_changed (bus, 6);
+-  pop_async_done (bus);
+-  pop_latency (bus);
++  pop_state_changed (bus, 6, &had_latency);
++  pop_async_done (bus, &had_latency);
++  pop_latency (bus, &had_latency);
+ 
+   fail_unless (gst_bus_have_pending (bus) == FALSE,
+       "Unexpected messages on bus");
+@@ -732,16 +779,17 @@ GST_START_TEST (test_watch_for_state_change)
+   ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PLAYING);
+   fail_unless (ret == GST_STATE_CHANGE_SUCCESS);
+ 
+-  pop_state_changed (bus, 3);
++  pop_state_changed (bus, 3, &had_latency);
+ 
++  had_latency = FALSE;
+   /* this one might return either SUCCESS or ASYNC, likely SUCCESS */
+   ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PAUSED);
+   gst_element_get_state (GST_ELEMENT (bin), NULL, NULL, GST_CLOCK_TIME_NONE);
+ 
+-  pop_state_changed (bus, 3);
++  pop_state_changed (bus, 3, &had_latency);
+   if (ret == GST_STATE_CHANGE_ASYNC) {
+-    pop_async_done (bus);
+-    pop_latency (bus);
++    pop_async_done (bus, &had_latency);
++    pop_latency (bus, &had_latency);
+   }
+ 
+   fail_unless (gst_bus_have_pending (bus) == FALSE,
+@@ -898,6 +946,7 @@ GST_START_TEST (test_children_state_change_order_flagged_sink)
+   GstStateChangeReturn ret;
+   GstState current, pending;
+   GstBus *bus;
++  gboolean had_latency = FALSE;
+ 
+   pipeline = gst_pipeline_new (NULL);
+   fail_unless (pipeline != NULL, "Could not create pipeline");
+@@ -951,10 +1000,11 @@ GST_START_TEST (test_children_state_change_order_flagged_sink)
+   ASSERT_STATE_CHANGE_MSG (bus, sink, GST_STATE_READY, GST_STATE_PAUSED, 107);
+ #else
+ 
+-  pop_state_changed (bus, 2);   /* pop remaining ready => paused messages off the bus */
++  pop_state_changed (bus, 2, &had_latency);     /* pop remaining ready => paused messages off the bus */
+   ASSERT_STATE_CHANGE_MSG (bus, pipeline, GST_STATE_READY, GST_STATE_PAUSED,
+       108);
+-  pop_async_done (bus);
++  pop_async_done (bus, &had_latency);
++  pop_latency (bus, &had_latency);
+ #endif
+   /* PAUSED => PLAYING */
+   GST_DEBUG ("popping PAUSED -> PLAYING messages");
+@@ -972,8 +1022,8 @@ GST_START_TEST (test_children_state_change_order_flagged_sink)
+   fail_if (ret != GST_STATE_CHANGE_SUCCESS, "State change to READY failed");
+ 
+   /* TODO: do we need to check downwards state change order as well? */
+-  pop_state_changed (bus, 4);   /* pop playing => paused messages off the bus */
+-  pop_state_changed (bus, 4);   /* pop paused => ready messages off the bus */
++  pop_state_changed (bus, 4, &had_latency);     /* pop playing => paused messages off the bus */
++  pop_state_changed (bus, 4, &had_latency);     /* pop paused => ready messages off the bus */
+ 
+   while (GST_OBJECT_REFCOUNT_VALUE (pipeline) > 1)
+     THREAD_SWITCH ();
+@@ -1002,6 +1052,7 @@ GST_START_TEST (test_children_state_change_order_semi_sink)
+   GstStateChangeReturn ret;
+   GstState current, pending;
+   GstBus *bus;
++  gboolean had_latency = FALSE;
+ 
+   /* (2) Now again, but check other code path where we don't have
+    *     a proper sink correctly flagged as such, but a 'semi-sink' */
+@@ -1056,10 +1107,11 @@ GST_START_TEST (test_children_state_change_order_semi_sink)
+   ASSERT_STATE_CHANGE_MSG (bus, src, GST_STATE_READY, GST_STATE_PAUSED, 206);
+   ASSERT_STATE_CHANGE_MSG (bus, sink, GST_STATE_READY, GST_STATE_PAUSED, 207);
+ #else
+-  pop_state_changed (bus, 2);   /* pop remaining ready => paused messages off the bus */
++  pop_state_changed (bus, 2, &had_latency);     /* pop remaining ready => paused messages off the bus */
+   ASSERT_STATE_CHANGE_MSG (bus, pipeline, GST_STATE_READY, GST_STATE_PAUSED,
+       208);
+-  pop_async_done (bus);
++  pop_async_done (bus, &had_latency);
++  pop_latency (bus, &had_latency);
+ 
+   /* PAUSED => PLAYING */
+   GST_DEBUG ("popping PAUSED -> PLAYING messages");
+@@ -1076,8 +1128,8 @@ GST_START_TEST (test_children_state_change_order_semi_sink)
+   fail_if (ret != GST_STATE_CHANGE_SUCCESS, "State change to READY failed");
+ 
+   /* TODO: do we need to check downwards state change order as well? */
+-  pop_state_changed (bus, 4);   /* pop playing => paused messages off the bus */
+-  pop_state_changed (bus, 4);   /* pop paused => ready messages off the bus */
++  pop_state_changed (bus, 4, &had_latency);     /* pop playing => paused messages off the bus */
++  pop_state_changed (bus, 4, &had_latency);     /* pop paused => ready messages off the bus */
+ 
+   GST_DEBUG ("waiting for pipeline to reach refcount 1");
+   while (GST_OBJECT_REFCOUNT_VALUE (pipeline) > 1)
+-- 
+GitLab

diff --git a/media-libs/gstreamer/gstreamer-1.20.5.ebuild b/media-libs/gstreamer/gstreamer-1.20.5.ebuild
index 311e94692cbe..8226608a2c54 100644
--- a/media-libs/gstreamer/gstreamer-1.20.5.ebuild
+++ b/media-libs/gstreamer/gstreamer-1.20.5.ebuild
@@ -34,6 +34,7 @@ BDEPEND="
 DOCS=( AUTHORS ChangeLog NEWS MAINTAINERS README.md RELEASE )
 
 PATCHES=(
+	"${FILESDIR}"/${P}-tests-race.patch
 )
 
 multilib_src_configure() {


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-libs/gstreamer/files/, media-libs/gstreamer/
@ 2024-04-30  8:28 Mart Raudsepp
  0 siblings, 0 replies; 6+ messages in thread
From: Mart Raudsepp @ 2024-04-30  8:28 UTC (permalink / raw
  To: gentoo-commits

commit:     15881aaf14c79dc8bd18060646ec2d69e556fd07
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 30 07:50:05 2024 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Tue Apr 30 08:23:48 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=15881aaf

media-libs/gstreamer: drop 1.20.5, 1.20.6

Bug: https://bugs.gentoo.org/917791
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 media-libs/gstreamer/Manifest                      |   2 -
 .../files/gstreamer-1.20.5-tests-race.patch        | 293 ---------------------
 media-libs/gstreamer/gstreamer-1.20.5.ebuild       |  76 ------
 media-libs/gstreamer/gstreamer-1.20.6.ebuild       |  72 -----
 4 files changed, 443 deletions(-)

diff --git a/media-libs/gstreamer/Manifest b/media-libs/gstreamer/Manifest
index 0240c9b8ad80..4e39f93eb248 100644
--- a/media-libs/gstreamer/Manifest
+++ b/media-libs/gstreamer/Manifest
@@ -1,3 +1 @@
-DIST gstreamer-1.20.5.tar.xz 2690968 BLAKE2B cca6385b1fcc10928ad19e587ebb6ce202097f4a33d79555c969d3906dacc7e5074fc8f42a0566e40aa333502764ad0b491d610c05ef1921ad370bf5f5883afd SHA512 90c5f5865877170bb0dc570e61c22c27dea5adae2d9c304227da266b5b5b2eccd98ed21943f14bb5dfe169f4e020b8ac457a5d540363dfe2547180f34a3c7b29
-DIST gstreamer-1.20.6.tar.xz 2699648 BLAKE2B e475a7ef419d1b3588bf37f3d5fadbe4ca307b6915496d8da9535a9586f24ddacd338e54001ce30c666786493b28c2841c8a7fc8a36e5a678d846eeccc3979dc SHA512 eefd2932feb6c6c50eb69dd4831f4e4fe63c7f852050ddce0f447b0b54df2e2e5f81b6c1fefe295e2c771f2accef62aaef6aef3bda8395a1b75c84b9916d7795
 DIST gstreamer-1.22.11.tar.xz 1801248 BLAKE2B 856342994bc8750598cb256313151355e7c58d751214c168c53ba831cfcdf3ab789a192473ba0e0645df8cb7cb9e625348b18cfe83d839f1f231f8f746877f49 SHA512 8976cebd2cbac3ef31ee6163d2c5264be7d10d54ab9fe6f0b2317d7d0380420ef2378e1b476af09f1e6b203e3eafcda88fc08bb2f550a6f411d8670dec04843e

diff --git a/media-libs/gstreamer/files/gstreamer-1.20.5-tests-race.patch b/media-libs/gstreamer/files/gstreamer-1.20.5-tests-race.patch
deleted file mode 100644
index 05b183ec3054..000000000000
--- a/media-libs/gstreamer/files/gstreamer-1.20.5-tests-race.patch
+++ /dev/null
@@ -1,293 +0,0 @@
-https://bugs.gentoo.org/888986
-https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/ccd582c3321312fe96b28ce90fe6f2fd7adfa058
-
-From ccd582c3321312fe96b28ce90fe6f2fd7adfa058 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
-Date: Tue, 21 Jun 2022 11:51:35 +0300
-Subject: [PATCH] bin: Fix race conditions in tests
-
-The latency messages are non-deterministic and can arrive before/after
-async-done or during state-changes as they are posted by e.g. sinks from
-their streaming thread but bins are finishing asynchronous state changes
-from a secondary helper thread.
-
-To solve this, expect latency messages at any time and assert that we
-receive one at some point during the test.
-
-Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3647>
---- a/tests/check/gst/gstbin.c
-+++ b/tests/check/gst/gstbin.c
-@@ -27,50 +27,95 @@
- #include <gst/base/gstbasesrc.h>
- 
- static void
--pop_async_done (GstBus * bus)
-+pop_async_done (GstBus * bus, gboolean * had_latency)
- {
-   GstMessage *message;
-+  GstMessageType types = GST_MESSAGE_ASYNC_DONE;
-+
-+  if (!*had_latency)
-+    types |= GST_MESSAGE_LATENCY;
- 
-   GST_DEBUG ("popping async-done message");
--  message = gst_bus_poll (bus, GST_MESSAGE_ASYNC_DONE, -1);
- 
--  fail_unless (message && GST_MESSAGE_TYPE (message)
--      == GST_MESSAGE_ASYNC_DONE, "did not get GST_MESSAGE_ASYNC_DONE");
-+  do {
-+    message = gst_bus_poll (bus, types, -1);
- 
--  gst_message_unref (message);
--  GST_DEBUG ("popped message");
-+    fail_unless (message);
-+    GST_DEBUG ("popped message %s",
-+        gst_message_type_get_name (GST_MESSAGE_TYPE (message)));
-+
-+    if (GST_MESSAGE_TYPE (message) == GST_MESSAGE_LATENCY) {
-+      fail_unless (*had_latency == FALSE);
-+      *had_latency = TRUE;
-+      gst_clear_message (&message);
-+      types &= ~GST_MESSAGE_LATENCY;
-+      continue;
-+    }
-+
-+    fail_unless (GST_MESSAGE_TYPE (message)
-+        == GST_MESSAGE_ASYNC_DONE, "did not get GST_MESSAGE_ASYNC_DONE");
-+
-+    gst_clear_message (&message);
-+    break;
-+  } while (TRUE);
- }
- 
- static void
--pop_latency (GstBus * bus)
-+pop_latency (GstBus * bus, gboolean * had_latency)
- {
-   GstMessage *message;
- 
--  GST_DEBUG ("popping async-done message");
-+  if (*had_latency)
-+    return;
-+
-+  GST_DEBUG ("popping latency message");
-   message = gst_bus_poll (bus, GST_MESSAGE_LATENCY, -1);
- 
--  fail_unless (message && GST_MESSAGE_TYPE (message)
-+  fail_unless (message);
-+  fail_unless (GST_MESSAGE_TYPE (message)
-       == GST_MESSAGE_LATENCY, "did not get GST_MESSAGE_LATENCY");
- 
--  gst_message_unref (message);
--  GST_DEBUG ("popped message");
-+  GST_DEBUG ("popped message %s",
-+      gst_message_type_get_name (GST_MESSAGE_TYPE (message)));
-+  gst_clear_message (&message);
-+
-+  *had_latency = TRUE;
- }
- 
- static void
--pop_state_changed (GstBus * bus, int count)
-+pop_state_changed (GstBus * bus, int count, gboolean * had_latency)
- {
-   GstMessage *message;
--
-+  GstMessageType types = GST_MESSAGE_STATE_CHANGED;
-   int i;
- 
-+  if (!*had_latency)
-+    types |= GST_MESSAGE_LATENCY;
-+
-   GST_DEBUG ("popping %d messages", count);
-   for (i = 0; i < count; ++i) {
--    message = gst_bus_poll (bus, GST_MESSAGE_STATE_CHANGED, -1);
--
--    fail_unless (message && GST_MESSAGE_TYPE (message)
--        == GST_MESSAGE_STATE_CHANGED, "did not get GST_MESSAGE_STATE_CHANGED");
--
--    gst_message_unref (message);
-+    do {
-+      message = gst_bus_poll (bus, types, -1);
-+
-+      fail_unless (message);
-+      GST_DEBUG ("popped message %s",
-+          gst_message_type_get_name (GST_MESSAGE_TYPE (message)));
-+
-+      if (GST_MESSAGE_TYPE (message) == GST_MESSAGE_LATENCY) {
-+        fail_unless (*had_latency == FALSE);
-+        *had_latency = TRUE;
-+        gst_clear_message (&message);
-+        types &= ~GST_MESSAGE_LATENCY;
-+        continue;
-+      }
-+
-+      fail_unless (GST_MESSAGE_TYPE (message)
-+          == GST_MESSAGE_STATE_CHANGED,
-+          "did not get GST_MESSAGE_STATE_CHANGED");
-+
-+      gst_message_unref (message);
-+      break;
-+    } while (TRUE);
-   }
-   GST_DEBUG ("popped %d messages", count);
- }
-@@ -538,6 +583,7 @@ GST_START_TEST (test_message_state_changed_children)
-   GstBus *bus;
-   GstStateChangeReturn ret;
-   GstState current, pending;
-+  gboolean had_latency = FALSE;
- 
-   pipeline = GST_PIPELINE (gst_pipeline_new (NULL));
-   fail_unless (pipeline != NULL, "Could not create pipeline");
-@@ -576,7 +622,7 @@ GST_START_TEST (test_message_state_changed_children)
-   ASSERT_OBJECT_REFCOUNT (sink, "sink", 2);
-   ASSERT_OBJECT_REFCOUNT (pipeline, "pipeline", 2);
- 
--  pop_state_changed (bus, 3);
-+  pop_state_changed (bus, 3, &had_latency);
-   fail_if (gst_bus_have_pending (bus), "unexpected pending messages");
- 
-   ASSERT_OBJECT_REFCOUNT (bus, "bus", 2);
-@@ -619,9 +665,9 @@ GST_START_TEST (test_message_state_changed_children)
-    * its state_change message */
-   ASSERT_OBJECT_REFCOUNT_BETWEEN (pipeline, "pipeline", 3, 4);
- 
--  pop_state_changed (bus, 3);
--  pop_async_done (bus);
--  pop_latency (bus);
-+  pop_state_changed (bus, 3, &had_latency);
-+  pop_async_done (bus, &had_latency);
-+  pop_latency (bus, &had_latency);
-   fail_if ((gst_bus_pop (bus)) != NULL);
- 
-   ASSERT_OBJECT_REFCOUNT_BETWEEN (bus, "bus", 2, 3);
-@@ -648,7 +694,7 @@ GST_START_TEST (test_message_state_changed_children)
-   ASSERT_OBJECT_REFCOUNT_BETWEEN (sink, "sink", 2, 4);
-   ASSERT_OBJECT_REFCOUNT (pipeline, "pipeline", 3);
- 
--  pop_state_changed (bus, 3);
-+  pop_state_changed (bus, 3, &had_latency);
-   fail_if ((gst_bus_pop (bus)) != NULL);
- 
-   ASSERT_OBJECT_REFCOUNT (bus, "bus", 2);
-@@ -669,7 +715,7 @@ GST_START_TEST (test_message_state_changed_children)
-   ASSERT_OBJECT_REFCOUNT_BETWEEN (sink, "sink", 3, 4);
-   ASSERT_OBJECT_REFCOUNT (pipeline, "pipeline", 3);
- 
--  pop_state_changed (bus, 6);
-+  pop_state_changed (bus, 6, &had_latency);
-   fail_if ((gst_bus_pop (bus)) != NULL);
- 
-   ASSERT_OBJECT_REFCOUNT (src, "src", 1);
-@@ -696,6 +742,7 @@ GST_START_TEST (test_watch_for_state_change)
-   GstElement *src, *sink, *bin;
-   GstBus *bus;
-   GstStateChangeReturn ret;
-+  gboolean had_latency = FALSE;
- 
-   bin = gst_element_factory_make ("bin", NULL);
-   fail_unless (bin != NULL, "Could not create bin");
-@@ -722,9 +769,9 @@ GST_START_TEST (test_watch_for_state_change)
-       GST_CLOCK_TIME_NONE);
-   fail_unless (ret == GST_STATE_CHANGE_SUCCESS);
- 
--  pop_state_changed (bus, 6);
--  pop_async_done (bus);
--  pop_latency (bus);
-+  pop_state_changed (bus, 6, &had_latency);
-+  pop_async_done (bus, &had_latency);
-+  pop_latency (bus, &had_latency);
- 
-   fail_unless (gst_bus_have_pending (bus) == FALSE,
-       "Unexpected messages on bus");
-@@ -732,16 +779,17 @@ GST_START_TEST (test_watch_for_state_change)
-   ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PLAYING);
-   fail_unless (ret == GST_STATE_CHANGE_SUCCESS);
- 
--  pop_state_changed (bus, 3);
-+  pop_state_changed (bus, 3, &had_latency);
- 
-+  had_latency = FALSE;
-   /* this one might return either SUCCESS or ASYNC, likely SUCCESS */
-   ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PAUSED);
-   gst_element_get_state (GST_ELEMENT (bin), NULL, NULL, GST_CLOCK_TIME_NONE);
- 
--  pop_state_changed (bus, 3);
-+  pop_state_changed (bus, 3, &had_latency);
-   if (ret == GST_STATE_CHANGE_ASYNC) {
--    pop_async_done (bus);
--    pop_latency (bus);
-+    pop_async_done (bus, &had_latency);
-+    pop_latency (bus, &had_latency);
-   }
- 
-   fail_unless (gst_bus_have_pending (bus) == FALSE,
-@@ -898,6 +946,7 @@ GST_START_TEST (test_children_state_change_order_flagged_sink)
-   GstStateChangeReturn ret;
-   GstState current, pending;
-   GstBus *bus;
-+  gboolean had_latency = FALSE;
- 
-   pipeline = gst_pipeline_new (NULL);
-   fail_unless (pipeline != NULL, "Could not create pipeline");
-@@ -951,10 +1000,11 @@ GST_START_TEST (test_children_state_change_order_flagged_sink)
-   ASSERT_STATE_CHANGE_MSG (bus, sink, GST_STATE_READY, GST_STATE_PAUSED, 107);
- #else
- 
--  pop_state_changed (bus, 2);   /* pop remaining ready => paused messages off the bus */
-+  pop_state_changed (bus, 2, &had_latency);     /* pop remaining ready => paused messages off the bus */
-   ASSERT_STATE_CHANGE_MSG (bus, pipeline, GST_STATE_READY, GST_STATE_PAUSED,
-       108);
--  pop_async_done (bus);
-+  pop_async_done (bus, &had_latency);
-+  pop_latency (bus, &had_latency);
- #endif
-   /* PAUSED => PLAYING */
-   GST_DEBUG ("popping PAUSED -> PLAYING messages");
-@@ -972,8 +1022,8 @@ GST_START_TEST (test_children_state_change_order_flagged_sink)
-   fail_if (ret != GST_STATE_CHANGE_SUCCESS, "State change to READY failed");
- 
-   /* TODO: do we need to check downwards state change order as well? */
--  pop_state_changed (bus, 4);   /* pop playing => paused messages off the bus */
--  pop_state_changed (bus, 4);   /* pop paused => ready messages off the bus */
-+  pop_state_changed (bus, 4, &had_latency);     /* pop playing => paused messages off the bus */
-+  pop_state_changed (bus, 4, &had_latency);     /* pop paused => ready messages off the bus */
- 
-   while (GST_OBJECT_REFCOUNT_VALUE (pipeline) > 1)
-     THREAD_SWITCH ();
-@@ -1002,6 +1052,7 @@ GST_START_TEST (test_children_state_change_order_semi_sink)
-   GstStateChangeReturn ret;
-   GstState current, pending;
-   GstBus *bus;
-+  gboolean had_latency = FALSE;
- 
-   /* (2) Now again, but check other code path where we don't have
-    *     a proper sink correctly flagged as such, but a 'semi-sink' */
-@@ -1056,10 +1107,11 @@ GST_START_TEST (test_children_state_change_order_semi_sink)
-   ASSERT_STATE_CHANGE_MSG (bus, src, GST_STATE_READY, GST_STATE_PAUSED, 206);
-   ASSERT_STATE_CHANGE_MSG (bus, sink, GST_STATE_READY, GST_STATE_PAUSED, 207);
- #else
--  pop_state_changed (bus, 2);   /* pop remaining ready => paused messages off the bus */
-+  pop_state_changed (bus, 2, &had_latency);     /* pop remaining ready => paused messages off the bus */
-   ASSERT_STATE_CHANGE_MSG (bus, pipeline, GST_STATE_READY, GST_STATE_PAUSED,
-       208);
--  pop_async_done (bus);
-+  pop_async_done (bus, &had_latency);
-+  pop_latency (bus, &had_latency);
- 
-   /* PAUSED => PLAYING */
-   GST_DEBUG ("popping PAUSED -> PLAYING messages");
-@@ -1076,8 +1128,8 @@ GST_START_TEST (test_children_state_change_order_semi_sink)
-   fail_if (ret != GST_STATE_CHANGE_SUCCESS, "State change to READY failed");
- 
-   /* TODO: do we need to check downwards state change order as well? */
--  pop_state_changed (bus, 4);   /* pop playing => paused messages off the bus */
--  pop_state_changed (bus, 4);   /* pop paused => ready messages off the bus */
-+  pop_state_changed (bus, 4, &had_latency);     /* pop playing => paused messages off the bus */
-+  pop_state_changed (bus, 4, &had_latency);     /* pop paused => ready messages off the bus */
- 
-   GST_DEBUG ("waiting for pipeline to reach refcount 1");
-   while (GST_OBJECT_REFCOUNT_VALUE (pipeline) > 1)
--- 
-GitLab

diff --git a/media-libs/gstreamer/gstreamer-1.20.5.ebuild b/media-libs/gstreamer/gstreamer-1.20.5.ebuild
deleted file mode 100644
index 6d186c17f57c..000000000000
--- a/media-libs/gstreamer/gstreamer-1.20.5.ebuild
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit gstreamer-meson pax-utils
-
-DESCRIPTION="Open source multimedia framework"
-HOMEPAGE="https://gstreamer.freedesktop.org/"
-SRC_URI="https://${PN}.freedesktop.org/src/${PN}/${P}.tar.xz"
-
-LICENSE="LGPL-2+"
-SLOT="1.0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="+caps +introspection +orc unwind"
-
-RDEPEND="
-	>=dev-libs/glib-2.56.0:2[${MULTILIB_USEDEP}]
-	caps? ( sys-libs/libcap[${MULTILIB_USEDEP}] )
-	introspection? ( >=dev-libs/gobject-introspection-1.31.1:= )
-	unwind? (
-		>=sys-libs/libunwind-1.2_rc1[${MULTILIB_USEDEP}]
-		dev-libs/elfutils[${MULTILIB_USEDEP}]
-	)
-	!<media-libs/gst-plugins-bad-1.13.1:1.0
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
-	dev-util/glib-utils
-	app-alternatives/yacc
-	app-alternatives/lex
-"
-
-DOCS=( AUTHORS ChangeLog NEWS MAINTAINERS README.md RELEASE )
-
-PATCHES=(
-	"${FILESDIR}"/${P}-tests-race.patch
-)
-
-multilib_src_configure() {
-	local emesonargs=(
-		-Dbenchmarks=disabled
-		-Dexamples=disabled
-		-Dcheck=enabled
-		$(meson_feature unwind libunwind)
-		$(meson_feature unwind libdw)
-	)
-
-	if use caps ; then
-		emesonargs+=( -Dptp-helper-permissions=capabilities )
-	else
-		emesonargs+=(
-			-Dptp-helper-permissions=setuid-root
-			-Dptp-helper-setuid-user=nobody
-			-Dptp-helper-setuid-group=nobody
-		)
-	fi
-
-	gstreamer_multilib_src_configure
-}
-
-multilib_src_install() {
-	# can't do "default", we want to install docs in multilib_src_install_all
-	DESTDIR="${D}" eninja install
-
-	# Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
-	use orc && pax-mark -m "${ED}/usr/$(get_libdir)/gstreamer-${SLOT}/gst-plugin-scanner"
-}
-
-multilib_src_install_all() {
-	einstalldocs
-	find "${ED}" -name '*.la' -delete || die
-
-	# Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
-	use orc && pax-mark -m "${ED}/usr/bin/gst-launch-${SLOT}"
-}

diff --git a/media-libs/gstreamer/gstreamer-1.20.6.ebuild b/media-libs/gstreamer/gstreamer-1.20.6.ebuild
deleted file mode 100644
index 3bad071b5a4a..000000000000
--- a/media-libs/gstreamer/gstreamer-1.20.6.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit gstreamer-meson pax-utils
-
-DESCRIPTION="Open source multimedia framework"
-HOMEPAGE="https://gstreamer.freedesktop.org/"
-SRC_URI="https://${PN}.freedesktop.org/src/${PN}/${P}.tar.xz"
-
-LICENSE="LGPL-2+"
-SLOT="1.0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="+caps +introspection +orc unwind"
-
-RDEPEND="
-	>=dev-libs/glib-2.56.0:2[${MULTILIB_USEDEP}]
-	caps? ( sys-libs/libcap[${MULTILIB_USEDEP}] )
-	introspection? ( >=dev-libs/gobject-introspection-1.31.1:= )
-	unwind? (
-		>=sys-libs/libunwind-1.2_rc1[${MULTILIB_USEDEP}]
-		dev-libs/elfutils[${MULTILIB_USEDEP}]
-	)
-	!<media-libs/gst-plugins-bad-1.13.1:1.0
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
-	dev-util/glib-utils
-	app-alternatives/yacc
-	app-alternatives/lex
-"
-
-DOCS=( AUTHORS ChangeLog NEWS MAINTAINERS README.md RELEASE )
-
-multilib_src_configure() {
-	local emesonargs=(
-		-Dbenchmarks=disabled
-		-Dexamples=disabled
-		-Dcheck=enabled
-		$(meson_feature unwind libunwind)
-		$(meson_feature unwind libdw)
-	)
-
-	if use caps ; then
-		emesonargs+=( -Dptp-helper-permissions=capabilities )
-	else
-		emesonargs+=(
-			-Dptp-helper-permissions=setuid-root
-			-Dptp-helper-setuid-user=nobody
-			-Dptp-helper-setuid-group=nobody
-		)
-	fi
-
-	gstreamer_multilib_src_configure
-}
-
-multilib_src_install() {
-	# can't do "default", we want to install docs in multilib_src_install_all
-	DESTDIR="${D}" eninja install
-
-	# Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
-	use orc && pax-mark -m "${ED}/usr/$(get_libdir)/gstreamer-${SLOT}/gst-plugin-scanner"
-}
-
-multilib_src_install_all() {
-	einstalldocs
-	find "${ED}" -name '*.la' -delete || die
-
-	# Needed for orc-using gst plugins on hardened/PaX systems, bug #421579
-	use orc && pax-mark -m "${ED}/usr/bin/gst-launch-${SLOT}"
-}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-04-30  8:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-29  7:33 [gentoo-commits] repo/gentoo:master commit in: media-libs/gstreamer/files/, media-libs/gstreamer/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2024-04-30  8:28 Mart Raudsepp
2020-03-18 11:22 David Seifert
2019-08-25 18:02 Mart Raudsepp
2017-01-26  5:18 Mart Raudsepp
2016-05-10 23:39 Anthony G. Basile

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox