X-Git-Url: http://git.draconx.ca/gitweb/gentoo-draconx.git/blobdiff_plain/51edf22d44f8c8dd6cbaed9e3568f85759600ad5..ca9bfb9299bc9dc34412debcf314738534924eb5:/x11-libs/libxcb/files/libxcb-1.7-interix.patch diff --git a/x11-libs/libxcb/files/libxcb-1.7-interix.patch b/x11-libs/libxcb/files/libxcb-1.7-interix.patch deleted file mode 100644 index 4317f62..0000000 --- a/x11-libs/libxcb/files/libxcb-1.7-interix.patch +++ /dev/null @@ -1,103 +0,0 @@ -reported upstream: http://lists.freedesktop.org/archives/xcb/2011-June/007095.html - -diff -ru libxcb-1.7.orig/configure.ac libxcb-1.7/configure.ac ---- libxcb-1.7.orig/configure.ac 2011-06-08 09:12:30 +0200 -+++ libxcb-1.7/configure.ac 2011-06-08 09:54:49 +0200 -@@ -72,6 +72,8 @@ - AC_SEARCH_LIBS(getaddrinfo, socket) - AC_SEARCH_LIBS(connect, socket) - -+AC_CHECK_FUNC(getaddrinfo, [AC_DEFINE(HAVE_GETADDRINFO, 1, [getaddrinfo() function is available])], ) -+ - case $host_os in - linux*) - AC_DEFINE([HAVE_ABSTRACT_SOCKETS], 1, [Define if your platform supports abstract sockets]) -diff -ru libxcb-1.7.orig/src/xcb_auth.c libxcb-1.7/src/xcb_auth.c ---- libxcb-1.7.orig/src/xcb_auth.c 2011-06-08 09:12:30 +0200 -+++ libxcb-1.7/src/xcb_auth.c 2011-06-08 09:54:49 +0200 -@@ -33,6 +33,12 @@ - #include - #include - #include -+#include -+ -+#ifdef __INTERIX -+/* _don't_ ask. interix has INADDR_LOOPBACK in here. */ -+#include -+#endif - - #include "xcb.h" - #include "xcbint.h" -diff -ru libxcb-1.7.orig/src/xcb_util.c libxcb-1.7/src/xcb_util.c ---- libxcb-1.7.orig/src/xcb_util.c 2011-06-08 09:12:30 +0200 -+++ libxcb-1.7/src/xcb_util.c 2011-06-08 09:56:23 +0200 -@@ -44,6 +44,7 @@ - #include - #include - #include -+#include - - #include "xcb.h" - #include "xcbext.h" -@@ -281,10 +282,12 @@ - static int _xcb_open_tcp(const char *host, char *protocol, const unsigned short port) - { - int fd = -1; -+#if HAVE_GETADDRINFO - struct addrinfo hints; - char service[6]; /* "65535" with the trailing '\0' */ - struct addrinfo *results, *addr; - char *bracket; -+#endif - - if (protocol && strcmp("tcp",protocol) && strcmp("inet",protocol) - #ifdef AF_INET6 -@@ -296,6 +299,7 @@ - if (*host == '\0') - host = "localhost"; - -+#if HAVE_GETADDRINFO - memset(&hints, 0, sizeof(hints)); - #ifdef AI_ADDRCONFIG - hints.ai_flags |= AI_ADDRCONFIG; -@@ -338,6 +342,40 @@ - } - freeaddrinfo(results); - return fd; -+#else -+ { -+ struct hostent* _h; -+ struct sockaddr_in _s; -+ struct in_addr ** _c; -+ -+ if((_h = gethostbyname(host)) == NULL) -+ return -1; -+ -+ _c = (struct in_addr**)_h->h_addr_list; -+ fd = -1; -+ -+ while(*_c) { -+ _s.sin_family = AF_INET; -+ _s.sin_port = htons(port); -+ _s.sin_addr = *(*_c); -+ -+ fd = _xcb_socket(_s.sin_family, SOCK_STREAM, 0); -+ if(fd >= 0) { -+ int on = 1; -+ setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, &on, sizeof(on)); -+ setsockopt(fd, SOL_SOCKET, SO_KEEPALIVE, &on, sizeof(on)); -+ -+ if(connect(fd, (struct sockaddr*)&_s, sizeof(_s)) >= 0) -+ break; -+ close(fd); -+ fd = -1; -+ } -+ ++_c; -+ } -+ -+ return fd; -+ } -+#endif - } - - static int _xcb_open_unix(char *protocol, const char *file)