summary refs log tree commit diff
path: root/include
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2009-02-26 01:43:53 +0000
committerUlrich Drepper <drepper@redhat.com>2009-02-26 01:43:53 +0000
commit3e6b0a28ebc2319262b318790019558f78249c8b (patch)
treedb13f5c985e08c31bb7dbe3a46def48401623618 /include
parent2e6d6bacc2f0a30f7dbebc977d52904d4a823c45 (diff)
downloadglibc-3e6b0a28ebc2319262b318790019558f78249c8b.tar.gz
glibc-3e6b0a28ebc2319262b318790019558f78249c8b.tar.xz
glibc-3e6b0a28ebc2319262b318790019558f78249c8b.zip
* include/features.h: Define macros for XPG7/POSIX 2008.
	* sysdeps/unix/sysv/linux/bits/stat.h: Protect UTIME_NOW and
	UTIME_OMIT only with __USE_ATFILE.
	* sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
	* sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
	* io/sys/stat.h: Move mknodat definition into same conditional as
	mknod.
	* time/sys/time.h: futimesat is not among the functions accepted
	into the POSIX standard.
Diffstat (limited to 'include')
-rw-r--r--include/features.h22
1 files changed, 18 insertions, 4 deletions
diff --git a/include/features.h b/include/features.h
index eb05b0fb45..a696d8b59c 100644
--- a/include/features.h
+++ b/include/features.h
@@ -29,9 +29,10 @@
 			if >=199309L, add IEEE Std 1003.1b-1993;
 			if >=199506L, add IEEE Std 1003.1c-1995;
 			if >=200112L, all of IEEE 1003.1-2004
+			if >=200809L, all of IEEE 1003.1-2008
    _XOPEN_SOURCE	Includes POSIX and XPG things.  Set to 500 if
 			Single Unix conformance is wanted, to 600 for the
-			upcoming sixth revision.
+			sixth revision, to 700 for the seventh revision.
    _XOPEN_SOURCE_EXTENDED XPG things and X/Open Unix extensions.
    _LARGEFILE_SOURCE	Some more functions for correct standard I/O.
    _LARGEFILE64_SOURCE	Additional functionality from LFS for large files.
@@ -65,6 +66,7 @@
    __USE_XOPEN_EXTENDED	Define X/Open Unix things.
    __USE_UNIX98		Define Single Unix V2 things.
    __USE_XOPEN2K        Define XPG6 things.
+   __USE_XOPEN2K8       Define XPG7 things.
    __USE_LARGEFILE	Define correct standard I/O things.
    __USE_LARGEFILE64	Define LFS things with separate names.
    __USE_FILE_OFFSET64	Define 64bit interface as default.
@@ -100,6 +102,7 @@
 #undef	__USE_XOPEN_EXTENDED
 #undef	__USE_UNIX98
 #undef	__USE_XOPEN2K
+#undef	__USE_XOPEN2K8
 #undef	__USE_LARGEFILE
 #undef	__USE_LARGEFILE64
 #undef	__USE_FILE_OFFSET64
@@ -152,9 +155,9 @@
 # undef  _POSIX_SOURCE
 # define _POSIX_SOURCE	1
 # undef  _POSIX_C_SOURCE
-# define _POSIX_C_SOURCE	200112L
+# define _POSIX_C_SOURCE	200809L
 # undef  _XOPEN_SOURCE
-# define _XOPEN_SOURCE	600
+# define _XOPEN_SOURCE	700
 # undef  _XOPEN_SOURCE_EXTENDED
 # define _XOPEN_SOURCE_EXTENDED	1
 # undef	 _LARGEFILE64_SOURCE
@@ -201,8 +204,10 @@
 #  define _POSIX_C_SOURCE	2
 # elif defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 600
 #  define _POSIX_C_SOURCE	199506L
-# else
+# elif defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 700
 #  define _POSIX_C_SOURCE	200112L
+# else
+#  define _POSIX_C_SOURCE	200809L
 # endif
 # define __USE_POSIX_IMPLICITLY	1
 #endif
@@ -227,6 +232,12 @@
 # define __USE_XOPEN2K		1
 #endif
 
+#if (_POSIX_C_SOURCE - 0) >= 200809L
+# define __USE_XOPEN2K8		1
+# undef  _ATFILE_SOURCE
+# define _ATFILE_SOURCE	1
+#endif
+
 #ifdef	_XOPEN_SOURCE
 # define __USE_XOPEN	1
 # if (_XOPEN_SOURCE - 0) >= 500
@@ -235,6 +246,9 @@
 #  undef _LARGEFILE_SOURCE
 #  define _LARGEFILE_SOURCE	1
 #  if (_XOPEN_SOURCE - 0) >= 600
+#   if (_XOPEN_SOURCE - 0) >= 700
+#    define __USE_XOPEN2K8	1
+#   endif
 #   define __USE_XOPEN2K	1
 #   undef __USE_ISOC99
 #   define __USE_ISOC99		1