+2011-02-16 Paul Eggert <eggert@cs.ucla.edu>
+
+ longlong: tune, particularly for common case of c99
+
+ * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Don't bother compiling
+ or running anything if c99, or if unsigned long long int does not
+ work. In either case, we know the answer without further tests.
+ Do not compile _AC_TYPE_LONG_LONG_SNIPPET twice. Instead, compile
+ it at most once, and use its results for both long long int and
+ unsigned long long int. This is more likely to be efficient in
+ the common case where the program wants to check for both long
+ long int and unsigned long long int.
+ (AC_TYPE_UNSIGNED_LONG_LONG_INT): Don't bother compiling if c99,
+ since the answer is already known.
+
+2011-02-15 Paul Eggert <eggert@cs.ucla.edu>
+
+ getloadavg: set errno
+ * lib/getloadavg.c: Set errno when returning -1. If no other
+ error number looks appropriate, set it to ENOSYS if the getloadavg
+ looks like it can't possibly ever work, ENOTSUP otherwise.
+ Suggested by Bruno Haible in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-02/msg00187.html>.
+
+ getloadavg: trim unused parts and speed up 'configure'
+ * NEWS: Document this.
+ * lib/getloadavg.c: Ignore HAVE_GETLOADAVG; this file is now
+ always compiled if getloadavg is absent.
+ Move test code to ...
+ * tests/test-getloadavg.c: New file, containing previous
+ contents of test from lib/getloadavg.c. It also contains
+ suggestions by Bruno Haible in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-02/msg00186.html>.
+ * modules/getloadavg-tests: New file.
+ * m4/getloadavg.m4 (gl_GETLOADAVG): Do not check for getloadavg twice.
+ Do tests in the same order as they're needed for getloadavg.c.
+ Omit setgid-related tests that generate symbols KMEM_GROUP,
+ NEET_SETGID, GETLOADAVG_PRIVILEGED; nobody seems to use those any more.
+ Do only the tests that are needed to see whether the system has
+ getloadavg, moving the other tests into ...
+ (gl_PREREQ_GETLOADAVG): ... here. Do not define obsolete symbol
+ NLIST_NAME_UNION; nobody should be using it. Do not define
+ symbols C_GETLOADAVG and HAVE_GETLOADAVG; they're no longer
+ relevant, as the user of this module shouldn't care how getloadavg
+ is implemented.
+
+ getloadavg: omit unused var
+ * lib/getloadavg.c (getloadavg): Omit unused local variable.
+
+2011-02-15 Jim Meyering <meyering@redhat.com>
+
+ doc: update users.txt
+ * users.txt: Update iwhd's URL.
+
+2011-02-13 Bruno Haible <bruno@clisp.org>
+
+ Consistent macro naming for macros that use GCC __attribute__.
+ * lib/di-set.h (_GL_ATTRIBUTE_NONNULL): Renamed from
+ _ATTRIBUTE_NONNULL_.
+ * lib/ino-map.h (_GL_ATTRIBUTE_NONNULL): Likewise.
+ * lib/hash.h (_GL_ATTRIBUTE_WUR): Renamed from ATTRIBUTE_WUR.
+ * lib/ignore-value.h (_GL_ATTRIBUTE_DEPRECATED): Renamed from
+ ATTRIBUTE_DEPRECATED.
+ * lib/openat.h (_GL_ATTRIBUTE_NORETURN): Renamed from
+ ATTRIBUTE_NORETURN.
+ * lib/sigpipe-die.h (_GL_ATTRIBUTE_NORETURN): Likewise.
+ * lib/xmemdup0.h (_GL_ATTRIBUTE_NORETURN): Likewise.
+ * lib/xstrtol.h (_GL_ATTRIBUTE_NORETURN): Likewise.
+ * lib/xalloc.h (_GL_ATTRIBUTE_NORETURN): Likewise.
+ (_GL_ATTRIBUTE_MALLOC): Renamed from ATTRIBUTE_MALLOC.
+ (_GL_ATTRIBUTE_ALLOC_SIZE): Renamed from ATTRIBUTE_ALLOC_SIZE.
+ * lib/version-etc.h (_GL_ATTRIBUTE_SENTINEL): Renamed from
+ ATTRIBUTE_SENTINEL.
+ * lib/safe-alloc.h (_GL_ATTRIBUTE_RETURN_CHECK): Renamed from
+ ATTRIBUTE_RETURN_CHECK.
+ * tests/test-ignore-value.c (_GL_ATTRIBUTE_RETURN_CHECK): Likewise.
+ * tests/test-argmatch.c (_GL_ATTRIBUTE_NORETURN): Renamed from
+ ATTRIBUTE_NORETURN.
+ * tests/test-exclude.c (_GL_ATTRIBUTE_NORETURN): Likewise.
+ Reported by Paul Eggert.
+
+2011-02-13 Bruno Haible <bruno@clisp.org>
+
+ Don't interfere with a program's definition of __attribute__.
+ * lib/argp.h (__attribute__): Remove definition.
+ (_GL_ATTRIBUTE_FORMAT): New macro.
+ (argp_error, __argp_error, argp_failure, __argp_failure): Use it.
+ * lib/argp-fmtstream.h (__attribute__): Remove definition.
+ (_GL_ATTRIBUTE_FORMAT): New macro.
+ (__argp_fmtstream_printf, argp_fmtstream_printf): Use it.
+ * lib/argp-help.c (hol_entry_long_iterate): Use __attribute__ only for
+ GCC 3 or newer.
+ * lib/error.h (__attribute__): Remove definition.
+ (_GL_ATTRIBUTE_FORMAT): New macro.
+ (error, error_at_line): Use it.
+ * lib/hash.h (__attribute__): Remove definition.
+ (ATTRIBUTE_WUR): Update definition. Define always.
+ * lib/openat.h (__attribute__): Remove definition.
+ (ATTRIBUTE_NORETURN): Update definition. Define always.
+ * lib/sigpipe-die.h (__attribute__): Remove definition.
+ (ATTRIBUTE_NORETURN): Update definition. Define always.
+ * lib/vasnprintf.h (__attribute__): Remove definition.
+ (_GL_ATTRIBUTE_FORMAT): New macro.
+ (asnprintf, vasnprintf): Use it.
+ * lib/xalloc.h (__attribute__): Remove definition.
+ (ATTRIBUTE_NORETURN): Update definition. Define always.
+ (ATTRIBUTE_MALLOC, ATTRIBUTE_ALLOC_SIZE): Define always.
+ * lib/xmemdup0.h (__attribute__): Remove definition.
+ (ATTRIBUTE_NORETURN): Update definition. Define always.
+ * lib/xprintf.h (__attribute__): Remove definition.
+ (_GL_ATTRIBUTE_FORMAT): New macro.
+ (xprintf, xvprintf, xfprintf, xvfprintf): Use it.
+ * lib/xstrtol.h (__attribute__): Remove definition.
+ (ATTRIBUTE_NORETURN): Update definition. Define always.
+ * lib/xvasprintf.h (__attribute__): Remove definition.
+ (_GL_ATTRIBUTE_FORMAT): New macro.
+ (xasprintf, xvasprintf): Use it.
+ * tests/test-argmatch.c (__attribute__): Remove definition.
+ (ATTRIBUTE_NORETURN): Update definition. Define always.
+ * tests/test-exclude.c (__attribute__): Remove definition.
+ (ATTRIBUTE_NORETURN): Update definition. Define always.
+ Reported by Paul Eggert.
+
+2011-02-13 Bruno Haible <bruno@clisp.org>
+
+ mbrtowc: Add more tests for native Windows platforms.
+ * tests/test-mbrtowc-w32-1.sh: New file.
+ * tests/test-mbrtowc-w32-2.sh: New file.
+ * tests/test-mbrtowc-w32-3.sh: New file.
+ * tests/test-mbrtowc-w32-4.sh: New file.
+ * tests/test-mbrtowc-w32-5.sh: New file.
+ * tests/test-mbrtowc-w32.c: New file.
+ * modules/mbrtowc-tests (Files): Add them.
+ (Makefile.am): Arrange to run these tests.
+ * tests/test-mbrtowc-w32-6.sh: New file, currently unused.
+ * tests/test-mbrtowc-w32-7.sh: New file, currently unused.
+
+2011-02-13 Bruno Haible <bruno@clisp.org>
+
+ mbrtowc: Work around native Windows bug.
+ * m4/mbrtowc.m4 (gl_MBRTOWC_RETVAL): Detect native Windows bug. Use the
+ guess when no suitable locale for testing was found.
+ * doc/posix-functions/mbrtowc.texi: Mention the native Windows bug.
+
+2011-02-13 Bruno Haible <bruno@clisp.org>
+
+ mbsinit: Work around mingw bug.
+ * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Replace mbsinit also on mingw.
+ * lib/mbsinit.c (mbsinit): Provide an alternate definition for native
+ Windows.
+ * doc/posix-functions/mbsinit.texi: Mention the mingw bug.
+
+2011-02-13 Bruno Haible <bruno@clisp.org>
+
+ mbsinit: Don't crash for a NULL argument.
+ * lib/mbsinit.c (mbsinit): When the argument is NULL, return 1.
+ * tests/test-mbsinit.c (mbsinit): Check this behaviour.
+
+2011-02-13 Bruno Haible <bruno@clisp.org>
+
+ Don't interfere with a program's definition of __attribute__.
+ * lib/stdio.in.h (__attribute__): Remove definition.
+ (_GL_ATTRIBUTE_FORMAT, _GL_ATTRIBUTE_FORMAT_PRINTF): New macros.
+ (dprintf, fprintf, obstack_printf, obstack_printf, obstack_vprintf,
+ printf, snprintf, sprintf, asprintf, vasprintf, vdprintf, vfprintf,
+ vsnprintf, vsprintf): Use _GL_ATTRIBUTE_FORMAT_PRINTF.
+ * lib/string.in.h (__attribute__): Remove definition.
+ Reported by Paul Eggert.
+
+2011-02-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ stdlib: don't get in the way of non-GCC __attribute__
+ See thread starting at
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-02/msg00161.html>.
+ Revert previous stdlib change, installing the following instead:
+ * lib/stdlib.in.h (__attribute__): Remove. We do not want
+ to get in the way of a non-GCC compiler that supports __attribute__.
+ (_GL_ATTRIBUTE_RETURN): New macro.
+ (_Exit): Use it instead of __attribute__.
+
+2011-02-12 Bruno Haible <bruno@clisp.org>
+
+ quotearg test: Avoid test failure on mingw.
+ * tests/test-quotearg.sh: Convert the locale identifier from native
+ Windows syntax to Unix syntax.
+
+2011-02-12 Bruno Haible <bruno@clisp.org>
+
+ setlocale: Prefer gnulib's override over libintl's override.
+ * lib/locale.in.h (GNULIB_defined_setlocale): New macro.
+ * lib/gettext.h (setlocale): Redefine to rpl_setlocale if
+ GNULIB_defined_setlocale is set.
+
+2011-02-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ stdlib: support non-GCC __attribute__
+
+ Fix a serious and tricky problem encountered when attempting to
+ add the getloadavg module to Emacs. Emacs worked fine on RHEL
+ 5.5, but it crashed due to memory corruption on Solaris 10 with
+ Sun C 5.11. Emacs normally ORs 3-bit tags into their low-order
+ bits that are otherwise zero. This tagging is optional inside
+ Emacs but is preferred and is used when __attribute__ ((__aligned
+ (8))) works, as it does with both recent-enough GCC and with Sun C
+ 5.11. However, Sun C 5.11 is not GCC and does not #define
+ __GNUC__ and __GNUC_MINOR__.
+
+ When I added the getloadavg module to Emacs, it brought in
+ stdlib.in.h, which contained this fragment:
+
+ #ifndef __attribute__
+ # if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8)
+ # define __attribute__(Spec) /* empty */
+ # endif
+ #endif
+
+ When files that include <stdlib.h> were compiled with Sun C 5.11,
+ the above code disabled __attribute__ ((__aligned (8))), which
+ caused variables to not be properly aligned, which eventually led
+ to the pointer corruption mentioned above. (This was a bit hard
+ to diagnose, unfortunately.)
+
+ Several "#define __attribute__(X) /* empty */" code snippets need
+ to be eradicated from Gnulib to work with non-GCC compilers that
+ support __attribute__. The Autoconf way to do this is to test for
+ each kind of attribute that we want support for, and selectively
+ enable that in source code.
+
+ Fix this problem just for stdlib.h, by adding a test for the
+ __noreturn__ attribute, and change stdlib.in.h to use that test
+ when needed. This technique can be easily generalized to the
+ other *.in.h files and attributes, and a similar technique can be
+ used for *.h and *.c files. This patch is enough to solve the
+ problem for Emacs + getloadavg, and I thought I'd publish it for
+ feedback before undertaking further, similar fixes in other
+ modules.
+
+ This patch does not arrange to #define HAVE_ATTRIBUTE_NORETURN
+ because it's not needed for stdlib.h. It merely substitutes the
+ value directly into stdlib.h. We may well need to #define it, or
+ similar symbols, for other modules, but it's nice to also have an
+ option to not #define it for applications like Emacs that do not
+ need it.
+
+ * lib/stdlib.in.h (__attribute__): Do not #define.
+ (_GL_ATTRIBUTE_NORETURN): New macro, which in stdlib.h needs to
+ be defined only if the _Exit module is also used.
+ * m4/_Exit.m4 (gl_FUNC__EXIT): Require gl_ATTRIBUTE_NORETURN.
+ * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Subst
+ HAVE_ATTRIBUTE_NORETURN and default it to 1, its value on GNU
+ platforms.
+ * modules/_Exit (Files): Add m4/attribute.m4.
+ * modules/stdlib (Makefile.am): Substitute HAVE_ATTRIBUTE_NORETURN.
+ * m4/attribute.m4: New file.
+
+2011-02-12 Bruno Haible <bruno@clisp.org>
+
+ wcsrtombs: Work around bug on native Windows.
+ * m4/wcsrtombs.m4 (gl_WCSRTOMBS_NULL): Test against mingw bug.
+ * lib/wcsrtombs.c (rpl_wcsrtombs): When dest is NULL, pass SIZE_MAX
+ instead of len.
+ * doc/posix-functions/wcsrtombs.texi: Document mingw bug.
+
+2011-02-12 Bruno Haible <bruno@clisp.org>
+
+ mbsrtowcs: Work around bug on native Windows.
+ * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Require gt_LOCALE_FR. Test
+ against mingw bug.
+ * doc/posix-functions/mbsrtowcs.texi: Document mingw bug.
+
+2011-02-12 Bruno Haible <bruno@clisp.org>
+
+ Avoid setlocale bugs in tests.
+ * modules/btowc (Dependencies): Add setlocale.
+ * modules/c-strcase (Dependencies): Likewise.
+ * modules/mbmemcasecmp (Dependencies): Likewise.
+ * modules/mbmemcasecoll (Dependencies): Likewise.
+ * modules/mbrtowc (Dependencies): Likewise.
+ * modules/mbscasecmp (Dependencies): Likewise.
+ * modules/mbscasestr (Dependencies): Likewise.
+ * modules/mbschr (Dependencies): Likewise.
+ * modules/mbscspn (Dependencies): Likewise.
+ * modules/mbsinit (Dependencies): Likewise.
+ * modules/mbsncasecmp (Dependencies): Likewise.
+ * modules/mbsnrtowcs (Dependencies): Likewise.
+ * modules/mbspbrk (Dependencies): Likewise.
+ * modules/mbspcasecmp (Dependencies): Likewise.
+ * modules/mbsrchr (Dependencies): Likewise.
+ * modules/mbsrtowcs (Dependencies): Likewise.
+ * modules/mbsspn (Dependencies): Likewise.
+ * modules/mbsstr (Dependencies): Likewise.
+ * modules/nl_langinfo (Dependencies): Likewise.
+ * modules/quotearg (Dependencies): Likewise.
+ * modules/unicase/locale-language (Dependencies): Likewise.
+ * modules/unicase/ulc-casecmp (Dependencies): Likewise.
+ * modules/unicase/ulc-casecoll (Dependencies): Likewise.
+ * modules/unigbrk/ulc-grapheme-breaks (Dependencies): Likewise.
+ * modules/unistdio/u8-vasnprintf (Dependencies): Likewise.
+ * modules/unistdio/u16-vasnprintf (Dependencies): Likewise.
+ * modules/unistdio/u32-vasnprintf (Dependencies): Likewise.
+ * modules/unistdio/ulc-vasnprintf (Dependencies): Likewise.
+ * modules/uniwbrk/ulc-wordbreaks (Dependencies): Likewise.
+ * modules/vasnprintf-posix (Dependencies): Likewise.
+ * modules/wcrtomb (Dependencies): Likewise.
+ * modules/wcsnrtombs (Dependencies): Likewise.
+ * modules/wcsrtombs (Dependencies): Likewise.
+
+2011-02-12 Bruno Haible <bruno@clisp.org>
+
+ setlocale: Workaround native Windows bug.
+ * lib/setlocale.c (rpl_setlocale): On native Windows, when setlocale
+ succeeds but sets LC_CTYPE to "C", report a failure.
+ * tests/test-setlocale2.sh: New file.
+ * tests/test-setlocale2.c: New file.
+ * modules/setlocale-tests (Files): Add the new files.
+ (Makefile.am): Enable test-setlocale2.sh test.
+ * doc/posix-functions/setlocale.texi: Mention workaround.
+
+2011-02-11 Bruno Haible <bruno@clisp.org>
+
+ Tests for module 'setlocale'.
+ * modules/setlocale-tests: New file.
+ * tests/test-setlocale1.sh: New file.
+ * tests/test-setlocale1.c: New file.
+
+ New module 'setlocale'.
+ * lib/locale.in.h (setlocale): New declaration.
+ * lib/setlocale.c: New file, based on
+ gettext/gettext-runtime/intl/setlocale.c.
+ * m4/setlocale.m4: New file.
+ * m4/locale_h.m4 (gl_LOCALE_H): Test whether setlocale is declared.
+ (gl_LOCALE_H_DEFAULTS): Initialize GNULIB_SETLOCALE, REPLACE_SETLOCALE.
+ * modules/locale (Makefile.am): Substitute GNULIB_SETLOCALE,
+ REPLACE_SETLOCALE.
+ * modules/setlocale: New file.
+ * tests/test-locale-c++.cc: Test the declaration of setlocale.
+ * doc/posix-functions/setlocale.texi: Mention the new module.
+
+2011-02-11 Bruno Haible <bruno@clisp.org>
+
+ Prepare for locale dependent tests on mingw.
+ * m4/locale-ar.m4 (gt_LOCALE_AR): On native Windows, don't try "ar"
+ because it has the wrong locale encoding.
+ * m4/locale-fr.m4 (gt_LOCALE_FR): On native Windows, try
+ French_France.1252 instead of "fr".
+ (gt_LOCALE_FR_UTF8): On native Windows, try French_France.65001.
+ * m4/locale-ja.m4 (gt_LOCALE_JA): On native Windows, don't try "ja"
+ because it has the wrong locale encoding.
+ * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Require AC_CANONICAL_HOST. On
+ native Windows, try Turkish_Turkey.65001.
+ * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): On native Windows, try
+ Chinese_China.54936.
+
+ Prepare for locale dependent tests on mingw.
+ * m4/locale-ar.m4 (gt_LOCALE_AR): On native Windows, call setlocale
+ differently.
+ * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Likewise.
+ * m4/locale-ja.m4 (gt_LOCALE_JA): Likewise.
+ * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
+ * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
+
+2011-02-11 Eric Blake <eblake@redhat.com>
+
+ strptime: avoid compiler warnings
+ * lib/strptime.c (__strptime_internal) [!_NL_CURRENT]: Avoid
+ compiler warnings about dead code.
+ Reported by Daniel P. Berrange.
+
+2011-02-11 Thien-Thi Nguyen <ttn@gnuvola.org>
+
+ doc: update users.txt
+ * users.txt: Add rcs.
+
+2011-02-10 John W. Eaton <jwe@gnu.org>
+
+ doc: update users.txt
+ * users.txt: Add octave.
+
+2011-02-10 Jim Meyering <meyering@redhat.com>
+
+ doc: update users.txt
+ * users.txt: Add iwhd.
+
+2011-02-09 Bruno Haible <bruno@clisp.org>
+
+ gnulib-tool: Make copyright notice adjustment more robust.
+ * gnulib-tool (func_import): In sed_transform_main_lib_file,
+ sed_transform_build_aux_file, sed_transform_testsrelated_lib_file,
+ allow a line break to occur after "GNU" in "GNU [Lesser] General Public
+ License".
+ Reported by Glenn Morris <rgm@gnu.org> via Paul Eggert.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'towctrans'.
+ * modules/towctrans: New file.
+ * lib/wctype.in.h (towctrans): New declaration.
+ * lib/towctrans.c: New file.
+ * lib/towctrans-impl.h: New file.
+ * m4/towctrans.m4: New file.
+ * m4/wctype_h.m4 (gl_WCTYPE_H): Test whether towctrans is declared.
+ (gl_WCTYPE_H_DEFAULTS): Initialize GNULIB_TOWCTRANS.
+ * modules/wctype-h (Makefile.am): Substitute GNULIB_TOWCTRANS.
+ * tests/test-wctype-h-c++.cc: Test the declaration of towctrans.
+ * doc/posix-functions/towctrans.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wctrans'.
+ * modules/wctrans: New file.
+ * lib/wctype.in.h (wctrans): New declaration.
+ * lib/wctrans.c: New file.
+ * lib/wctrans-impl.h: New file.
+ * m4/wctrans.m4: New file.
+ * m4/wctype_h.m4 (gl_WCTYPE_H): Test whether wctrans is declared.
+ (gl_WCTYPE_H_DEFAULTS): Initialize GNULIB_WCTRANS.
+ * modules/wctype-h (Makefile.am): Substitute GNULIB_WCTRANS.
+ * tests/test-wctype-h-c++.cc: Test the declaration of wctrans.
+ * doc/posix-functions/wctrans.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'iswctype'.
+ * modules/iswctype: New file.
+ * lib/wctype.in.h (iswctype): New declaration.
+ * lib/iswctype.c: New file.
+ * lib/iswctype-impl.h: New file.
+ * m4/iswctype.m4: New file.
+ * m4/wctype_h.m4 (gl_WCTYPE_H): Test whether iswctype is declared.
+ (gl_WCTYPE_H_DEFAULTS): Initialize GNULIB_ISWCTYPE.
+ * modules/wctype-h (Makefile.am): Substitute GNULIB_ISWCTYPE.
+ * tests/test-wctype-h-c++.cc: Test the declaration of iswctype.
+ * doc/posix-functions/iswctype.texi: Mention the new module and the
+ HP-UX 11.00 problem.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wctype'.
+ * modules/wctype: Change to represent the wctype() substitute.
+ * lib/wctype.in.h (wctype): New declaration.
+ * lib/wctype.c: New file.
+ * lib/wctype-impl.h: New file.
+ * m4/wctype.m4: New file.
+ * m4/wctype_h.m4 (gl_WCTYPE_H): Test whether wctype is declared.
+ (gl_WCTYPE_H_DEFAULTS): Initialize GNULIB_WCTYPE.
+ * modules/wctype-h (Makefile.am): Substitute GNULIB_WCTYPE.
+ * tests/test-wctype-h-c++.cc: Test the declaration of wctype.
+ * doc/posix-functions/wctype.texi: Mention the new module and the
+ HP-UX 11.00 problem.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ wctype-h: Ensure wctype_t and wctrans_t are defined.
+ * lib/wctype.in.h (wctype_t, wctrans_t): New type declarations.
+ * m4/wctype_h.m4 (gl_WCTYPE_H): Determine HAVE_WCTYPE_T, HAVE_WCTRANS_T.
+ (gl_WCTYPE_H_DEFAULTS): Initialize HAVE_WCTYPE_T, HAVE_WCTRANS_T.
+ * modules/wctype-h (Makefile.am): Substitute HAVE_WCTYPE_T,
+ HAVE_WCTRANS_T.
+ * tests/test-wctype-h.c: Check that wctype_t and wctrans_t are defined.
+
+2011-02-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ flock: fix license typo
+
+ * lib/flock.c: Fix typo in license. One of the "Lesser"s was
+ omitted.
+
+2011-02-08 Bruno Haible <bruno@clisp.org>
+
+ Split large sed scripts, for HP-UX sed.
+ * modules/math (Makefile.am): Split sed scripts around 50 sed commands,
+ to avoid HP-UX limit of 99 commands, in the near future.
+ * modules/stdlib (Makefile.am): Likewise.
+ * modules/unistd (Makefile.am): Likewise.
+ * modules/wchar (Makefile.am): Likewise.
+ Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
+ Suggestion by Ralf Wildenhues <Ralf.Wildenhues@gmx.de> in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2010-01/msg00216.html>.
+
+2011-02-08 Paul Eggert <eggert@cs.ucla.edu>
+ Bruno Haible <bruno@clisp.org>
+
+ stdlib: improve random_r modularization
+ * lib/stdlib.in.h: Encapsulate all the stuff having to do with
+ random_r inside "#if @GNULIB_RANDOM_R@", so that it's clearer that
+ you also need the random_r module to get this material right.
+ * m4/random_r.m4 (gl_FUNC_RANDOM_R): Move check for random.h here ...
+ * m4/stdlib_h.m4 (gl_STDLIB_H): ... from here.
+ (gl_STDLIB_H_DEFAULTS): Default HAVE_RANDOM_H to 1, and AC_SUBST it.
+
+2011-02-08 Paul Eggert <eggert@cs.ucla.edu>
+
+ stdlib: don't depend on stdint
+ * lib/stdlib.in.h: Don't include <stdint.h> merely because
+ GNULIB_POSIXCHECK is defined. GNULIB_POSIXCHECK seems to
+ be independent of whether stdint.h is needed.
+ * m4/random_r.m4 (gl_FUNC_RANDOM_R): Check for struct random_data
+ here, instead of ...
+ * m4/stdlib_h.m4 (gl_STDLIB_H): ... here. Applications that need
+ struct random_data should be using the random_r module, not just
+ the stdlib module (which wouldn't make sense: what package needs
+ just struct random_data without also needing random_r?).
+ * modules/stdlib (Depends-on): Remove stdint.
+
+ getloadavg: don't depend on c-strtod, cloexec, fcntl-safer
+ See the thread rooted at
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-02/msg00090.html>.
+ * lib/getloadavg.c: Do not include c-strtod.h, cloexec.h, or fcntl--.h.
+ Include <fcntl.h> only if (defined __linux__ || defined __CYGWIN__
+ || defined SUNOS_5 || (defined LOAD_AVE_TYPE && ! defined
+ __VMS)); previously it was always included (via fcntl--.h).
+ (getloadavg): Do not use c_strtod. Instead, approximate it by
+ hand; this is good enough for load averages. Also, do not use
+ set_cloexec_flag; instead, use the O_CLOEXEC and F_DUPFD_CLOEXEC
+ flags directly if available and don't bother otherwise. (Packages
+ that need the extra reliability should use the modules that define
+ these flags on older platforms that lack them.)
+ * modules/getloadavg (Depends-on): Remove c-strtod, cloexec,
+ fcntl-safer.
+
+2011-02-08 Jim Meyering <meyering@redhat.com>
+
+ di-set.h, ino-map.h: add multiple-inclusion guard
+ Technically, the guard is required only for ino-map.h, due to its
+ INO_MAP_INSERT_FAILURE definition, but do both for consistency.
+ * lib/di-set.h: Add file-spanning #ifndef _GL_DI_SET_H.
+ * lib/ino-map.h: Likewise.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ iswblank: Ensure declaration on glibc systems.
+ * m4/iswblank.m4 (gl_FUNC_ISWBLANK): Require gl_USE_SYSTEM_EXTENSIONS.
+ * modules/iswblank (Dependencies): Add 'extensions'.
+ * doc/posix-functions/iswblank.texi: Document the glibc problem.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'iswblank'.
+ * lib/wctype.in.h (iswblank): Don't declare if GNULIB_ISWBLANK is 0.
+ * modules/iswblank: New file.
+ * modules/wctype-h (Files): Remove lib/iswblank.c.
+ (Makefile.am): Substitute GNULIB_ISWBLANK.
+ * m4/iswblank.m4: New file, partially extracted from m4/wctype_h.m4.
+ * m4/wctype_h.m4 (gl_WCTYPE_MODULE_INDICATOR): New macro.
+ (gl_WCTYPE_H_DEFAULTS): New macro.
+ (gl_WCTYPE_H): Require it. Remove iswblank related code.
+ * modules/iswblank-tests: New file.
+ * tests/test-iswblank.c: New file, extraced from tests/test-wctype-h.c.
+ * tests/test-wctype-h.c (main): Remove iswblank tests.
+ * tests/test-wctype-h-c++.cc: Guard the signature test of iswblank.
+ * doc/posix-functions/iswblank.texi: Mention module 'iswblank' instead
+ of 'wctype-h'.
+ * NEWS: Mention the change.
+ * modules/mbchar (Depends-on): Add iswblank.
+
+2011-02-08 Bruno Haible <bruno@clisp.org>
+
+ di-set tests: Refactor.
+ * tests/test-di-set.c: Include di-set.h early. Include macros.h. Drop
+ unnecessary includes.
+ (ASSERT): Remove macro.
+ (main): Make C90 compliant by avoiding variable declaration after
+ statement.
+ * modules/di-set-tests (Files): Add tests/macros.h.
+
+2011-02-08 Bruno Haible <bruno@clisp.org>
+
+ ino-map tests: Refactor.
+ * tests/test-ino-map.c: Include ino-map.h early. Include macros.h. Drop
+ unnecessary includes.
+ (ASSERT): Remove macro.
+ (main): Make C90 compliant by avoiding variable declaration after
+ statement.
+ * modules/ino-map-tests (Files): Add tests/macros.h.
+
+2011-02-08 Jim Meyering <meyering@redhat.com>
+
+ di-set: add "const" to a cast
+ * lib/di-set.c (di_set_insert): Cast hash_insert0 argument to
+ "(void const *)", not "(void *)". Spotted by Bruno Haible.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ Rename module 'wctype' to 'wctype-h'.
+ * modules/wctype-h: Renamed from modules/wctype.
+ * modules/wctype: Simplyfy to a redirection to 'wctype-h'.
+ * modules/wctype-h-tests: Renamed from modules/wctype-tests.
+ (Files, Depends-on, Makefile.am): Update.
+ * modules/wctype-h-c++-tests: Renamed from modules/wctype-c++-tests.
+ (Files, Makefile.am): Update.
+ * tests/test-wctype-h.c: Renamed from tests/test-wctype.c.
+ * tests/test-wctype-h-c++.cc: Renamed from tests/test-wctype-c++.cc.
+ * doc/posix-headers/wctype.texi: Update.
+ * doc/posix-functions/iswalnum.texi: Update.
+ * doc/posix-functions/iswalpha.texi: Update.
+ * doc/posix-functions/iswblank.texi: Update.
+ * doc/posix-functions/iswcntrl.texi: Update.
+ * doc/posix-functions/iswdigit.texi: Update.
+ * doc/posix-functions/iswgraph.texi: Update.
+ * doc/posix-functions/iswlower.texi: Update.
+ * doc/posix-functions/iswprint.texi: Update.
+ * doc/posix-functions/iswpunct.texi: Update.
+ * doc/posix-functions/iswspace.texi: Update.
+ * doc/posix-functions/iswupper.texi: Update.
+ * doc/posix-functions/iswxdigit.texi: Update.
+ * doc/posix-functions/towlower.texi: Update.
+ * doc/posix-functions/towupper.texi: Update.
+ * NEWS: Mention the change.
+ * modules/fnmatch (Dependencies): Add wctype-h, remove wctype.
+ * modules/mbchar (Dependencies): Likewise.
+ * modules/mbswidth (Dependencies): Likewise.
+ * modules/quotearg (Dependencies): Likewise.
+ * modules/regex (Dependencies): Likewise.
+ * modules/wcscasecmp (Dependencies): Likewise.
+ * modules/wcsncasecmp (Dependencies): Likewise.
+ * modules/wcwidth (Dependencies): Likewise.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcswidth'.
+ * modules/wcswidth: New file.
+ * lib/wchar.in.h (wcswidth): New declaration.
+ * lib/wcswidth.c: New file.
+ * lib/wcswidth-impl.h: New file, from libutf8 with modifications.
+ * m4/wcswidth.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcswidth is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSWIDTH, HAVE_WCSWIDTH,
+ REPLACE_WCSWIDTH.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSWIDTH,
+ HAVE_WCSWIDTH, REPLACE_WCSWIDTH.
+ * tests/test-wchar-c++.cc: Test the declaration of wcswidth.
+ * doc/posix-functions/wcswidth.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcstok'.
+ * modules/wcstok: New file.
+ * lib/wchar.in.h (wcstok): New declaration.
+ * lib/wcstok.c: New file.
+ * lib/wcstok-impl.h: New file, from libutf8 with modifications.
+ * m4/wcstok.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcstok is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSTOK, HAVE_WCSTOK.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSTOK, HAVE_WCSTOK.
+ * tests/test-wchar-c++.cc: Test the declaration of wcstok.
+ * doc/posix-functions/wcstok.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcsstr'.
+ * modules/wcsstr: New file.
+ * lib/wchar.in.h (wcsstr): New declaration.
+ * lib/wcsstr.c: New file.
+ * lib/wcsstr-impl.h: New file, from libutf8 with modifications.
+ * m4/wcsstr.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsstr is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSSTR, HAVE_WCSSTR.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSSTR, HAVE_WCSSTR.
+ * tests/test-wchar-c++.cc: Test the declaration of wcsstr.
+ * doc/posix-functions/wcsstr.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcspbrk'.
+ * modules/wcspbrk: New file.
+ * lib/wchar.in.h (wcspbrk): New declaration.
+ * lib/wcspbrk.c: New file.
+ * lib/wcspbrk-impl.h: New file, from libutf8 with modifications.
+ * m4/wcspbrk.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcspbrk is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSPBRK, HAVE_WCSPBRK.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSPBRK, HAVE_WCSPBRK.
+ * tests/test-wchar-c++.cc: Test the declaration of wcspbrk.
+ * doc/posix-functions/wcspbrk.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcsspn'.
+ * modules/wcsspn: New file.
+ * lib/wchar.in.h (wcsspn): New declaration.
+ * lib/wcsspn.c: New file.
+ * lib/wcsspn-impl.h: New file, from libutf8 with modifications.
+ * m4/wcsspn.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsspn is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSSPN, HAVE_WCSSPN.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSSPN, HAVE_WCSSPN.
+ * tests/test-wchar-c++.cc: Test the declaration of wcsspn.
+ * doc/posix-functions/wcsspn.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcscspn'.
+ * modules/wcscspn: New file.
+ * lib/wchar.in.h (wcscspn): New declaration.
+ * lib/wcscspn.c: New file.
+ * lib/wcscspn-impl.h: New file, from libutf8 with modifications.
+ * m4/wcscspn.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscspn is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCSPN, HAVE_WCSCSPN.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSCSPN, HAVE_WCSCSPN.
+ * tests/test-wchar-c++.cc: Test the declaration of wcscspn.
+ * doc/posix-functions/wcscspn.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcsrchr'.
+ * modules/wcsrchr: New file.
+ * lib/wchar.in.h (wcsrchr): New declaration.
+ * lib/wcsrchr.c: New file.
+ * lib/wcsrchr-impl.h: New file, from libutf8 with modifications.
+ * m4/wcsrchr.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsrchr is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRCHR, HAVE_WCSRCHR.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSRCHR, HAVE_WCSRCHR.
+ * tests/test-wchar-c++.cc: Test the declaration of wcsrchr.
+ * doc/posix-functions/wcsrchr.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcschr'.
+ * modules/wcschr: New file.
+ * lib/wchar.in.h (wcschr): New declaration.
+ * lib/wcschr.c: New file.
+ * lib/wcschr-impl.h: New file, from libutf8 with modifications.
+ * m4/wcschr.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcschr is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCHR, HAVE_WCSCHR.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSCHR, HAVE_WCSCHR.
+ * tests/test-wchar-c++.cc: Test the declaration of wcschr.
+ * doc/posix-functions/wcschr.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcsdup'.
+ * modules/wcsdup: New file.
+ * lib/wchar.in.h (wcsdup): New declaration.
+ * lib/wcsdup.c: New file.
+ * lib/wcsdup-impl.h: New file, from libutf8 with modifications.
+ * m4/wcsdup.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsdup is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSDUP, HAVE_WCSDUP.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSDUP, HAVE_WCSDUP.
+ * tests/test-wchar-c++.cc: Test the declaration of wcsdup.
+ * doc/posix-functions/wcsdup.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcsxfrm'.
+ * modules/wcsxfrm: New file.
+ * lib/wchar.in.h (wcsxfrm): New declaration.
+ * lib/wcsxfrm.c: New file.
+ * lib/wcsxfrm-impl.h: New file.
+ * m4/wcsxfrm.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsxfrm is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSXFRM, HAVE_WCSXFRM.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSXFRM, HAVE_WCSXFRM.
+ * tests/test-wchar-c++.cc: Test the declaration of wcsxfrm.
+ * doc/posix-functions/wcsxfrm.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcscoll'.
+ * modules/wcscoll: New file.
+ * lib/wchar.in.h (wcscoll): New declaration.
+ * lib/wcscoll.c: New file.
+ * lib/wcscoll-impl.h: New file.
+ * m4/wcscoll.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscoll is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCOLL, HAVE_WCSCOLL.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSCOLL, HAVE_WCSCOLL.
+ * tests/test-wchar-c++.cc: Test the declaration of wcscoll.
+ * doc/posix-functions/wcscoll.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcsncasecmp'.
+ * modules/wcsncasecmp: New file.
+ * lib/wchar.in.h (wcsncasecmp): New declaration.
+ * lib/wcsncasecmp.c: New file.
+ * lib/wcsncasecmp-impl.h: New file, from libutf8 with modifications.
+ * m4/wcsncasecmp.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsncasecmp is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNCASECMP, HAVE_WCSNCASECMP.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSNCASECMP,
+ HAVE_WCSNCASECMP.
+ * tests/test-wchar-c++.cc: Test the declaration of wcsncasecmp.
+ * doc/posix-functions/wcsncasecmp.texi: Mention the new module.
+
+2011-02-06 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcscasecmp'.
+ * modules/wcscasecmp: New file.
+ * lib/wchar.in.h (wcscasecmp): New declaration.
+ * lib/wcscasecmp.c: New file.
+ * lib/wcscasecmp-impl.h: New file, from libutf8 with modifications.
+ * m4/wcscasecmp.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscasecmp is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCASECMP, HAVE_WCSCASECMP.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSCASECMP,
+ HAVE_WCSCASECMP.
+ * tests/test-wchar-c++.cc: Test the declaration of wcscasecmp.
+ * doc/posix-functions/wcscasecmp.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcsncmp'.
+ * modules/wcsncmp: New file.
+ * lib/wchar.in.h (wcsncmp): New declaration.
+ * lib/wcsncmp.c: New file.
+ * lib/wcsncmp-impl.h: New file, from libutf8 with modifications.
+ * m4/wcsncmp.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsncmp is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNCMP, HAVE_WCSNCMP.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSNCMP, HAVE_WCSNCMP.
+ * tests/test-wchar-c++.cc: Test the declaration of wcsncmp.
+ * doc/posix-functions/wcsncmp.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcscmp'.
+ * modules/wcscmp: New file.
+ * lib/wchar.in.h (wcscmp): New declaration.
+ * lib/wcscmp.c: New file.
+ * lib/wcscmp-impl.h: New file, from libutf8 with modifications.
+ * m4/wcscmp.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscmp is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCMP, HAVE_WCSCMP.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSCMP, HAVE_WCSCMP.
+ * tests/test-wchar-c++.cc: Test the declaration of wcscmp.
+ * doc/posix-functions/wcscmp.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcsncat'.
+ * modules/wcsncat: New file.
+ * lib/wchar.in.h (wcsncat): New declaration.
+ * lib/wcsncat.c: New file.
+ * lib/wcsncat-impl.h: New file, from libutf8 with modifications.
+ * m4/wcsncat.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsncat is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNCAT, HAVE_WCSNCAT.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSNCAT, HAVE_WCSNCAT.
+ * tests/test-wchar-c++.cc: Test the declaration of wcsncat.
+ * doc/posix-functions/wcsncat.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcscat'.
+ * modules/wcscat: New file.
+ * lib/wchar.in.h (wcscat): New declaration.
+ * lib/wcscat.c: New file.
+ * lib/wcscat-impl.h: New file, from libutf8 with modifications.
+ * m4/wcscat.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscat is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCAT, HAVE_WCSCAT.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSCAT, HAVE_WCSCAT.
+ * tests/test-wchar-c++.cc: Test the declaration of wcscat.
+ * doc/posix-functions/wcscat.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcpncpy'.
+ * modules/wcpncpy: New file.
+ * lib/wchar.in.h (wcpncpy): New declaration.
+ * lib/wcpncpy.c: New file.
+ * lib/wcpncpy-impl.h: New file, from libutf8 with modifications.
+ * m4/wcpncpy.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcpncpy is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCPNCPY, HAVE_WCPNCPY.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCPNCPY, HAVE_WCPNCPY.
+ * tests/test-wchar-c++.cc: Test the declaration of wcpncpy.
+ * doc/posix-functions/wcpncpy.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcsncpy'.
+ * modules/wcsncpy: New file.
+ * lib/wchar.in.h (wcsncpy): New declaration.
+ * lib/wcsncpy.c: New file.
+ * lib/wcsncpy-impl.h: New file, from libutf8 with modifications.
+ * m4/wcsncpy.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsncpy is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNCPY, HAVE_WCSNCPY.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSNCPY, HAVE_WCSNCPY.
+ * tests/test-wchar-c++.cc: Test the declaration of wcsncpy.
+ * doc/posix-functions/wcsncpy.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcpcpy'.
+ * modules/wcpcpy: New file.
+ * lib/wchar.in.h (wcpcpy): New declaration.
+ * lib/wcpcpy.c: New file.
+ * lib/wcpcpy-impl.h: New file, from libutf8 with modifications.
+ * m4/wcpcpy.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcpcpy is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCPCPY, HAVE_WCPCPY.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCPCPY, HAVE_WCPCPY.
+ * tests/test-wchar-c++.cc: Test the declaration of wcpcpy.
+ * doc/posix-functions/wcpcpy.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcscpy'.
+ * modules/wcscpy: New file.
+ * lib/wchar.in.h (wcscpy): New declaration.
+ * lib/wcscpy.c: New file.
+ * lib/wcscpy-impl.h: New file, from libutf8 with modifications.
+ * m4/wcscpy.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscpy is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCPY, HAVE_WCSCPY.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSCPY, HAVE_WCSCPY.
+ * tests/test-wchar-c++.cc: Test the declaration of wcscpy.
+ * doc/posix-functions/wcscpy.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcsnlen'.
+ * modules/wcsnlen: New file.
+ * lib/wchar.in.h (wcsnlen): New declaration.
+ * lib/wcsnlen.c: New file.
+ * lib/wcsnlen-impl.h: New file, from libutf8 with modifications.
+ * m4/wcsnlen.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsnlen is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNLEN, HAVE_WCSNLEN.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSNLEN, HAVE_WCSNLEN.
+ * tests/test-wchar-c++.cc: Test the declaration of wcsnlen.
+ * doc/posix-functions/wcsnlen.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wcslen'.
+ * modules/wcslen: New file.
+ * lib/wchar.in.h (wcslen): New declaration.
+ * lib/wcslen.c: New file.
+ * lib/wcslen-impl.h: New file, from libutf8 with modifications.
+ * m4/wcslen.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcslen is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSLEN, HAVE_WCSLEN.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WCSLEN, HAVE_WCSLEN.
+ * tests/test-wchar-c++.cc: Test the declaration of wcslen.
+ * doc/posix-functions/wcslen.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wmemset'.
+ * modules/wmemset: New file.
+ * lib/wchar.in.h (wmemset): New declaration.
+ * lib/wmemset.c: New file.
+ * lib/wmemset-impl.h: New file, from libutf8 with modifications.
+ * m4/wmemset.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemset is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMSET, HAVE_WMEMSET.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WMEMSET, HAVE_WMEMSET.
+ * tests/test-wchar-c++.cc: Test the declaration of wmemset.
+ * doc/posix-functions/wmemset.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wmemmove'.
+ * modules/wmemmove: New file.
+ * lib/wchar.in.h (wmemmove): New declaration.
+ * lib/wmemmove.c: New file.
+ * lib/wmemmove-impl.h: New file, from libutf8 with modifications.
+ * m4/wmemmove.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemmove is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMMOVE, HAVE_WMEMMOVE.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WMEMMOVE,
+ HAVE_WMEMMOVE.
+ * tests/test-wchar-c++.cc: Test the declaration of wmemmove.
+ * doc/posix-functions/wmemmove.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wmemcpy'.
+ * modules/wmemcpy: New file.
+ * lib/wchar.in.h (wmemcpy): New declaration.
+ * lib/wmemcpy.c: New file.
+ * lib/wmemcpy-impl.h: New file, from libutf8 with modifications.
+ * m4/wmemcpy.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemcpy is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMCPY, HAVE_WMEMCPY.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WMEMCPY, HAVE_WMEMCPY.
+ * tests/test-wchar-c++.cc: Test the declaration of wmemcpy.
+ * doc/posix-functions/wmemcpy.texi: Mention the new module.
+
+2011-02-05 Bruno Haible <bruno@clisp.org>
+
+ New module 'wmemcmp'.
+ * modules/wmemcmp: New file.
+ * lib/wchar.in.h (wmemcmp): New declaration.
+ * lib/wmemcmp.c: New file.
+ * lib/wmemcmp-impl.h: New file, from libutf8 with modifications.
+ * m4/wmemcmp.m4: New file.
+ * m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemcmp is declared.
+ (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMCMP, HAVE_WMEMCMP.
+ * modules/wchar (Makefile.am): Substitute GNULIB_WMEMCMP, HAVE_WMEMCMP.
+ * tests/test-wchar-c++.cc: Test the declaration of wmemcmp.
+ * doc/posix-functions/wmemcmp.texi: Mention the new module.
+
+2011-02-07 Jim Meyering <meyering@redhat.com>
+
+ di-set, ino-map: new modules, from coreutils
+ * lib/di-set.c: New file.
+ * lib/di-set.h: Likewise.
+ * lib/ino-map.c: Likewise.
+ * lib/ino-map.h: Likewise.
+ * modules/di-set: Likewise.
+ * modules/di-set-tests: Likewise.
+ * modules/ino-map: Likewise.
+ * modules/ino-map-tests: Likewise.
+ * tests/test-di-set.c: Likewise.
+ * tests/test-ino-map.c: Likewise.
+
+2011-02-06 Paul Eggert <eggert@cs.ucla.edu>
+
+ getloadavg: merge minor changes from Emacs
+
+ * lib/getloadavg.c (getloadavg_initialized): More-accurate comment.
+ (getloadavg): Use memset, not bzero.
+
+ 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
+ * lib/getloadavg.c (nl): Rename to name_list to avoid ncurses.h
+ clash (bug#86).
+
+2010-11-14 Bruno Haible <bruno@clisp.org>
+
+ Allow multiple gnulib generated replacements to coexist.
+ * lib/getopt.in.h (struct option): Avoid identical redefinition.
+ * lib/inttypes.in.h (imaxdiv_t): Likewise.
+ * lib/langinfo.in.h (nl_item): Likewise.
+ * lib/math.in.h (_NaN, NAN): Likewise.
+ * lib/netdb.in.h (struct addrinfo): Likewise.
+ * lib/poll.in.h (struct pollfd, nfds_t): Likewise.
+ * lib/pthread.in.h (pthread_t, pthread_attr_t, pthread_barrier_t,
+ pthread_barrierattr_t, pthread_cond_t, pthread_condattr_t,
+ pthread_key_t, pthread_mutex_t, pthread_mutexattr_t, pthread_once_t,
+ pthread_rwlock_t, pthread_rwlockattr_t, pthread_cond_destroy,
+ pthread_cond_init, pthread_cond_signal, pthread_cond_wait,
+ pthread_create, pthread_exit, pthread_join, pthread_mutexattr_destroy,
+ pthread_mutexattr_init, pthread_mutexattr_settype,
+ pthread_mutex_destroy, pthread_mutex_init, pthread_mutex_lock,
+ pthread_mutex_trylock, pthread_mutex_unlock, pthread_spinlock_t,
+ pthread_spin_init, pthread_spin_destroy, pthread_spin_lock,
+ pthread_spin_trylock, pthread_spin_unlock): Likewise.
+ * lib/sched.in.h (struct sched_param): Likewise.
+ * lib/se-selinux.in.h (security_class_t, security_context_t,
+ is_selinux_enabled, getcon, freecon, getfscreatecon, setfscreatecon,
+ matchpathcon, getfilecon, lgetfilecon, fgetfilecon, setfilecon,
+ lsetfilecon, fsetfilecon, security_check_context,
+ security_check_context_raw, setexeccon, matchpathcon_init_prefix):
+ Likewise.
+ * lib/search.in.h (VISIT, _gl_search_compar_fn, _gl_search_action_fn):
+ Likewise.
+ * lib/signal.in.h (sig_atomic_t, sigset_t, verify_NSIG_constraint,
+ _gl_function_taking_int_returning_void_t, union sigval,
+ struct siginfo_t, siginfo_t, struct sigaction): Likewise.
+ * lib/spawn.in.h (posix_spawnattr_t, posix_spawn_file_actions_t,
+ verify_POSIX_SPAWN_USEVFORK_no_overlap): Likewise.
+ * lib/stdint.in.h (gl_int8_t, gl_uint8_t, gl_int16_t, gl_uint16_t,
+ gl_int32_t, gl_uint32_t, gl_int64_t, gl_uint64_t, int_least8_t,
+ uint_least8_t, int_least16_t, uint_least16_t, int_least32_t,
+ uint_least32_t, int_least64_t, uint_least64_t, gl_int_fast8_t,
+ gl_uint_fast8_t, gl_int_fast16_t, gl_uint_fast16_t, gl_int_fast32_t,
+ gl_uint_fast32_t, int_fast64_t, uint_fast64_t, gl_intptr_t,
+ gl_uintptr_t, intmax_t, uintmax_t, _verify_intmax_size): Likewise.
+ * lib/stdio.in.h (rpl_fseek, rpl_ftell): Likewise.
+ * lib/sys_socket.in.h (sa_family_t, struct sockaddr_storage,
+ socklen_t, rpl_fd_isset): Likewise.
+ * lib/sys_stat.in.h (rpl_mkdir): Likewise.
+ * lib/sys_time.in.h (struct timeval): Likewise.
+ * lib/sys_times.in.h (struct tms): Likewise.
+ * lib/sys_utsname.in.h (struct utsname):
+ * lib/time.in.h (struct timespec, __time_t_must_be_integral): Likewise.
+ * lib/unistd.in.h (getpagesize): Likewise.
+ * lib/wchar.in.h (mbstate_t): Likewise.
+ * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
+ iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit,
+ towlower, towupper): Likewise.
+ Reported by Sam Steingold <sds@gnu.org>.
+
+2011-02-05 Eric Blake <eblake@redhat.com>
+
+ unsetenv: work around Haiku issues
+ * m4/setenv.m4 (gl_FUNC_UNSETENV): Also detect Haiku issue.
+ * doc/posix-functions/unsetenv.texi (unsetenv): Document it.
+
+2010-12-30 Bruce Korb <bkorb@gnu.org>
+
+ libposix: avoid calling error() within libposix
+ * lib/openat-die.c: remove error module stuff when GNULIB_LIBPOSIX
+ is defined.
+
2011-02-05 Eric Blake <eblake@redhat.com>
strerror_r-posix: port to cygwin
indirectly on xalloc. This change causes the openat substitute
to fall back on save_cwd when memory is tight, and for save_cwd to
fail instead of dying when memory is tight, but that's good enough.
+ Problem and initial idea for fix reported by Bastien Roucaries in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2011-01/msg00170.html>.
* lib/openat-proc.c: Include stdlib.h (for malloc), not
xalloc.h (for xmalloc).
* doc/posix-functions/gmtime_r.texi: Document the HP-UX 11 problem.
* doc/posix-functions/localtime_r.texi: Likewise.
-2010-12-30 Bruce Korb <bkorb@gnu.org>
-
- libposix: avoid calling error() within libposix
- * lib/openat-die.c: remove error module stuff when GNULIB_LIBPOSIX
- is defined.
- * lib/xalloc-die.c: Same thing.
-
2010-12-29 Eric Blake <eblake@redhat.com>
mountlist: tweak previous commit
* lib/ftoastr.h, lib/ftoastr.c, lib/dtoastr.c, lib/ldtoastr.c:
* modules/ftoastr: New files.
-2010-11-16 Bruce Korb <bkorb@gnu.org>
-
- libposix: Libposix module will be created on the fly
- * modules/libposix: remove
- * modules/*: Use pkginclude_HEADERS instead of plain "include".
- * gnulib-tool: adjust here, too
-
2010-11-15 Paul Eggert <eggert@cs.ucla.edu>
bootstrap: port to Solaris sed
and use malloc rather than the stack for the same reason as
mentioned in the comment justifying the other allocation.
-2010-10-12 Gary V. Vaughan <gary@gnu.org>
-
- libposix: use git-version-gen for version numbering
- * build-aux/git-version-gen: In order to work inside the
- libposix subdirectory, also check the parent directory for .git
- before assuming git describe will not work.
-
- add _HEADERS primaries to Makefile.am snippets for installable headers
- * modules/alloca-opt, modules/arg-nonnull, modules/argz,
- modules/arpa_inet, modules/byteswap, modules/c++defs, modules/ctype,
- modules/dirent, modules/errno, modules/fcntl-h, modules/float,
- modules/fnmatch, modules/getopt-posix, modules/glob, modules/iconv-h,
- modules/iconv_open, modules/inttypes, modules/langinfo,
- modules/link-warning, modules/locale, modules/math, modules/netdb,
- modules/netinet_in, modules/poll-h, modules/pthread, modules/pty,
- modules/sched, modules/search, modules/selinux-h, modules/signal,
- modules/spawn, modules/stdarg, modules/stdbool, modules/stddef,
- modules/stdint, modules/stdio, modules/stdlib, modules/string,
- modules/strings, modules/sys_file, modules/sys_ioctl,
- modules/sys_select, modules/sys_socket, modules/sys_stat,
- modules/sys_time, modules/sys_times, modules/sys_utsname,
- modules/sys_wait, modules/sysexits, modules/termios, modules/time,
- modules/unistd, modules/unitypes, modules/unused-parameter,
- modules/warn-on-use, modules/wchar, modules/wctype (Makefile.am):
- Add nodist_include_HEADERS, nobase_nodist_include_HEADERS and
- EXTRA_HEADERS declarations for potentially installable header files.
- * gnulib-tool: Initialize nodist_include_HEADERS,
- nobase_nodist_include_HEADERS and EXTRA_HEADERS to prime for new
- `.*_HEADERS +=' declarations.
- (func_emit_lib_Makefile_am): Edit away new nodist_include_HEADERS,
- nobase_nodist_include_HEADERS and EXTRA_HEADERS declarations by
- default, reverting the Makefile.am snippets above to their original
- condition prior to this change *unless* the gnulib library is being
- installed.
-
- New module `libposix'.
- * modules/libposix: New module to facilitate an installable
- library of posix modules.
- (Makefile.am): Use lib_LTLIBRARIES to mark libposix.la as
- installable.
- (Depends-On): List all the modules found by `posix-modules',
- except `strdup' which is spurious, and with the addition of
- `alloca' to satisfy an otherwise undefined LTALLOCA definition;
- and `progname' to provide a non-extern program_name symbol so that
- compilation with `-no-undefined' symbols can work.
-
- iconv_open: reduce not-trivial repetition of file-list
- * modules/iconv_open (iconv_headers): New make macro to hold list of
- iconv header files.
- (BUILT_SOURCES, MAINTAINERCLEANFILES, EXTRA_DIST): Use it instead of
- multiple hard-coded copies.
-
- gnulib-tool: transform hard-coded libgnu.a to $libname.l?a
- * gnulib-tool (func_emit_lib_Makefile_am): transform hard-coded
- `libgnu.a' in Makefile.am snippets to be either `$libname.a' or
- `$libname.la', depending on whether --libtool/--no-libtool options
- were given.
-
-2010-10-12 Sam Steingold <sds@gnu.org>
- Gary V. Vaughan <gary@gnu.org>
-
- gnulib-tool: transform include guards with `--macro-prefix'
- * gnulib-tool (func_import): support multiple gllib directories:
- headers are generated for each gllib differently, depending on which
- features are actually used, so we need to be able to include all
- these generated headers without fear that one will shadow another,
- so we prepend the macro-prefix before the guard macros.
-
2010-10-11 Bruno Haible <bruno@clisp.org>
stdlib: Allow multiple gnulib generated replacements to coexist.