Mercurial > hg > octave-lojdl > gnulib-hg
changeset 16348:b854ad995083
* lib/sys_select.in.h [OpenBSD]: When /usr/include/pthread.h is
currently being included, just include the system's <sys/select.h>.
2012-02-04 Bruno Haible <bruno@clisp.org>
sys_select: Avoid syntax error on OpenBSD 5.0.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sat, 04 Feb 2012 14:56:18 +0100 |
parents | a813bd88fc8d |
children | f34ee844ca92 |
files | ChangeLog lib/sys_select.in.h |
diffstat | 2 files changed, 15 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2012-02-04 Bruno Haible <bruno@clisp.org> + + sys_select: Avoid syntax error on OpenBSD 5.0. + * lib/sys_select.in.h [OpenBSD]: When /usr/include/pthread.h is + currently being included, just include the system's <sys/select.h>. + 2012-02-04 Bruno Haible <bruno@clisp.org> sys_select: Avoid syntax error on OpenBSD 5.0.
--- a/lib/sys_select.in.h +++ b/lib/sys_select.in.h @@ -42,6 +42,15 @@ # define _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_BSD_TYPES_H # @INCLUDE_NEXT@ @NEXT_SYS_SELECT_H@ +/* On OpenBSD 5.0, <pthread.h> includes <sys/types.h>, which includes + <sys/select.h>. At this point we cannot include <signal.h>, because that + includes gnulib's pthread.h override, which gives a syntax error because + /usr/include/pthread.h has not been completely processed. Simply delegate + to the system's header in this case. */ +#elif @HAVE_SYS_SELECT_H@ && defined __OpenBSD__ && (defined _PTHREAD_H_ && !defined PTHREAD_MUTEX_INITIALIZER) + +# @INCLUDE_NEXT@ @NEXT_SYS_SELECT_H@ + #else #ifndef _@GUARD_PREFIX@_SYS_SELECT_H