From 06a1d02efd4a977fd06774b960ce2d21104ef5e0 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 12 Aug 2014 19:49:26 +0000 Subject: [PATCH] socket.c: For RTEMS, use correct prototype of gethostbyname_r(). 2014-08-12 Joel Sherrill * socket.c: For RTEMS, use correct prototype of gethostbyname_r(). * gsocket.h Add include of on RTEMS. From-SVN: r213884 --- gcc/ada/ChangeLog | 5 +++++ gcc/ada/gsocket.h | 5 +++++ gcc/ada/socket.c | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index f7d1775e049c..10c05a26b3c4 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,8 @@ +2014-08-12 Joel Sherrill + + * socket.c: For RTEMS, use correct prototype of gethostbyname_r(). + * gsocket.h Add include of on RTEMS. + 2014-08-11 Joel Sherrill * s-osinte-rtems.adb: Correct formatting of line in license block. diff --git a/gcc/ada/gsocket.h b/gcc/ada/gsocket.h index f139d7201dee..2034137b2b64 100644 --- a/gcc/ada/gsocket.h +++ b/gcc/ada/gsocket.h @@ -184,6 +184,11 @@ #include #endif +#if defined(__rtems__) +#include +/* Required, for read(), write(), and close() */ +#endif + /* * RTEMS has these .h files but not until you have built and installed RTEMS. * When building a C/C++ toolset, you also build the newlib C library, so the diff --git a/gcc/ada/socket.c b/gcc/ada/socket.c index 4a9e6ad7b446..ad88268f3698 100644 --- a/gcc/ada/socket.c +++ b/gcc/ada/socket.c @@ -184,7 +184,7 @@ __gnat_gethostbyname (const char *name, struct hostent *rh; int ri; -#if defined(__linux__) || defined(__GLIBC__) +#if defined(__linux__) || defined(__GLIBC__) || defined(__rtems__) (void) gethostbyname_r (name, ret, buf, buflen, &rh, h_errnop); #else rh = gethostbyname_r (name, ret, buf, buflen, h_errnop); -- 2.47.3