Pushed. Hopefully this keeps anyone from seeing an issue with the change to <signal.h>.
Thanks. --joel On 8/20/2014 8:43 PM, Gedare Bloom wrote: > Sure. > > On Wed, Aug 20, 2014 at 7:48 PM, Joel Sherrill > <joel.sherr...@oarcorp.com> wrote: >> With the recent addition of a prototype for sigaltstack() and >> associated data structures to newlib, the declaration in >> rtems_bsdnet_internal.h is no longer needed. But to ease the >> transition, I added an autoconf probe to determine if it >> was needed or not. >> >> After 4.11, I would like to rip this and and <sys/cpuset.h> >> checks out. >> >> --- >> cpukit/configure.ac | 12 ++++++++++++ >> cpukit/libnetworking/rtems/rtems_bsdnet_internal.h | 10 ++++++---- >> 2 files changed, 18 insertions(+), 4 deletions(-) >> >> diff --git a/cpukit/configure.ac b/cpukit/configure.ac >> index 56815e2..fcf3437 100644 >> --- a/cpukit/configure.ac >> +++ b/cpukit/configure.ac >> @@ -116,6 +116,12 @@ RTEMS_CHECK_FUNC([pthread_getattr_np],[ >> #include <pthread.h>]) >> AC_CHECK_HEADERS([sys/cpuset.h]) >> >> +# This was added to newlib in August 2014 to improve conformance. >> +# Disable use of internal definition if it is present. >> +RTEMS_CHECK_FUNC([sigaltstack],[ >> + #define _GNU_SOURCE >> + #include <signal.h>]) >> + >> # Mandated by POSIX, not declared in some versions of newlib. >> AC_CHECK_DECLS([getrusage],,,[#include sys/resource.h]) >> >> @@ -236,6 +242,12 @@ RTEMS_CPUOPT([__RTEMS_HAVE_SYS_CPUSET_H__], >> [1], >> [indicate if <sys/cpuset.h> is present in toolset]) >> >> +## Header file differences that need to be known in .h after install >> +RTEMS_CPUOPT([__RTEMS_HAVE_DECL_SIGALTSTACK__], >> + [test x"${ac_cv_have_decl_sigaltstack}" = x"yes"], >> + [1], >> + [indicate if <signal.h> in toolset has sigaltstack()]) >> + >> ## This improves both the size and coverage analysis. >> RTEMS_CPUOPT([__RTEMS_DO_NOT_INLINE_THREAD_ENABLE_DISPATCH__], >> [test x"${RTEMS_DO_NOT_INLINE_THREAD_ENABLE_DISPATCH}" = x"1"], >> diff --git a/cpukit/libnetworking/rtems/rtems_bsdnet_internal.h >> b/cpukit/libnetworking/rtems/rtems_bsdnet_internal.h >> index 05e54b2..567cc8a 100644 >> --- a/cpukit/libnetworking/rtems/rtems_bsdnet_internal.h >> +++ b/cpukit/libnetworking/rtems/rtems_bsdnet_internal.h >> @@ -83,11 +83,13 @@ typedef quad_t * qaddr_t; >> typedef void __sighandler_t(int); >> typedef __sighandler_t *sig_t; /* type of pointer to a signal >> function */ >> #define NSIG 32 >> -struct sigaltstack { >> - char *ss_sp; /* signal stack base */ >> - int ss_size; /* signal stack length */ >> - int ss_flags; /* SS_DISABLE and/or SS_ONSTACK */ >> +#if (__RTEMS_HAVE_DECL_SIGALTSTACK__ == 0) >> +struct sigaltstack { >> + char *ss_sp; /* signal stack base */ >> + int ss_size; /* signal stack length */ >> + int ss_flags; /* SS_DISABLE and/or SS_ONSTACK */ >> }; >> +#endif >> >> #ifdef _KERNEL >> typedef int boolean_t; >> -- >> 1.9.3 >> >> _______________________________________________ >> devel mailing list >> devel@rtems.org >> http://lists.rtems.org/mailman/listinfo/devel -- Joel Sherrill, Ph.D. Director of Research & Development joel.sherr...@oarcorp.com On-Line Applications Research Ask me about RTEMS: a free RTOS Huntsville AL 35805 Support Available (256) 722-9985 _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel