Remove the wcwidth.h file. Move wcwidth's declaration to wchar_.h.
[gnulib.git] / ChangeLog
index 6a69486..35b4e12 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,404 @@
+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>