+2009-09-07 Eric Blake <ebb9@byu.net>
+
+ rename: modernize replacement
+ * modules/rename (Depends-on): Add stdio.
+ (configure.ac): Declare witness.
+ * m4/rename.m4 (gl_FUNC_RENAME): Ensure dependency order, and let
+ stdio take care of replacement.
+ * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
+ * modules/stdio (Makefile.am): Substitute them.
+ * lib/stdio.in.h (rename): Declare replacement.
+ * lib/rename.c (includes): Allow cross-compilation to non-windows
+ machines.
+ * doc/posix-functions/rename.texi (rename): Improve
+ documentation.
+
+ stdio: sort witness names
+ * modules/stdio (Makefile.am): Sort replacements.
+ * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
+ * lib/stdio.in.h: Likewise.
+
+ getcwd: minor cleanups
+ * lib/getcwd.c (AT_FDCWD): Delete; rely on <fcntl.h> instead.
+ (is_ENAMETOOLONG): Delete; ENAMETOOLONG is portable.
+
+ openat: provide more convenience names
+ * modules/faccessat (configure.ac): Add C witness.
+ * lib/unistd.in.h (readlinkat): Fix typo.
+ * lib/openat.h (statat, lstatat, accessat, euidaccessat): New
+ convenience wrappers.
+ * top/maint.mk (sc_prohibit_openat_without_use): Allow these
+ wrappers in syntax checks.
+
+2009-09-06 Eric Blake <ebb9@byu.net>
+
+ doc: fix comments in recent patches
+ * lib/faccessat.c: Mention correct function.
+ * lib/fchmodat.c: Likewise.
+ * lib/fchownat.c: Likewise.
+ * lib/symlinkat.c: Likewise.
+ * doc/posix-headers/fcntl.texi (fcntl.h): Cygwin 1.7 has AT_*
+ constants.
+
+ faccessat, symlinkat: continue cleanup of previous patch
+ * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Ensure dependency order.
+ * m4/faccessat.m4 (gl_FUNC_FACCESSAT): Likewise.
+ * modules/unistd (Makefile.am): Substitute GNULIB_READLINKAT.
+ * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Offer GNULIB_READLINKAT.
+ * modules/symlinkat (configure.ac): Set GNULIB_READLINKAT.
+ * lib/unistd.in.h (readlinkat): Declare if GNULIB_READLINKAT is
+ set.
+
+2009-09-06 Bruno Haible <bruno@clisp.org>
+
+ * lib/sys_stat.in.h (fchmodat): Declare if GNULIB_FCHMODAT is set.
+ (fstatat): Declare if GNULIB_FSTATAT is set.
+ (mkdirat): Declare if GNULIB_MKDIRAT is set.
+ * lib/unistd.in.h (fchownat): Declare if GNULIB_FCHOWNAT is set.
+ (unlinkat): Declare if GNULIB_UNLINKAT is set.
+ * modules/fcntl-h (Files): Remove m4/openat.m4.
+ * modules/sys_stat (Files): Remove m4/openat.m4.
+ (Makefile.am): Substitute GNULIB_FCHMODAT, GNULIB_FSTATAT,
+ GNULIB_MKDIRAT instead of GNULIB_OPENAT.
+ * modules/unistd (Files): Remove m4/openat.m4.
+ (Makefile.am): Substitute GNULIB_FCHOWNAT, GNULIB_UNLINKAT instead of
+ GNULIB_OPENAT.
+ * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Initialize GNULIB_OPENAT,
+ HAVE_OPENAT here. Don't require gl_OPENAT_DEFAULTS.
+ * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize
+ GNULIB_FCHMODAT, GNULIB_FSTATAT, GNULIB_MKDIRAT, HAVE_FCHMODAT,
+ HAVE_FSTATAT, HAVE_MKDIRAT, REPLACE_FSTATAT here. Don't require
+ gl_OPENAT_DEFAULTS.
+ * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_FCHOWNAT,
+ GNULIB_UNLINKAT, HAVE_FCHOWNAT, HAVE_UNLINKAT, REPLACE_FCHOWNAT here.
+ Don't require gl_OPENAT_DEFAULTS.
+ * m4/openat.m4 (gl_FUNC_OPENAT): Require gl_FCNTL_H_DEFAULTS,
+ gl_SYS_STAT_H_DEFAULTS, gl_UNISTD_H_DEFAULTS. Set GNULIB_FCHMODAT,
+ GNULIB_FSTATAT, GNULIB_MKDIRAT, GNULIB_FCHOWNAT, GNULIB_UNLINKAT.
+ (gl_OPENAT_DEFAULTS): Remove macro.
+
+2009-09-06 Bruno Haible <bruno@clisp.org>
+
+ * modules/openat (configure.ac): Remove unneeded witness.
+
+2009-09-06 Bruno Haible <bruno@clisp.org>
+
+ Set errno to ENOSYS when a function is entirely unsupported.
+ * lib/chown.c (rpl_chown) [!HAVE_CHOWN]: Set errno to ENOSYS instead of
+ EOPNOTSUPP.
+ * lib/lchown.c (lchown) [!HAVE_CHOWN]: Likewise.
+ * modules/chown (Depends-on): Remove errno.
+
+2009-09-06 Bruno Haible <bruno@clisp.org>
+
+ * doc/posix-headers/fcntl.texi (AT_*): Mention affected platforms.
+
+2009-09-06 Bruno Haible <bruno@clisp.org>
+
+ * lib/sys_stat.in.h: Fix preprocessor command indentation.
+
+2009-09-06 Ben Pfaff <blp@gnu.org>
+ Bruno Haible <bruno@clisp.org>
+
+ Work around a glibc bug in strtok_r.
+ * lib/string.in.h (strtok_r): Replace if REPLACE_STRTOK_R is set.
+ Undefine if UNDEFINE_STRTOK_R is set.
+ * lib/strtok_r.c (strtok_r, __strtok_r) [!_LIBC]: Don't undefine.
+ * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
+ REPLACE_STRTOK_R and UNDEFINE_STRTOK_R.
+ * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Check against the glibc bug.
+ * modules/string (Makefile.am): Substitute REPLACE_STRTOK_R,
+ UNDEFINE_STRTOK_R.
+ * doc/posix-functions/strtok_r.texi: Mention the glibc 2.7 bug.
+
+2009-09-06 Sergey Poznyakoff <gray@gnu.org.ua>
+
+ exclude: minor fix
+ * lib/exclude.c: Include wctype.h
+
+2009-09-06 Akim Demaille <demaille@gostai.com>
+
+ bootstrap: improve error message
+ * build-aux/bootstrap (find_tool): Upon failure, report the list
+ of candidates.
+ Honor the initial value of the envvar.
+
2009-09-05 Eric Blake <ebb9@byu.net>
+ symlinkat: new module
+ * modules/symlinkat: New file.
+ * lib/symlinkat.c: Likewise.
+ * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Likewise.
+ * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witnesses.
+ * modules/unistd (Makefile.am): Use them.
+ * lib/unistd.in.h (symlinkat, readlinkat): Declare them.
+ (faccessat) [GNULIB_POSIXCHECK]: Fix typo.
+ * lib/at-func.c (FUNC_RESULT): New macro, defaulting to int.
+ * MODULES.html.sh (File system functions): Mention module.
+ * doc/posix-functions/symlinkat.texi (symlinkat): Likewise.
+ * doc/posix-functions/readlinkat.texi (readlinkat): Likewise.
+ * modules/symlinkat-tests: New test.
+ * tests/test-symlinkat.c: Likewise.
+
test-openat-safer: add more checks
* tests/test-openat-safer.c (main): Check more code paths.
faccessat: new module
* modules/faccessat: New file.
- * lib/faccessat.m4: Likewise.
+ * lib/faccessat.c: Likewise.
* m4/faccessat.m4 (gl_FUNC_FACCESSAT): Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
* modules/unistd (Makefile.am): Use it.