From 81d6b42420a001a68089d7fed42edd4013ddba3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Manuel=20J=C3=A1quez=20Leal?= Date: Thu, 30 Apr 2015 13:29:48 +0200 Subject: [PATCH] build: upgrade glib dependency to 2.32 Since bug #745728 was fixed the oldest supported version of GStreamer is 1.2. That GStreamer release requires glib 2.32, so we can upgrade our requirement too. This patch changes the required version of glib in configure.ac and removes the hacks in glibcompat.h https://bugzilla.gnome.org/show_bug.cgi?id=748698 --- configure.ac | 2 +- gst-libs/gst/vaapi/glibcompat.h | 126 -------------------------------- 2 files changed, 1 insertion(+), 127 deletions(-) diff --git a/configure.ac b/configure.ac index d86545f71d..22ff810725 100644 --- a/configure.ac +++ b/configure.ac @@ -23,7 +23,7 @@ m4_define([gst_vaapi_lt_revision], [0]) m4_define([gst_vaapi_lt_age], [0]) # glib version number -m4_define([glib_version], [2.28]) +m4_define([glib_version], [2.32]) # gstreamer version number m4_define([gst_api_version], [autodetect]) diff --git a/gst-libs/gst/vaapi/glibcompat.h b/gst-libs/gst/vaapi/glibcompat.h index 734d6e4824..b02fbade68 100644 --- a/gst-libs/gst/vaapi/glibcompat.h +++ b/gst-libs/gst/vaapi/glibcompat.h @@ -33,132 +33,6 @@ new_api new_args \ old_api old_args; \ } -#if !GLIB_CHECK_VERSION(2,27,2) -static inline void -g_list_free_full(GList *list, GDestroyNotify free_func) -{ - g_list_foreach(list, (GFunc)free_func, NULL); - g_list_free(list); -} -#endif - -#if !GLIB_CHECK_VERSION(2,28,0) -static inline void -g_clear_object_inline(volatile GObject **object_ptr) -{ - gpointer * const ptr = (gpointer)object_ptr; - gpointer old; - - do { - old = g_atomic_pointer_get(ptr); - } while G_UNLIKELY(!g_atomic_pointer_compare_and_exchange(ptr, old, NULL)); - - if (old) - g_object_unref(old); -} -#undef g_clear_object -#define g_clear_object(obj) g_clear_object_inline((volatile GObject **)(obj)) -#endif - -#if !GLIB_CHECK_VERSION(2,31,2) -typedef GStaticMutex GCompatMutex; -G_COMPAT_DEFINE(g_compat_mutex_init, (GCompatMutex *mutex), - g_static_mutex_init, (mutex)) -G_COMPAT_DEFINE(g_compat_mutex_clear, (GCompatMutex *mutex), - g_static_mutex_free, (mutex)) -G_COMPAT_DEFINE(g_compat_mutex_lock, (GCompatMutex *mutex), - g_static_mutex_lock, (mutex)) -G_COMPAT_DEFINE(g_compat_mutex_unlock, (GCompatMutex *mutex), - g_static_mutex_unlock, (mutex)) - -typedef GStaticRecMutex GCompatRecMutex; -G_COMPAT_DEFINE(g_compat_rec_mutex_init, (GCompatRecMutex *mutex), - g_static_rec_mutex_init, (mutex)) -G_COMPAT_DEFINE(g_compat_rec_mutex_clear, (GCompatRecMutex *mutex), - g_static_rec_mutex_free, (mutex)) -G_COMPAT_DEFINE(g_compat_rec_mutex_lock, (GCompatRecMutex *mutex), - g_static_rec_mutex_lock, (mutex)) -G_COMPAT_DEFINE(g_compat_rec_mutex_unlock, (GCompatRecMutex *mutex), - g_static_rec_mutex_unlock, (mutex)) - -typedef GCond *GCompatCond; -G_COMPAT_DEFINE(g_compat_cond_init, (GCompatCond *cond), - *cond = g_cond_new, ()) -G_COMPAT_DEFINE(g_compat_cond_clear, (GCompatCond *cond), - if (*cond) g_cond_free, (*cond)) -G_COMPAT_DEFINE(g_compat_cond_signal, (GCompatCond *cond), - g_cond_signal, (*cond)) -G_COMPAT_DEFINE(g_compat_cond_broadcast, (GCompatCond *cond), - g_cond_broadcast, (*cond)) -G_COMPAT_DEFINE(g_compat_cond_wait, (GCompatCond *cond, GCompatMutex *mutex), - g_cond_wait, (*cond, g_static_mutex_get_mutex(mutex))) - -static inline gboolean -g_cond_wait_until(GCompatCond *cond, GStaticMutex *mutex, gint64 end_time) -{ - gint64 diff_time; - GTimeVal timeout; - - diff_time = end_time - g_get_monotonic_time(); - g_get_current_time(&timeout); - g_time_val_add(&timeout, diff_time > 0 ? diff_time : 0); - return g_cond_timed_wait(*cond, g_static_mutex_get_mutex(mutex), &timeout); -} - -#define GMutex GCompatMutex -#undef g_mutex_init -#define g_mutex_init(mutex) g_compat_mutex_init(mutex) -#undef g_mutex_clear -#define g_mutex_clear(mutex) g_compat_mutex_clear(mutex) -#undef g_mutex_lock -#define g_mutex_lock(mutex) g_compat_mutex_lock(mutex) -#undef g_mutex_unlock -#define g_mutex_unlock(mutex) g_compat_mutex_unlock(mutex) - -#define GRecMutex GCompatRecMutex -#undef g_rec_mutex_init -#define g_rec_mutex_init(mutex) g_compat_rec_mutex_init(mutex) -#undef g_rec_mutex_clear -#define g_rec_mutex_clear(mutex) g_compat_rec_mutex_clear(mutex) -#undef g_rec_mutex_lock -#define g_rec_mutex_lock(mutex) g_compat_rec_mutex_lock(mutex) -#undef g_rec_mutex_unlock -#define g_rec_mutex_unlock(mutex) g_compat_rec_mutex_unlock(mutex) - -#define GCond GCompatCond -#undef g_cond_init -#define g_cond_init(cond) g_compat_cond_init(cond) -#undef g_cond_clear -#define g_cond_clear(cond) g_compat_cond_clear(cond) -#undef g_cond_signal -#define g_cond_signal(cond) g_compat_cond_signal(cond) -#undef g_cond_wait -#define g_cond_wait(cond, mutex) g_compat_cond_wait(cond, mutex) - -#undef g_thread_try_new -#define g_thread_try_new(name, func, data, error) \ - g_compat_thread_try_new(name, func, data, error) - -static inline GThread * -g_compat_thread_try_new(const gchar *name, GThreadFunc func, gpointer data, - GError **error) -{ - return g_thread_create(func, data, TRUE, error); -} -#endif - -#if !GLIB_CHECK_VERSION(2,31,18) -static inline gpointer -g_async_queue_timeout_pop(GAsyncQueue *queue, guint64 timeout) -{ - GTimeVal end_time; - - g_get_current_time(&end_time); - g_time_val_add(&end_time, timeout); - return g_async_queue_timed_pop(queue, &end_time); -} -#endif - #undef G_COMPAT_DEFINE #endif /* GLIB_COMPAT_H */