]> git.proxmox.com Git - mirror_qemu.git/blob - include/glib-compat.h
Merge remote-tracking branch 'remotes/stefanha/tags/tracing-pull-request' into staging
[mirror_qemu.git] / include / glib-compat.h
1 /*
2 * GLIB Compatibility Functions
3 *
4 * Copyright IBM, Corp. 2013
5 *
6 * Authors:
7 * Anthony Liguori <aliguori@us.ibm.com>
8 *
9 * This work is licensed under the terms of the GNU GPL, version 2 or later.
10 * See the COPYING file in the top-level directory.
11 *
12 */
13
14 #ifndef QEMU_GLIB_COMPAT_H
15 #define QEMU_GLIB_COMPAT_H
16
17 #include <glib.h>
18
19 #if !GLIB_CHECK_VERSION(2, 14, 0)
20 static inline guint g_timeout_add_seconds(guint interval, GSourceFunc function,
21 gpointer data)
22 {
23 return g_timeout_add(interval * 1000, function, data);
24 }
25 #endif
26
27 #if !GLIB_CHECK_VERSION(2, 20, 0)
28 /*
29 * Glib before 2.20.0 doesn't implement g_poll, so wrap it to compile properly
30 * on older systems.
31 */
32 static inline gint g_poll(GPollFD *fds, guint nfds, gint timeout)
33 {
34 GMainContext *ctx = g_main_context_default();
35 return g_main_context_get_poll_func(ctx)(fds, nfds, timeout);
36 }
37 #endif
38
39 #endif