1*4882a593Smuzhiyun[PATCH]: Remove abstract socket namespace check breaking cross compilation 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunTaken from openembedded: 4*4882a593Smuzhiyun 5*4882a593Smuzhiyunhttp://git.openembedded.org/cgit.cgi/openembedded/tree/recipes/gamin/files/no-abstract-sockets.patch 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunSigned-off-by: Peter Korsgaard <jacmet@sunsite.dk> 8*4882a593Smuzhiyun--- /tmp/configure.in 2007-04-30 13:08:49.000000000 +0200 9*4882a593Smuzhiyun+++ gamin-0.1.8/configure.in 2007-04-30 13:10:53.285251000 +0200 10*4882a593Smuzhiyun@@ -354,51 +354,6 @@ 11*4882a593Smuzhiyun AC_DEFINE(HAVE_CMSGCRED,1,[Have cmsgcred structure]) 12*4882a593Smuzhiyun fi 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun-#### Abstract sockets 15*4882a593Smuzhiyun- 16*4882a593Smuzhiyun-AC_MSG_CHECKING(abstract socket namespace) 17*4882a593Smuzhiyun-AC_LANG_PUSH(C) 18*4882a593Smuzhiyun-AC_RUN_IFELSE([AC_LANG_PROGRAM( 19*4882a593Smuzhiyun-[[ 20*4882a593Smuzhiyun-#include <sys/types.h> 21*4882a593Smuzhiyun-#include <stdlib.h> 22*4882a593Smuzhiyun-#include <string.h> 23*4882a593Smuzhiyun-#include <stdio.h> 24*4882a593Smuzhiyun-#include <sys/socket.h> 25*4882a593Smuzhiyun-#include <sys/un.h> 26*4882a593Smuzhiyun-#include <errno.h> 27*4882a593Smuzhiyun-]], 28*4882a593Smuzhiyun-[[ 29*4882a593Smuzhiyun- int listen_fd; 30*4882a593Smuzhiyun- struct sockaddr_un addr; 31*4882a593Smuzhiyun- 32*4882a593Smuzhiyun- listen_fd = socket (PF_UNIX, SOCK_STREAM, 0); 33*4882a593Smuzhiyun- 34*4882a593Smuzhiyun- if (listen_fd < 0) 35*4882a593Smuzhiyun- { 36*4882a593Smuzhiyun- fprintf (stderr, "socket() failed: %s\n", strerror (errno)); 37*4882a593Smuzhiyun- exit (1); 38*4882a593Smuzhiyun- } 39*4882a593Smuzhiyun- 40*4882a593Smuzhiyun- memset (&addr, '\0', sizeof (addr)); 41*4882a593Smuzhiyun- addr.sun_family = AF_UNIX; 42*4882a593Smuzhiyun- strcpy (addr.sun_path, "X/tmp/dbus-fake-socket-path-used-in-configure-test"); 43*4882a593Smuzhiyun- addr.sun_path[0] = '\0'; /* this is what makes it abstract */ 44*4882a593Smuzhiyun- 45*4882a593Smuzhiyun- if (bind (listen_fd, (struct sockaddr*) &addr, SUN_LEN (&addr)) < 0) 46*4882a593Smuzhiyun- { 47*4882a593Smuzhiyun- fprintf (stderr, "Abstract socket namespace bind() failed: %s\n", 48*4882a593Smuzhiyun- strerror (errno)); 49*4882a593Smuzhiyun- exit (1); 50*4882a593Smuzhiyun- } 51*4882a593Smuzhiyun- else 52*4882a593Smuzhiyun- exit (0); 53*4882a593Smuzhiyun-]])], 54*4882a593Smuzhiyun- [have_abstract_sockets=yes], 55*4882a593Smuzhiyun- [have_abstract_sockets=no]) 56*4882a593Smuzhiyun-AC_LANG_POP(C) 57*4882a593Smuzhiyun-AC_MSG_RESULT($have_abstract_sockets) 58*4882a593Smuzhiyun- 59*4882a593Smuzhiyun if test x$enable_abstract_sockets = xyes; then 60*4882a593Smuzhiyun if test x$have_abstract_sockets = xno; then 61*4882a593Smuzhiyun AC_MSG_ERROR([Abstract sockets explicitly required, and support not detected.]) 62