[packages/gstreamermm] - rel 2, compatibility fix for reent glib - stop rebuilding ac/am, there is no need for this

baggins baggins at pld-linux.org
Mon Sep 1 00:20:29 CEST 2025


commit d7542cc99733eaf1dbb2554648c48ec0231c2499
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Mon Sep 1 02:19:49 2025 +0200

    - rel 2, compatibility fix for reent glib
    - stop rebuilding ac/am, there is no need for this

 gstreamermm.spec  |  9 +++------
 no-volatile.patch | 17 +++++++++++++++++
 2 files changed, 20 insertions(+), 6 deletions(-)
---
diff --git a/gstreamermm.spec b/gstreamermm.spec
index 12670e5..fe37f7f 100644
--- a/gstreamermm.spec
+++ b/gstreamermm.spec
@@ -6,11 +6,12 @@ Summary:	A C++ bindings for the GStreamer library
 Summary(pl.UTF-8):	Wiązania C++ do biblioteki GStreamera
 Name:		gstreamermm
 Version:	1.10.0
-Release:	1
+Release:	2
 License:	LGPL v2+
 Group:		Libraries
 Source0:	http://ftp.gnome.org/pub/GNOME/sources/gstreamermm/1.10/%{name}-%{version}.tar.xz
 # Source0-md5:	57e9300f247ad27a4ef4df4fecc137c9
+Patch0:		no-volatile.patch
 URL:		https://gstreamer.freedesktop.org/bindings/cplusplus.html
 BuildRequires:	autoconf >= 2.59
 BuildRequires:	automake >= 1:1.9
@@ -85,13 +86,9 @@ Szczegółowa dokumentacja gstreamermm.
 
 %prep
 %setup -q
+%patch -P0 -p1
 
 %build
-%{__libtoolize}
-%{__aclocal} -I build
-%{__autoconf}
-%{__autoheader}
-%{__automake}
 %configure \
 	--disable-silent-rules \
 	%{?with_static_libs:--enable-static}
diff --git a/no-volatile.patch b/no-volatile.patch
new file mode 100644
index 0000000..ede9f91
--- /dev/null
+++ b/no-volatile.patch
@@ -0,0 +1,17 @@
+https://bugs.gentoo.org/786444
+
+g_once_init_enter(void*) should NOT be passed a volatile argument:
+https://developer.gnome.org/glib/stable/glib-Threads.html#g-once-init-enter
+"While location has a volatile qualifier, this is a historical
+artifact and the pointer passed to it should not be volatile."
+--- gstreamermm-1.10.0/gstreamer/gstreamermm/register.h.orig	2017-10-20 12:26:46.000000000 +0300
++++ gstreamermm-1.10.0/gstreamer/gstreamermm/register.h	2021-05-25 17:52:13.031337753 +0300
+@@ -110,7 +110,7 @@
+     /* The typedef for GType may be gulong or gsize, depending on the
+      * system and whether the compiler is c++ or not. The g_once_init_*
+      * functions always take a gsize * though ... */
+-    static volatile gsize gonce_data = 0;
++    static gsize gonce_data = 0;
+     if (g_once_init_enter (&gonce_data)) {
+         GTypeInfo info;
+ 
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/gstreamermm.git/commitdiff/d7542cc99733eaf1dbb2554648c48ec0231c2499



More information about the pld-cvs-commit mailing list