--- glib/gmacros.h.dist 2010-01-19 18:42:30.535298920 +0000 +++ glib/gmacros.h 2010-01-19 18:43:35.984570800 +0000 @@ -187,11 +187,13 @@ #define TRUE (!FALSE) #endif -#undef MAX +#ifndef MAX #define MAX(a, b) (((a) > (b)) ? (a) : (b)) +#endif -#undef MIN +#ifndef MIN #define MIN(a, b) (((a) < (b)) ? (a) : (b)) +#endif #undef ABS #define ABS(a) (((a) < 0) ? -(a) : (a)) --- gio/gsocket.c.dist 2010-01-21 13:27:35.760883000 +0000 +++ gio/gsocket.c 2010-01-21 13:29:07.314715120 +0000 @@ -55,6 +55,12 @@ #include "gioalias.h" +#ifdef __sgi +#define msghdr nmsghdr +#undef msg_control +#undef msg_controllen +#endif + /** * SECTION:gsocket * @short_description: Low-level socket object @@ -300,8 +306,8 @@ g_socket_details_from_fd (GSocket *socke { struct sockaddr_storage address; gint fd; - guint addrlen; - guint optlen; + socklen_t addrlen; + socklen_t optlen; int value; int errsv; #ifdef G_OS_WIN32 @@ -1101,7 +1107,7 @@ g_socket_get_local_address (GSocket *so GError **error) { struct sockaddr_storage buffer; - guint32 len = sizeof (buffer); + socklen_t len = sizeof (buffer); g_return_val_if_fail (G_IS_SOCKET (socket), NULL); @@ -1134,7 +1140,7 @@ g_socket_get_remote_address (GSocket *s GError **error) { struct sockaddr_storage buffer; - guint32 len = sizeof (buffer); + socklen_t len = sizeof (buffer); g_return_val_if_fail (G_IS_SOCKET (socket), NULL); @@ -1310,12 +1316,12 @@ g_socket_speaks_ipv4 (GSocket *socket) case G_SOCKET_FAMILY_IPV6: #if defined (IPPROTO_IPV6) && defined (IPV6_V6ONLY) { - guint sizeof_int = sizeof (int); + socklen_t sizeof_socklen_t = sizeof (socklen_t); gint v6_only; if (getsockopt (socket->priv->fd, IPPROTO_IPV6, IPV6_V6ONLY, - &v6_only, &sizeof_int) != 0) + &v6_only, &sizeof_socklen_t) != 0) return FALSE; return !v6_only; @@ -1547,7 +1553,7 @@ gboolean g_socket_check_connect_result (GSocket *socket, GError **error) { - guint optlen; + socklen_t optlen; int value; optlen = sizeof (value); --- gio/gunixfdmessage.c.dist 2010-01-21 11:26:56.089568200 +0000 +++ gio/gunixfdmessage.c 2010-01-21 11:29:39.227016120 +0000 @@ -42,6 +42,15 @@ #include "gioalias.h" +#ifdef __sgi +/* SCM_RIGHTS is only defined in if _KERNEL + * or _XOPEN_SOURCE are also defined... + */ +#ifndef SCM_RIGHTS +#define SCM_RIGHTS 0x01 +#endif +#endif + G_DEFINE_TYPE (GUnixFDMessage, g_unix_fd_message, G_TYPE_SOCKET_CONTROL_MESSAGE); --- gio/tests/socket-server.c.dist 2010-01-21 11:43:07.554332520 +0000 +++ gio/tests/socket-server.c 2010-01-21 11:44:02.613446640 +0000 @@ -205,7 +205,7 @@ main (int argc, while (TRUE) { - gchar buffer[4096] = { }; + gchar buffer[4096]; gssize size; gsize to_send; --- gio/tests/socket-client.c.dist 2010-01-21 11:50:12.601965120 +0000 +++ gio/tests/socket-client.c 2010-01-21 11:50:31.422154680 +0000 @@ -203,7 +203,7 @@ main (int argc, while (TRUE) { - gchar buffer[4096] = { }; + gchar buffer[4096]; gssize size; gsize to_send;