From: Alexander Graf Date: Mon, 25 Feb 2013 23:46:10 +0000 (+0100) Subject: glib: Add compat wrapper for g_poll on old glib X-Git-Tag: TizenStudio_2.0_p2.3.2~208^2~2397 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=31e76f65a98e1502cbfd362eed5768c48e264c23;p=sdk%2Femulator%2Fqemu.git glib: Add compat wrapper for g_poll on old glib Older glib doesn't implement g_poll(). Most notably the glib version in use on SLE11 is on 2.18 which is hit by this. We do want to use g_poll() in the source however. So on older systems, just wrap it with functions that do exist on older versions. Signed-off-by: Anthony Liguori Signed-off-by: Alexander Graf Message-id: 1361835970-2889-1-git-send-email-agraf@suse.de Signed-off-by: Anthony Liguori --- diff --git a/include/qemu-common.h b/include/qemu-common.h index 80016ad..5e13708 100644 --- a/include/qemu-common.h +++ b/include/qemu-common.h @@ -142,6 +142,18 @@ int qemu_main(int argc, char **argv, char **envp); void qemu_get_timedate(struct tm *tm, int offset); int qemu_timedate_diff(struct tm *tm); +#if !GLIB_CHECK_VERSION(2, 20, 0) +/* + * Glib before 2.20.0 doesn't implement g_poll, so wrap it to compile properly + * on older systems. + */ +static inline gint g_poll(GPollFD *fds, guint nfds, gint timeout) +{ + GMainContext *ctx = g_main_context_default(); + return g_main_context_get_poll_func(ctx)(fds, nfds, timeout); +} +#endif + /** * is_help_option: * @s: string to test