+2009-10-30 Michael Haubenwallner <michael.haubenwallner@salomon.at>
+
+ stat: fix compilation on AIX
+ * lib/sys_stat.in.h (stat): Work with fact that large files on AIX
+ only see struct stat64.
+
+2009-10-30 Eric Blake <ebb9@byu.net>
+
+ exclude: make more robust
+ * lib/exclude.c (excluded_file_name): Abort on unexpected value,
+ rather than masking a coding bug.
+ Suggested by Bruno Haible.
+
+2009-10-30 Jim Meyering <meyering@redhat.com>
+
+ perl scripts: remove #!/usr/bin/perl in favor of more portable...
+ Rather than putting #!/usr/bin/perl on the first line,
+ start with a variant of what's recommended by "man perlrun" that
+ invokes the first "perl" program from your shell's search path.
+ * build-aux/gitlog-to-changelog: Replace #!... as above.
+ Add a "Local Variables" perl mode setting.
+ Prompted by a patch from Ludovic Courtès.
+ Improved by Eric Blake.
+ * build-aux/useless-if-before-free: Likewise.
+ * build-aux/announce-gen: Likewise.
+ * build-aux/update-copyright: Likewise.
+
+2009-10-29 Eric Blake <ebb9@byu.net>
+
+ filenamecat-lgpl: adjust clients
+ * modules/linkat (Depends-on): Use filenamecat-lgpl, not
+ filenamecat.
+ * modules/renameat (Depends-on): Likewise.
+
+ filenamecat: split into filenamecat-lgpl
+ * modules/filenamecat-lgpl: New module.
+ * modules/filenamecat (Files): Move library-safe files into
+ filenamecat-lgpl.
+ (Depends-on): Add filenamecat-lgpl.
+ (configure.ac): Declare witness.
+ * lib/filenamecat.h (file_name_concat): Only declare when using
+ GPL module.
+ * lib/filenamecat.c (longest_relative_suffix, mfile_name_concat):
+ Move...
+ * lib/filenamecat-lgpl.c: ...into new file.
+ * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT_LGPL): New macro.
+ (gl_FILE_NAME_CONCAT): Use it.
+ * MODULES.html.sh (File system functions): Mention new module.
+
+ argp: avoid memory leak
+ * modules/argp (Depends-on): Use dirname-lgpl, not dirname.
+ * lib/argp-namefrob.h (__argp_base_name): Use last_component, not
+ base_name, since the latter malloc()s and can call exit().
+ Leak introduced 2006-07-03.
+
+ dirname-lgpl: adjust clients that don't need full dirname
+ * modules/backupfile (Depends-on): Use dirname-lgpl, not dirname.
+ * modules/filenamecat (Depends-on): Likewise.
+ * modules/linkat (Depends-on): Likewise.
+ * modules/mkancesdirs (Depends-on): Likewise.
+ * modules/mkdir (Depends-on): Likewise.
+ * modules/openat (Depends-on): Likewise.
+ * modules/savewd (Depends-on): Likewise.
+ * modules/rename (Depends-on): Likewise.
+ (License): Relax license.
+ * modules/mkdir-tests (Depends-on): Drop progname.
+ (Makefile.am): Delete unneeded LDADD.
+ * modules/rename-tests (Depends-on, Makefile.am): Likewise.
+
+ dirname: split into dirname-lgpl
+ * modules/dirname-lgpl: New module.
+ * modules/dirname (Files): Move library-safe files into
+ dirname-lgpl.
+ (Depends-on): Add dirname-lgpl.
+ (configure.ac): Declare witness.
+ * modules/double-slash-root (License): Relax license.
+ * lib/dirname.h (base_name, dir_name): Only declare when using GPL
+ module.
+ * lib/dirname.c (dir_len, mdir_name): Move...
+ * lib/dirname-lgpl.c: ...into new file.
+ * lib/basename.c (last_component, base_len): Move...
+ * lib/basename-lgpl.c: ...into new file.
+ * m4/dirname.m4 (gl_DIRNAME_LGPL): New macro.
+ (gl_DIRNAME): Use it.
+ * MODULES.html.sh (Enhancements for POSIX:2008 functions):
+ Mention new module.
+ * modules/dirname-tests (Depends-on): Add progname.
+ * tests/test-dirname.c (program_name): Delete.
+
+ mkdir: make safe for libraries
+ * modules/mkdir (Depends-on): Drop xalloc.
+ * lib/mkdir.c (rpl_mkdir): Fail with ENOMEM rather than calling
+ exit.
+
+ tests: avoid some compiler warnings
+ * tests/test-getaddrinfo.c (simple): Mark static, and allow string
+ literals.
+ * tests/test-memchr.c (main): Avoid type mismatch.
+ * tests/test-arpa_inet.c (main): Avoid unused parameters.
+ * tests/test-base64.c (main): Likewise.
+ * tests/test-getdelim.c (main): Likewise.
+ * tests/test-gethostname.c (main): Likewise.
+ * tests/test-getline.c (main): Likewise.
+ * tests/test-netinet_in.c (main): Likewise.
+ * tests/test-select.c (open_server_socket, main): Likewise.
+ * tests/test-select-stdin.c (main): Likewise.
+ * tests/test-sockets.c (main): Likewise.
+ * tests/test-strsignal.c (main): Likewise.
+ * tests/test-sys_select.c (main): Likewise.
+ * tests/test-sys_socket.c (main): Likewise.
+ * tests/test-u64.c (main): Likewise.
+ * tests/test-xfprintf-posix.c (main): Likewise.
+ * tests/test-xvasprintf.c (test_xvasprintf, main): Likewise.
+
+ sockets: avoid compiler warning
+ * lib/sockets.c (gl_sockets_startup): Mark unused parameter.
+
+ maint: detect usage(1) and other suspicious exits
+ * top/maint.mk (sc_prohibit_magic_number_exit): New rule.
+
+2009-10-29 Jim Meyering <meyering@redhat.com>
+
+ timespec: long-to-int truncation could make timespec_cmp malfunction
+ * lib/timespec.h (timespec_cmp): Do not interpret a difference of
+ a multiple of 2^32 nanoseconds as no difference.
+
+2009-10-28 Jim Meyering <meyering@redhat.com>
+
+ fprintftime: wrap macro code argument in "do {...} while(0)"
+ * lib/strftime.c (cpy) [FPRINTFTIME]: The second argument to the
+ cpy macro must be a statement that can be followed by a semicolon.
+ Now that the else clause contains a comment and is hence longer
+ than one line, I require curly braces. That in turn requires
+ that we wrap this code block in the standard do...while(0).
+
+ fprintftime: remove stray semicolon from previous change
+ * lib/strftime.c (cpy) [FPRINTFTIME]: Remove trailing semicolon.
+
+ fprintftime: avoid a warning about ignored fwrite return value
+ * lib/strftime.c [FPRINTFTIME]: Include "ignore-value.h".
+ (cpy) [FPRINTFTIME]: Ignore fwrite failure, even though technically,
+ that is unsafe.
+ * modules/fprintftime (Depends-on): Add ignore-value.
+
+ exclude: avoid an unwarranted warning
+ * lib/exclude.c (excluded_file_name): Initialize "rc" before switch.
+
+2009-10-27 Eric Blake <ebb9@byu.net>
+
+ fseek: avoid compilation failure when fflush is replaced
+ * m4/fseek.m4 (gl_REPLACE_FSEEK): New macro.
+ * m4/fseeko.m4 (gl_REPLACE_FSEEKO): Also replace fseek, if fseek
+ module is in use.
+ * lib/stdio.in.h (GNULIB_FSEEKO): Only poison fseek if fseek
+ module is not in use; since REPLACE_FSEEK worked otherwise.
+ (GNULIB_FTELLO): Likewise for ftell.
+ Reported by Ian Beckwith and others.
+
+2009-10-27 Bruno Haible <bruno@clisp.org>
+
+ * lib/isnan.c (rpl_isnan[fdl]): Repeat the specification declaration.
+ Reported by Jim Meyering.
+
+2009-10-27 Jim Meyering <jim@meyering.net>
+ Bruno Haible <bruno@clisp.org>
+
+ Avoid warning despite dropping the return value of fwrite.
+ * lib/unicodeio.c: Include ignore-value.h.
+ (fwrite_success_callback): Explicitly ignore fwrite's return value.
+ * modules/unicodeio (Depends-on): Add ignore-value.
+
+2009-10-26 Eric Blake <ebb9@byu.net>
+
+ areadlinkat: fix fallback path
+ * lib/at-func.c (AT_FUNC_NAME): Avoid signed comparison between
+ pointer and zero.
+
2009-10-22 Pádraig Brady <P@draigBrady.com>
Use a better IO block size for modern systems