+2007-07-07 Bruno Haible <bruno@clisp.org>
+
+ * lib/wchar_.h: Include the GL_LINK_WARNING macro.
+ (wcwidth): New declaration.
+ * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
+ macros.
+ (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
+ here. Prepare for creating <wchar.h> unconditionally.
+ * modules/wchar (Depends-on): Add link-warning.
+ (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
+ REPLACE_WCWIDTH, and GL_LINK_WARNING.
+ * lib/wcwidth.h: Remove file.
+ * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
+ HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
+ * modules/wcwidth (Files): Remove lib/wcwidth.h.
+ (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
+ (Include): Replace wcwidth.h with <wchar.h>.
+ * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
+ * lib/mbchar.h: Don't include wcwidth.h.
+ * lib/mbswidth.c: Likewise.
+ * NEWS: Mention the change.
+
+2007-07-07 Bruno Haible <bruno@clisp.org>
+
+ * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
+ * lib/wcwidth.h: Don't include wctype.h. Replace inline function
+ definition with an external declaration.
+ * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
+ defined as a function. Remove AC_C_INLINE requirement.
+ * modules/wcwidth (Files): Add lib/wcwidth.c.
+ (Makefile.am): Remove redundant statement.
+
+2007-07-07 Bruno Haible <bruno@clisp.org>
+
+ * MODULES.html.sh (Unicode string functions): Add the new modules.
+
+ * tests/uniwidth/test-u32-strwidth.c: New file.
+ * modules/uniwidth/u32-strwidth-tests: New file.
+
+ * lib/uniwidth/u32-strwidth.c: New file.
+ * modules/uniwidth/u32-strwidth: New file.
+
+ * tests/uniwidth/test-u16-strwidth.c: New file.
+ * modules/uniwidth/u16-strwidth-tests: New file.
+
+ * lib/uniwidth/u16-strwidth.c: New file.
+ * modules/uniwidth/u16-strwidth: New file.
+
+ * tests/uniwidth/test-u8-strwidth.c: New file.
+ * modules/uniwidth/u8-strwidth-tests: New file.
+
+ * lib/uniwidth/u8-strwidth.c: New file.
+ * modules/uniwidth/u8-strwidth: New file.
+
+ * tests/uniwidth/test-u32-width.c: New file.
+ * modules/uniwidth/u32-width-tests: New file.
+
+ * lib/uniwidth/u32-width.c: New file.
+ * modules/uniwidth/u32-width: New file.
+
+ * tests/uniwidth/test-u16-width.c: New file.
+ * modules/uniwidth/u16-width-tests: New file.
+
+ * lib/uniwidth/u16-width.c: New file.
+ * modules/uniwidth/u16-width: New file.
+
+ * tests/uniwidth/test-u8-width.c: New file.
+ * modules/uniwidth/u8-width-tests: New file.
+
+ * lib/uniwidth/u8-width.c: New file.
+ * modules/uniwidth/u8-width: New file.
+
+ * tests/uniwidth/test-uc_width.c: New file.
+ * modules/uniwidth/width-tests: New file.
+
+ * lib/uniwidth/width.c: New file, from GNU libiconv.
+ * lib/uniwidth/cjk.h: New file, from GNU libiconv.
+ * modules/uniwidth/width: New file.
+
+ * lib/uniwidth.h: New file, from GNU libiconv.
+ * modules/uniwidth/base: New file.
+
+2007-07-07 Bruno Haible <bruno@clisp.org>
+
+ * lib/uniname.h: New file, from GNU gettext.
+ * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
+ * lib/uniname/uninames.h: New file, from GNU gettext.
+ * lib/uniname/uniname.c: New file, from GNU gettext.
+ * tests/uniname/test-uninames.sh: New file.
+ * tests/uniname/test-uninames.c: New file, from GNU gettext.
+ * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
+ * modules/uniname/base: New file.
+ * modules/uniname/uniname: New file.
+ * modules/uniname/uniname-tests: New file.
+ * MODULES.html.sh (Unicode string functions): Add the new modules.
+
+2007-07-06 Bruno Haible <bruno@clisp.org>
+
+ * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
+
+2007-07-06 Bruno Haible <bruno@clisp.org>
+
+ * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
+ a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
+ includes <cygwin/sys_time.h> which includes <sys/select.h> which
+ include <sys/time.h>.
+ Reported by Eric Blake.
+
+2007-07-06 Eric Blake <ebb9@byu.net>
+
+ Fix testing canonicalize on cygwin.
+ * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
+ Revert patch from 2007-06-19.
+ * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
+ canonicalize module is also in use.
+ * tests/test-canonicalize.c: New file.
+ * tests/test-canonicalize.sh: Likewise.
+ * modules/canonicalize-tests: Likewise.
+
+2007-07-06 Jim Meyering <jim@meyering.net>
+
+ * lib/getugroups.c (getugroups): Detect getgrent failure.
+ Adjust comment to reflect reality: this function may return -1.
+
+2007-07-05 Sergey Poznyakoff <gray@gnu.org.ua>
+
+ * build-aux/bootstrap (TP_URL,get_translations): Update to use
+ the new TP address.
+ (usage): Fix typo
+ (gnulib_mk): New variable.
+
+2007-07-05 Jim Meyering <jim@meyering.net>
+
+ Don't let endgrent clobber errno, no matter how improbable.
+ * lib/getugroups.c (getugroups): Save and restore errno around
+ endgrent call.
+
+ Close the group DB even when failing with 2^31 or more members.
+ * lib/getugroups.c (getugroups): Don't return without calling endgrent.
+
+2007-07-04 Jim Meyering <jim@meyering.net>
+
+ * lib/getugroups.h: New file.
+ * lib/getugroups.c: Include "getugroups.h".
+ Remove uses of "register" keyword.
+ Move local variable, "cp", down into scope where used.
+ Give "username" parameter the "const" attribute.
+ * modules/getugroups (Files): Add lib/getugroups.h
+
+2007-07-04 Karl Berry <karl@gnu.org>
+
+ * MODULES.html.sh (func_all_modules): Complete rename of
+ gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
+
+2007-07-02 Bruno Haible <bruno@clisp.org>
+
+ * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
+ mode, when inttypes.h comes from gnulib.
+ Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
+
+2007-07-02 Simon Josefsson <simon@josefsson.org>
+
+ * NEWS: Mention lgpl module name change.
+
+ * modules/lgpl-2.1: Renamed from lgpl.
+
+ * NEWS: Mention gpl module name change.
+
+ * modules/gpl-3.0: New file, based on gpl-2.0.
+
+ * modules/gpl-2.0: Renamed from gpl.
+
+ * modules/gpl: Fix filename, doc/gpl.texi is now found at
+ doc/gpl-2.0.texi.
+
+2007-07-02 Paul Eggert <eggert@cs.ucla.edu>
+
+ * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
+ #define __STDC_LIMIT_MACROS temporarily while including
+ <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
+ Problem reported by Joel E. Denny in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
+
+2007-07-01 Bruno Haible <bruno@clisp.org>
+
+ * lib/unistdio.h: New file.
+ * lib/unistdio/u-asnprintf.h: New file.
+ * lib/unistdio/u-asprintf.h: New file.
+ * lib/unistdio/u-printf-args.c: New file.
+ * lib/unistdio/u-printf-args.h: New file.
+ * lib/unistdio/u-printf-parse.h: New file.
+ * lib/unistdio/u-snprintf.h: New file.
+ * lib/unistdio/u-sprintf.h: New file.
+ * lib/unistdio/u-vasprintf.h: New file.
+ * lib/unistdio/u-vsnprintf.h: New file.
+ * lib/unistdio/u-vsprintf.h: New file.
+ * lib/unistdio/ulc-asnprintf.c: New file.
+ * lib/unistdio/ulc-asprintf.c: New file.
+ * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
+ * lib/unistdio/ulc-printf-parse.c: New file.
+ * lib/unistdio/ulc-snprintf.c: New file.
+ * lib/unistdio/ulc-sprintf.c: New file.
+ * lib/unistdio/ulc-vasnprintf.c: New file.
+ * lib/unistdio/ulc-vasprintf.c: New file.
+ * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
+ * lib/unistdio/ulc-vsnprintf.c: New file.
+ * lib/unistdio/ulc-vsprintf.c: New file.
+ * lib/unistdio/u8-asnprintf.c: New file.
+ * lib/unistdio/u8-asprintf.c: New file.
+ * lib/unistdio/u8-printf-parse.c: New file.
+ * lib/unistdio/u8-snprintf.c: New file.
+ * lib/unistdio/u8-sprintf.c: New file.
+ * lib/unistdio/u8-vasnprintf.c: New file.
+ * lib/unistdio/u8-vasprintf.c: New file.
+ * lib/unistdio/u8-vsnprintf.c: New file.
+ * lib/unistdio/u8-vsprintf.c: New file.
+ * lib/unistdio/u8-u8-asnprintf.c: New file.
+ * lib/unistdio/u8-u8-asprintf.c: New file.
+ * lib/unistdio/u8-u8-snprintf.c: New file.
+ * lib/unistdio/u8-u8-sprintf.c: New file.
+ * lib/unistdio/u8-u8-vasnprintf.c: New file.
+ * lib/unistdio/u8-u8-vasprintf.c: New file.
+ * lib/unistdio/u8-u8-vsnprintf.c: New file.
+ * lib/unistdio/u8-u8-vsprintf.c: New file.
+ * lib/unistdio/u16-asnprintf.c: New file.
+ * lib/unistdio/u16-asprintf.c: New file.
+ * lib/unistdio/u16-printf-parse.c: New file.
+ * lib/unistdio/u16-snprintf.c: New file.
+ * lib/unistdio/u16-sprintf.c: New file.
+ * lib/unistdio/u16-vasnprintf.c: New file.
+ * lib/unistdio/u16-vasprintf.c: New file.
+ * lib/unistdio/u16-vsnprintf.c: New file.
+ * lib/unistdio/u16-vsprintf.c: New file.
+ * lib/unistdio/u16-u16-asnprintf.c: New file.
+ * lib/unistdio/u16-u16-asprintf.c: New file.
+ * lib/unistdio/u16-u16-snprintf.c: New file.
+ * lib/unistdio/u16-u16-sprintf.c: New file.
+ * lib/unistdio/u16-u16-vasnprintf.c: New file.
+ * lib/unistdio/u16-u16-vasprintf.c: New file.
+ * lib/unistdio/u16-u16-vsnprintf.c: New file.
+ * lib/unistdio/u16-u16-vsprintf.c: New file.
+ * lib/unistdio/u32-asnprintf.c: New file.
+ * lib/unistdio/u32-asprintf.c: New file.
+ * lib/unistdio/u32-printf-parse.c: New file.
+ * lib/unistdio/u32-snprintf.c: New file.
+ * lib/unistdio/u32-sprintf.c: New file.
+ * lib/unistdio/u32-vasnprintf.c: New file.
+ * lib/unistdio/u32-vasprintf.c: New file.
+ * lib/unistdio/u32-vsnprintf.c: New file.
+ * lib/unistdio/u32-vsprintf.c: New file.
+ * lib/unistdio/u32-u32-asnprintf.c: New file.
+ * lib/unistdio/u32-u32-asprintf.c: New file.
+ * lib/unistdio/u32-u32-snprintf.c: New file.
+ * lib/unistdio/u32-u32-sprintf.c: New file.
+ * lib/unistdio/u32-u32-vasnprintf.c: New file.
+ * lib/unistdio/u32-u32-vasprintf.c: New file.
+ * lib/unistdio/u32-u32-vsnprintf.c: New file.
+ * lib/unistdio/u32-u32-vsprintf.c: New file.
+ * tests/unistdio/test-ulc-asnprintf1.c: New file.
+ * tests/unistdio/test-ulc-asnprintf1.h: New file.
+ * tests/unistdio/test-ulc-printf1.h: New file.
+ * tests/unistdio/test-ulc-vasnprintf1.c: New file.
+ * tests/unistdio/test-ulc-vasnprintf2.c: New file.
+ * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
+ * tests/unistdio/test-ulc-vasnprintf3.c: New file.
+ * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
+ * tests/unistdio/test-ulc-vasprintf1.c: New file.
+ * tests/unistdio/test-ulc-vsnprintf1.c: New file.
+ * tests/unistdio/test-ulc-vsprintf1.c: New file.
+ * tests/unistdio/test-u8-asnprintf1.c: New file.
+ * tests/unistdio/test-u8-asnprintf1.h: New file.
+ * tests/unistdio/test-u8-printf1.h: New file.
+ * tests/unistdio/test-u8-vasnprintf1.c: New file.
+ * tests/unistdio/test-u8-vasnprintf2.c: New file.
+ * tests/unistdio/test-u8-vasnprintf2.sh: New file.
+ * tests/unistdio/test-u8-vasnprintf3.c: New file.
+ * tests/unistdio/test-u8-vasnprintf3.sh: New file.
+ * tests/unistdio/test-u8-vasprintf1.c: New file.
+ * tests/unistdio/test-u8-vsnprintf1.c: New file.
+ * tests/unistdio/test-u8-vsprintf1.c: New file.
+ * tests/unistdio/test-u16-asnprintf1.c: New file.
+ * tests/unistdio/test-u16-asnprintf1.h: New file.
+ * tests/unistdio/test-u16-printf1.h: New file.
+ * tests/unistdio/test-u16-vasnprintf1.c: New file.
+ * tests/unistdio/test-u16-vasnprintf2.c: New file.
+ * tests/unistdio/test-u16-vasnprintf2.sh: New file.
+ * tests/unistdio/test-u16-vasnprintf3.c: New file.
+ * tests/unistdio/test-u16-vasnprintf3.sh: New file.
+ * tests/unistdio/test-u16-vasprintf1.c: New file.
+ * tests/unistdio/test-u16-vsnprintf1.c: New file.
+ * tests/unistdio/test-u16-vsprintf1.c: New file.
+ * tests/unistdio/test-u32-asnprintf1.c: New file.
+ * tests/unistdio/test-u32-asnprintf1.h: New file.
+ * tests/unistdio/test-u32-printf1.h: New file.
+ * tests/unistdio/test-u32-vasnprintf1.c: New file.
+ * tests/unistdio/test-u32-vasnprintf2.c: New file.
+ * tests/unistdio/test-u32-vasnprintf2.sh: New file.
+ * tests/unistdio/test-u32-vasnprintf3.c: New file.
+ * tests/unistdio/test-u32-vasnprintf3.sh: New file.
+ * tests/unistdio/test-u32-vasprintf1.c: New file.
+ * tests/unistdio/test-u32-vsnprintf1.c: New file.
+ * tests/unistdio/test-u32-vsprintf1.c: New file.
+ * modules/unistdio/base: New file.
+ * modules/unistdio/u-printf-args: New file.
+ * modules/unistdio/ulc-asnprintf: New file.
+ * modules/unistdio/ulc-asprintf: New file.
+ * modules/unistdio/ulc-fprintf: New file.
+ * modules/unistdio/ulc-printf-parse: New file.
+ * modules/unistdio/ulc-snprintf: New file.
+ * modules/unistdio/ulc-sprintf: New file.
+ * modules/unistdio/ulc-vasnprintf: New file.
+ * modules/unistdio/ulc-vasprintf: New file.
+ * modules/unistdio/ulc-vfprintf: New file.
+ * modules/unistdio/ulc-vsnprintf: New file.
+ * modules/unistdio/ulc-vsprintf: New file.
+ * modules/unistdio/u8-asnprintf: New file.
+ * modules/unistdio/u8-asprintf: New file.
+ * modules/unistdio/u8-printf-parse: New file.
+ * modules/unistdio/u8-snprintf: New file.
+ * modules/unistdio/u8-sprintf: New file.
+ * modules/unistdio/u8-vasnprintf: New file.
+ * modules/unistdio/u8-vasprintf: New file.
+ * modules/unistdio/u8-vsnprintf: New file.
+ * modules/unistdio/u8-vsprintf: New file.
+ * modules/unistdio/u8-u8-asnprintf: New file.
+ * modules/unistdio/u8-u8-asprintf: New file.
+ * modules/unistdio/u8-u8-snprintf: New file.
+ * modules/unistdio/u8-u8-sprintf: New file.
+ * modules/unistdio/u8-u8-vasnprintf: New file.
+ * modules/unistdio/u8-u8-vasprintf: New file.
+ * modules/unistdio/u8-u8-vsnprintf: New file.
+ * modules/unistdio/u8-u8-vsprintf: New file.
+ * modules/unistdio/u16-asnprintf: New file.
+ * modules/unistdio/u16-asprintf: New file.
+ * modules/unistdio/u16-printf-parse: New file.
+ * modules/unistdio/u16-snprintf: New file.
+ * modules/unistdio/u16-sprintf: New file.
+ * modules/unistdio/u16-vasnprintf: New file.
+ * modules/unistdio/u16-vasprintf: New file.
+ * modules/unistdio/u16-vsnprintf: New file.
+ * modules/unistdio/u16-vsprintf: New file.
+ * modules/unistdio/u16-u16-asnprintf: New file.
+ * modules/unistdio/u16-u16-asprintf: New file.
+ * modules/unistdio/u16-u16-snprintf: New file.
+ * modules/unistdio/u16-u16-sprintf: New file.
+ * modules/unistdio/u16-u16-vasnprintf: New file.
+ * modules/unistdio/u16-u16-vasprintf: New file.
+ * modules/unistdio/u16-u16-vsnprintf: New file.
+ * modules/unistdio/u16-u16-vsprintf: New file.
+ * modules/unistdio/u32-asnprintf: New file.
+ * modules/unistdio/u32-asprintf: New file.
+ * modules/unistdio/u32-printf-parse: New file.
+ * modules/unistdio/u32-snprintf: New file.
+ * modules/unistdio/u32-sprintf: New file.
+ * modules/unistdio/u32-vasnprintf: New file.
+ * modules/unistdio/u32-vasprintf: New file.
+ * modules/unistdio/u32-vsnprintf: New file.
+ * modules/unistdio/u32-vsprintf: New file.
+ * modules/unistdio/u32-u32-asnprintf: New file.
+ * modules/unistdio/u32-u32-asprintf: New file.
+ * modules/unistdio/u32-u32-snprintf: New file.
+ * modules/unistdio/u32-u32-sprintf: New file.
+ * modules/unistdio/u32-u32-vasnprintf: New file.
+ * modules/unistdio/u32-u32-vasprintf: New file.
+ * modules/unistdio/u32-u32-vsnprintf: New file.
+ * modules/unistdio/u32-u32-vsprintf: New file.
+ * modules/unistdio/ulc-asnprintf-tests: New file.
+ * modules/unistdio/ulc-vasnprintf-tests: New file.
+ * modules/unistdio/ulc-vasprintf-tests: New file.
+ * modules/unistdio/ulc-vsnprintf-tests: New file.
+ * modules/unistdio/ulc-vsprintf-tests: New file.
+ * modules/unistdio/u8-asnprintf-tests: New file.
+ * modules/unistdio/u8-vasnprintf-tests: New file.
+ * modules/unistdio/u8-vasprintf-tests: New file.
+ * modules/unistdio/u8-vsnprintf-tests: New file.
+ * modules/unistdio/u8-vsprintf-tests: New file.
+ * modules/unistdio/u16-asnprintf-tests: New file.
+ * modules/unistdio/u16-vasnprintf-tests: New file.
+ * modules/unistdio/u16-vasprintf-tests: New file.
+ * modules/unistdio/u16-vsnprintf-tests: New file.
+ * modules/unistdio/u16-vsprintf-tests: New file.
+ * modules/unistdio/u32-asnprintf-tests: New file.
+ * modules/unistdio/u32-vasnprintf-tests: New file.
+ * modules/unistdio/u32-vasprintf-tests: New file.
+ * modules/unistdio/u32-vsnprintf-tests: New file.
+ * modules/unistdio/u32-vsprintf-tests: New file.
+ * MODULES.html.sh (Unicode string functions): Add the new modules.
+
+2007-07-01 Bruno Haible <bruno@clisp.org>
+
+ * lib/sprintf.c (sprintf): Limit the available length estimation,
+ to avoid address wraparound.
+ * lib/vsprintf.c (vsprintf): Likewise.
+ * modules/sprintf-posix (Dependencies): Add stdint.
+ * modules/vsprintf-posix (Dependencies): Likewise.
+
+2007-07-01 Bruno Haible <bruno@clisp.org>
+
+ * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
+ Windows PATH as well. Conservative double-quoting. Comments.
+
2007-07-01 Bruno Haible <bruno@clisp.org>
Eric Blake <ebb9@byu.net>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>