Merge branch 'clscan'
[gnulib.git] / ChangeLog
index 938f6fd..0b9e3a0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,145 @@
+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.