[Buildroot] [PATCH 1/1] package/gstreamer1/gstreamer1-mm: fix build with libglib 2.68
Fabrice Fontaine
fontaine.fabrice at gmail.com
Thu Sep 2 16:42:42 UTC 2021
Fix the following build failure raised since bump of libglib2 to version
2.68.1 in commit c72524fb1b1c6b7dd1b1f511eea0fdf5a39dd3a0:
../gstreamer/gstreamermm/register.h: In function 'GType Gst::register_mm_type(const gchar*)':
/home/buildroot/autobuild/run/instance-2/output-1/host/bin/../arm-buildroot-linux-gnueabihf/sysroot/usr/include/glib-2.0/glib/gatomic.h:117:19: error: argument 2 of '__atomic_load' must not be a pointer to a 'volatile' type
117 | __atomic_load (gapg_temp_atomic, &gapg_temp_newval, __ATOMIC_SEQ_CST); \
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Fixes:
- http://autobuild.buildroot.org/results/1c75cdcc183642fd4c15d56825848b83f2ad11a5
Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
---
.../0001-Fix-build-against-glib-2-68.patch | 44 +++++++++++++++++++
1 file changed, 44 insertions(+)
create mode 100644 package/gstreamer1/gstreamer1-mm/0001-Fix-build-against-glib-2-68.patch
diff --git a/package/gstreamer1/gstreamer1-mm/0001-Fix-build-against-glib-2-68.patch b/package/gstreamer1/gstreamer1-mm/0001-Fix-build-against-glib-2-68.patch
new file mode 100644
index 0000000000..3ffdbb9cbf
--- /dev/null
+++ b/package/gstreamer1/gstreamer1-mm/0001-Fix-build-against-glib-2-68.patch
@@ -0,0 +1,44 @@
+From 0c0b5f8cef3b1f0a06f56c34340e210e0f23d1b0 Mon Sep 17 00:00:00 2001
+From: Dominique Leuenberger <dimstar at opensuse.org>
+Date: Tue, 13 Jul 2021 10:32:30 +0000
+Subject: [PATCH] Fix build against glib 2.68
+
+volatile has been misused in the past
+
+[Retrieved from:
+https://gitlab.gnome.org/GNOME/gstreamermm/-/merge_requests/4]
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
+---
+ gstreamer/gstreamermm/register.h | 2 +-
+ tests/integration/test-integration-seekonstartup.cc | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gstreamer/gstreamermm/register.h b/gstreamer/gstreamermm/register.h
+index db66d172..a7ab3a63 100644
+--- a/gstreamer/gstreamermm/register.h
++++ b/gstreamer/gstreamermm/register.h
+@@ -110,7 +110,7 @@ register_mm_type(const gchar * type_name)
+ /* 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;
+
+diff --git a/tests/integration/test-integration-seekonstartup.cc b/tests/integration/test-integration-seekonstartup.cc
+index 247ac499..cd43a125 100644
+--- a/tests/integration/test-integration-seekonstartup.cc
++++ b/tests/integration/test-integration-seekonstartup.cc
+@@ -18,7 +18,7 @@ RefPtr<Glib::MainLoop> mainloop;
+ RefPtr<Bus> bus;
+ RefPtr<Pipeline> pipeline;
+ RefPtr<Pad> sink_pad;
+-static volatile gint counter;
++static gint counter;
+ bool prerolled = false;
+ gboolean was_check = 0;
+
+--
+GitLab
+
--
2.32.0
More information about the buildroot
mailing list