diff --git a/ChangeLog b/ChangeLog index 280afff9be..a42e20b0be 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,7 @@ 2009-08-23 Ulrich Drepper - * posix/unistd.h: Define _POSIX_VERSION correctly if older POSIX - versions are selected. + * posix/unistd.h: Define _POSIX_VERSION and _POSIX2_* correctly if + older POSIX versions are selected. * stdio-common/printf_fp.c: ISO C expects to print the sign of NaN as well. diff --git a/posix/unistd.h b/posix/unistd.h index 2de9a68b39..d9ecb5e788 100644 --- a/posix/unistd.h +++ b/posix/unistd.h @@ -50,24 +50,38 @@ __BEGIN_DECLS /* These are not #ifdef __USE_POSIX2 because they are in the theoretically application-owned namespace. */ +#ifdef __USE_XOPEN2K8 +# define __POSIX2_THIS_VERSION 200809L /* The utilities on GNU systems also correspond to this version. */ -#define _POSIX2_VERSION 200809L +#elif defined __USE_XOPEN2K +/* The utilities on GNU systems also correspond to this version. */ +# define __POSIX2_THIS_VERSION 200112L +#elif defined __USE_POSIX199506 +/* The utilities on GNU systems also correspond to this version. */ +# define __POSIX2_THIS_VERSION 199506L +#else +/* The utilities on GNU systems also correspond to this version. */ +# define __POSIX2_THIS_VERSION 199209L +#endif + +/* The utilities on GNU systems also correspond to this version. */ +#define _POSIX2_VERSION __POSIX2_THIS_VERSION /* If defined, the implementation supports the C Language Bindings Option. */ -#define _POSIX2_C_BIND 200809L +#define _POSIX2_C_BIND __POSIX2_THIS_VERSION /* If defined, the implementation supports the C Language Development Utilities Option. */ -#define _POSIX2_C_DEV 200809L +#define _POSIX2_C_DEV __POSIX2_THIS_VERSION /* If defined, the implementation supports the Software Development Utilities Option. */ -#define _POSIX2_SW_DEV 200809L +#define _POSIX2_SW_DEV __POSIX2_THIS_VERSION /* If defined, the implementation supports the creation of locales with the localedef utility. */ -#define _POSIX2_LOCALEDEF 200809L +#define _POSIX2_LOCALEDEF __POSIX2_THIS_VERSION /* X/Open version number to which the library conforms. It is selectable. */ #ifdef __USE_XOPEN2K8