X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=ChangeLog;h=aa28c08d22a99a0ac3dd79f592b411b80df065af;hb=a903e10b42da3dac442053e389832f003f58528a;hp=c7bd71fca3489120a0f5cc2faf0add6be1d8f2ba;hpb=0794207582b9f263f4eb2f0819bbb0ec4397a760;p=gnulib.git diff --git a/ChangeLog b/ChangeLog index c7bd71fca..107e21cfd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,2295 @@ +2007-02-17 Bruno Haible + + * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of + gl_STRING_MODULE_INDICATOR_DEFAULTS. + (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro. + (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update. + +2007-02-17 Bruno Haible + + * modules/link-warning: New file. + * build-aux/link-warning.h: New file, extracted from lib/string_.h. + * lib/string_.h (GL_LINK_WARNING): Remove definition. + * modules/string (Depends-on): Add link-warning. + (Makefile.am): Copy the contents of build-aux/link-warning.h into + string.h. + +2007-02-17 Bruno Haible + + * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp, + strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn, + strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break + long lines. + +2007-02-17 Ben Pfaff + Bruno Haible + + * modules/tmpfile: New file. + * lib/tmpfile.c: New file. + * m4/tmpfile.m4: New file. + * MODULES.html.sh (func_all_modules): New section "Input/output". + +2007-02-15 Bruno Haible + + * lib/clean-temp.c [WIN32 && !CYGWIN]: Include . + (supports_delete_on_close): New function. + (open_temp, fopen_temp): Use _O_TEMPORARY when supported. + +2007-02-14 Bruno Haible + + * modules/mbspcasecmp-tests: New file. + * tests/test-mbspcasecmp.sh: New file. + * tests/test-mbspcasecmp.c: New file. + + New module mbspcasecmp. + * modules/mbspcasecmp: New file. + * lib/mbspcasecmp.c: New file. + * lib/string_.h (strncasecmp): Change warning message. + (mbspcasecmp): New declaration. + * m4/mbspcasecmp.m4: New file. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize + GNULIB_MBSPCASECMP. + * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP. + * MODULES.html.sh (Internationalization functions): Add mbspcasecmp. + +2007-02-14 Bruno Haible + + * modules/mbsncasecmp-tests: New file. + * tests/test-mbsncasecmp.sh: New file. + * tests/test-mbsncasecmp.c: New file. + + New module mbsncasecmp. + * modules/mbsncasecmp: New file. + * lib/mbsncasecmp.c: New file. + * lib/string_.h (mbsncasecmp): New declaration. + * m4/mbsncasecmp.m4: New file. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize + GNULIB_MBSNCASECMP. + * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP. + * MODULES.html.sh (Internationalization functions): Add mbsncasecmp. + +2007-02-14 Paul Eggert + + * lib/exclude.c (FNM_EXTMATCH): Define if system does not. + Verify that it doesn't overlap with our flags. + (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which + do not have the desired effect in multibyte locales; instead, use + mbscasecmp. + * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase. + Add dependency on xalloc. Depend on fnmatch, not fnmatch-gnu, since + we don't require GNU fnmatch ourselves (if our users require it, they + should do so explicitly). + + Fix regex code so it doesn't rely on strcasecmp. + * lib/regex_internal.h: Include only if _LIBC is defined. + Otherwise, include gnulib's langinfo.h. + * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have + undesirable behavior in non-C locales. Instead, rely on localecharset. + * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET. + * modules/regex (FILES): Remove m4/codeset.m4. + (Depends-on): Add localcharset. Remove strcase. + +2007-02-13 Ralf Wildenhues + + * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug. + * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise. + +2007-02-13 Bruno Haible + + * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug. + Reported by Ralf Wildenhues . + +2007-02-12 Bruno Haible + + * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul, + strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If + GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link- + time warning rather than a link error. + +2007-02-12 Bruno Haible + + * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug. + * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise. + Reported by Ralf Wildenhues . + +2007-02-12 Paul Eggert + + * lib/string_.h (strncasecmp): Fix typo: this macro takes 3 + args, not 2. + +2007-02-12 Paul Eggert + + New module 'time', so that apps can include as per + POSIX and GNU instead of separate include files like time_r.h + and timegm.h. This implementation tries out a simpler approach + for replacing decls in standard include files (as compared to + the string module), somewhat as an experiment. + + * config/srclist.txt: Comment out mktime.c for now. + * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example + since it doesn't apply any more. Use generic wording instead. + * MODULES.html.sh (Support for systems lacking POSIX:2001): New module + 'time'. + * lib/time_.h, m4/time_h.m4, modules/time: New files. + * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove. + * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H. + Don't include ; no longer needed since we assume C89. + * lib/mktime.c: Don't include "time_r.h"; no longer needed. + * lib/strftime.c: Likewise. + * lib/time_r.c: Likewise. + * lib/nanosleep.c (nanosleep): #undef after include files, not before. + * lib/nanosleep.c: Include first, to check interface. + * lib/strptime.c: Likewise. + * lib/time_r.c: Likewise. + * lib/timegm.c: Likewise. + * lib/strptime.c: Don't include strptime.h or time_r.h; no longer + needed. + * lib/timegm.c: Don't include timegm.h; no longer needed. + * lib/timespec.h: Don't include before ; + time.h now handles any problems in that area. + (struct timespec, nanosleep): Remove; time.h now arranges for these. + * lib/xnanosleep.c: Don't include timespec.h; no longer needed now + that time.h defines struct timespec. + * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared. + Set REPLACE_NANOSLEEP. Don't AC_DEFINE nanosleep; the time module now + handles that. + * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME. + * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer + needed. Set REPLACE_LOCALTIME. + * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM. + * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4. + (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or + nanosleep; time_h.m4 now does that. Don't require + gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time + module handles this now. + * modules/getdate (Depends-on): Remove timespec. Add time. + * modules/nanosleep (Depends-on): Likewise. + * modules/stat-time (Depends-on): Likewise. + * modules/nanosleep (Include): Include time.h, not timespec.h. + * modules/strptime (Files): Remove lib/strptime.h. + (Depends-on): Add extensions, time. + (Include): Include time.h, not strptime.h. + * modules/time_r (Files): Remove lib/time_r.h. + (Depends-on): Add time. + (Include): Include time.h, not time_r.h. + * modules/timegm: Likewise. + * modules/timespec (Description): Now does timespec-related decls + of our own, instead of struct timespec itself. + (Depends-on): Add time; remove extensions. + (Maintainer): Add self. + * modules/utimecmp (Depends-on): Add time; remove timespec. + * modules/utimens (Depends-on): Likewise. + * modules/xnanosleep (Depends-on): Likewise. + +2007-02-11 Bruno Haible + + * lib/c-strstr.c: Include allocsa.h. + (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free. + * lib/c-strcasestr.c: Include allocsa.h. + (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free. + * lib/strcasestr.c: Include allocsa.h. + (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free. + * lib/mbsstr.c: Include allocsa.h. + (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use + allocsa/freesa instead of malloc/free. + * lib/mbscasestr.c: Include allocsa.h. + (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use + allocsa/freesa instead of malloc/free. + * modules/c-strstr (Depends-on): Add allocsa. + * modules/c-strcasestr (Depends-on): Likewise. + * modules/strcasestr (Depends-on): Likewise. + * modules/mbsstr (Depends-on): Likewise. + * modules/mbscasestr (Depends-on): Likewise. + +2007-02-11 Bruno Haible + + * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call. + + * modules/mbsspn-tests: New file. + * tests/test-mbsspn.sh: New file. + * tests/test-mbsspn.c: New file. + +2007-02-11 Bruno Haible + + * lib/mbspbrk.c (mbspbrk): Remove unneeded cast. + + * modules/mbspbrk-tests: New file. + * tests/test-mbspbrk.sh: New file. + * tests/test-mbspbrk.c: New file. + +2007-02-11 Bruno Haible + + * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and + unneeded cast. + + * modules/mbscspn-tests: New file. + * tests/test-mbscspn.sh: New file. + * tests/test-mbscspn.c: New file. + +2007-02-11 Bruno Haible + + * modules/mbscasecmp-tests: New file. + * tests/test-mbscasecmp.sh: New file. + * tests/test-mbscasecmp.c: New file. + +2007-02-11 Bruno Haible + + Ensure O(n) worst-case complexity of mbscasestr. + * lib/mbscasestr.c: Include stdbool.h. + (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New + functions. + (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when + the bookkeeping indicates that it's worth it. + * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen. + + * modules/mbscasestr-tests: New file. + * tests/test-mbscasestr1.c: New file. + * tests/test-mbscasestr2.sh: New file. + * tests/test-mbscasestr2.c: New file. + * tests/test-mbscasestr3.sh: New file. + * tests/test-mbscasestr3.c: New file. + * tests/test-mbscasestr4.sh: New file. + * tests/test-mbscasestr4.c: New file. + * m4/locale-tr.m4: New file. + +2007-02-11 Bruno Haible + + Ensure O(n) worst-case complexity of mbsstr. + * lib/mbsstr.c: Include stdbool.h. + (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New + functions. + (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the + bookkeeping indicates that it's worth it. + * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen. + + * modules/mbsstr-tests: New file. + * tests/test-mbsstr1.c: New file. + * tests/test-mbsstr2.sh: New file. + * tests/test-mbsstr2.c: New file. + * tests/test-mbsstr3.sh: New file. + * tests/test-mbsstr3.c: New file. + * m4/locale-fr.m4: New file. + +2007-02-11 Bruno Haible + + * lib/mbsrchr.c (mbsrchr): Fix bug. + + * modules/mbsrchr-tests: New file. + * tests/test-mbsrchr.sh: New file. + * tests/test-mbsrchr.c: New file. + +2007-02-11 Bruno Haible + + * lib/mbschr.c (mbschr): Fix bug. + + * modules/mbschr-tests: New file. + * tests/test-mbschr.sh: New file. + * tests/test-mbschr.c: New file. + * m4/locale-zh.m4: New file. + +2007-02-11 Bruno Haible + + Support for copying multibyte string iterators. + * lib/mbiter.h: Include . + (mbiter_multi_copy): New function. + (mbi_copy): New macro. + * lib/mbuiter.h: Include . + (mbuiter_multi_copy): New function. + (mbui_copy): New macro. + +2007-02-11 Bruno Haible + + New module mbslen. + * modules/mbslen: New file. + * lib/mbslen.c: New file. + * lib/string_.h (mbslen): New declaration. + * m4/mbslen.m4: New file. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize + GNULIB_MBSLEN. + * modules/string (string.h): Also substitute GNULIB_MBSLEN. + * MODULES.html.sh (Internationalization functions): Add mbslen. + +2007-02-11 Bruno Haible + + Ensure O(n) worst-case complexity of strcasestr substitute. + * lib/strcasestr.c: Include stdbool.h. + (knuth_morris_pratt): New function. + (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the + bookkeeping indicates that it's worth it. + * modules/strcasestr (Depends-on): Add stdbool, strnlen. + + * modules/strcasestr-tests: New file. + * tests/test-strcasestr.c: New file. + +2007-02-11 Bruno Haible + + Ensure O(n) worst-case complexity of c_strcasestr. + * lib/c-strcasestr.c: Include stdbool.h, string.h. + (knuth_morris_pratt): New function. + (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when + the bookkeeping indicates that it's worth it. + * modules/c-strcasestr (Depends-on): Add stdbool, strnlen. + + * modules/c-strcasestr-tests: New file. + * tests/test-c-strcasestr.c: New file. + +2007-02-11 Bruno Haible + + Ensure O(n) worst-case complexity of c_strstr. + * lib/c-strstr.c: Include stdbool.h, string.h. + (knuth_morris_pratt): New function. + (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the + bookkeeping indicates that it's worth it. + * modules/c-strstr (Depends-on): Add stdbool, strnlen. + + * lib/c-strstr.c: Complete rewrite for maintainability. + + * modules/c-strstr-tests: New file. + * tests/test-c-strstr.c: New file. + +2007-02-11 Bruno Haible + + * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils + 5.2.1 and earlier, whereby \055 was treated just like the range + delimiter '-'. Reported by Joel E. Denny . + +2007-02-08 Bruno Haible + + * modules/regex (Depends-on): Add stdbool. + Reported by Dalibor Topic . + +2007-02-05 Paul Eggert + + * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957. + Prefer returning from main to exiting from it. + Remove unnecessary parens after sizeof. + +2007-02-05 Bruno Haible + + New module mbssep. + * modules/mbssep: New file. + * lib/mbssep.c: New file. + * lib/string_.h (strsep): Add a conditional link warning. + (mbssep): New declaration. + * m4/mbssep.m4: New file. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize + GNULIB_MBSSEP. + * modules/string (string.h): Also substitute GNULIB_MBSSEP. + * MODULES.html.sh (Internationalization functions): Add mbssep. + +2007-02-05 Bruno Haible + + * lib/strsep.c (strsep): Fix actions in case of no delimiters. + Optimize search in case of 1 delimiter. + +2007-02-05 Paolo Bonzini + + * lib/acl.h: Include sys/types.h before sys/acl.h. + +2007-02-05 Paolo Bonzini + + Merge upstream fix for glibc bugzilla #3957: + + 2007-02-05 Jakub Jelinek + + * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0' + bit for RE_HAT_LISTS_NOT_NEWLINE. + (build_charclass_op): Remove bogus comment. + +2007-02-05 Simon Josefsson + + * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512. + +2007-02-04 Paul Eggert + + * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h. + * lib/memmem.c [!defined _LIBC]: Include config.h. + +2007-02-04 Bruno Haible + + * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the + warning message. + +2007-02-04 Bruno Haible + + New module mbstok_r. + * modules/mbstok_r: New file. + * lib/mbstok_r.c: New file. + * lib/string_.h (strtok_r): Change argument names to match the + comments. Add a conditional link warning. + (mbstok_r): New declaration. + * m4/mbstok_r.m4: New file. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize + GNULIB_MBSTOK_R. + * modules/string (string.h): Also substitute GNULIB_MBSTOK_R. + * MODULES.html.sh (Internationalization functions): Add mbstok_r. + +2007-02-04 Bruno Haible + + New module mbsspn. + * modules/mbsspn: New file. + * lib/mbsspn.c: New file. + * lib/string_.h (strspn): Add a conditional link warning. + (mbsspn): New declaration. + * m4/mbsspn.m4: New file. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize + GNULIB_MBSSPN. + * modules/string (string.h): Also substitute GNULIB_MBSSPN. + * MODULES.html.sh (Internationalization functions): Add mbsspn. + +2007-02-04 Bruno Haible + + New module mbspbrk. + * modules/mbspbrk: New file. + * lib/mbspbrk.c: New file. + * lib/string_.h (strpbrk): Add a conditional link warning. + (mbspbrk): New declaration. + * m4/mbspbrk.m4: New file. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize + GNULIB_MBSPBRK. + * modules/string (string.h): Also substitute GNULIB_MBSPBRK. + * MODULES.html.sh (Internationalization functions): Add mbspbrk. + +2007-02-04 Bruno Haible + + New module mbscspn. + * modules/mbscspn: New file. + * lib/mbscspn.c: New file. + * lib/string_.h (strcspn): Add a conditional link warning. + (mbscspn): New declaration. + * m4/mbscspn.m4: New file. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize + GNULIB_MBSCSPN. + * modules/string (string.h): Also substitute GNULIB_MBSCSPN. + * MODULES.html.sh (Internationalization functions): Add mbscspn. + +2007-02-04 Bruno Haible + + New module mbscasestr, reduced goal of strcasestr. + * modules/mbscasestr: New file. + * lib/mbscasestr.c: New file, copied from lib/strcasestr.c. + (mbscasestr): Renamed from strcasestr. + * lib/strcasestr.c: Don't include mbuiter.h. + (strcasestr): Remove support for multibyte locales. + * lib/string_.h (strcasestr): Don`t rename. Declare only if missing. + Change the conditional link warning. + (mbscasestr): New declaration. + * m4/mbscasestr.m4: New file. + * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if + the system does not have strcasestr. Set HAVE_STRCASESTR instead of + REPLACE_STRCASESTR. + (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC. + * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize + HAVE_STRCASESTR instead of REPLACE_STRCASESTR. + (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR. + * modules/string (string.h): Also substitute GNULIB_MBSCASESTR. + Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR. + * modules/strcasestr (Files): Remove m4/mbrtowc.m4. + (Depends-on): Remove mbuiter. + * MODULES.html.sh (Internationalization functions): Add mbscasestr. + +2007-02-04 Bruno Haible + + Simplify handling of strncasecmp. + * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change + the conditional link warning. + * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize + HAVE_STRCASECMP, not REPLACE_STRCASECMP. + (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE. + * modules/strcase (configure.ac): Don't invoke + gl_STRING_MODULE_INDICATOR. + * modules/string (string.h): Don't substitute GNULIB_STRCASE. + +2007-02-04 Bruno Haible + + New module mbscasecmp, reduced goal of strcasecmp. + * modules/mbscasecmp: New file. + * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c. + (mbscasecmp): Renamed from strcasecmp. + * lib/strcasecmp.c: Don't include mbuiter.h. + (strcasecmp): Remove support for multibyte locales. + * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing. + Change the conditional link warning. + (mbscasecmp): New declaration. + * m4/mbscasecmp.m4: New file. + * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if + the system lacks strcasecmp. Set HAVE_STRCASECMP instead of + REPLACE_STRCASECMP. + (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize + GNULIB_MBSCASECMP. + * modules/string (string.h): Also substitute GNULIB_MBSCASECMP. + Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP. + * modules/strcase (Files): Remove m4/mbrtowc.m4. + (Depends-on): Remove mbuiter. + * MODULES.html.sh (Internationalization functions): Add mbscasecmp. + +2007-02-04 Bruno Haible + + New module mbsstr. Remove module strstr. + * modules/mbsstr: New file. + * modules/strstr: Remove file. + * lib/mbsstr.c: Renamed from lib/strstr.c. + (mbsstr): Renamed from strstr. + * lib/string_.h (strstr): Remove declaration. Change the conditional + link warning. + (mbsstr): New declaration. + * m4/mbsstr.m4: New file. + * m4/strstr.m4: Remove file. + * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize + REPLACE_STRSTR. + (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR. + Don't initialize GNULIB_STRSTR. + * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't + substitute GNULIB_STRSTR and REPLACE_STRSTR. + * MODULES.html.sh (Internationalization functions): Add mbsstr. + (Support for systems lacking ANSI C 89): Remove strstr. + +2007-02-04 Bruno Haible + + New module mbsrchr. + * modules/mbsrchr: New file. + * lib/mbsrchr.c: New file. + * lib/string_.h (strrchr): Add a conditional link warning. + (mbsrchr): New declaration. + * m4/mbsrchr.m4: New file. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize + GNULIB_MBSRCHR. + * modules/string (string.h): Also substitute GNULIB_MBSRCHR. + * MODULES.html.sh (Internationalization functions): Add mbsrchr. + +2007-02-04 Bruno Haible + + New module mbschr. + * modules/mbschr: New file. + * lib/mbschr.c: New file. + * lib/string_.h (strchr): Add a conditional link warning. + (mbschr): New declaration. + * m4/mbschr.m4: New file. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize + GNULIB_MBSCHR. + * modules/string (string.h): Also substitute GNULIB_MBSCHR. + * MODULES.html.sh (Internationalization functions): Add mbschr. + +2007-02-04 Paul Eggert + + * lib/stdbool_.h: Mention that bool bit-fields aren't supported. + + * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC. + +2007-02-04 Bruno Haible + + New module description section 'configure.ac-early'. + * gnulib-tool (sed_extract_prog): Recognize configure.ac-early. + (func_get_autoconf_early_snippet): New function. + (func_import, func_create_testdir): Use it. Remove special cases for + modules 'extensions' and 'lock'. + * modules/extensions (configure.ac-early): Require + gl_USE_SYSTEM_EXTENSIONS. + * modules/lock (configure.ac-early): Require gl_LOCK_EARLY. + +2007-02-04 Bruno Haible + + Make use of gcj-4.3's -fsource and -ftarget option. + * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3, + and if so try the options -fsource and -ftarget. + * lib/javacomp.c (compile_using_gcj): Add fsource_option, + source_version, ftarget_option, target_version arguments. + (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions. + (is_envjavac_oldgcj_14_14_usable): Renamed from + is_envjavac_gcj_14_14_usable. + (is_envjavac_oldgcj_14_13_usable): Renamed from + is_envjavac_gcj_14_13_usable. + (is_gcj_present): Update. + (is_gcj_43, is_gcj43_usable): New functions. + (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update. + (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update. + (compile_java_class): Test whether gcj is in version >= 4.3, and if so + try the options -fsource and -ftarget. + +2007-02-03 Paul Eggert + + * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow + checking code. Set N = ceil (1.5 * N) rather than to a slightly + larger value. + +2007-02-03 Jim Meyering + + Give tools a better chance to allocate space for very large buffers. + * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor. + + Make pwd and readlink work also when run with an unreadable parent dir + on systems with openat support. + * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system + provided getcwd function, even when we have openat support. + Reported by Dmitry V. Levin in . + +2007-02-02 Bruno Haible + + * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul, + strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link + error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial + portability problems if one of these functions is only used on specific + platforms. + Reported by Paul Eggert. + +2007-02-02 Paul Eggert + + Avoid mempcpy in the regex code, as the string.h mempcpy stuff + is causing more trouble than it's curing. + * lib/regex_internal.h (__mempcpy): Remove. + * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy + (and make the code a tad smaller to boot). + * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy. + +2007-02-02 Jim Meyering + + * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac: + section, not in the Makefile.am: one. + +2007-02-02 Eric Blake + + * lib/strchrnul.c: Always include config.h first. + + * modules/mountlist (Depends-on): Revert 2007-01-31 change, + gnulib strstr is not necessary here. + +2007-02-02 Simon Josefsson + + * m4/socklen.m4: Fix typo. + +2007-02-02 Eric Blake + + * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races. + * modules/netinet_in (Makefile.am): Likewise. + +2007-02-01 Bruno Haible + + * lib/string_.h (GL_LINK_WARNING): New macro. + (strcasecmp, strstr, strcasestr): If provided by the system, + conditionally define as a macro that leads to a warning instead of to + an error. + (strncasecmp): Conditionally define as a macro that leads to a warning. + +2007-02-01 Jim Meyering + + Give tools a better chance to allocate space for very large buffers. + * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor. + +2007-02-01 Karl Berry + + * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h. + +2007-02-01 Bruno Haible + + * MODULES.html.sh (Unicode string functions): Update after 2007-01-27 + renamings. + +2007-02-01 Eric Blake + + * modules/regex (Depends-on): Revert dependence on mempcpy. + * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string + module's definition of mempcpy. + Reported by Paul Eggert. + +2007-02-01 Paul Eggert + + * lib/string_.h: If the gnulib module XYZ is not present, undefine + the symbol XYZ before redefining it. This fixes a problem with + programs that don't use XYZ, when compiled on systems that define + XYZ to something else. + +2007-01-31 Paul Eggert + + * lib/mkdir-p.c (make_dir_parents): Close a race condition that + occurs when "mkdir -m foo" creates a setgid directory that is (1) + writeable to group or other and (2) is intended to have a special + mode bit that is set or cleared. In such a case, the directory + should be neither group- nor other-writeable until the special + mode bits are right. + +2007-01-31 Eric Blake + + * modules/mountlist (Depends-on): Add strstr. + + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage + bug. + * modules/string (Makefile.am): Remove redundant replacement. + * modules/regex (Depends-on): Add mempcpy. + +2007-01-31 Bruno Haible + + New module description field 'Link'. + * gnulib-tool (func_usage): Document --extract-link-directive. + (sed_extract_prog): Recognize 'Link' directive. + (func_get_link_directive): New function. + (func_import): Show summary of link directives. + Handle --extract-link-directive option. + * modules/acl (Link): New section. + * modules/clock-time (Link): New section. + * modules/euidaccess (Link): New section. + * modules/gettext (Link): New section. + * modules/iconv (Link): New section. + * modules/lock (Link): New section. + * modules/nanosleep (Link): New section. + * modules/readline (Link): New section. + +2007-01-27 Bruno Haible + + Enforce the use of gnulib modules for unportable functions. + * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro. + (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro. + (gl_HEADER_STRING_H_BODY): Require it. + * lib/string_.h: If the gnulib module XYZ is not present, redefine + the symbol XYZ to one that gives a link error. + * modules/string (Makefile.am): Also substitute the GNULIB_* variables. + * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR. + * modules/mempcpy (configure.ac): Likewise. + * modules/memrchr (configure.ac): Likewise. + * modules/stpcpy (configure.ac): Likewise. + * modules/stpncpy (configure.ac): Likewise. + * modules/strcase (configure.ac): Likewise. + * modules/strcasestr (configure.ac): Likewise. + * modules/strchrnul (configure.ac): Likewise. + * modules/strdup (configure.ac): Likewise. + * modules/strndup (configure.ac): Likewise. + * modules/strnlen (configure.ac): Likewise. + * modules/strpbrk (configure.ac): Likewise. + * modules/strsep (configure.ac): Likewise. + * modules/strstr (configure.ac): Likewise. + * modules/strtok_r (configure.ac): Likewise. + +2007-01-31 Jean-Louis Martineau (tiny change) + + * lib/gai_strerror.c (values): Add EAI_OVERFLOW. + +2007-01-30 Jim Meyering + + * lib/mpsort.c (mpsort): Remove spurious "return" in void function. + +2007-01-29 Bruno Haible + + * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'. + * lib/execute.c: Likewise. + * lib/pipe.c: Likewise. + * lib/printf-args.h: Likewise. + * lib/printf-args.c: Likewise. + * lib/printf-parse.c: Likewise. + * lib/vasnprintf.c: Likewise. + +2007-01-29 Eric Blake + + * lib/memrchr.c: Assume unconditionally, to pull in + declaration. + +2007-01-29 Paul Eggert + + * lib/strptime.h (strptime): Use 'restrict' for args where + POSIX requires this. + * lib/strptime.c (strptime): Likewise. + Change license notice from LGPL to GPL, since gnulib-tool will + change this as needed. + Include if _LIBC is not defined, not if HAVE_CONFIG_H is + defined. + Include "strptime.h" first, to check interface. + Do not #undef _LIBC and _NL_CURRENT. + Do not include ; no longer needed. + Include "time_r.h" and declare ptime_locale_status + only if _LIBC is not defined. + (__P): Remove unused macro. + (match_string): Bring back glibc version, but use it only if _LIBC + is defined. + (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too. + Remove unnecessary assertion and abort() call. + Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc. + * m4/strptime.m4: Fix serial number comment. + (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF. + * modules/strptime (Files): Add m4/tm_gmtoff.m4. + (Depends-on): Add time_r. + +2007-01-29 Bruno Haible + + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add + strptime. + * modules/strptime (Depends-on): Add stdbool. + * lib/strptime.h: Include always. Add comments. + +2007-01-29 Yoann Vandoorselaere + + * modules/strptime: New file. + * lib/strptime.h: New file. + * lib/strptime.c: New file. + * m4/strptime.m4: New file. + +2007-01-28 Paul Eggert + + * MODULES.html.sh: New module mpsort. + * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files. + + * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid + a circularity problem with HP-UX ia64 reported by Bob Proulx in + . + All uses changed. + (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons. + All uses changed. + * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict + to _Restrict_. + * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that + the parameter matches the prototype. + +2007-01-28 Jim Meyering + + * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use + sys/time.h here, reverting that part of the previous patch: + . + +2007-01-28 Bruno Haible + + * modules/sys_time (Makefile.am): Build sys/time.h only when it's the + value of $(SYS_TIME_H). + [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed, + remove it conditionally, too. [added by Jim Meyering] + * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H. + * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): + (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting + GETTIMEOFDAY_REPLACEMENT to 1. + +2007-01-28 Bruno Haible + + * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro. + (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here. + * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS. + Set UNISTD_H instead of UNISTD_H2. + * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2). + +2007-01-28 Bruno Haible + + * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES. + * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation. + +2007-01-28 Ralf Wildenhues + + * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update) + (func_create_testdir): Ensure C locale for `grep' and `tr' + character ranges. + (func_create_megatestdir): Avoid one `grep'. Fix bug in + ACLOCAL_AMFLAGS parsing state machine. + +2007-01-27 Bruno Haible + + * modules/unistr/base: Update. + +2007-01-27 Bruno Haible + + Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc, + u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc. + * modules/unistr/u32-mbtouc-unsafe: Renamed from + modules/unistr/u32-mbtouc. + * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c. + * lib/unistr.h: Update. + * lib/linebreak.c: Update. + * modules/unistr/u32-mbtouc: Renamed from + modules/unistr/u32-mbtouc-safe. + * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c. + * lib/unistr.h: Update. + * lib/unistr/u32-to-u8.c: Update. + * lib/unistr/u32-to-u16.c: Update. + +2007-01-27 Bruno Haible + + Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4, + u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc. + * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4. + * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h. + * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c. + * modules/unistr/u16-mbtouc-unsafe: Renamed from + modules/unistr/u16-mbtouc. + * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c. + * lib/unistr.h: Update. + * lib/linebreak.c: Update. + * modules/linebreak: Update. + * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe. + * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h. + * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c. + * modules/unistr/u16-mbtouc: Renamed from + modules/unistr/u16-mbtouc-safe. + * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c. + * lib/unistr.h: Update. + * lib/unistr/u16-to-u8.c: Update. + * modules/unistr/u16-to-u8: Update. + * lib/unistr/u16-to-u32.c: Update. + * modules/unistr/u16-to-u32: Update. + +2007-01-27 Bruno Haible + + Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4, + u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc. + * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4. + * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h. + * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c. + * modules/unistr/u8-mbtouc-unsafe: Renamed from + modules/unistr/u8-mbtouc. + * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c. + * lib/unistr.h: Update. + * lib/striconveh.c: Update. + * modules/striconveh: Update. + * lib/linebreak.c: Update. + * modules/linebreak: Update. + * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe. + * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h. + * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c. + * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe. + * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c. + * lib/unistr.h: Update. + * lib/striconveh.c: Update. + * modules/striconveh: Update. + * lib/unistr/u8-to-u16.c: Update. + * modules/unistr/u8-to-u16: Update. + * lib/unistr/u8-to-u32.c: Update. + * modules/unistr/u8-to-u32: Update. + +2007-01-27 Ralf Wildenhues + + Sync from Libtool. + * lib/argz.c: Do not include strings.h nor memory.h, include + string.h unconditionally. Patch by Simon Josefsson. + +2007-01-27 Bruno Haible + + * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted + from gl_HEADER_STRING_H_BODY. + (gl_HEADER_STRING_H_BODY): Require it. + * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS. + * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise. + * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise. + * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise. + * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise. + * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise. + * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise. + * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise. + * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise. + * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise. + * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise. + * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise. + * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise. + * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise. + * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise. + +2007-01-27 Bruno Haible + + * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn + check_PROGRAMS into noinst_PROGRAMS. + (func_emit_tests_Makefile_am): Likewise. Also don't initialize + check_PROGRAMS in this case. + (func_import): Set for_test to false. + (func_create_testdir): Set for_test to true. + +2007-01-27 Yoann Vandoorselaere + Bruno Haible + + * modules/strcasestr (Files): Remove lib/strcasestr.h. + (Depends-on): Add string. + (Includes): Use instead of strcasestr.h. + * modules/string (Makefile.am): Also substitute the value of + REPLACE_STRCASESTR. + * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here; + assume strcasestr is declared in not . Also + set REPLACE_STRCASESTR. + * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for + REPLACE_STRCASESTR. + * lib/strcasestr.h: Remove file. + * lib/strcasestr.c: Include instead of strcasestr.h. + * lib/string_.h (strcasestr): New declaration. + +2007-01-27 Bruno Haible + + * lib/string_.h: Use 'extern'. + +2007-01-27 Jim Meyering + + * lib/regex_internal.c (re_string_reconstruct): Remove declaration + of set-but-not-used local, "q". + + * lib/mempcpy.c: Include before . + This fixes a compilation error on HP-UX, due to the system's + "restrict"-using mempcpy prototype. + +2007-01-26 Bruno Haible + + Small optimization. + * lib/javacomp.c: Include c-strstr.h. + (is_envjavac_gcj): Use c_strstr instead of strstr. + * modules/javacomp (Depends-on): Add c-strstr, remove strstr. + +2007-01-26 Bruno Haible + + * MODULES.html.sh (Unicode string functions): Add the new modules. + + * modules/uniconv/u32-strconv-to-locale: New file. + * lib/uniconv/u32-strconv-to-locale.c: New file. + + * modules/uniconv/u16-strconv-to-locale: New file. + * lib/uniconv/u16-strconv-to-locale.c: New file. + + * modules/uniconv/u8-strconv-to-locale: New file. + * lib/uniconv/u8-strconv-to-locale.c: New file. + + * modules/uniconv/u32-strconv-from-locale: New file. + * lib/uniconv/u32-strconv-from-locale.c: New file. + + * modules/uniconv/u16-strconv-from-locale: New file. + * lib/uniconv/u16-strconv-from-locale.c: New file. + + * modules/uniconv/u8-strconv-from-locale: New file. + * lib/uniconv/u8-strconv-from-locale.c: New file. + + * modules/uniconv/u32-strconv-to-enc: New file. + * lib/uniconv/u32-strconv-to-enc.c: New file. + * modules/uniconv/u32-strconv-to-enc-tests: New file. + * tests/uniconv/test-u32-strconv-to-enc.c: New file. + + * modules/uniconv/u16-strconv-to-enc: New file. + * lib/uniconv/u16-strconv-to-enc.c: New file. + * lib/uniconv/u-strconv-to-enc.h: New file. + * modules/uniconv/u16-strconv-to-enc-tests: New file. + * tests/uniconv/test-u16-strconv-to-enc.c: New file. + + * modules/uniconv/u8-strconv-to-enc: New file. + * lib/uniconv/u8-strconv-to-enc.c: New file. + * modules/uniconv/u8-strconv-to-enc-tests: New file. + * tests/uniconv/test-u8-strconv-to-enc.c: New file. + + * modules/uniconv/u32-strconv-from-enc: New file. + * lib/uniconv/u32-strconv-from-enc.c: New file. + * modules/uniconv/u32-strconv-from-enc-tests: New file. + * tests/uniconv/test-u32-strconv-from-enc.c: New file. + + * modules/uniconv/u16-strconv-from-enc: New file. + * lib/uniconv/u16-strconv-from-enc.c: New file. + * modules/uniconv/u16-strconv-from-enc-tests: New file. + * tests/uniconv/test-u16-strconv-from-enc.c: New file. + + * modules/uniconv/u8-strconv-from-enc: New file. + * lib/uniconv/u8-strconv-from-enc.c: New file. + * lib/uniconv/u-strconv-from-enc.h: New file. + * modules/uniconv/u8-strconv-from-enc-tests: New file. + * tests/uniconv/test-u8-strconv-from-enc.c: New file. + + * modules/uniconv/u32-conv-from-enc: New file. + * lib/uniconv/u32-conv-from-enc.c: New file. + * modules/uniconv/u32-conv-from-enc-tests: New file. + * tests/uniconv/test-u32-conv-from-enc.c: New file. + + * modules/uniconv/u16-conv-from-enc: New file. + * lib/uniconv/u16-conv-from-enc.c: New file. + * lib/uniconv/u-conv-from-enc.h: New file. + * modules/uniconv/u16-conv-from-enc-tests: New file. + * tests/uniconv/test-u16-conv-from-enc.c: New file. + + * modules/uniconv/u8-conv-from-enc: New file. + * lib/uniconv/u8-conv-from-enc.c: New file. + * modules/uniconv/u8-conv-from-enc-tests: New file. + * tests/uniconv/test-u8-conv-from-enc.c: New file. + + * modules/uniconv/base: New file. + * lib/uniconv.h: New file. + +2007-01-26 Paul Eggert + + * doc/gnulib-tool.texi (Initial import): Update to match current + behavior with strdup module. + * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h. + * lib/memmem.h: Remove; all uses removed. This is now done + by . + * lib/mempcpy.h: Likewise. + * lib/memrchr.h: Likewise. + * lib/stpcpy.h: Likewise. + * lib/stpncpy.h: Likewise. + * lib/strcase.h: Likewise. + * lib/strchrnul.h: Likewise. + * lib/strdup.h: Likewise. + * lib/strndup.h: Likewise. + * lib/strnlen.h: Likewise. + * lib/strpbrk.h: Likewise. + * lib/strsep.h: Likewise. + * lib/strstr.h: Likewise. + * lib/strtok_r.h: Likewise. + * lib/string_.h: New file. + * lib/argp-namefrob.h: Don't include no-longer-existent include files. + Rely on instead. + * lib/canon-host.c: Likewise. + * lib/chdir-long.c: Likewise. + * lib/concatpath.c: Likewise. + * lib/exclude.c: Likewise. + * lib/fchdir.c: Likewise. + * lib/getaddrinfo.c: Likewise. + * lib/getcwd.c: Likewise. + * lib/getsubopt.c: Likewise. + * lib/glob.c: Likewise. + * lib/hard-locale.c: Likewise. + * lib/iconvme.c: Likewise. + * lib/javacomp.c: Likewise. + * lib/mempcpy.c: Likewise. + * lib/memrchr.c: Likewise. + * lib/regex_internal.h: Likewise. + * lib/stpncpy.c: Likewise. + * lib/strcasecmp.c: Likewise. + * lib/strchrnul.c: Likewise. + * lib/strdup.c: Likewise. + * lib/striconv.c: Likewise. + * lib/striconveh.c: Likewise. + * lib/striconveha.c: Likewise. + * lib/strncasecmp.c: Likewise. + * lib/strndup.c: Likewise. + * lib/strnlen.c: Likewise. + * lib/strsep.c: Likewise. + * lib/strstr.c: Likewise. + * lib/strtok_r.c: Likewise. + * lib/userspec.c: Likewise. + * lib/w32spawn.h: Likewise. + * lib/xstrndup.c: Likewise. + * lib/mountlist.c (strstr): Remove decl. + * m4/string_h.m4: New file. + * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary. + * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary. + * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR + * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary. + * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary. + * m4/strcase.m4 (gl_FUNC_STRCASECMP): + Set REPLACE_STRCASECMP if necessary. + (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary. + * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary. + * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary. + * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and + HAVE_DECL_STRDUP if necessary. + (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl, + since gl_FUNC_STRNDUP does that now. + * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary. + Check for decl here... + (gl_PREREQ_STRNLEN): ... not here. + * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary. + * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary. + * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary. + * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if + necessary. + * modules/string: New file. + * modules/memmem (Files): Remove special-purpose include file. + (Depends-on): Add string. + (Include): Include , not the removed file. + * modules/mempcpy: Likewise. + * modules/memrchr: Likewise. + * modules/stpcpy: Likewise. + * modules/stpncpy: Likewise. + * modules/strcase: Likewise. + * modules/strchrnul: Likewise. + * modules/strdup: Likewise. + * modules/strndup: Likewise. + * modules/strnlen: Likewise. + * modules/strpbrk: Likewise. + * modules/strsep: Likewise. + * modules/strstr: Likewise. + * modules/strtok_r: Likewise. + * tests/test-dirname.c: Don't include "strdup.h", since + now suffices. + * tests/test-memmem.c: Don't include "memmem.h", since + now suffices. + +2007-01-25 Bruno Haible + + * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if + *resultp is 0. + + * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation. + * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise. + * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation. + * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise. + + * modules/unistr/u8-to-u16 (Depends-on): Add missing modules. + * modules/unistr/u8-to-u32 (Depends-on): Add missing modules. + * modules/unistr/u16-to-u8 (Depends-on): Add missing modules. + * modules/unistr/u16-to-u32 (Depends-on): Add missing modules. + * modules/unistr/u32-to-u8 (Depends-on): Add missing modules. + * modules/unistr/u32-to-u16 (Depends-on): Add missing modules. + +2007-01-24 Bruno Haible + + Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See + . + * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE. + * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require, + gl_FUNC_FTS_CORE. + (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT. + * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require, + AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK. + * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP. + * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME. + * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require, + gl_FUNC_FCHOWNAT. + * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require, + gl_FUNC_STRFTIME. + * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD. + Reported by Ralf Wildenhues. + +2007-01-24 Bruno Haible + + Drop AC_REQUIRE calls that are redundant with the module dependencies. + * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require + gl_GETADDRINFO. + * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H, + gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR. + * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD. + +2007-01-24 Paul Eggert + + * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361. + Don't use 'exit'; just return from 'main'. + (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once. + + * lib/fnmatch_.h: Readjust white space and comments to match + glibc, to avoid spurious diffs. + +2007-01-23 Paul Eggert + + * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the + 2004-12-01 change by Jakub Jelinek, since this code won't compile + if !LIBC. Problem reported by Bob Proulx. + +2007-01-23 Bruno Haible + + * lib/striconveh.c: Include c-strcaseeq.h. + (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp. + * modules/striconveh (Depends-on): Add c-strcaseeq. + +2007-01-23 Bruno Haible + + * MODULES.html.sh (String handling): Add streq, c-strcaseeq. + + * modules/c-strcaseeq: New file. + * lib/c-strcaseeq.h: New file. + + * modules/streq: New file. + * lib/streq.h: New file. + +2007-01-23 Bruno Haible + + * modules/striconveha-tests: New file. + * tests/test-striconveha.c: New file. + + * lib/striconveha.h: Include . + (mem_iconveha, str_iconveha): Add 'transliterate' argument. + * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h. + (mem_iconveha_notranslit): Renamed from mem_iconveha. + (mem_iconveha): New function. + (str_iconveha_notranslit): Renamed from str_iconveha. + (str_iconveha): New function. + * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup, + c-strcase. + +2007-01-23 Bruno Haible + + * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all + encodings without forgiving before trying any encoding with handler. + (str_iconveha): Try all encodings without forgiving before trying any + encoding with handler. + +2007-01-23 Paul Eggert + + Import the following changes from libc. + + 2005-10-14 Ulrich Drepper + + * lib/fnmatch_loop.c: Adjust for changed secondary hash function. + + 2004-12-01 Jakub Jelinek + + * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after + normal_bracket label. + + 2004-09-01 Jakub Jelinek + + [BZ #361] + * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch + to normal_bracket after fetching the next character. + +2007-01-22 Bruno Haible + + * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets' + argument. + * lib/striconveh.c (iconv_carefully_1): New function. + (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets' + argument. + (str_cd_iconveh): Update. + * lib/striconveha.h (mem_iconveha): Add 'offsets' argument. + * lib/striconveha.c (mem_iconveha): Add 'offsets' argument. + * tests/test-striconveh.c (MAGIC): New macro. + (new_offsets): New function. + (main): Test call with and without offsets. + +2007-01-22 Bruno Haible + + * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P). + * modules/sys_select (Makefile.am): Likewise. + * modules/sys_socket (Makefile.am): Likewise. + * modules/sys_time (Makefile.am): Likewise. + +2007-01-22 Paul Eggert + + * modules/gettimeofday (License): Change from GPL to LGPL, since + gettimeofday is a library function. + +2007-01-22 Yoann Vandoorselaere + + * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32. + +2007-01-21 Bruno Haible + + * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro. + +2007-01-21 Bruno Haible + + * modules/striconveha: New file. + * lib/striconveha.h: New file. + * lib/striconveha.c: New file. + * MODULES.html.sh (Internationalization functions): Add striconveha. + * lib/striconv.c (str_iconv): Optimize the case of an empty input + string. + * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise. + +2007-01-21 Bruno Haible + + * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails. + * lib/striconveh.c (str_iconveh): Likewise. + +2007-01-21 Bruno Haible + + * lib/striconveh.h (mem_iconveh): New declaration. + * lib/striconveh.c (mem_iconveh): New function. + * tests/test-striconveh.c (main): Add tests for mem_iconveh. + +2007-01-21 Bruno Haible + + * lib/xstriconv.h (xmem_cd_iconv): Change specification. + + * lib/striconveh.h (mem_cd_iconveh): Change specification. + * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied + original result buffer. + (str_cd_iconveh): Update. + * tests/test-striconveh.c (main): Update. + + * lib/striconv.h (mem_cd_iconv): Change specification. + * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original + result buffer. + (str_cd_iconv): Update. + * tests/test-striconv.c (main): Update. + +2007-01-21 Bruno Haible + + * gnulib-tool: Fix test whether sed is GNU sed supporting --posix. + +2007-01-20 Jim Meyering + + * lib/userspec.c (parse_with_separator): If a user or group string + starts with "+", skip the corresponding name-to-ID look-up, since + such a look-up must fail: user and group names may not include "+". + +2007-01-19 Paul Eggert + + * lib/poll.c: Include sys/time.h and time.h unconditionally, + since we now assume the sys_time module. + * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or + check for sys/time.h; no longer needed. + * modules/poll (Depends-on): Depend on sys_time. + +2007-01-18 Bruno Haible + + * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for . + * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise. + + * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and + gettimeofday. + + * tests/test-gettimeofday.c: Include . + (dummy): Remove variable. + + * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from + gl_HEADER_SYS_TIME_H. + (gl_HEADER_SYS_TIME_H): New macro. + + * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of + HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME. + * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY, + gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of + HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME. + * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize + GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE + and GETTIMEOFDAY_CLOBBERS_LOCALTIME. + * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT + instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and + GETTIMEOFDAY_CLOBBERS_LOCALTIME. + + * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the + last change; it caused a compilation error when cross-compiling to + Cygwin. + +2007-01-18 Jim Meyering + + Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys". + * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather + than the race-prone "test -d sys || mkdir sys". + (configure.ac): Use AC_PROG_MKDIR_P. + * modules/sys_select: Likewise. + * modules/sys_socket: Likewise. + * modules/sys_time: Likewise. + +2007-01-18 Eric Blake + + * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also + replace gettimeofday. + * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement + name, to avoid infinite recursion. + +2007-01-17 Paul Eggert + + * MODULES.html.sh (Support for systems lacking POSIX:2001): New + module sys_time. + * lib/gethrxtime.c: Include , since we can no longer + assume timespec.h defines struct timeval. + * lib/settime.c: Likewise. + * lib/utimens.c: Likewise. + * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY, + since we now assume the gettimeofday module. + * lib/tempname.c (__gen_tempname): Likewise. + * lib/gettimeofday.h: Remove. + * lib/gettimeofday.c: Include instead of "gettimeofday.h". + Don't include and ; shouldn't be needed. + Include , for 'time()'. + (localtime_buffer_addr): Also use this workaround if + TZSET_CLOBBERS_LOCALTIME. Set to a dummy static variable by default, + to simplify the uses. All uses changed. + (localtime, gmtime, tzset, gettimeofday): Reformat slightly so + that #undef is inside {}, and 'const' follows type name consistently. + (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME. + (gettimeofday): Do not use the maximum possible value for + tv->tv_usec, since that might break usages other than ls.c. + Instead, we'll leave ls.c alone. This undoes today's patch + by Bruno. Add a compile-time warning for 1s-clock resolution; + we've never observed the problem but might as well keep the + canary. + * lib/nanosleep.c: Include timespec.h first, for interface check. + * lib/nanosleep.c: Include unconditionally, since we + now assume the sys_time module. + * lib/tempname.c: Likewise. + * lib/timespec.h: Likewise. + * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer + needed. + * lib/strftime.c: Likewise. + * lib/timespec.h: Likewise. + * lib/posixtm.c: Include posixtm.h first, for interface check. + Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete. + * lib/posixtm.h: Include stdbool.h and time.h, for proper interface. + * lib/strftime.c: Don't include ; shouldn't be needed. + * lib/sys_time_.h: New file. + * lib/timespec.h (struct timespec): Use long int, not long. + * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): + (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY): + Remove obsolescent call to AC_HEADER_TIME. + * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise. + * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise. + * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise. + * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC): + Likewise. + * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise. + * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise. + * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests + into the sys_time module. Check for gettimeofday just once. + Prefix our variables with gl_, not with ac_ or jm_. Tighten test + for gettimeofday signature to just check the signature. Merely + compile it, since linking doesn't test signature. Improve test for + whether gettimeofday.o is actually needed. + (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from + AC_FUNC_GETTIMEOFDAY_CLOBBER. All uses changed. Use + AC_RUN_IFELSE rather than AC_TRY_RUN. If clobbering, set + and define GETTIMEOFDAY_CLOBBERS_LOCALTIME. + (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define + GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's + job. Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job. + * m4/mktime.m4 (AC_FUNC_MKTIME): Just include rather + than worrying about sys/time.h. + * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): + Don't bother worrying about TIME_WITH_SYS_TIME. + * m4/stat-time.m4 (gl_STAT_TIME): Likewise. + * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM. + * m4/sys_time_h.m4: New file. + * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H. + Don't include sys/time.h. Return from main rather than exiting. + Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names; + all uses changed. + * modules/gethrxtime (Depends-on): Add sys_time. + * modules/gettime (Depends-on): Likewise. + * modules/gettimeofday (Depends-on): Likewise. + * modules/nanosleep (Depends-on): Likewise. + * modules/settime (Depends-on): Likewise. + * modules/tempname (Depends-on): Likewise. + * modules/utimens (Depends-on): Likewise. + * modules/gettimeofday (Files): Remove lib/gettimeofday.h. + (Include:) Change back to . + (Maintainer:) Add self. + * modules/sys_time: New file. + * modules/tempname (Depends-on): Add gettimeofday. + * tests/test-gettimeofday.c: Include + rather than gettimeofday.h. + +2007-01-17 Bruno Haible + + * gnulib-tool (func_get_license): Revert last patch. Instead, let + the license default to GPL. + (func_create_testdir): Don't complain if a module is LGPL and its + tests module depends on GPLed modules. + +2007-01-17 Bruno Haible + + * lib/gettimeofday.c (gettimeofday): Add code for the case + HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the + maximum possible value for tv->tv_usec, rather than the minimum one. + +2005-10-08 Martin Lambers +2005-10-08 Paul Eggert +2007-01-16 Bruno Haible + + * modules/gettimeofday (Files): Add lib/gettimeofday.h. + (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add + gl_FUNC_GETTIMEOFDAY. + (Include): Add gettimeofday.h. + * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro. + (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY. + (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define + GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here. + (gl_PREREQ_GETTIMEOFDAY): Check for and _ftime. + * lib/gettimeofday.h: New file. + * lib/gettimeofday.c: Include . + (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define + only if GETTIMEOFDAY_CLOBBERS_LOCALTIME. + (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available; + fall back on time(). + + * tests/test-gettimeofday.c: New file. + * modules/gettimeofday-tests: New file. + +2007-01-16 Eric Blake + + * modules/fnmatch (Depends-on): Depend on wchar. + * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume . + * m4/fnmatch.m4: Likewise. + * modules/mbchar (Makefile.am): Assume . + * m4/mbchar.m4: Likewise. + * modules/mbswidth (Depends-on): Depend on wchar. + * lib/mbswidth.c: Assume . + * m4/mbswidth.m4: Likewise. + * modules/quotearg (Depends-on): Depend on wchar. + * lib/quotearg.c: Assume . + * m4/quotearg.m4: Likewise. + * modules/regex (Depends-on): Depend on wchar. + * lib/regex_internal.h: Assume . + * m4/regex.m4: Likewise. + * modules/stdint (Depends-on): Depend on wchar. + * lib/stdint_.h [!defined WCHAR_MIN]: Assume . + * m4/stdint.m4: Likewise. + * tests/test-stdint.c [HAVE_WINT_T]: Likewise. + * modules/strftime (Depends-on): Depend on wchar. + * lib/strftime.c (DO_MULTIBYTE): Assume . + * modules/strtol (Depends-on): Depend on wchar. + * lib/strtol.c: Assume . + * modules/wcwidth (Depends-on): Depend on wchar. + * lib/wcwidth.h: Assume . + * m4/wcwidth.m4: Likewise. + +2007-01-16 Bruno Haible + + * modules/csharpexec-script: New, created from... + * modules/csharpexec: ... this. + +2007-01-16 Paolo Bonzini + + * modules/javaexec-script: New, created from... + * modules/javaexec: ... this. + +2007-01-16 Yoann Vandoorselaere + + * modules/poll (Dependencies): Add sys_select. + +2007-01-15 Jim Meyering + + * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct- + redefinition bug when using both and headers. + * lib/readutmp.h: Likewise. Reported by Daniel Richard G. in + . + +2007-01-15 Bruno Haible + + * modules/striconveh: New file. + * lib/striconveh.h: New file. + * lib/striconveh.c: New file. + * MODULES.html.sh (Internationalization functions): Add striconveh. + + * modules/striconveh-tests: New file. + * tests/test-striconveh.c: New file. + +2007-01-15 Bruno Haible + + * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is + not from GNU libiconv or GNU libc. + +2007-01-15 Bruno Haible + + * doc/gnulib-intro.texi (Copyright): Explain the different license + terms for module descriptions, autoconf macros, tests, documentation. + +2007-01-14 Bruno Haible + + * modules/striconv-tests: New file. + * tests/test-striconv.c: New file. + +2007-01-14 Bruno Haible + + * modules/iconv-tests: New file. + * tests/test-iconv.c: New file. + +2007-01-14 Bruno Haible + + * gnulib-tool (func_get_license): For test modules, use the license of + the main module. + +2007-01-14 Bruno Haible + + * modules/iconv (Include): Clarify that can only be included + if iconv is found to exist. + +2007-01-14 Bruno Haible + + * modules/c-ctype-tests: New file. + * tests/test-c-ctype.c: New file. + +2007-01-14 Bruno Haible + + * modules/binary-io-tests: New file. + * tests/test-binary-io.sh: New file. + * tests/test-binary-io.c: New file. + +2007-01-14 Bruno Haible + + * modules/array-oset-tests: New file. + * tests/test-array_oset.c: New file. + +2007-01-14 Bruno Haible + + * modules/array-list-tests: New file. + * tests/test-array_list.c: New file. + +2007-01-14 Bruno Haible + + * gnulib-tool (func_create_testdir): Don't unnecessarily run configure + and make. + Reported by Simon Josefsson in + + +2007-01-14 Bruno Haible + + * modules/allocsa-tests: New file. + * tests/test-allocsa.c: New file. + +2007-01-14 Bruno Haible + + * modules/fchdir (Depends-on): Add absolute-header. + * modules/unistd (Depends-on): Likewise. + +2006-12-30 Bruno Haible + + * modules/fchdir: New file. + * modules/unistd (Files): Add lib/unistd_.h. + (Makefile.am): Generate unistd.h from unistd_.h. + * lib/fchdir.c: New file. + * lib/dirent_.h: New file. + * lib/unistd_.h: New file. + * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement. + * m4/fchdir.m4: New file. + * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro. + (gl_HEADER_UNISTD): Invoke it. + * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup + function. + * lib/backupfile.c (opendir, closedir): Undefine. + * lib/chown.c (open, close): Undefine. + * lib/clean-temp.c (open, close): Undefine. + * lib/copy-file.c (open, close): Undefine. + * lib/execute.c (open, close): Undefine. + * lib/fsusage.c (open, close): Undefine. + * lib/gc-gnulib.c (open, close): Undefine. + * lib/getcwd.c (opendir, closedir): Undefine. + * lib/glob.c (opendir, closedir): Undefine. + * lib/javacomp.c (open, close): Undefine. + * lib/mountlist.c (open, close, opendir, closedir): Undefine. + * lib/openat-proc.c (open, close): Undefine. + * lib/pagealign_alloc.c (open, close): Undefine. + * lib/pipe.c (open, close): Undefine. + * lib/progreloc.c (open, close): Undefine. + * lib/savedir.c (opendir, closedir): Undefine. + * lib/utime.c (open, close): Undefine. + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir. + +2007-01-10 Bruno Haible + + * lib/striconv.c (mem_cd_iconv): Align the temporary buffer. + +2007-01-12 Eric Blake + + Provide a robust . Further simplifications are now + possible in other modules, but not included here. + * modules/wchar: New module. + * m4/wchar.m4: New file. + * lib/wchar_.h: Likewise. + * modules/mbchar (Depends-on): Depend on wchar, as the first use + of the new module. + * MODULES.html.sh (Extended multibyte and wide character utilities): + New section. + +2007-01-12 Paul Eggert + + * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define + to a reasonable default for memory allocation. + (xreadlink): Don't allocate a huge buffer, to work around a buggy + file system that reports garbage st_size values for symlinks. + Problem reported by Liyang Hu. + +2007-01-11 Simon Josefsson + + * gnulib-tool (func_all_modules): Exclude all .* files (e.g., + Emacs .#* auto-save files). + +2007-01-11 Bruno Haible + + * gnulib-tool (func_all_modules): Exclude all files inside the CVS + directory. + +2007-01-10 Paul Eggert + + Use @...@ consistently in lib/wctype_.h. + * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely + on it being set to 1 or 0. + * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and + go back to AC_SUBSTing it. + * modules/wctype (Makefile.am): Undo previous change. + +2007-01-10 Eric Blake + + * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE. + * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T). + * modules/wctype (Makefile.am): Likewise. + Reported by Chris McGuire. + +2007-01-10 Jim Meyering + + fts.c: a small readability/maintainability improvement + * lib/fts.c (fts_read): Make this code slightly more readable and + maintainable by hoisting the "sp->fts_cur = p" assignments to + immediately follow the statements that set P. Derived from + the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089. + +2007-01-10 Eric Blake + + * lib/wctype_.h [HAVE_WINT_T]: Include before + , to work around BSDI bug in BSD/OS 4.0.1. + * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise. + * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise. + Reported by Chris McGuire. + +2007-01-09 Ralf Wildenhues + + * gnulib-tool (func_all_modules): Use POSIX conforming escaping + in sed script. + +2007-01-09 Bruno Haible + + * MODULES.html.sh: Accept options --cvs-urls, --git-urls. + (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New + variables. + (func_module): Use them. + +2007-01-09 Bruno Haible + + * modules/unistr/base: New file. + * lib/unistr.h: New file. + + * modules/unistr/u8-to-u16: New file. + * lib/unistr/u8-to-u16.c: New file. + + * modules/unistr/u8-to-u32: New file. + * lib/unistr/u8-to-u32.c: New file. + + * modules/unistr/u16-to-u8: New file. + * lib/unistr/u16-to-u8.c: New file. + + * modules/unistr/u16-to-u32: New file. + * lib/unistr/u16-to-u32.c: New file. + + * modules/unistr/u32-to-u8: New file. + * lib/unistr/u32-to-u8.c: New file. + + * modules/unistr/u32-to-u16: New file. + * lib/unistr/u32-to-u16.c: New file. + + * modules/unistr/u8-check: New file. + * modules/unistr/u16-check: New file. + * modules/unistr/u32-check: New file. + * lib/unistr/u8-check.c: New file. + * lib/unistr/u16-check.c: New file. + * lib/unistr/u32-check.c: New file. + + * modules/unistr/u8-chr: New file. + * modules/unistr/u16-chr: New file. + * modules/unistr/u32-chr: New file. + * lib/unistr/u8-chr.c: New file. + * lib/unistr/u16-chr.c: New file. + * lib/unistr/u32-chr.c: New file. + + * modules/unistr/u8-cmp: New file. + * modules/unistr/u16-cmp: New file. + * modules/unistr/u32-cmp: New file. + * lib/unistr/u8-cmp.c: New file. + * lib/unistr/u16-cmp.c: New file. + * lib/unistr/u32-cmp.c: New file. + + * modules/unistr/u8-cpy: New file. + * modules/unistr/u16-cpy: New file. + * modules/unistr/u32-cpy: New file. + * lib/unistr/u8-cpy.c: New file. + * lib/unistr/u16-cpy.c: New file. + * lib/unistr/u32-cpy.c: New file. + * lib/unistr/u-cpy.h: New file. + + * modules/unistr/u8-cpy-alloc: New file. + * modules/unistr/u16-cpy-alloc: New file. + * modules/unistr/u32-cpy-alloc: New file. + * lib/unistr/u8-cpy-alloc.c: New file. + * lib/unistr/u16-cpy-alloc.c: New file. + * lib/unistr/u32-cpy-alloc.c: New file. + * lib/unistr/u-cpy-alloc.h: New file. + + * modules/unistr/u8-endswith: New file. + * modules/unistr/u16-endswith: New file. + * modules/unistr/u32-endswith: New file. + * lib/unistr/u8-endswith.c: New file. + * lib/unistr/u16-endswith.c: New file. + * lib/unistr/u32-endswith.c: New file. + * lib/unistr/u-endswith.h: New file. + + * modules/unistr/u8-mblen: New file. + * modules/unistr/u16-mblen: New file. + * modules/unistr/u32-mblen: New file. + * lib/unistr/u8-mblen.c: New file. + * lib/unistr/u16-mblen.c: New file. + * lib/unistr/u32-mblen.c: New file. + + * modules/unistr/u8-mbtouc: New file. + * modules/unistr/u16-mbtouc: New file. + * modules/unistr/u32-mbtouc: New file. + * lib/unistr/u8-mbtouc.c: New file. + * lib/unistr/u16-mbtouc.c: New file. + * lib/unistr/u32-mbtouc.c: New file. + + * modules/unistr/u8-mbtouc-safe: New file. + * modules/unistr/u16-mbtouc-safe: New file. + * modules/unistr/u32-mbtouc-safe: New file. + * lib/unistr/u8-mbtouc-safe.c: New file. + * lib/unistr/u16-mbtouc-safe.c: New file. + * lib/unistr/u32-mbtouc-safe.c: New file. + + * modules/unistr/u8-move: New file. + * modules/unistr/u16-move: New file. + * modules/unistr/u32-move: New file. + * lib/unistr/u8-move.c: New file. + * lib/unistr/u16-move.c: New file. + * lib/unistr/u32-move.c: New file. + * lib/unistr/u-move.h: New file. + + * modules/unistr/u8-next: New file. + * modules/unistr/u16-next: New file. + * modules/unistr/u32-next: New file. + * lib/unistr/u8-next.c: New file. + * lib/unistr/u16-next.c: New file. + * lib/unistr/u32-next.c: New file. + + * modules/unistr/u8-prev: New file. + * modules/unistr/u16-prev: New file. + * modules/unistr/u32-prev: New file. + * lib/unistr/u8-prev.c: New file. + * lib/unistr/u16-prev.c: New file. + * lib/unistr/u32-prev.c: New file. + + * modules/unistr/u8-set: New file. + * modules/unistr/u16-set: New file. + * modules/unistr/u32-set: New file. + * lib/unistr/u8-set.c: New file. + * lib/unistr/u16-set.c: New file. + * lib/unistr/u32-set.c: New file. + * lib/unistr/u-set.h: New file. + + * modules/unistr/u8-startswith: New file. + * modules/unistr/u16-startswith: New file. + * modules/unistr/u32-startswith: New file. + * lib/unistr/u8-startswith.c: New file. + * lib/unistr/u16-startswith.c: New file. + * lib/unistr/u32-startswith.c: New file. + * lib/unistr/u-startswith.h: New file. + + * modules/unistr/u8-stpcpy: New file. + * modules/unistr/u16-stpcpy: New file. + * modules/unistr/u32-stpcpy: New file. + * lib/unistr/u8-stpcpy.c: New file. + * lib/unistr/u16-stpcpy.c: New file. + * lib/unistr/u32-stpcpy.c: New file. + * lib/unistr/u-stpcpy.h: New file. + + * modules/unistr/u8-stpncpy: New file. + * modules/unistr/u16-stpncpy: New file. + * modules/unistr/u32-stpncpy: New file. + * lib/unistr/u8-stpncpy.c: New file. + * lib/unistr/u16-stpncpy.c: New file. + * lib/unistr/u32-stpncpy.c: New file. + * lib/unistr/u-stpncpy.h: New file. + + * modules/unistr/u8-strcat: New file. + * modules/unistr/u16-strcat: New file. + * modules/unistr/u32-strcat: New file. + * lib/unistr/u8-strcat.c: New file. + * lib/unistr/u16-strcat.c: New file. + * lib/unistr/u32-strcat.c: New file. + * lib/unistr/u-strcat.h: New file. + + * modules/unistr/u8-strchr: New file. + * modules/unistr/u16-strchr: New file. + * modules/unistr/u32-strchr: New file. + * lib/unistr/u8-strchr.c: New file. + * lib/unistr/u16-strchr.c: New file. + * lib/unistr/u32-strchr.c: New file. + + * modules/unistr/u8-strcmp: New file. + * modules/unistr/u16-strcmp: New file. + * modules/unistr/u32-strcmp: New file. + * lib/unistr/u8-strcmp.c: New file. + * lib/unistr/u16-strcmp.c: New file. + * lib/unistr/u32-strcmp.c: New file. + + * modules/unistr/u8-strcpy: New file. + * modules/unistr/u16-strcpy: New file. + * modules/unistr/u32-strcpy: New file. + * lib/unistr/u8-strcpy.c: New file. + * lib/unistr/u16-strcpy.c: New file. + * lib/unistr/u32-strcpy.c: New file. + * lib/unistr/u-strcpy.h: New file. + + * modules/unistr/u8-strcspn: New file. + * modules/unistr/u16-strcspn: New file. + * modules/unistr/u32-strcspn: New file. + * lib/unistr/u8-strcspn.c: New file. + * lib/unistr/u16-strcspn.c: New file. + * lib/unistr/u32-strcspn.c: New file. + * lib/unistr/u-strcspn.h: New file. + + * modules/unistr/u8-strdup: New file. + * modules/unistr/u16-strdup: New file. + * modules/unistr/u32-strdup: New file. + * lib/unistr/u8-strdup.c: New file. + * lib/unistr/u16-strdup.c: New file. + * lib/unistr/u32-strdup.c: New file. + * lib/unistr/u-strdup.h: New file. + + * modules/unistr/u8-strlen: New file. + * modules/unistr/u16-strlen: New file. + * modules/unistr/u32-strlen: New file. + * lib/unistr/u8-strlen.c: New file. + * lib/unistr/u16-strlen.c: New file. + * lib/unistr/u32-strlen.c: New file. + * lib/unistr/u-strlen.h: New file. + + * modules/unistr/u8-strmblen: New file. + * modules/unistr/u16-strmblen: New file. + * modules/unistr/u32-strmblen: New file. + * lib/unistr/u8-strmblen.c: New file. + * lib/unistr/u16-strmblen.c: New file. + * lib/unistr/u32-strmblen.c: New file. + + * modules/unistr/u8-strmbtouc: New file. + * modules/unistr/u16-strmbtouc: New file. + * modules/unistr/u32-strmbtouc: New file. + * lib/unistr/u8-strmbtouc.c: New file. + * lib/unistr/u16-strmbtouc.c: New file. + * lib/unistr/u32-strmbtouc.c: New file. + + * modules/unistr/u8-strncat: New file. + * modules/unistr/u16-strncat: New file. + * modules/unistr/u32-strncat: New file. + * lib/unistr/u8-strncat.c: New file. + * lib/unistr/u16-strncat.c: New file. + * lib/unistr/u32-strncat.c: New file. + * lib/unistr/u-strncat.h: New file. + + * modules/unistr/u8-strncmp: New file. + * modules/unistr/u16-strncmp: New file. + * modules/unistr/u32-strncmp: New file. + * lib/unistr/u8-strncmp.c: New file. + * lib/unistr/u16-strncmp.c: New file. + * lib/unistr/u32-strncmp.c: New file. + + * modules/unistr/u8-strncpy: New file. + * modules/unistr/u16-strncpy: New file. + * modules/unistr/u32-strncpy: New file. + * lib/unistr/u8-strncpy.c: New file. + * lib/unistr/u16-strncpy.c: New file. + * lib/unistr/u32-strncpy.c: New file. + * lib/unistr/u-strncpy.h: New file. + + * modules/unistr/u8-strnlen: New file. + * modules/unistr/u16-strnlen: New file. + * modules/unistr/u32-strnlen: New file. + * lib/unistr/u8-strnlen.c: New file. + * lib/unistr/u16-strnlen.c: New file. + * lib/unistr/u32-strnlen.c: New file. + * lib/unistr/u-strnlen.h: New file. + + * modules/unistr/u8-strpbrk: New file. + * modules/unistr/u16-strpbrk: New file. + * modules/unistr/u32-strpbrk: New file. + * lib/unistr/u8-strpbrk.c: New file. + * lib/unistr/u16-strpbrk.c: New file. + * lib/unistr/u32-strpbrk.c: New file. + * lib/unistr/u-strpbrk.h: New file. + + * modules/unistr/u8-strrchr: New file. + * modules/unistr/u16-strrchr: New file. + * modules/unistr/u32-strrchr: New file. + * lib/unistr/u8-strrchr.c: New file. + * lib/unistr/u16-strrchr.c: New file. + * lib/unistr/u32-strrchr.c: New file. + + * modules/unistr/u8-strspn: New file. + * modules/unistr/u16-strspn: New file. + * modules/unistr/u32-strspn: New file. + * lib/unistr/u8-strspn.c: New file. + * lib/unistr/u16-strspn.c: New file. + * lib/unistr/u32-strspn.c: New file. + * lib/unistr/u-strspn.h: New file. + + * modules/unistr/u8-strstr: New file. + * modules/unistr/u16-strstr: New file. + * modules/unistr/u32-strstr: New file. + * lib/unistr/u8-strstr.c: New file. + * lib/unistr/u16-strstr.c: New file. + * lib/unistr/u32-strstr.c: New file. + * lib/unistr/u-strstr.h: New file. + + * modules/unistr/u8-strtok: New file. + * modules/unistr/u16-strtok: New file. + * modules/unistr/u32-strtok: New file. + * lib/unistr/u8-strtok.c: New file. + * lib/unistr/u16-strtok.c: New file. + * lib/unistr/u32-strtok.c: New file. + * lib/unistr/u-strtok.h: New file. + + * modules/unistr/u8-uctomb: New file. + * modules/unistr/u16-uctomb: New file. + * modules/unistr/u32-uctomb: New file. + * lib/unistr/u8-uctomb.c: New file. + * lib/unistr/u16-uctomb.c: New file. + * lib/unistr/u32-uctomb.c: New file. + + * MODULES.html.sh (Unicode string functions): Add the new modules. + +2007-01-08 Bruno Haible + + * gnulib-tool (func_all_modules): Use find, not ls, to traverse the + modules directory. Filter out CVS, ChangeLog, COPYING, README also from + subdirectories. + +2007-01-08 Karl Berry + + * doc/error.texi: mention that main() fns must set program_name + when progname is used. + +2007-01-08 Paul Eggert + + * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if + WCTYPE_H is empty, for the benefit of builds from non-distclean + directories. Problem reported by Eric Blake in + . + +2007-01-08 Bruno Haible + + * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove + PROVIDE_CANONICALIZE_FILENAME_MODE macro definition. + * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of + PROVIDE_CANONICALIZE_FILENAME_MODE. + * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR. + +2007-01-08 Bruno Haible + + * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition. + * lib/fts_.h (_LGPL_PACKAGE): Remove macro. + Use !GNULIB_FTS instead of _LGPL_PACKAGE. + * lib/fts.c: Likewise. + * modules/fts (configure.ac): Use gl_MODULE_INDICATOR. + +2006-12-25 Bruno Haible + + * modules/utf8-ucs4-safe: New file. + * lib/utf8-ucs4-safe.h: New file. + * lib/unistr/utf8-ucs4-safe.c: New file. + + * modules/utf16-ucs4-safe: New file. + * lib/utf16-ucs4-safe.h: New file. + * lib/unistr/utf16-ucs4-safe.c: New file. + + * MODULES.html.sh (Unicode string functions): Add the new modules. + +2007-01-08 Bruno Haible + + * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c. + (Depends-on): Add unitypes. + * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h. + (u8_mbtouc_aux): Move out to separate file. + (u8_mbtouc): Use ucs4_t, uint8_t types. + * lib/unistr/utf8-ucs4.c: New file. + + * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c. + (Depends-on): Add unitypes. + * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h. + (u16_mbtouc_aux): Move out to separate file. + (u16_mbtouc): Use ucs4_t, uint16_t types. + * lib/unistr/utf16-ucs4.c: New file. + + * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c. + (Depends-on): Add unitypes. + * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h. + (u8_uctomb_aux): Move out to separate file. + (u8_uctomb): Use ucs4_t, uint8_t types. + * lib/unistr/ucs4-utf8.c: New file. + + * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c. + (Depends-on): Add unitypes. + * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h. + (u16_uctomb_aux): Move out to separate file. + (u16_uctomb): Use ucs4_t, uint16_t types. + * lib/unistr/ucs4-utf16.c: New file. + +2006-12-25 Bruno Haible + + * modules/unitypes: New file. + * lib/unitypes.h: New file. + * MODULES.html.sh (func_all_modules): New section "Unicode string + functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to + this section. Add unitypes. + +2007-01-08 Bruno Haible + + Avoid variable names that conflict with those from libtool. + * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY, + AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext, + shlibext to acl_shlibext, libname_spec to acl_libname_spec, + library_names_spec to acl_library_names_spec, hardcode_* to + acl_hardcode_*. + Reported by Ralf Wildenhues. + +2007-01-08 Bruno Haible + + * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro + definition. + * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro + definition. + * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition. + * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro + definition. + * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro + definition. + * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition. + * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition. + * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition. + * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro + definition. + * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro + definition. + * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition. + * lib/gc-gnulib.c: Use GNULIB_GC_ instead of + GC_USE_. + * lib/gc-libgcrypt.c: Likewise. + * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR. + * modules/gc-arctwo (configure.ac): Likewise. + * modules/gc-des (configure.ac): Likewise. + * modules/gc-hmac-md5 (configure.ac): Likewise. + * modules/gc-hmac-sha1 (configure.ac): Likewise. + * modules/gc-md2 (configure.ac): Likewise. + * modules/gc-md4 (configure.ac): Likewise. + * modules/gc-md5 (configure.ac): Likewise. + * modules/gc-random (configure.ac): Likewise. + * modules/gc-rijndael (configure.ac): Likewise. + * modules/gc-sha1 (configure.ac): Likewise. + +2007-01-08 Bruno Haible + + * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM + macro definition. + * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro + definition. + * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro + definition. + * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR. + * modules/fcntl-safer (configure.ac): Likewise. + * modules/fopen-safer (configure.ac): Likewise. + * modules/fwriteerror (configure.ac): Likewise. Remove explicit + GNULIB_FWRITEERROR macro definition. + +2007-01-08 Bruno Haible + + * m4/gnulib-common.m4: New file. + * gnulib-tool (func_get_autoconf_snippet): Undo last change. + (func_get_filelist): Add m4/gnulib-common.m4. + +2007-01-08 Bruno Haible + + * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting + command. + +2007-01-08 Jim Meyering + + Use a more robust test for a "can't happen" condition. + * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it + narrowed the st_size value. Presuming the "can't happen" condition + is true, that narrowing could conceivably convert an invalid st_size + value into a valid one. Instead, use a change based on Matthew + Woehlke's original patch. + + Slight readability improvement: use an assert-like macro + in place of literal "abort ()" uses. + * lib/fts.c (fts_assert): Define. + (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check): + Use this macro instead of a bare 'abort'. + +2007-01-05 Paul Eggert + + Don't worry about using IRIX 5.3's wctype.h broken definitions; + simply work around them. + * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG. + (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower): + (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before declaring. + Don't bother to define as macros, since the standard doesn't require it. + * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no + longer worry about IRIX 5.3. + (HAVE_WCTYPE_CTMP_BUG): Remove. + 2007-01-04 Paul Eggert + * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t, + not wint_t. Also, include , to fix another IRIX bug. + * m4/wctype.m4 (gl_WCTYPE_H): Likewise. + Problems reported by Georg Schwarz for IRIX 5.3. + * gnulib-tool (autoconf_minversion): Take the maximum version number found, not the minimum. Problem reported by James Youngman. @@ -37,6 +2327,11 @@ 2007-01-01 Bruno Haible + * gnulib-tool (func_emit_copyright_notice): Bump year. + (func_get_autoconf_snippet): Emit a GNULIB_ macro. + +2007-01-01 Bruno Haible + Improve support for OpenBSD. * build-aux/config.rpath (libname_spec): Export. (library_names_spec): New variable. Export. @@ -10070,7 +12365,7 @@ * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit declaration macro definitions from generated gnulib.m4. -2005-08-30 "Oskar Liljeblad" +2005-08-30 Oskar Liljeblad * lib/iconvme.h: Add prototype for iconv_alloc. @@ -10104,7 +12399,7 @@ * modules/byteswap (Makefile.am): Fix rule to not assume GNU make. -2005-08-29 "Oskar Liljeblad" +2005-08-29 Oskar Liljeblad * lib/iconvme.c: Split iconv_string into iconv_alloc.