From 93ce02b4fa01a3c1c194d91f8fd09e1efe04537c Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sat, 31 May 2014 14:07:57 -0700 Subject: dup2, fcntl, fcntl-h: port to AIX 7.1 This fixes some porting problems discovered when testing the latest grep snapshot on AIX 7.1. I don't think if fixes any bugs in grep but it could be important for other applications. * doc/posix-functions/dup2.texi: * doc/posix-functions/fcntl.texi: * doc/posix-headers/fcntl.texi: Document AIX bugs. * lib/fcntl.in.h (O_CLOEXEC, O_NOFOLLOW, O_TTY_INIT) [_AIX]: Define to 0 if outside 'int' range. * m4/dup2.m4 (gl_FUNC_DUP2): * m4/fcntl.m4 (gl_FUNC_FCNTL): Check for getdtablesize. If it's available, test a value just outside its range instead of testing 1000000. When cross-compiling, guess that AIX will fail this improved test. --- doc/posix-headers/fcntl.texi | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'doc/posix-headers/fcntl.texi') diff --git a/doc/posix-headers/fcntl.texi b/doc/posix-headers/fcntl.texi index 7366513d03..3d3ade9f8a 100644 --- a/doc/posix-headers/fcntl.texi +++ b/doc/posix-headers/fcntl.texi @@ -47,6 +47,11 @@ Cygwin. portability to native Windows platforms) are defined on some platforms but not on others. +@item +@samp{O_CLOEXEC}, @samp{O_NOFOLLOW}, and @samp{O_TTY_INIT} +are defined to values that are too large for an @code{int} on some platforms: +AIX 7.1 with XL C 12.1. + @item @samp{O_DIRECT}, @samp{O_IGNORE_CTTY}, @samp{O_NDELAY}, @samp{O_NOATIME}, @samp{O_NOLINK}, @samp{O_NOLINKS}, and -- cgit v1.2.1