Undo autoconf 2.69's attempt to #define _DARWIN_USE_64_BIT_INODE.

Defining this symbol causes OS X 10.5 to use a buggy version of readdir(),
which can sometimes fail with EINVAL if the previously-fetched directory
entry has been deleted or renamed.  In later OS X versions that bug has
been repaired, but we still don't need the #define because it's on by
default.  So this is just an all-around bad idea, and we can do without it.
This commit is contained in:
Tom Lane 2013-12-29 12:57:45 -05:00
parent 71812a98cb
commit ed011d9754
3 changed files with 11 additions and 4 deletions

5
configure vendored
View File

@ -11092,6 +11092,11 @@ rm -rf conftest*
fi
# Autoconf 2.69's AC_SYS_LARGEFILE believes it's a good idea to #define
# _DARWIN_USE_64_BIT_INODE, but it isn't: on OS X 10.5 that activates a
# bug that causes readdir() to sometimes return EINVAL. On later OS X
# versions where the feature actually works, it's on by default anyway.
fi
# Check for largefile support (must be after AC_SYS_LARGEFILE)

View File

@ -1205,6 +1205,11 @@ esac
# defines can affect what is generated for that.
if test "$PORTNAME" != "win32"; then
AC_SYS_LARGEFILE
# Autoconf 2.69's AC_SYS_LARGEFILE believes it's a good idea to #define
# _DARWIN_USE_64_BIT_INODE, but it isn't: on OS X 10.5 that activates a
# bug that causes readdir() to sometimes return EINVAL. On later OS X
# versions where the feature actually works, it's on by default anyway.
AH_VERBATIM([_DARWIN_USE_64_BIT_INODE],[])
fi
# Check for largefile support (must be after AC_SYS_LARGEFILE)

View File

@ -833,10 +833,7 @@
XLOG_BLCKSZ). Changing XLOG_SEG_SIZE requires an initdb. */
#undef XLOG_SEG_SIZE
/* Enable large inode numbers on Mac OS X 10.5. */
#ifndef _DARWIN_USE_64_BIT_INODE
# define _DARWIN_USE_64_BIT_INODE 1
#endif
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS