Colin Walters 0ff211f520 glib-unix: New Unix-specific API
GLib historically has been designed to be "mostly" portable; there
are some functions only available on Unix like g_io_channel_unix_new(),
but these are typically paired with obvious counterparts for Win32.

However, as GLib is used not only by portable software, but components
targeting Unix (or even just Linux), there are a few cases where it
would be very convenient if GLib shipped built-in functionality.

This initial patch is a basic wrapper around pipe2(), including
fallbacks for older kernels.  This pairs well with the
existing g_spawn_*() API and its child_setup functionality.

However, in the future, I want to add a signal() wrapper here,
complete with proxying the signal to a mainloop.  I have initial code
for this, but doing it sanely (including factoring out gmain.c's
private worker thread), is a complex task, and I don't want to block
on that.

See also gwin32.h for Win32 specific functionality.

https://bugzilla.gnome.org/show_bug.cgi?id=644941
2011-04-27 13:29:38 -04:00
..
2011-01-22 00:01:54 -05:00
2011-04-27 13:29:38 -04:00
2010-07-12 15:33:05 -04:00
2010-07-12 15:33:05 -04:00
2011-02-01 16:18:02 -02:00
2011-02-01 16:18:02 -02:00
2010-09-05 00:23:03 -04:00
2010-09-05 00:23:03 -04:00
2010-09-03 19:34:28 -04:00
2010-09-03 19:34:28 -04:00
2010-07-07 19:34:35 -04:00
2010-01-30 12:32:37 -05:00
2010-08-03 10:25:54 -04:00
2010-07-10 23:56:45 -04:00
2010-07-07 19:34:35 -04:00
2011-02-01 16:18:02 -02:00
2010-09-03 19:38:56 -04:00
2011-02-01 16:18:02 -02:00
2010-06-23 22:32:35 -04:00
2011-03-24 09:33:55 +01:00
2011-04-27 02:36:12 -04:00
2011-01-21 16:30:19 -05:00
2010-09-05 00:23:03 -04:00
2009-05-23 17:52:58 +02:00
2009-09-04 22:45:07 +02:00
2010-09-03 23:03:14 -04:00
2011-03-24 09:33:55 +01:00
2010-05-08 21:30:27 -04:00
2010-06-15 16:06:18 +01:00
2011-04-27 13:29:38 -04:00
2011-04-27 13:29:38 -04:00
2010-07-07 19:34:35 -04:00
2010-02-04 00:12:50 +02:00
2011-04-27 13:29:38 -04:00
2011-02-01 16:18:02 -02:00
2011-03-15 09:02:08 +00:00
2011-04-27 13:29:38 -04:00
2010-07-07 19:34:35 -04:00
2011-02-01 16:18:02 -02:00
2010-09-01 09:48:16 +02:00
2011-03-24 09:33:55 +01:00
2009-06-27 11:03:47 +03:00
2011-02-01 16:18:02 -02:00
2010-07-08 19:26:25 -04:00
2011-02-01 16:18:02 -02:00
2010-09-13 16:52:51 +02:00
2010-07-10 23:56:45 -04:00
2010-09-03 20:41:52 -04:00
2010-09-05 00:23:03 -04:00
2010-12-03 14:45:09 -05:00
2011-02-01 16:18:02 -02:00
2011-04-12 09:55:59 -04:00
2010-08-08 23:55:11 -04:00
2011-02-01 16:18:02 -02:00
2010-06-23 22:32:35 -04:00
2010-11-09 09:53:12 +08:00
2011-01-21 16:30:19 -05:00
2011-02-01 16:18:02 -02:00
2011-02-01 16:18:02 -02:00
2010-03-30 20:46:46 +03:00
2011-02-01 16:18:02 -02:00
2011-04-18 14:52:29 +02:00
2011-04-18 14:52:29 +02:00
2011-03-24 09:33:55 +01:00
2011-03-24 09:33:55 +01:00
2010-01-28 12:40:46 -05:00
2011-02-01 16:18:02 -02:00
2011-02-01 16:18:02 -02:00
2010-11-02 22:39:09 -04:00
2010-09-03 20:38:30 -04:00
2011-01-21 16:30:19 -05:00
2011-01-21 16:30:19 -05:00
2011-01-21 16:30:19 -05:00
2010-09-05 00:23:03 -04:00
2011-01-21 16:30:19 -05:00
2010-07-07 19:34:35 -04:00
2010-02-10 11:35:01 -05:00
2011-04-04 09:22:06 +02:00
2011-04-04 09:22:06 +02:00
2010-07-07 19:34:35 -04:00
2010-12-03 14:41:06 -05:00
2011-04-27 13:29:38 -04:00
2010-09-11 12:08:32 +03:00