From c941736c92fa3a319221f65f6755659b2a5e0a20 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 11 Feb 2014 23:40:07 +0000 Subject: Remove _BSD_SOURCE and _SVID_SOURCE. This is a minimal patch to remove _BSD_SOURCE and _SVID_SOURCE from the documented user API, making them into aliases for _DEFAULT_SOURCE with a #warning given, but keeping most of the features.h logic using those macros and all the exising __USE_* conditionals, on the basis that all the consequent cleanups will go in followup patches. Tested x86_64. * include/features.h: Update comment documenting feature test macros. [_BSD_SOURCE || _SVID_SOURCE]: Give #warning. Define _DEFAULT_SOURCE. * manual/creature.texi (_BSD_SOURCE): Remove documentation. (_SVID_SOURCE): Likewise. (_DEFAULT_SOURCE): Update description of default features. (Feature Test Macros): Don't mention _SVID_SOURCE in conjunction with _GNU_SOURCE. * manual/filesys.texi (__ftw_func_t): Do not refer to _BSD_SOURCE. (S_ISVTX): Likewise. * manual/math.texi (Mathematical Constants): Likewise. * manual/signal.texi (Interrupted Primitives): Likewise. * manual/startup.texi (putenv): Do not refer to _SVID_SOURCE. * math/test-matherr.c (_SVID_SOURCE): Do not define. * sysvipc/sys/ipc.h [__USE_SVID && !__USE_XOPEN && __GNUC__ >= 2]: Don't refer to _SVID_SOURCE in warning text. --- manual/creature.texi | 22 ++++------------------ 1 file changed, 4 insertions(+), 18 deletions(-) (limited to 'manual/creature.texi') diff --git a/manual/creature.texi b/manual/creature.texi index bbf16b7..3c68616 100644 --- a/manual/creature.texi +++ b/manual/creature.texi @@ -73,20 +73,6 @@ edition is made available. @end defvr @comment (none) -@comment GNU -@defvr Macro _BSD_SOURCE -If you define this macro, functionality derived from 4.3 BSD Unix is -included as well as the @w{ISO C}, POSIX.1, and POSIX.2 material. -@end defvr - -@comment (none) -@comment GNU -@defvr Macro _SVID_SOURCE -If you define this macro, functionality derived from SVID is -included as well as the @w{ISO C}, POSIX.1, POSIX.2, and X/Open material. -@end defvr - -@comment (none) @comment X/Open @defvr Macro _XOPEN_SOURCE @comment (none) @@ -192,9 +178,9 @@ precedence. @comment GNU @defvr Macro _DEFAULT_SOURCE If you define this macro, most features are included apart from -X/Open, LFS and GNU extensions; the effect is similar to defining -@code{_POSIX_C_SOURCE} to @code{200809L} and @code{_POSIX_SOURCE}, -@code{_SVID_SOURCE}, and @code{_BSD_SOURCE} to 1. Defining this +X/Open, LFS and GNU extensions: the effect is to enable features from +the 2008 edition of POSIX, as well as certain BSD and SVID features +without a separate feature test macro to control them. Defining this macro, on its own and without using compiler options such as @option{-ansi} or @option{-std=c99}, has the same effect as not defining any feature test macros; defining it together with other @@ -229,4 +215,4 @@ it is harmless to define in addition a feature test macro for a subset of those features. For example, if you define @code{_POSIX_C_SOURCE}, then defining @code{_POSIX_SOURCE} as well has no effect. Likewise, if you define @code{_GNU_SOURCE}, then defining either @code{_POSIX_SOURCE} or -@code{_POSIX_C_SOURCE} or @code{_SVID_SOURCE} as well has no effect. +@code{_POSIX_C_SOURCE} as well has no effect. -- cgit v1.1