aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2009-08-23 12:27:09 -0700
committerUlrich Drepper <drepper@redhat.com>2009-08-23 12:27:09 -0700
commitc6b6723e6b756d36d9912a1c430459634e15758b (patch)
treed9960b8c6bc44253b2fea3455a4ab0734e7f928e
parent003c9895a89e71767ad64bafac1ca99622be2eb7 (diff)
downloadglibc-c6b6723e6b756d36d9912a1c430459634e15758b.zip
glibc-c6b6723e6b756d36d9912a1c430459634e15758b.tar.gz
glibc-c6b6723e6b756d36d9912a1c430459634e15758b.tar.bz2
Define _POSIX_VERSION correctly when older POSIX versions are selected.
-rw-r--r--ChangeLog3
-rw-r--r--posix/unistd.h16
2 files changed, 18 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index fde9f03..280afff 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2009-08-23 Ulrich Drepper <drepper@redhat.com>
+ * posix/unistd.h: Define _POSIX_VERSION correctly if older POSIX
+ versions are selected.
+
* stdio-common/printf_fp.c: ISO C expects to print the sign of NaN
as well.
* stdio-common/printf_fphex.c: Likewise.
diff --git a/posix/unistd.h b/posix/unistd.h
index cbab9f9..2de9a68 100644
--- a/posix/unistd.h
+++ b/posix/unistd.h
@@ -30,8 +30,22 @@ __BEGIN_DECLS
/* These may be used to determine what facilities are present at compile time.
Their values can be obtained at run time from `sysconf'. */
+#ifdef __USE_XOPEN2K8
/* POSIX Standard approved as ISO/IEC 9945-1 as of September 2008. */
-#define _POSIX_VERSION 200809L
+# define _POSIX_VERSION 200809L
+#elif defined __USE_XOPEN2K
+/* POSIX Standard approved as ISO/IEC 9945-1 as of December 2001. */
+# define _POSIX_VERSION 200112L
+#elif defined __USE_POSIX199506
+/* POSIX Standard approved as ISO/IEC 9945-1 as of June 1995. */
+# define _POSIX_VERSION 199506L
+#elif defined __USE_POSIX199309
+/* POSIX Standard approved as ISO/IEC 9945-1 as of September 1993. */
+# define _POSIX_VERSION 199309L
+#else
+/* POSIX Standard approved as ISO/IEC 9945-1 as of September 1990. */
+# define _POSIX_VERSION 199009L
+#endif
/* These are not #ifdef __USE_POSIX2 because they are
in the theoretically application-owned namespace. */