--- glib-2.32.4/glib/gwakeup.c	2011-09-09 14:21:52.000000000 +0200
+++ src/glib/gwakeup.c	2012-11-09 20:10:33.744225532 +0100
@@ -123,6 +123,20 @@
   gint fds[2];
 };
 
+#include <sys/syscall.h>
+
+/*
+ * FIXME: remove me once eventfd is included in all libc
+ */
+static int my_eventfd(unsigned int initval, int flags)
+{
+#ifndef __UCLIBC__
+	return eventfd(initval, flags);
+#else
+	return syscall(SYS_eventfd, initval, flags);
+#endif
+}
+
 /**
  * g_wakeup_new:
  *
@@ -145,7 +159,7 @@
   /* try eventfd first, if we think we can */
 #if defined (HAVE_EVENTFD)
 #ifndef TEST_EVENTFD_FALLBACK
-  wakeup->fds[0] = eventfd (0, EFD_CLOEXEC | EFD_NONBLOCK);
+  wakeup->fds[0] = my_eventfd (0, EFD_CLOEXEC | EFD_NONBLOCK);
 #else
   wakeup->fds[0] = -1;
 #endif
