Re: svn commit: trunk/uClibc/ldso/ldso/sh
On Sat, Jan 12, 2008 at 07:06:02PM +0100, Carmelo Amoroso wrote: Mike Frysinger wrote: On Saturday 12 January 2008, [EMAIL PROTECTED] wrote: Author: carmelo Date: 2008-01-12 00:20:18 -0800 (Sat, 12 Jan 2008) New Revision: 20848 Log: Make sh4 build works again adding a temporary work-around iby redefining __always_inline to inline until gcc 4.x.x will get fixed. Modified: trunk/uClibc/ldso/ldso/sh/dl-syscalls.h +#warning !!! __always_inline redefined waiting for the fixed gcc +#ifdef __always_inline +#undef __always_inline +#define __always_inline inline +#endif shouldnt you leverage __GNUC_PREREQ(4, 0) ? and add information about what version of gcc is actually broken ? -mike Hi Mike, done. I'm assuming the problem is with gcc 4.1 and later. If your new compiler is sane enough to define __GNUC_STM_RELEASE__ as was discussed before, it might be worth conditionalizing on that also. We already do that in the kernel for some other cases.. ___ uClibc mailing list uClibc@uclibc.org http://busybox.net/cgi-bin/mailman/listinfo/uclibc
Re: svn commit: trunk/uClibc/ldso/ldso/sh
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Paul Mundt wrote: On Sat, Jan 12, 2008 at 07:06:02PM +0100, Carmelo Amoroso wrote: Mike Frysinger wrote: On Saturday 12 January 2008, [EMAIL PROTECTED] wrote: Author: carmelo Date: 2008-01-12 00:20:18 -0800 (Sat, 12 Jan 2008) New Revision: 20848 Log: Make sh4 build works again adding a temporary work-around iby redefining __always_inline to inline until gcc 4.x.x will get fixed. Modified: trunk/uClibc/ldso/ldso/sh/dl-syscalls.h +#warning !!! __always_inline redefined waiting for the fixed gcc +#ifdef __always_inline +#undef __always_inline +#define __always_inline inline +#endif shouldnt you leverage __GNUC_PREREQ(4, 0) ? and add information about what version of gcc is actually broken ? -mike Hi Mike, done. I'm assuming the problem is with gcc 4.1 and later. If your new compiler is sane enough to define __GNUC_STM_RELEASE__ as was discussed before, it might be worth conditionalizing on that also. We already do that in the kernel for some other cases.. Yes, the new compiler does (and we will continue to in future, although we expect to push back our changes to gcc). We got burnt with that one before. Carl -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.3 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFHjKtTsOYe+9JwoiQRAtq3AKCb+TDnsaYSrsHdHO9qZdtsxllO8QCfWcHz V1meZGkqSOHcXUqjPkBMGlU= =3XcY -END PGP SIGNATURE- ___ uClibc mailing list uClibc@uclibc.org http://busybox.net/cgi-bin/mailman/listinfo/uclibc
[patch] getaddrinfo bug
When using x11r7, starting X11 application ends up calling _xcb_open_tcp in libxcb. _xcb_open_tcp looks like this: static int _xcb_open_tcp(char *host, const unsigned short port) { int fd = -1; struct addrinfo hints = { AI_ADDRCONFIG #ifdef AI_NUMERICSERV | AI_NUMERICSERV #endif , AF_UNSPEC, SOCK_STREAM }; [snip] res = getaddrinfo(host, service, hints, results); uclibc's netdb.h always defines AI_NUMERICSERV, so AI_NUMERICSERV is always used. The getaddrinfo implementation in uclibc does: if (hints-ai_flags ~(AI_PASSIVE|AI_CANONNAME|AI_NUMERICHOST| AI_ADDRCONFIG|AI_V4MAPPED|AI_ALL)) return EAI_BADFLAGS; which means that getaddrinfo will always fail and return EAI_BADFLAGS because it passes AI_NUMERICSERV. As a result, X11 applications won't start. This patch fixes the problem: --- getaddrinfo.c.orig 2008-01-15 07:36:08.264317000 -0800 +++ getaddrinfo.c 2008-01-15 07:36:00.518071000 -0800 @@ -822,7 +822,7 @@ if (hints == NULL) hints = default_hints; -if (hints-ai_flags ~(AI_PASSIVE|AI_CANONNAME|AI_NUMERICHOST| +if (hints-ai_flags ~(AI_PASSIVE|AI_CANONNAME|AI_NUMERICHOST|AI_NUMERICSERV| AI_ADDRCONFIG|AI_V4MAPPED|AI_ALL)) return EAI_BADFLAGS; ___ uClibc mailing list uClibc@uclibc.org http://busybox.net/cgi-bin/mailman/listinfo/uclibc