On Sat, Feb 13, 2016 at 07:29:48AM +1100, Bruce Evans wrote: > It needs a version number to be correct. Plain __POSIX_VISIBLE means > all versions. __POSIX_VISBLE >= 200112 is probably good enough for > the POSIX part. I don't know the correct number for XSI. Perhaps > it can be simply omitted. _XOPEN_SOURCE >= 600 gives > __XSI_VISIBLE >= 600 && _POSIX_C_SOURCE >= 200112. So __XSI_VISIBLE > in the above is only to support XSI before 2001. We only support 1 > XSI before that -- #500 which corresponds to 1996 POSIX. Very likely > XSI did have ucontext_t then, so the above ifdef is correct. It is > just hard to read. Easier than google hits though :-). I found a > gnu man page about getcontext() being in SVID but couldn't easily > find the history.
I have SVID document labeled FINAL COPY June 15, 1995 First Edition. There, it seems that ucontext.h is required. Below is the updated patch. diff --git a/include/signal.h b/include/signal.h index 33be55c..217fadd 100644 --- a/include/signal.h +++ b/include/signal.h @@ -36,8 +36,10 @@ #include <sys/cdefs.h> #include <sys/_types.h> #include <sys/signal.h> +#if __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE #include <machine/ucontext.h> #include <sys/_ucontext.h> +#endif #if __BSD_VISIBLE /* _______________________________________________ [email protected] mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "[email protected]"
