From: Joel Sherrill Date: Mon, 11 Aug 2008 17:04:07 +0000 (+0000) Subject: s-oscons-tmplt.c: RTEMS defines AF_INET6 but does support it. X-Git-Tag: releases/gcc-4.4.0~3195 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=269b85b72388861958e4b4343c4a101765ca763c;p=thirdparty%2Fgcc.git s-oscons-tmplt.c: RTEMS defines AF_INET6 but does support it. 2008-08-11 Joel Sherrill gcc/ada/ * s-oscons-tmplt.c: RTEMS defines AF_INET6 but does support it. * gsocket.h, socket.c: Update to support RTEMS. * gcc-interface/Make-lang.in: Include CFLAGS_FOR_TARGET when cross. From-SVN: r138957 --- diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 41a76470647a..68857260db93 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,9 @@ +2008-08-11 Joel Sherrill + + * s-oscons-tmplt.c: RTEMS defines AF_INET6 but does support it. + * gsocket.h, socket.c: Update to support RTEMS. + * gcc-interface/Make-lang.in: Include CFLAGS_FOR_TARGET when cross. + 2008-08-10 Samuel Tardieu Robert Dewar diff --git a/gcc/ada/gcc-interface/Make-lang.in b/gcc/ada/gcc-interface/Make-lang.in index cff834b5e1db..400171001283 100644 --- a/gcc/ada/gcc-interface/Make-lang.in +++ b/gcc/ada/gcc-interface/Make-lang.in @@ -933,9 +933,9 @@ OSCONS_EXTRACT=../../../$(DECC) -DNATIVE \ ./s-oscons-tmplt.exe > s-oscons-tmplt.s else -OSCONS_CPP=$(GCC_FOR_TARGET) -E -C \ +OSCONS_CPP=$(GCC_FOR_TARGET) $(CFLAGS_FOR_TARGET) -E -C \ -DTARGET=\"$(target)\" s-oscons-tmplt.c > s-oscons-tmplt.i -OSCONS_EXTRACT=$(GCC_FOR_TARGET) -S s-oscons-tmplt.i +OSCONS_EXTRACT=$(GCC_FOR_TARGET) $(CFLAGS_FOR_TARGET) -S s-oscons-tmplt.i endif ada/s-oscons.ads : ada/s-oscons-tmplt.c ada/gsocket.h ada/xoscons.adb ada/xutil.ads ada/xutil.adb diff --git a/gcc/ada/gsocket.h b/gcc/ada/gsocket.h index 58c4abb6e5e3..0dca1a9f5037 100644 --- a/gcc/ada/gsocket.h +++ b/gcc/ada/gsocket.h @@ -216,7 +216,7 @@ #if defined (_AIX) || defined (__FreeBSD__) || defined (__hpux__) || defined (__osf__) || defined (_WIN32) || defined (__APPLE__) # define HAVE_THREAD_SAFE_GETxxxBYyyy 1 -#elif defined (sgi) || defined (linux) || defined (__GLIBC__) || (defined (sun) && defined (__SVR4) && !defined (__vxworks)) +#elif defined (sgi) || defined (linux) || defined (__GLIBC__) || (defined (sun) && defined (__SVR4) && !defined (__vxworks)) || defined(__rtems__) # define HAVE_GETxxxBYyyy_R 1 #endif @@ -226,7 +226,7 @@ # define Need_Netdb_Buffer 0 #endif -#if defined (__FreeBSD__) || defined (__vxworks) +#if defined (__FreeBSD__) || defined (__vxworks) || defined(__rtems__) # define Has_Sockaddr_Len 1 #else # define Has_Sockaddr_Len 0 diff --git a/gcc/ada/s-oscons-tmplt.c b/gcc/ada/s-oscons-tmplt.c index 8017c3821377..614a8660d9b4 100644 --- a/gcc/ada/s-oscons-tmplt.c +++ b/gcc/ada/s-oscons-tmplt.c @@ -829,6 +829,14 @@ CND(VEOL2, "Alternative EOL") #endif CND(AF_INET, "IPv4 address family") +/** + ** RTEMS lies and defines AF_INET6 even though there is no IPV6 support. + ** Its TCP/IP stack is in transition. It has newer .h files but no IPV6 yet. + **/ +#if defined(__rtems__) +# undef AF_INET6 +#endif + #ifndef AF_INET6 # define AF_INET6 -1 #else diff --git a/gcc/ada/socket.c b/gcc/ada/socket.c index 9653aae1dfad..aadc9b084f70 100644 --- a/gcc/ada/socket.c +++ b/gcc/ada/socket.c @@ -240,7 +240,7 @@ __gnat_safe_getservbyname (const char *name, const char *proto, struct servent *rh; int ri; -#if defined(__linux__) || defined(__GLIBC__) +#if defined(__linux__) || defined(__GLIBC__) || defined(__rtems__) (void) getservbyname_r (name, proto, ret, buf, buflen, &rh); #else rh = getservbyname_r (name, proto, ret, buf, buflen); @@ -256,7 +256,7 @@ __gnat_safe_getservbyport (int port, const char *proto, struct servent *rh; int ri; -#if defined(__linux__) || defined(__GLIBC__) +#if defined(__linux__) || defined(__GLIBC__) || defined(__rtems__) (void) getservbyport_r (port, proto, ret, buf, buflen, &rh); #else rh = getservbyport_r (port, proto, ret, buf, buflen);