X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=ChangeLog;h=058132f6985310d3bbef3faa7f468f88c695180d;hb=dea6f7089df0538e8bc7971dfbdd84e523a79d2a;hp=dc7195b28e808c44032795ddc6eb6c234101fb72;hpb=9d7a0ecef081c6ff4233d7bd5fd4c38ab3939d52;p=gnulib.git diff --git a/ChangeLog b/ChangeLog index dc7195b28..058132f69 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,532 @@ +2007-02-14 Paul Eggert + + 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 locale_charset. + * 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