* build-aux/announce-gen: Also check for lzma-compressed files.
[gnulib.git] / ChangeLog
index 5d9655b..42b1e16 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,338 @@
+2008-01-12  Jim Meyering  <meyering@redhat.com>
+
+       * build-aux/announce-gen: Also check for lzma-compressed files.
+
+2008-01-11  Bruno Haible  <bruno@clisp.org>
+
+       * tests/test-memmem.c (main): Increase maximum allowed time.
+       * tests/test-strstr.c (main): Likewise.
+
+2008-01-11  Bruno Haible  <bruno@clisp.org>
+
+       * doc/functions/memmem.texi: Add more precisions about platforms.
+       * doc/functions/strstr.texi: Likewise.
+
+2008-01-10  Eric Blake  <ebb9@byu.net>
+
+       * m4/strstr.m4: Delete cruft from copy-n-paste.
+       Reported by Bruno Haible.
+
+2008-01-10  Bruno Haible  <bruno@clisp.org>
+
+       Make c-strstr rely on strstr.
+       * lib/c-strstr.c: Don't include str-kmp.h.
+       (c_strstr): Define in terms of strstr.
+       * modules/c-strstr (Files): Remove lib/str-kmp.h.
+       (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
+
+2008-01-10  Bruno Haible  <bruno@clisp.org>
+
+       * doc/gnulib.texi (String Functions in C Locale): New section.
+       * doc/c-ctype.texi: New file.
+       * doc/c-strcase.texi: New file.
+       * doc/c-strcaseeq.texi: New file.
+       * doc/c-strcasestr.texi: New file.
+       * doc/c-strstr.texi: New file.
+       * doc/c-strtod.texi: New file.
+       * doc/c-strtold.texi: New file.
+
+2008-01-10  Eric Blake  <ebb9@byu.net>
+
+       * lib/relocatable.h: Fix a comment.
+
+2008-01-10  Eric Blake  <ebb9@byu.net>
+
+       Share two-way algorithm.
+       * lib/str-two-way.h: New file, merged from...
+       * lib/memmem.c: ...here...
+       * lib/strstr.c: ...and here.
+       * modules/memmem (Files): Use it.
+       * modules/strstr (Files): Likewise.
+
+       Avoid quadratic strstr implementations.
+       * lib/strstr.c: New file.
+       * m4/strstr.m4: Likewise.
+       * modules/strstr: Likewise.
+       * modules/strstr-tests: Likewise.
+       * tests/test-strstr.c: Likewise.
+       * lib/string.in.h (rpl_strstr): Declare.
+       (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
+       * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
+       * modules/string (Makefile.am): Likewise.
+       * MODULES.html.sh (string handling): Mention new module.
+       * doc/functions/strstr.texi (strstr): Document the bug.
+
+2008-01-10  Bruno Haible  <bruno@clisp.org>
+
+       * lib/relocatable.h (relocate): State whether result is freshly
+       allocated or not.
+       * lib/relocatable.c (relocate): Return a freshly allocated string
+       instead of a pointer to a privately held string.
+       Reported by Sylvain Beucler <beuc@gnu.org>.
+
+2008-01-10  Colin Watson  <cjwatson@debian.org>
+
+       * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
+       s/S_ISNLK/S_ISLNK/.
+
+2008-01-09  Bruno Haible  <bruno@clisp.org>
+
+       * doc/functions/memmem.texi: Use the same structure as snprintf.texi
+       and other files.
+       * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
+       if it's only a guess.
+       * modules/memmem: Simplify by depending on memmem-simple.
+
+2008-01-09  Bruno Haible  <bruno@clisp.org>
+
+       Work around OpenBSD 4.0 tdelete() bug.
+       * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
+       * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
+       macros and don't redefine the enum values.
+       * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
+       * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
+       * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
+
+2008-01-09  Bruno Haible  <bruno@clisp.org>
+
+       * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
+       (main): Don't perform the tests if setlocale did not install a UTF-8
+       locale. Needed on OpenBSD 4.0.
+       * modules/wcwidth-tests (Depends-on): Add localcharset.
+
+2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
+       See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
+       * NEWS: announce this.
+       * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
+
+2008-01-09  Simon Josefsson  <simon@josefsson.org>
+       and Eric Blake  <ebb9@byu.net>
+
+       Add memmem-simple module.
+       * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
+       (gl_FUNC_MEMMEM): Separate performance from presence checks.
+       * modules/memmem-simple: New file.
+       * modules/memmem (Description): Tweak.
+       * MODULES.html.sh (string handling): Mention new module.
+       * doc/functions/memmem.texi (memmem): Distinguish which flaws are
+       addressed by memmem-simple.
+       * NEWS: Document the difference.
+
+2008-01-09  Eric Blake  <ebb9@byu.net>
+
+       Give gcc some memmem optimization hints.
+       * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
+       (strcasestr): Declare as pure.
+       * modules/memmem (Maintainer): Claim my implementation.
+
+2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       Support AIX 6.1 and higher.
+       * build-aux/config.libpath: Likewise.
+       * build-aux/config.rpath: Likewise.
+
+2008-01-08  Jim Meyering  <meyering@redhat.com>
+           Bruno Haible  <bruno@clisp.org>
+
+       * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
+       on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
+       Reported by Peter Fales in
+       <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
+
+2008-01-08  Bruno Haible  <bruno@clisp.org>
+
+       * modules/unictype/category-of (Depends-on): Add
+       unictype/category-none.
+       * modules/unictype/category-and-tests (Depends-on): Add
+       unictype/category-{L,N,Lu,Nd}.
+       * modules/unictype/category-and-not-tests (Depends-on): Likewise.
+       * modules/unictype/category-or-tests (Depends-on): Add
+       unictype/category-{L,N}.
+       * modules/unictype/category-name-tests (Depends-on): Add
+       unictype/category-{Z,Nl}.
+       Reported by Simon Josefsson.
+
+2008-01-08  Bruno Haible  <bruno@clisp.org>
+
+       * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
+       convention better.
+       * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
+       * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
+       Reported by Peter Miller <millerp@canb.auug.org.au>.
+
+2008-01-08  Eric Blake  <ebb9@byu.net>
+
+       Rewrite memmem to guarantee linear complexity without malloc.
+       * lib/memmem.c (memmem): Use Two-Way rather than
+       Knuth-Morris-Pratt, to allow O(1) space usage.
+       (critical_factorization, two_way_short_needle)
+       (two_way_long_needle): New functions.
+       (knuth_morris_pratt): Delete.
+       * modules/memmem (Depends-on): No longer need malloca or stdbool.
+       Add stdint.
+       * tests/test-memmem.c (main): Add tests for periodic needle and
+       sublinear performance.
+       * doc/functions/memmem.texi (memmem): Document other deficiencies
+       in cygwin and older glibc.
+
+2008-01-08  Bruno Haible  <bruno@clisp.org>
+
+       * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
+       augmentation.
+
+2008-01-08  Mike Frysinger  <vapier@gentoo.org>
+
+       Add a configure time option: --disable-acl.
+       * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
+       AC_ARG_ENABLE(acl).
+
+2008-01-06  Simon Josefsson  <simon@josefsson.org>
+
+       * tests/test-localename.c: Don't include obsolete "setenv.h".
+
+       * modules/localename-tests (Depends-on): Need unsetenv.
+
+2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * DEPENDENCIES: Require Texinfo version 4.6 or newer.
+
+2008-01-06  Colin Watson  <cjwatson@debian.org>
+
+       * users.txt: Add man-db.
+
+2008-01-07  Bruno Haible  <bruno@clisp.org>
+
+       * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
+       previous section name.
+
+2008-01-07  Bruno Haible  <bruno@clisp.org>
+
+       * lib/progname.c (set_program_name): Don't strip off a leading
+       "lt-" prefix outside a .libs directory.
+       Suggested by Paul Eggert.
+
+2008-01-01  Sylvain Beucler  <beuc@gnu.org>
+           Bruno Haible  <bruno@clisp.org>
+
+       Improve memory cleanup in 'relocatable' module.
+       * lib/relocatable.h (compute_curr_prefix): Change return type to
+       'char *'.
+       * lib/relocatable.c (compute_curr_prefix): Change return type to
+       'char *'. Free curr_installdir after use.
+       (relocate): Free curr_prefix_better after use.
+       * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
+
+2008-01-01  Bruno Haible  <bruno@clisp.org>
+
+       * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
+       failure on older glibc systems.
+       Reported by Peter Fales <psfales@alcatel-lucent.com>.
+
+2008-01-05  Eric Blake  <ebb9@byu.net>
+
+       Avoid quadratic system memmem.
+       * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
+       Reported by Ralf Wildenhues.
+
+       Fix memmem test for mingw.
+       * modules/memmem-tests (configure.ac): Check for alarm.
+       * tests/test-memmem.c (main): Avoid alarm on platforms that lack
+       it.
+       * doc/functions/memmem.texi: New file.
+       * doc/gnulib.texi (Function Substitutes): Add memmem.
+       Reported by Bruno Haible.
+
+2008-01-04  Bruno Haible  <bruno@clisp.org>
+
+       * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
+       Require gl_HEADER_STRINGS_H_DEFAULTS, not
+       gl_HEADER_STRING_H_DEFAULTS.
+
+2008-01-04  Eric Blake  <ebb9@byu.net>
+
+       Shorten duration of memmem test.
+       * tests/test-memmem.c (main): Use alarm to declare failure if test
+       is taking too long.
+       Reported by Ralf Wildenhues.
+
+2007-12-21  Simon Josefsson  <simon@josefsson.org>
+
+       * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
+       string, needed by strerror.
+
+2008-01-03  Colin Watson  <cjwatson@debian.org>
+           Bruno Haible  <bruno@clisp.org>
+
+       * doc/gnulib-tool.texi (Localization): New section.
+
+2008-01-02  Bruno Haible  <bruno@clisp.org>
+
+       * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
+       variables to 'unsigned char *' type.
+       Reported by Paul Eggert.
+
+2008-01-02  Jim Meyering  <jim@meyering.net>
+
+       * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
+
+2007-12-31  Jim Meyering  <jim@meyering.net>
+
+       Avoid use of private FTS type name.
+       * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
+
+2007-12-30  Karl Berry  <karl@gnu.org>
+
+       * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
+       work around defect in Texinfo and/or the standalone Info browser.
+
+2007-12-30  Bruno Haible  <bruno@clisp.org>
+
+       Unify 5 copies of the KMP code.
+       * lib/str-kmp.h: New file.
+       * lib/c-strcasestr.c: Include str-kmp.h.
+       (knuth_morris_pratt): Remove function.
+       (c_strcasestr): Update.
+       * lib/c-strstr.c: Include str-kmp.h.
+       (knuth_morris_pratt): Remove function.
+       (c_strcasestr): Update.
+       * lib/mbscasestr.c: Include str-kmp.h.
+       (knuth_morris_pratt_unibyte): Remove function.
+       * lib/mbsstr.c: Include str-kmp.h.
+       (knuth_morris_pratt_unibyte): Remove function.
+       * lib/strcasestr.c: Include str-kmp.h.
+       (knuth_morris_pratt): Remove function.
+       (strcasestr): Update.
+       * modules/c-strcasestr (Files): Add lib/str-kmp.h.
+       * modules/c-strstr (Files): Likewise.
+       * modules/mbscasestr (Files): Likewise.
+       * modules/mbsstr (Files): Likewise.
+       * modules/strcasestr (Files): Likewise.
+       Suggested by Paul Eggert.
+
+2007-12-30  Bruno Haible  <bruno@clisp.org>
+
+       * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
+       defined.
+
+2007-12-30  Bruno Haible  <bruno@clisp.org>
+
+       * lib/xmalloca.h: Include xalloc.h.
+       (xnmalloca): New macro.
+
+2007-12-30  Bruno Haible  <bruno@clisp.org>
+
+       * lib/malloca.h (nmalloca): New macro.
+       * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
+       * lib/c-strstr.c (knuth_morris_pratt): Likewise.
+       * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
+       knuth_morris_pratt_multibyte): Likewise.
+       * lib/mbsstr.c (knuth_morris_pratt_unibyte,
+       knuth_morris_pratt_multibyte): Likewise.
+       * lib/memmem.c (knuth_morris_pratt): Likewise.
+       * lib/strcasestr.c (knuth_morris_pratt): Likewise.
+
 2007-12-25  Bruno Haible  <bruno@clisp.org>
 
        Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
 2007-12-25  Bruno Haible  <bruno@clisp.org>
 
        Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
        * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
        when multiplying M by sizeof (size_t).
 
        * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
        when multiplying M by sizeof (size_t).
 
-2007-12-10  Martin Lambers <marlam@marlam.de>
+2007-12-10  Martin Lambers  <marlam@marlam.de>
 
        Override getpagesize on mingw.
        * lib/getpagesize.c: New file.
 
        Override getpagesize on mingw.
        * lib/getpagesize.c: New file.
        Suggested by Ben Pfaff <blp@cs.stanford.edu>.
 
 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
        Suggested by Ben Pfaff <blp@cs.stanford.edu>.
 
 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
-            Bruno Haible  <bruno@clisp.org>
+           Bruno Haible  <bruno@clisp.org>
 
        Avoid using the syntax symbol() in formatted documentation.
        * MODULES.html.sh (func_module): When replacing symbol() with a
 
        Avoid using the syntax symbol() in formatted documentation.
        * MODULES.html.sh (func_module): When replacing symbol() with a
        * m4/uintmax_t.m4: New file.
        * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
 
        * m4/uintmax_t.m4: New file.
        * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
 
-Copyright (C) 1997-2007 Free Software Foundation, Inc.
+Copyright (C) 1997-2008 Free Software Foundation, Inc.
 Copying and distribution of this file, with or without modification,
 are permitted provided the copyright notice and this notice are preserved.
 Copying and distribution of this file, with or without modification,
 are permitted provided the copyright notice and this notice are preserved.