+2009-08-27 Bruno Haible <bruno@clisp.org>
+
+ * tests/test-bitrotate.c (main): Remove test that uses a shift count
+ of 0.
+
+2009-08-27 Bruno Haible <bruno@clisp.org>
+
+ * tests/test-func.c (main): Don't verify sizeof __func__ on SunPRO C
+ compilers.
+ * doc/func.texi: Document the SunPRO C bug.
+
+2009-08-27 Bruno Haible <bruno@clisp.org>
+
+ Fix link error on Solaris.
+ * tests/test-parse-duration.c (xstrdup): Remove function.
+
+2009-08-26 Pádraig Brady <P@draigbrady.com>
+
+ ignore-value: handle pointer types, too
+ * lib/ignore-value.h (__attribute__): Remove definition.
+ (ignore_value): Remove use of "__attribute__ ((unused))" in favor
+ of a more concise and more-often effective "(void) i" statement.
+ (ignore_ptr): New function to suppress warnings from functions that
+ return pointers, and to make it explicit that one function doesn't
+ handle all cases.
+
+2009-08-25 Bruno Haible <bruno@clisp.org>
+
+ dup2: work around a Linux bug.
+ * m4/dup2.m4 (gl_FUNC_DUP2): Test for the Linux bug.
+ * lib/dup2.c (rpl_dup2): Correct the return value if it is -EBADF.
+ * doc/posix-functions/dup2.texi: Mention the Linux bug.
+ Reported by Simon Josefsson.
+
+2009-08-25 Jim Meyering <meyering@redhat.com>
+
+ libguestfs uses gnulib
+ * users.txt: Add libguestfs.
+
+2009-08-24 Eric Blake <ebb9@byu.net>
+
+ dup2, pipe2: fix some recent test failures on cygwin 1.5.x
+ * lib/pipe2.c (includes): Add binary-io.h.
+ * lib/dup2.c (rpl_dup2): Correct buggy errno value.
+
+2009-08-24 Bruno Haible <bruno@clisp.org>
+
+ Tolerate declared but missing accept4 syscall.
+ * lib/accept4.c (accept4): Invoke original accept4 function first, if
+ available.
+ * lib/sys_socket.in.h (accept4): If the function is already present,
+ override it.
+ * m4/accept4.m4 (gl_FUNC_ACCEPT4): Remove AC_LIBOBJ invocation.
+ * modules/accept4 (Makefile.am): Compile accept4.c always.
+ Reported by Paolo Bonzini and Eric Blake.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ New module 'accept4'.
+ * lib/sys_socket.in.h (accept4): New declaration.
+ * lib/accept4.c: New file.
+ * m4/accept4.m4: New file.
+ * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
+ GNULIB_ACCEPT4, HAVE_ACCEPT4.
+ * modules/sys_socket (Makefile.am): Substitute GNULIB_ACCEPT4,
+ HAVE_ACCEPT4.
+ * modules/accept4: New file.
+ * doc/glibc-functions/accept4.texi: Mention the new module.
+
+2009-08-24 Jim Meyering <meyering@redhat.com>
+
+ progname: also set global program_invocation_name, when possible
+ Before this change, a libtool-enabled program that calls glibc's
+ error function would report the program name as
+ "/abs/dir/.libs/lt-program_name" rather than the desired program_name.
+ * modules/progname (configure.ac): Check for a declaration of
+ program_invocation_name.
+ * lib/progname.c: Include <errno.h>.
+ (set_program_name) [HAVE_DECL_PROGRAM_INVOCATION_NAME]:
+ Set program_invocation_name.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ * lib/dup3.c: Include <string.h>.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ * lib/dup3.c (dup3): Test only once whether the system actually exists.
+ * lib/pipe2.c (pipe2): Likewise.
+ Suggested by Eric Blake.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ Tolerate declared but missing dup3 syscall.
+ * lib/dup3.c (dup3): Invoke original dup3 function first, if available.
+ * lib/unistd.in.h (dup3): If the function is already present,
+ override it.
+ * m4/dup3.m4 (gl_FUNC_DUP3): Remove AC_LIBOBJ invocation.
+ * modules/dup3 (Makefile.am): Compile dup3.c always.
+ Reported by Paolo Bonzini.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ Tolerate declared but missing pipe2 syscall.
+ * lib/pipe2.c (pipe2): Invoke original pipe2 function first, if
+ available.
+ * lib/unistd.in.h (pipe2): If the function is already present,
+ override it.
+ * m4/pipe2.m4 (gl_FUNC_PIPE2): Remove AC_LIBOBJ invocation.
+ * modules/pipe2 (Makefile.am): Compile pipe2.c always.
+ Reported by Paolo Bonzini.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ * lib/pipe2.c (pipe2): Move #ifs inside function.
+
+2009-08-22 Joel E. Denny <jdenny@clemson.edu>
+
+ quotearg: document limitations of quote_these_too
+ * lib/quotearg.c (quotearg_buffer_restyled): Add comments where
+ those limitations are created.
+ * lib/quotearg.h (set_char_quoting): Document that digits and
+ letters that are special after backslash are not permitted.
+ (quotearg_char): Cross-reference set_char_quoting documentation.
+
+2009-08-23 Joel E. Denny <jdenny@clemson.edu>
+
+ quotearg: implement custom_quoting_style
+ * lib/quotearg.c: (struct quoting_options): Add left_quote and
+ right_quote fields.
+ (set_custom_quoting): New public function.
+ (quotearg_buffer_restyled): Add left_quote and right_quote
+ arguments, handle them very much like locale quoting, and update
+ all uses.
+ (quotearg_n_custom): New public function.
+ (quotearg_n_custom_mem): New public function.
+ (quotearg_custom): New public function.
+ (quotearg_custom_mem): New public function.
+ * lib/quotearg.h: Prototype and document new public functions.
+ (enum quoting_style): For escape_quoting_style and
+ clocale_quoting_style, comment that QA_SPLIT_TRIGRAPHS is
+ ignored even though they're otherwise like c_quoting_style.
+ Add custom_quoting_style member and document with comparison to
+ clocale_quoting_style.
+ * tests/test-quotearg.c (custom_quotes): New array.
+ (custom_results): New array.
+ (main): Extend to test custom quoting.
+
+2009-08-22 Joel E. Denny <jdenny@clemson.edu>
+
+ quotearg: fix right quote escaping when it's in quote_these_too
+ * lib/quotearg.c (quotearg_buffer_restyled): Upon seeing a right
+ quote, be sure to prepend only one backslash.
+ * tests/test-quotearg.c (use_quote_double_quotes): New function.
+ (main): Test it.
+
+2009-08-22 Joel E. Denny <jdenny@clemson.edu>
+
+ quotearg-tests: test escaping of embedded locale quotes
+ * tests/test-quotearg.c (struct result_strings): Add member for
+ new input.
+ (LQ_ENC, RQ_ENC, RQ_ESC): New macros.
+ (inputs): Add new input.
+ (results_g): Add expected results.
+ (flag_results): Likewise.
+ (locale_results): Likewise.
+ (compare_strings): Check those.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ Tests for module 'dup3'.
+ * modules/dup3-tests: New file.
+ * tests/test-dup3.c: New file.
+
+ New module 'dup3'.
+ * lib/unistd.in.h (dup3): New declaration.
+ * lib/dup3.c: New file.
+ * m4/dup3.m4: New file.
+ * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_DUP3 and
+ HAVE_DUP3.
+ * modules/unistd (Makefile.am): Substitute GNULIB_DUP3 and HAVE_DUP3.
+ * modules/dup3: New file.
+ * doc/glibc-functions/dup3.texi: Mention the new module.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ Tweak the dup2 test.
+ * tests/test-dup2.c (main): Create the test file empty. Verify that an
+ out-of-range fd yields EBADF. Verify that after writing to /dev/null,
+ the test file is still empty. Fix argument order of lseek.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ Avoid test link errors when the modules getopt-gnu, gettext are used.
+ * modules/getopt-posix-tests (Makefile.am): Define test_getopt_LDADD.
+ Reported by Tom G. Christensen <tgc@jupiterrise.com>.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ Fix getdtablesize() on mingw.
+ * lib/getdtablesize.c (getdtablesize): Implement differently.
+ * lib/unistd.in.h (getdtablesize): Improve comment.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ New module 'mkostemp'.
+ Based on Ulrich Drepper's 2007-08-10 change in glibc.
+ * lib/stdlib.in.h (mksotemp): New declaration.
+ * lib/mkostemp.c: New file, from glibc with modifications.
+ * lib/tempname.h (GT_FILE): Remove outdated comment.
+ (gen_tempname): Add flags argument.
+ * lib/tempname.c (__GT_BIGFILE): Remove macro.
+ (__GT_FILE): Map to 1.
+ (small_open, large_open): Remove macros.
+ (__gen_tempname): Add flags argument. Remove code for __GT_BIGFILE.
+ * lib/mkstemp.c (mkstemp): Update.
+ * lib/mkdtemp.c (mkdtemp): Likewise.
+ * m4/mkostemp.m4: New file.
+ * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_MKOSTEMP,
+ HAVE_MKOSTEMP.
+ * modules/stdlib (Makefile.am): Substitute GNULIB_MKOSTEMP,
+ HAVE_MKOSTEMP.
+ * modules/mkostemp: New file, based on modules/mkstemp.
+ * doc/glibc-functions/mkostemp.texi: Mention the new module.
+ * NEWS: Mention the change.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ * lib/pipe2.c (pipe2): Support O_TEXT, O_BINARY on all platforms.
+ Reported by Eric Blake.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ * lib/pipe2.c (pipe2): Fix test of fcntl's return value.
+ Reported by Eric Blake.
+
+2009-08-23 Bruno Haible <bruno@clisp.org>
+
+ * modules/fchdir (Depends-on): Use fcntl-h instead of fcntl.
+ * modules/pipe2 (Depends-on): Likewise.
+
+2009-08-23 Eric Blake <ebb9@byu.net>
+
+ fcntl-h: add O_TTY_INIT support
+ * lib/fcntl.in.h (O_TTY_INIT): Support another POSIX macro.
+ * tests/test-fcntl-h.c (o): Test it.
+ * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
+
+ fcntl-h: rename from fcntl, in preparation for fcntl(2)
+ * modules/fcntl: Move <fcntl.h> header replacement...
+ * modules/fcntl-h: ...to new name, so as not to collide with
+ like-named function.
+ * tests/test-fcntl.c: Rename...
+ * tests/test-fcntl-h.c: ...to this. Test FD_CLOEXEC.
+ * modules/fcntl-tests: Rename...
+ * modules/fcntl-h-tests: ...to this. Update test file name.
+ * modules/chdir-long (Depends-on): Update clients.
+ * modules/chdir-safer (Depends-on): Likewise.
+ * modules/fcntl-safer (Depends-on): Likewise.
+ * modules/fts (Depends-on): Likewise.
+ * modules/mkancesdirs (Depends-on): Likewise.
+ * modules/mkdir-p (Depends-on): Likewise.
+ * modules/open (Depends-on): Likewise.
+ * modules/savewd (Depends-on): Likewise.
+ * MODULES.html.sh (systems lacking POSIX:2008): Update name.
+ * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
+
+2009-08-22 Bruno Haible <bruno@clisp.org>
+
+ * modules/binary-io (License): Relicense under LGPL.
+ * modules/pipe2 (License): Likewise.
+
+2009-08-22 Bruno Haible <bruno@clisp.org>
+
+ * lib/pipe-filter-ii.c (pipe_filter_ii_execute): Fix test of fcntl's
+ return value.
+ * lib/pipe-filter-gi.c (filter_init): Likewise.
+ Reported by Eric Blake.
+
+2009-08-22 Bruno Haible <bruno@clisp.org>
+
+ * lib/pipe.c (create_pipe): Use pipe2 instead of _pipe.
+ * modules/pipe (Depends-on): Add pipe2.
+
+2009-08-22 Bruno Haible <bruno@clisp.org>
+
+ Tests for module 'pipe2'.
+ * modules/pipe2-tests: New file.
+ * tests/test-pipe2.c: New file.
+
+ New module 'pipe2'.
+ * lib/unistd.in.h (pipe2): New declaration.
+ * lib/pipe2.c: New file.
+ * m4/pipe2.m4: New file.
+ * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_PIPE2 and
+ HAVE_PIPE2.
+ * modules/unistd (Makefile.am): Substitute GNULIB_PIPE2 and HAVE_PIPE2.
+ * modules/pipe2: New file.
+ * doc/glibc-functions/pipe2.texi: Mention the new module.
+
+2009-08-22 Bruno Haible <bruno@clisp.org>
+
+ Reference some new glibc functions.
+ * doc/glibc-functions/accept4.texi: New file.
+ * doc/glibc-functions/dup3.texi: New file.
+ * doc/glibc-functions/mkostemp.texi: New file.
+ * doc/glibc-functions/pipe2.texi: New file.
+ * doc/gnulib.texi (Glibc stdlib.h): Refer to mkostemp.
+ (Glibc sys/socket.h): Refer to accept4.
+ (Glibc unistd.h): Refer to dup3, pipe2.
+ Reported by Eric Blake.
+
+2009-08-22 Jim Meyering <meyering@redhat.com>
+ Bruno Haible <bruno@clisp.org>
+
+ annotate automake snippets with $(AM_V_GEN) and $(AM_V_at)
+ This makes it so packages using automake-1.11's silent-rules option
+ can print e.g., a single "GEN configmake.h" line, rather than
+ the 30+ statements that perform the job. If you want to see the
+ actual commands, you can still run "make V=1".
+ * modules/alloca-opt: Add $(AM_V_GEN) and $(AM_V_at) prefixes
+ so that make output is abbreviated when those variables are defined
+ appropriately.
+ * modules/argz: Likewise.
+ * modules/arpa_inet: Likewise.
+ * modules/byteswap: Likewise.
+ * modules/configmake: Likewise.
+ * modules/dirent: Likewise.
+ * modules/errno: Likewise.
+ * modules/fcntl: Likewise.
+ * modules/float: Likewise.
+ * modules/fnmatch: Likewise.
+ * modules/getopt-posix: Likewise.
+ * modules/glob: Likewise.
+ * modules/iconv_open: Likewise.
+ * modules/inttypes: Likewise.
+ * modules/localcharset: Likewise.
+ * modules/locale: Likewise.
+ * modules/math: Likewise.
+ * modules/netdb: Likewise.
+ * modules/netinet_in: Likewise.
+ * modules/poll: Likewise.
+ * modules/posix_spawnp-tests: Likewise.
+ * modules/sched: Likewise.
+ * modules/search: Likewise.
+ * modules/selinux-h: Likewise.
+ * modules/signal: Likewise.
+ * modules/spawn: Likewise.
+ * modules/stdarg: Likewise.
+ * modules/stdbool: Likewise.
+ * modules/stddef: Likewise.
+ * modules/stdint: Likewise.
+ * modules/stdio: Likewise.
+ * modules/stdlib: Likewise.
+ * modules/string: Likewise.
+ * modules/strings: Likewise.
+ * modules/sys_file: Likewise.
+ * modules/sys_ioctl: Likewise.
+ * modules/sys_select: Likewise.
+ * modules/sys_socket: Likewise.
+ * modules/sys_stat: Likewise.
+ * modules/sys_time: Likewise.
+ * modules/sys_times: Likewise.
+ * modules/sys_utsname: Likewise.
+ * modules/sys_wait: Likewise.
+ * modules/sysexits: Likewise.
+ * modules/time: Likewise.
+ * modules/unistd: Likewise.
+ * modules/wchar: Likewise.
+ * modules/wctype: Likewise.
+
+2009-08-22 Jim Meyering <meyering@redhat.com>
+
+ announce-gen: detect write failure
+ * build-aux/announce-gen: Add Coda at end.
+ Remove equivalent-but-more-verbose block at top.
+
+2009-08-19 Akim Demaille <demaille@gostai.com>
+
+ bootstrap: --help to stdout.
+ * bootstrap (usage): Don't send --help to stderr.
+ Use a here doc instead of a long string.
+