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
This commit is contained in:
Víctor Manuel Jáquez Leal 2015-04-30 13:29:48 +02:00
parent 188d8fe442
commit 81d6b42420
2 changed files with 1 additions and 127 deletions

View file

@ -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])

View file

@ -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 */