Mercurial > hg > octave-lyh > gnulib-hg
changeset 10678:cfcf9353b8fc
Restore the ChangeLog tail.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sun, 19 Oct 2008 23:44:30 +0200 |
parents | 2f3708abcd31 |
children | 0ad407d2ca34 |
files | ChangeLog |
diffstat | 1 files changed, 17255 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -27658,3 +27658,17258 @@ * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get rid of a trap command. For Solaris sh. + Reported by Mark D. Baushke <mdb@gnu.org>. + +2006-01-24 Simon Josefsson <jas@extundo.com> + + * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by + Bruno. + +2006-01-24 Karl Berry <karl@gnu.org> + + * config/srclist.txt (argp-namefrob.h): sync lost. + +2006-01-24 Jim Meyering <jim@meyering.net> + + * modules/openat (Files): Add lib/intprops.h. + From Mark D. Baushke. + +2006-01-24 Jim Meyering <jim@meyering.net> + + * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]). + Reported by Mark D. Baushke. + +2006-01-24 Jim Meyering <jim@meyering.net> + + * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'. + +2006-01-24 Bruno Haible <bruno@clisp.org> + + * modules/strnlen (Maintainer): Change from glibc to all. + +2006-01-24 Bruno Haible <bruno@clisp.org> + + * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs. + Patch by Paul Eggert. + +2006-01-24 Bruno Haible <bruno@clisp.org> + + * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler + already has it. + Report and patch by Albert Chin-A-Young <china@thewrittenword.com> on + 2005-11-26. + + * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as + 'signed char' to avoid problems with the built-in _Bool type. + Reported by Paul Eggert on 2005-11-26. + +2006-01-24 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Avoid constructing complicated sed + expressions inside backquote. + Report and solution by Mark D. Baushke <mdb@gnu.org>. + +2006-01-23 Ulrich Drepper <drepper@redhat.com> + + These changes imported from libc. + * lib/getopt.c: Use __fxprintf instead of inline stream orientation + test and two separate function calls. + * lib/strndup.c (__strndup): Add libc_hidden_def. + +2006-01-23 Simon Josefsson <jas@extundo.com> + + * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS. + Remove the test_*_SOURCES variable: automake infers it by default. + * modules/tls-tests: Likewise. + +2006-01-23 Paul Eggert <eggert@cs.ucla.edu> + + Work around porting bugs reported by Dieter in + <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>. + * lib/getopt.c (_NOPROTO): Remove; no longer needed. + Include <stdlib.h> and <unistd.h> in all environments; it's safe now. + Include "getopt.h" first, to check interface. + (getenv): Declare only if defined HAVE_DECL_GETENV && + !HAVE_DECL_GETENV. + * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype. + (__strndup): Revert to K&R-style function dfns, the glibc style. + * lib/strnlen.c: Don't claim it's taken from glibc; it's not. + (strnlen, __strnlen): Remove #defines and #undefs; not needed. + Include strnlen.h first, to get prototype properly. + (strnlen): Renamed from __strnlen. + Remove weak alias. + +2006-01-23 Paul Eggert <eggert@cs.ucla.edu> + + * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl. + +2006-01-23 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Adjust to reflect glibc reorganization. + This affects only comments. + +2006-01-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change) + + * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp. + Reported by Bruce Korb <bkorb@gnu.org>. + +2006-01-22 Paul Eggert <eggert@cs.ucla.edu> + + * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;" + to pacify gcc -Wswitch-default. + +2006-01-22 Bruno Haible <bruno@clisp.org> + + * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the + temporary buffer for sprintf, take into account the precision also + for 'd', 'i', 'u', 'o', 'x', 'X'. + +2006-01-21 Sergey Poznyakoff <gray@gnu.org.ua> + + * modules/argp-tests: New module + * tests/test-argp.c: New file + * tests/test-argp-2.sh: New file + +2006-01-21 Sergey Poznyakoff <gray@gnu.org.ua> + + * lib/argp-help.c (usage_long_opt): Do not print DOC options. + (__argp_base_name): Removed + * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a + typo. + (__argp_base_name): Provide macro definition or extern declaration + depending on the configuration + +2006-01-20 Simon Josefsson <jas@extundo.com> + + * modules/inet_ntop (Depends-on): Depend on sys_socket. + +2006-01-20 Simon Josefsson <jas@extundo.com> + + * lib/inet_ntop.h: Unconditionally include sys/socket.h. + +2006-01-20 Paul Eggert <eggert@cs.ucla.edu> + + * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore + rather than -Xlinker -z -Xlinker ignore, as it's more portable. + Suggested by Bruno Haible. + +2006-01-20 Karl Berry <karl@gnu.org> + + * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out + until changes propagate, I guess. + +2006-01-19 Simon Josefsson <jas@extundo.com> + + * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32. + +2006-01-19 Simon Josefsson <jas@extundo.com> + + * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly. + +2006-01-19 Simon Josefsson <jas@extundo.com> + + * gnulib-tool: Set check_PROGRAMS. + + * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests, + modules/des-tests, modules/gc-arcfour-tests, + modules/gc-arctwo-tests, modules/gc-des-tests, + modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests, + modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests, + modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests, + modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests, + modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests, + modules/md5-tests, modules/readline, modules/rijndael-tests: Use + check_PROGRAMS instead of noinst_PROGRAMS to be able to remove + test_*_SOURCES. + +2006-01-18 Simon Josefsson <jas@extundo.com> + + * modules/socklen (Depends-on): Depend on sys_socket. + +2006-01-18 Simon Josefsson <jas@extundo.com> + + * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests, + modules/des-tests, modules/gc-arcfour-tests, + modules/gc-arctwo-tests, modules/gc-des-tests, + modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests, + modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests, + modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests, + modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests, + modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests, + modules/md5-tests, modules/readline, modules/rijndael-tests: Add + $(EXEEXT) to automake TESTS variable, for mingw32. + +2006-01-17 Simon Josefsson <jas@extundo.com> + + * modules/socklen (Include): Need sys/socket.h. + +2006-01-17 Bruno Haible <bruno@clisp.org> + + * modules/ssize_t (Include): Add <sys/types.h>. + +2006-01-16 Paul Eggert <eggert@cs.ucla.edu> + + * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as + it's not portable and it doesn't work with cross-compiles. + Problem reported by Bruno Haible. Fix missing-$ typo in + 'test "gl_cv_ignore_unused_libraries" ...' that prevented + -zignore from being used with Sun's C compiler. + +2006-01-12 Simon Josefsson <jas@extundo.com> + + * lib/base64.c: Fix warning, reported by Bruno Haible + <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>. + +2006-01-12 Bruno Haible <bruno@clisp.org> + + * modules/ldd: New file. + * build-aux/ldd.sh.in: New file. + * MODULES.html.sh (Support for building libraries and executables): Add + ldd. + +2006-01-12 Bruno Haible <bruno@clisp.org> + + * m4/ldd.m4: New file. + +2006-01-12 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import, func_create_testdir): Don't go into an + endless loop while replacing $auxdir with build-aux. + +2006-01-11 Simon Josefsson <jas@extundo.com> + + * lib/stdint_.h (SIZE_MAX): Add missing (. + +2006-01-11 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + * lib/md5.c: Fix commentary typos. + (alignof, UNALIGNED_P): No need for a GCC-specific version. + * lib/md5.h (__attribute__): Remove; unused. + * lib/sha1.c: Fix commentary to match md5 better. + * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer, + so that we don't need to worry about alignment. All uses changed. + This merges the 2005-10-28 md5 change into sha1. + +2006-01-11 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + * lib/md5.c (OP): Fix spacing. + +2006-01-11 Bruno Haible <bruno@clisp.org> + + Ensure automatic ordering between gl_LOCK and gl_ARGP. + * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK. + (gl_LOCK): New macro, requiring gl_LOCK_BODY. + +2006-01-11 Bruno Haible <bruno@clisp.org> + + Ensure automatic ordering between gl_LOCK and gl_ARGP. + * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into + the "early" section as well. + +2006-01-11 Bruno Haible <bruno@clisp.org> + + Avoid "ar: no archive members specified" error on MacOS X. + * gnulib-tool (func_modules_add_dummy): New function. + (func_import, func_create_testdir): Invoke it. + +2006-01-11 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import, func_create_testdir): Replace build-aux + with $auxdir in AC_CONFIG_FILES statements. + +2006-01-11 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): + Initialize also noinst_HEADERS to empty. + +2006-01-11 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New + variables. + (func_create_megatestdir): Call aclocal, autoconf, automake here, not + autoreconf. + +2006-01-11 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make + overridable by the user. + Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>. + +2006-01-10 Simon Josefsson <jas@extundo.com> + + * modules/sys_socket: New file. + +2006-01-10 Simon Josefsson <jas@extundo.com> + + * m4/sys_socket_h.m4: New file. + +2006-01-10 Simon Josefsson <jas@extundo.com> + + * lib/socket_.h: New file. + +2006-01-10 Paul Eggert <eggert@cs.ucla.edu> + + * modules/readutmp (Maintainer): Add myself. + +2006-01-10 Paul Eggert <eggert@cs.ucla.edu> + + * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing + the 2002-12-31 change. Problem and fix reported by Bruno Haible. + People who are still concerned with buggy memcmp implementations + can invoke gl_FUNC_MEMCMP themselves. + +2006-01-10 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regex_internal.h (BITSET_WORD_BITS): + Work around a bug in 64-bit PGC (before version 6.1-2), where the + preprocessor mishandles large unsigned values as if they were signed. + Problem reported by Claudio Fontana in + <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>. + +2006-01-10 Jim Meyering <jim@meyering.net> + + Avoid the double-free (first in fts_read, second in fts_close) that + would occur when an `active' directory is made inaccessible (e.g., + via chmod a-x) during a traversal. + * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur + before returning. Reproduce this failure by + mkdir -p a/b; cd a; chmod a-x . b + Reported by Stavros Passas. + + Sync from coreutils. + * lib/sha1.c: Tweak grammar in a comment. + +2006-01-10 Jim Meyering <jim@meyering.net> + + * m4/fpending.m4: Also include <stdio.h>, for Dragonfly. + Patch by Joerg Sonnenberger. + +2006-01-10 Bruno Haible <bruno@clisp.org> + + * modules/readutmp: Depend on module free. + * modules/strtok_r: Depend on module restrict. + +2006-01-10 Bruno Haible <bruno@clisp.org> + + * modules/gettext (configure.ac): Add an invocation of + AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool. + +2006-01-10 Bruno Haible <bruno@clisp.org> + + * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked. + Reported by Werner Lemberg <wl@gnu.org>. + +2006-01-10 Bruno Haible <bruno@clisp.org> + + * lib/localcharset.c: Update from GNU gettext. + +2006-01-10 Bruno Haible <bruno@clisp.org> + + * lib/argp.h (__const): Remove macro. Use const instead. + * lib/argp-fmtstream.h (__const): Likewise. + * lib/glob_.h (__const): Remove macro. + * lib/glob-libc.h: Use const instead of __const. + +2006-01-10 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR + variable. + Needed to avoid an automake error regarding the 'gettext' module. + +2006-01-09 Simon Josefsson <jas@extundo.com> + + * modules/inet_ntop (Depends-on): Add restrict. + +2006-01-09 Simon Josefsson <jas@extundo.com> + + * modules/gc-rijndael-tests (License): Put under LGPL. + + * modules/gc-des-tests (License): Likewise. + + * modules/gc-arcfour-tests (License): Likewise. + + * modules/gc-arctwo-tests (License): Likewise. + + * modules/gc-pbkdf2-sha1-tests (License): Likewise. + + * modules/gc-hmac-sha1-tests (Files): Likewise. + + * modules/gc-hmac-md5-tests (License): Likewise. + + * modules/gc-sha1-tests (License): Likewise. + + * modules/gc-md5-tests (License): Likewise. + + * modules/gc-md4-tests (License): Likewise. + + * modules/gc-md2-tests (License): Likewise. + + * modules/gc-tests (License): Likewise. + + * modules/des-tests (License): Likewise. + + * modules/md4-tests (License): Likewise. + + * modules/md2-tests (License): Likewise. + +2006-01-09 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils: + + * MODULES.html.sh (build_lib): New section, with new lib-ignore module. + * modules/lib-ignore: New file. + * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h, + chdir-safer.m4, lchmod.m4. + * modules/openat: Add mkdirat.c, openat-priv.h. + +2006-01-09 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + * m4/lib-ignore.m4: New file. + * m4/lchmod.m4: New file. + +2006-01-09 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + * lib/chdir-long.c (cdb_free): Don't bother trying to open directory + for write access: POSIX says that must fail. + * lib/fts.c (diropen): Likewise. + * lib/save-cwd.c (save_cwd): Likewise. + * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as + well, for minor improvements on hosts that lack O_DIRECTORY. + * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]: + Don't try O_WRONLY unless O_RDONLY failed wth EACCES. + Fall back on chown if open failed with EACCES. + + * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]: + Report an error at compile-time if only a 1-second nominal clock + resolution is found. + + * lib/lchmod.h: New file. + * lib/mkdir-p.c: Include lchmod.h, lchown.h. + (make_dir_parents): Use lchown rather than chown, and + lchmod rather than chmod. + + * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are + dummies too. Problem with "none" reported by Bob Proulx. Problem with + "proc" reported by n0dalus. + + * lib/mountlist.c: Include <limits.h>. + (dev_from_mount_options) + [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: + New function. It no longer assumes "dev=" has the System V meaning + on Linux (since it doesn't). It also parses "dev=" more carefully. + (read_file_system_list) + [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it. + MOUNTED_GETMNTENT2 is new here; the code didn't used to look for + dev= in that case. + + * lib/posixtm.h (PDS_PRE_2000): New macro. + * lib/posixtm.c (year): Arg is now syntax_bits rather than + allow_century. All usages changed. Reject dates outside the range + 1969-1999 if PDS_PRE_2000 is used. + +2006-01-09 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + * doc/getdate.texi (General date syntax): Invalid dates are rejected. + (Time of day items): Mention the possibility of leap seconds. + Problem reported by Dr. David Alan Gilbert. + +2006-01-09 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + + * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006. + + * lib/chdir-safer.h, lib/chdir-safer.c: New files. + + * lib/modechange.c (mode_compile): Reject an invalid mode string + that starts with an octal digit. From Andreas Gruenbacher. + + * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open + and dup to open_safer and dup_safer, respectively. + (openat_permissive): Fix typo in comment. + + * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>, + "gettext.h"; either no longer needed or are guaranteed by openat.h. + (_): Remove; no longer needed. + (openat): Renamed from rpl_openat; no need for rpl_openat + since openat.h renames openat for us. + Replace most of the body with a call to openat_permissive, + to avoid duplicate code. + Port to (probably hypothetical) environments were mode_t is + wider than int. + (openat_permissive): Require mode arg, so that we can check + types better. Put it just after flags. Change cwd failure + indicator from pointer-to-bool to pointer-to-errno-value. + All callers changed. + Invoke openat_save_fail and/or openat_restore_fail if + cwd_errno is null, so that openat can call us. + (openat_permissive, fdopendir, fstatat, unlinkat): + Simplify errno handling to avoid some duplicate code, + as it's OK to set errno on success. + * lib/openat.h: Revamp code so that function macros depend on + __OPENAT_PREFIX only, not also on AT_FDCWD. + (openat_ro): Remove. Caller changed to use openat_permissive. + (openat_permissive): Now a macro, if not a function. + (openat_restore_fail, openat_save_fail): Now always functions, + since mkdirat needs them even if __OPENAT_PREFIX is defined. + + * lib/openat-priv.h: New file, defining macros used by mkdirat.c + and openat.c. + * lib/mkdirat.c: Include openat-priv.h. + Remove definitions of macros defined therein. + * lib/openat.c: Likewise. + + * lib/mkdirat.c (mkdirat): New file and function. + * lib/openat.h (mkdirat): Declare. + + * lib/openat.c (fdopendir): Don't change errno when returning non-NULL. + + * lib/openat.h (openat_permissive): Declare. + (openat_ro): Define. + + * lib/openat.c (EXPECTED_ERRNO): New macro. + (openat_permissive): New function -- used in remove.c rewrite. + (all functions): Set errno just before returning, only if there + was an actual failure. + Use EXPECTED_ERRNO rather than comparing against only ENOTDIR. + + Emulate openat-family functions using Linux's procfs, if possible. + Idea and some code based on Ulrich Drepper's glibc changes. + + * lib/openat.c: (BUILD_PROC_NAME): New macro. + Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h". + (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s, + before falling back on save_cwd and restore_cwd. + (fdopendir, fstatat, unlinkat): Likewise. + + * lib/openat.c (fstatat, unlinkat): Perform the syscall directly, + skipping the save_cwd...restore_cwd overhead, if FILE is absolute. + + * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t, + as second argument to va_arg. Otherwise, some versions of gcc + warn that `if this code is reached, the program will abort'. + +2006-01-09 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c. + Require openat-priv.h. + +2006-01-09 Bruno Haible <bruno@clisp.org> + + * modules/strnlen (Include): Use strnlen.h. + +2006-01-09 Bruno Haible <bruno@clisp.org> + + * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>. + +2006-01-09 Bruno Haible <bruno@clisp.org> + + * lib/sysexit_.h (EX_OK): New macro. + Suggested by Martin Lambers <marlam@marlam.de>. + +2006-01-09 Bruno Haible <bruno@clisp.org> + + * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and + don't define _STDINT_H_NEED_SIGNED_INT_TYPES. + +2006-01-09 Bruno Haible <bruno@clisp.org> + + * lib/stdint_.h (SIZE_MAX): Write the value without involving negative + numbers. + +2006-01-09 Bruno Haible <bruno@clisp.org> + + * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in. + * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in. + * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in. + * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in. + +2006-01-09 Bruno Haible <bruno@clisp.org> + + * build-aux/javacomp.sh.in: New file, moved from lib/. + * modules/javacomp-script (Files): Update. + (configure.ac): Add AC_CONFIG_FILES invocation. + (EXTRA_DIST): Remove variable. + + * build-aux/javaexec.sh.in: New file, moved from lib/. + * modules/javaexec (Files): Update. + (configure.ac): Add AC_CONFIG_FILES invocation. + (EXTRA_DIST): Remove javaexec.sh.in. + + * build-aux/csharpcomp.sh.in: New file, moved from lib/. + * modules/csharpcomp-script (Files): Update. + (configure.ac): Add AC_CONFIG_FILES invocation. + (EXTRA_DIST): Remove variable. + + * build-aux/csharpexec.sh.in: New file, moved from lib/. + * modules/csharpexec (Files): Update. + (configure.ac): Add AC_CONFIG_FILES invocation. + (EXTRA_DIST): Remove csharpexec.sh.in. + +2006-01-09 Andreas Gruenbacher <agruen@suse.de> + + Sync from coreutils. + + Add POSIX ACL support + * lib/acl.h (copy_acl, set_acl): Add declarations. + * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL + systems other than Linux. + (chmod_or_fchmod): New function: use fchmod when possible, + and chmod otherwise. + (file_has_acl): Add a POSIX ACL implementation, with a + Linux-specific subcase. + (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and + S_ISVTX from one file to another. Fall back to fchmod/chmod when + acls are unsupported. + (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and + S_ISVTX to a defined value. Fall back to fchmod/chmod when acls + are unsupported. + +2006-01-09 Andreas Gruenbacher <agruen@suse.de> + + Sync from coreutils. + * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests. + +2006-01-07 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to + gl_EARLY. + +2006-01-04 Paul Eggert <eggert@cs.ucla.edu> + + * lib/strftime.c (tzname): Don't declare if it is already #defined. + Problem reported for Mingw by Mark Junker. + +2006-01-04 Paul Eggert <eggert@cs.ucla.edu> + + * README: Gnulib normally doesn't generate a tarball. + +2006-01-03 Paul Eggert <eggert@cs.ucla.edu> + + * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use + long int, not int, for nanosecond counts, so that people who are + used to POSIX struct timespec won't be surprised. Reported by Jim + Meyering. + +2005-12-28 Bruno Haible <bruno@clisp.org> + + * build-aux/config.rpath: Update from GNU gettext. + +2005-12-16 Jim Meyering <jim@meyering.net> + + * modules/fprintftime: New module. + * MODULES.html.sh (Date and time <time.h>): Add fprintftime. + +2005-12-16 Jim Meyering <jim@meyering.net> + + * m4/fprintftime.m4: New file. + +2005-12-16 Jim Meyering <jim@meyering.net> + + * lib/fprintftime.c, lib/fprintftime.h: New files. + +2005-12-15 Simon Josefsson <jas@extundo.com> + + * modules/socklen (configure.ac): Fix M4 macro name, to align with + new m4/socklen.m4. + +2005-12-10 Sergey Poznyakoff <gray@gnu.org.ua> + + * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and + HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME + +2005-12-10 Sergey Poznyakoff <gray@gnu.org.ua> + + * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump + * lib/argp-help.c (fill_in_uparams): Check if the constructed + struct uparams is valid. Fall back to the default values if it is + not. + +2005-12-09 Sergey Poznyakoff <gray@gnu.org.ua> + + * modules/argp (Files): Add argp-pin.c + (Depends-on): dirname + (lib_SOURCES): Add argp-pin.c + +2005-12-09 Sergey Poznyakoff <gray@gnu.org.ua> + + * m4/argp.m4: Check if program_invocation_name and + program_invocation_short_name are declared and define appropriate + macros if they are not. + +2005-12-09 Sergey Poznyakoff <gray@gnu.org.ua> + + * lib/argp-help.c (__argp_base_name): New function + (__argp_short_program_name): Rewrite using __argp_base_name + * lib/argp-namefrob.h: Define program_invocation_name and + program_invocation_short_name if requested + (__argp_base_name): Add prototype + * lib/argp-parse.c (argp_def): Use gettext wrappers + (argp_default_parser): Use __argp_base_name + * lib/argp-pin.c: New file. Defines program_invocation_name and + program_invocation_short_name on systems that lack them. + +2005-12-07 Paul Eggert <eggert@cs.ucla.edu> + + * m4/stat-time.m4 (gl_STAT_TIME): Add check for + TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3 + porting problem reported by Georg Schwarz in + <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>. + +2005-12-07 Paul Eggert <eggert@cs.ucla.edu> + + * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for + TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3 + porting problem reported by Georg Schwarz in + <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>. + +2005-12-05 Bruno Haible <bruno@clisp.org> + + * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix. + * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise. + Reported by Mark Junker <mjscod@gmx.de>. + +2005-12-02 Paul Eggert <eggert@cs.ucla.edu> + + * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T. + Use implementation from Albert Chin, with some + comments/corrections by Stepan Kasal and myself. + +2005-12-02 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Accept GPLed build tool modules when + --lgpl is given. + * modules/csharpcomp-script: New file. + * modules/csharpcomp: Depend on it. + * modules/javacomp-script: New file. + * modules/javacomp: Depend on it. + Suggested by Simon Josefsson. + +2005-12-01 Paul Eggert <eggert@cs.ucla.edu> + + * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch + statement, to work around an HP-UX 10.20 compiler bug reported by + Peter O'Gorman. + +2005-11-29 Paul Eggert <eggert@cs.ucla.edu> + + * modules/savedir (Depends-on): Add openat. + +2005-11-29 Paul Eggert <eggert@cs.ucla.edu> + + * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare. + (uintmax_t) [defined uintmax_t]: Do not declare. + (SIZE_MAX) [defined SIZE_MAX]: Do not define. + This works around a problem if intmax_t.m4 and/or uintmax_t.m4 + and/or size_max.m4 are also used. Problem reported by Mark D. Baushke. + (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the + sake of portability to weird hosts that C allows (though we don't + know of any practical examples). + + * lib/savedir.h (fdsavedir): New decl. + * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter + contains most of the former guts of savedir. + (savedir): Use savedirstream. + Include "openat.h". + +2005-11-25 Paul Eggert <eggert@cs.ucla.edu> + + * modules/obstack (Files): Add m4/ulonglong.m4. + Problem reported by Davide Angelocola. + +2005-11-15 Paul Eggert <eggert@cs.ucla.edu> + + * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as + coreutils no longer futzes with rounding modes. + +2005-11-14 Jim Meyering <jim@meyering.net> + + * lib/mkstemp-safer.c: Include <config.h>, required for possible + replacement of mkstemp. + +2005-11-10 Simon Josefsson <jas@extundo.com> + + * lib/readline.c: Remove EOL. + +2005-11-10 Paul Eggert <eggert@cs.ucla.edu> + + * modules/gethrxtime (Depends-on): Add gettime. + +2005-11-10 Paul Eggert <eggert@cs.ucla.edu> + + * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME + or gettimeofday; no longer needed. + +2005-11-10 Paul Eggert <eggert@cs.ucla.edu> + + * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time / + time business. + (gethrxtime) [! (HAVE_NANOUPTIME + || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME) + || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling + our own approximation. + +2005-11-08 Eric Blake <ebb9@byu.net> + + * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS. + +2005-11-08 Eric Blake <ebb9@byu.net> + + * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS. + +2005-11-04 Bruno Haible <bruno@clisp.org> + + * gnulib-tool: Implement --update mode. + +2005-10-30 Paul Eggert <eggert@cs.ucla.edu> + + Fix porting problem reported by Theodoros V. Kalamatianos. + * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]: + Don't assume that futimes failing means we must fail. + +2005-10-30 Paul Eggert <eggert@cs.ucla.edu> + + * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local + variables to suggest the intended function of the PATH_MAX check. + +2005-10-30 Kean Johnston <jkj@sco.com> + + Trivial changes to support SCO systems. + * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well + as PATH_MAX. + * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems, + where __ptr is null when no I/O is pending. + +2005-10-29 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir + leave errno alone. Problem reported by Dmitry V. Levin. + +2005-10-28 Simon Josefsson <jas@extundo.com> + + * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c: + Test more. + + * tests/test-gc-md2.c, tests/test-md2.c: New files. + + * modules/md2, modules/md2-tests: New files. + +2005-10-28 Simon Josefsson <jas@extundo.com> + + * m4/inet_ntop.m4: More tests. + + * m4/gc-md2.m4, md2.m4: New file. + +2005-10-28 Simon Josefsson <jas@extundo.com> + + * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add + "restrict" keywords, as per POSIX. Protect the function + declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP. + Don't use K&R prototypes. Check the sprintf return values. + Re-define EAFNOSUPPORT if not present. Indent. + + * lib/md5.h, md5.c: Simplify buffer handling visavi alignment, + suggested by Bruno Haible <bruno@clisp.org>. + + * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value. + + * lib/gc.h: Add MD2 and RMD160 length defines. Add prototypes. + + * lib/gc-libgcrypt.c: Add MD2 (which is not available through + libgcrypt). + + * lib/gc-gnulib.c: Add MD2. Implement gc_hash_* API. + + * lib/md2.h, lib/md2.c: New files. + +2005-10-28 Paul Eggert <eggert@cs.ucla.edu> + + * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave + errno alone. Problem reported by Frederic Jolliton. + +2005-10-27 Paul Eggert <eggert@cs.ucla.edu> + + * modules/verify (License): Change from GPL to LGPL. This is a + tiny module and there are apparently near-equivalents that are + under the BSD license. + +2005-10-24 Simon Josefsson <jas@extundo.com> + + * modules/sha1: Relicense to LGPL. + +2005-10-24 Simon Josefsson <jas@extundo.com> + + * lib/md4.h: Shrink buffer size, now that we changed the type. + +2005-10-23 Simon Josefsson <jas@extundo.com> + + * gnulib-tool (func_import): Fix --tests-base. + +2005-10-22 Simon Josefsson <jas@extundo.com> + + * modules/arcfour (Depends-on): Need stdint. + +2005-10-22 Simon Josefsson <jas@extundo.com> + + * m4/gc.m4: Don't be fooled by --disable-*random-device parameters, + suggested by Bruno Haible <bruno@clisp.org>. Fix error messages. + +2005-10-22 Simon Josefsson <jas@extundo.com> + + * lib/md4.h, md4.c: Simplify buffer handling visavi alignment, + suggested by Bruno Haible <bruno@clisp.org>. + +2005-10-22 Simon Josefsson <jas@extundo.com> + + * lib/crc.h: Include stddef.h, for size_t. + +2005-10-22 Simon Josefsson <jas@extundo.com> + + * lib/arcfour.h, arcfour.c: Use fixed size indices in the + arcfour_context struct (simplify test vector testing in GNU + Shishi). + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * modules/des, modules/des-tests: New files. + + * modules/gc-des, modules/gc-des-tests: New files. + + * tests/test-des.c, tests/test-gc-des.c: New file. + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * modules/arctwo, modules/arctwo-tests: New files. + + * tests/test-arctwo.c: New file. + + * modules/gc-arctwo, modules/gc-arctwo-tests: New files. + + * tests/test-gc-arctwo.c: New file. + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by + Bruno Haible <bruno@clisp.org>. + + * m4/gc-des.m4: New file. + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * m4/arctwo.m4: New file. + + * m4/gc-arctwo.m4: New file. + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one + block. + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible + <bruno@clisp.org>. + + * lib/hmac-sha1.c (hmac_sha1): Likewise. + + * lib/crc.c (crc32_update): Actually use crc parameter, suggested by + Bruno Haible <bruno@clisp.org>. + + * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible + <bruno@clisp.org>. + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB. + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * lib/gc-gnulib.c: Support ARCTWO in CBC mode. + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * lib/des.h, lib/des.c: New files. + + * lib/gc-gnulib.c: Support DES.c + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * lib/arctwo.h, lib/arctwo.c: New files. + + * lib/gc-gnulib.c: Support ARCTWO. + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro, + suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>. + +2005-10-21 Simon Josefsson <jas@extundo.com> + + * gnulib-tool (func_import, func_create_testdir): Define automake + conditional GL_COND_LIBTOOL if libtool is used (to be used by modules + Makefile.am snippet), + suggested by Bruno Haible <bruno@clisp.org>. + + * modules/gc (Makefile.am): Use it. + +2005-10-21 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import, func_create_testdir): Add quoting to last + patch. + +2005-10-19 Simon Josefsson <jas@extundo.com> + + * tests/test-gc-rijndael.c: New file. + + * modules/gc-rijndael, modules/gc-rijndael-test: New files. + +2005-10-19 Simon Josefsson <jas@extundo.com> + + * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer + interface too. + +2005-10-19 Simon Josefsson <jas@extundo.com> + + * tests/test-gc-arcfour.c: New file. + + * modules/gc-arcfour, modules/gc-arcfour-tests: New files. + +2005-10-19 Simon Josefsson <jas@extundo.com> + + * modules/gc-md4, modules/gc-md4-tests: New file. + + * tests/test-gc-md4.c: New file. + +2005-10-19 Simon Josefsson <jas@extundo.com> + + * m4/gc-md4.m4: New file. + +2005-10-19 Simon Josefsson <jas@extundo.com> + + * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4, + gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal + <kasal@ucw.cz>. + +2005-10-19 Simon Josefsson <jas@extundo.com> + + * m4/gc-arcfour.m4: New file. + + * m4/gc-rijndael.m4: New file. + +2005-10-19 Simon Josefsson <jas@extundo.com> + + * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4. + +2005-10-19 Simon Josefsson <jas@extundo.com> + + * lib/gc-gnulib.c: Support ARCFOUR. + +2005-10-19 Simon Josefsson <jas@extundo.com> + + * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES + support. + + * lib/gc.h: Add ECB enum type. + + * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h. + +2005-10-18 Simon Josefsson <jas@extundo.com> + + * tests/test-md5.c: New file. + + * modules/md5-tests: New file. + +2005-10-18 Simon Josefsson <jas@extundo.com> + + * tests/test-md4.c: New file. + + * modules/md4, modules/md4-tests: New files. + +2005-10-18 Simon Josefsson <jas@extundo.com> + + * m4/md4.m4: New file. + +2005-10-18 Simon Josefsson <jas@extundo.com> + + * lib/md4.h, lib/md4.c: New files, based on md5.?. + +2005-10-17 Stepan Kasal <kasal@ucw.cz> + + * gnulib-tool (func_create_testdir): Omit the second check whether + BUILT_SOURCES in nonempty. + +2005-10-17 Simon Josefsson <jas@extundo.com> + + * tests/test-rijndael.c: New file. + +2005-10-17 Simon Josefsson <jas@extundo.com> + + * modules/sha1: Depend on stdint instead of md5. + + * modules/md5: Depend on stdint, remove uint32_t. + +2005-10-17 Simon Josefsson <jas@extundo.com> + + * modules/gc-sha1-tests: New file. + + * tests/test-gc-sha1.c: New file. + +2005-10-17 Simon Josefsson <jas@extundo.com> + + * m4/md5.m4: Remove call to uint32_t.m4. + +2005-10-17 Simon Josefsson <jas@extundo.com> + + * lib/sha1.c: Use uint32_t instead of md5_uint32.t + + * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from + md5.h. + + * lib/md5.c: Use uin32_t. Fix non-gcc UNALIGNED_P macro. + + * lib/md5.h: Use stdint.h and uint32_t. Doc fix. + +2005-10-17 Simon Josefsson <jas@extundo.com> + + * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions. + +2005-10-17 Simon Josefsson <jas@extundo.com> + + * lib/gc.h, gc-libgcrypt.c: Add ciphers. + +2005-10-17 Simon Josefsson <jas@extundo.com> + + * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert. + + * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes. + +2005-10-17 Bruno Haible <bruno@clisp.org> + + * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so + that it can also be used in a test. + +2005-10-16 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_emit_tests_Makefile_am): Also define + TESTS_ENVIRONMENT, so that individual tests can augment it. + + * gnulib-tool (func_create_testdir): Use an intermediate target for + building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain + macros, like $(ALLOCA_H), which cannot be passed through the command + line. + +2005-10-15 Simon Josefsson <jas@extundo.com> + + * modules/rijndael-tests: New file. + + * modules/rijndael: New file. + +2005-10-15 Simon Josefsson <jas@extundo.com> + + * m4/rijndael.m4: New file. + +2005-10-15 Simon Josefsson <jas@extundo.com> + + * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files. + + * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files. + +2005-10-14 Simon Josefsson <jas@extundo.com> + + * tests/test-arcfour.c: New file. + + * modules/arcfour, modules/arcfour-tests: New files. + +2005-10-14 Simon Josefsson <jas@extundo.com> + + * m4/arcfour.m4: New file. + +2005-10-14 Simon Josefsson <jas@extundo.com> + + * lib/arcfour.h, lib/arcfour.c: New files. + +2005-10-14 Roland McGrath <roland@redhat.com> + + Import from libc. [BZ #1331] + * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed + macro argument. + Reported by Matej Vela <vela@debian.org>. + +2005-10-14 Paul Eggert <eggert@cs.ucla.edu> + + * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't + include <wchar.h>; no longer needed. + +2005-10-14 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h. + +2005-10-14 Jakub Jelinek <jakub@redhat.com> + and Ulrich Drepper <drepper@redhat.com> + + Import from libc. + * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf + instead of inline stream orientation test and two separate + function calls. Pay no attention to USE_IN_LIBIO. + +2005-10-13 Simon Josefsson <jas@extundo.com> + + * modules/gc-hmac-md5-tests: New file. + + * tests/test-gc-hmac-sha1.c: New file. + + * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests. + + * modules/gc-hmac-md5-tests: New file. + + * tests/test-gc-md5.c: New file. + + * modules/gc-md5-tests: New file. + +2005-10-13 Simon Josefsson <jas@extundo.com> + + * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation. + Move memory allocation outside of loop. + +2005-10-13 Paul Eggert <eggert@cs.ucla.edu> + + * lib/mkdir-p.c (make_dir_parents): Don't report an error if an + intermediate directory is in a read-only file system. Problem + reported by Eric Blake. + +2005-10-13 Oskar Liljeblad <oskar@osk.mine.nu> + + * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol. + +2005-10-12 Simon Josefsson <jas@extundo.com> + + * tests/test-hmac-sha1.c: New file. + + * modules/hmac-sha1-tests: New file. + + * modules/hmac-sha1: New file. + +2005-10-12 Simon Josefsson <jas@extundo.com> + + * modules/gc-sha1: New file. + +2005-10-12 Simon Josefsson <jas@extundo.com> + + * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files. + + * tests/test-gc-pbkdf2-sha1.c: New file. + +2005-10-12 Simon Josefsson <jas@extundo.com> + + * modules/gc-md5, modules/gc-hmac-md5: New files. + + * modules/gc (Files): Remove md5, memxor and hmac files. + +2005-10-12 Simon Josefsson <jas@extundo.com> + + * m4/gc-pbkdf2-sha1.m4: New file. + + * m4/gc-hmac-sha1.m4: New file. + + * m4/gc-sha1: New file. + + * m4/hmac-sha1.m4: New file. + +2005-10-12 Simon Josefsson <jas@extundo.com> + + * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files. + + * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5. + +2005-10-12 Simon Josefsson <jas@extundo.com> + + * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types, + suggested by Bruno Haible <bruno@clisp.org>. + +2005-10-12 Simon Josefsson <jas@extundo.com> + + * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1. + +2005-10-12 Simon Josefsson <jas@extundo.com> + + * lib/gc-pbkdf2-sha1.c: New file. + + * lib/gc.h: Add gc_pbkdf2_sha1 prototype. + +2005-10-12 Simon Josefsson <jas@extundo.com> + + * lib/gc-libgcrypt.c (gc_hmac_sha1): New function. + + * lib/gc-gnulib.c (gc_hmac_sha1): New function. + +2005-10-12 Simon Josefsson <jas@extundo.com> + + * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and + GC_USE_HMAC_MD5, respectively. + + * lib/gc-libgcrypt.c (gc_md5): Fix assert call. + (gc_md5): Fix typo. + + * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype. + + * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto. + + * lib/gc-gnulib.c (gc_hash_buffer): Ditto. + +2005-10-12 Bruno Haible <bruno@clisp.org> + + * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H. + Reported by Stepan Kasal <kasal@ucw.cz>. + +2005-10-11 Simon Josefsson <jas@extundo.com> + + * tests/test-crc.c: New file. + + * modules/crc, modules/crc-tests: New files. + +2005-10-11 Simon Josefsson <jas@extundo.com> + + * m4/crc.m4: New file. + +2005-10-11 Simon Josefsson <jas@extundo.com> + + * lib/gc.h: Add gc_hash and gc_hash_buffer. + + * lib/gc-gnulib.c (gc_hash_buffer): Add. Reorder #include's. + + * lib/gc-libgcrypt.c (gc_hash_buffer): Add. + +2005-10-11 Simon Josefsson <jas@extundo.com> + + * lib/crc.h, lib/crc.c: New files. + + * lib/gc.h (gc_hash_buffer): Add doc. + +2005-10-11 Bruno Haible <bruno@clisp.org> + + * modules/c-strcasestr: New file. + * MODULES.html.sh (String handling <string.h>): Add c-strcasestr. + +2005-10-11 Bruno Haible <bruno@clisp.org> + + * modules/c-strcase: New file. + * MODULES.html.sh (String handling <string.h>): Add c-strcase. + +2005-10-11 Bruno Haible <bruno@clisp.org> + + * lib/strcasecmp.c: Include limits.h. + (strcasecmp): Avoid integer overflow on exotic platforms. + * lib/strncasecmp.c: Include limits.h. + (strncasecmp): Avoid integer overflow on exotic platforms. + Reported by Paul Eggert. + +2005-10-11 Bruno Haible <bruno@clisp.org> + + * lib/c-strcasestr.h: New file, from GNU gettext. + * lib/c-strcasestr.c: New file, from GNU gettext. + +2005-10-11 Bruno Haible <bruno@clisp.org> + + * lib/c-strcase.h: New file, from GNU gettext. + * lib/c-strcasecmp.c: New file, from GNU gettext. + * lib/c-strncasecmp.c: New file, from GNU gettext. + +2005-10-10 Paul Eggert <eggert@cs.ucla.edu> + + * modules/mempcpy (License): GPL -> LGPL. + * modules/strchrnul (License): Likewise. + * modules/sysexits (License): Likewise. + +2005-10-08 Simon Josefsson <jas@extundo.com> + + * config/srclist.txt: Bug 1423 is closed, but 1439 remains. + +2005-10-07 Simon Josefsson <jas@extundo.com> + + * m4/memxor.m4: Remove gl_C_RESTRICT call. + +2005-10-06 Simon Josefsson <jas@extundo.com> + + * tests/test-hmac-md5.c: New file. + + * modules/hmac-md5-tests: New file. + + * modules/hmac-md5: New file. + +2005-10-06 Simon Josefsson <jas@extundo.com> + + * m4/hmac-md5.m4: New file. + + * m4/memxor.m4: Require gl_C_RESTRICT. + +2005-10-06 Simon Josefsson <jas@extundo.com> + + * lib/memxor.c (memxor): Avoid casts and warnings. + +2005-10-06 Simon Josefsson <jas@extundo.com> + + * lib/hmac-md5.c: New file. + + * lib/hmac.h: New file. + +2005-10-06 Paul Eggert <eggert@cs.ucla.edu> + + * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool + promotes to int, not unsigned int, to catch the AIX 5.3 + compiler bug. + +2005-10-05 Simon Josefsson <jas@extundo.com> + + * modules/memxor: New file. + + * modules/iconv (Files): Move config.rpath to havelib, it is used + there. + + * modules/havelib (Files): Add config.rpath. + +2005-10-05 Simon Josefsson <jas@extundo.com> + + * m4/memxor.m4: New file. + +2005-10-05 Simon Josefsson <jas@extundo.com> + + * lib/memxor.c (memxor): Fix compiler error. + + * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also + <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>. + + * lib/memxor.h, lib/memxor.c: New files. + + * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H, + we assume all systems have it, suggested by Jim Meyering + <jim@meyering.net>. Remove HAVE_SYS_SOCKET_H test too, to see if + any systems lack sys/socket.h; mingw32 is known to lack it, but we + don't support it yet anyway. Also remove HAVE_NETDB_H test, for + same reasons. + +2005-10-05 Simon Josefsson <jas@extundo.com> + + * config/srclist.txt: Add glibc bug 1423 for md5.h. + +2005-10-05 Paul Eggert <eggert@cs.ucla.edu> + + * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for + sys/socket.h, netdb.h, sys/types.h; the checks areno longer + needed, since the source code now assumes these .h files. + +2005-10-05 Derek Price <derek@ximbiot.com> + + * lib/getdelim.c (SIZE_MAX): New macro, if not already defined. + +2005-10-05 Bruno Haible <bruno@clisp.org> + + * modules/stdint (License): Change to LGPL. + +2005-10-04 Simon Josefsson <jas@extundo.com> + + * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark + D. Baushke" <mdb@gnu.org>. + +2005-10-04 Bruno Haible <bruno@clisp.org> + + * lib/verify.h (verify_true): Provide alternative definition for C++. + +2005-10-03 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getdelim.c: Include getdelim.h first. Include <limits.h>. + (SSIZE_MAX): New macro, if not already defined. + (getdelim): Fix buffer overrun on 64-bit hosts with lines longer + than 2 GiB. + +2005-10-02 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir. + * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely + defines ULONG_MAX_LT_ULLONG_MAX. Thomas M.Ott reports that + ULLONG_MAX doesn't work with 2.7.2.1. + +2005-10-02 Paul Eggert <eggert@cs.ucla.edu> + + * modules/xreadlink (Makefile.am): Remove lib_SOURCES. + From Ben Pfaff. + + * modules/exclude (Depends-on): Depend on verify. + * modules/strtoimax (Depends-on): Likewise. + * modules/utimecmp (Depends-on): Likewise. + +2005-10-02 Paul Eggert <eggert@cs.ucla.edu> + + * lib/exclude.c: Include verify.h. + (verify): Remove. All callers changed to use verify.h's version. + * lib/strtoimax.c: Likewise. + * lib/utimecmp.c: Likewis.e + + Sync from coreutils. + * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h, + getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h. + * lib/.cvsignore: Add fts.h, search.h, t-fpending. + * lib/settime.c (settime): Fix { typo in previous patch. Also, don't + bother returning ENOSYS if settimeofday or stime fails; just let + them return whatever errno they want to return. + * lib/utimens.c: Include unistd.h, for dup2. + (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if. + (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1. + +2005-10-02 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes + from glibc-2.2.5 that fails for read-only files. + +2005-10-02 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>. + * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not + `#if HAVE_CONFIG_H'. + * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR. + Remove AT_FDCWD test. + Do not consume the fd unless successful. + * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR. + * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif + block, so that we don't even try to compile it if settimeofday is + available. This works around a compilation failure on OSF1 V5.1, + due to stime requiring a `long int*' while tv_sec is `int'. + +2005-10-02 Alfred M. Szmidt <ams@gnu.org> + + Sync from coreutils. + * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path... + against `yes', rather than just testing for nonempty. + +2005-10-01 Simon Josefsson <jas@extundo.com> + + * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD + and Darwin. + + * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo + as an (POSIX) extension. Check for sys/types.h, sys/socket.h, and + netdb.h too, needed by getaddrinfo.h. Check if getaddrinfo, + freeaddrinfo and gai_strerror are declared by the POSIX headers. + Check if struct addrinfo is declared. + +2005-10-01 Simon Josefsson <jas@extundo.com> + + * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h. + Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO. Protect + AI_* and EAI_* definitions. Protect function declarations. + +2005-10-01 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + + * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these + libraries [inet nsl socket xnet]. Nelson Beebe reported that with + native cc on Solaris 7, getaddrinfo.c requires -lsocket. + * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname + in the inet and nsl libraries. Required on Solaris 5.7. + +2005-10-01 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname + in the inet and nsl libraries. Required on Solaris 5.7. + +2005-10-01 Eric Blake <ebb9@byu.net> (tiny change) + + * lib/getdelim.c (getdelim): Remove unused variables. + +2005-09-29 Paul Eggert <eggert@cs.ucla.edu> + + * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int, + so that the code works even with ancient cpp. Portability problem + with GCC 2.7.2.1 reported by Thomas M.Ott. + +2005-09-27 Paul Eggert <eggert@cs.ucla.edu> + + * modules/regex (Depends-on): Add strcase. + + * modules/gethostname (Licence): Change from GPL to LGPL, since + gethostname.c is a trivial implementation of a standard library + function. + * modules/poll (License): Change from GPL to LGPL, since it's + derived from LGPL code. + +2005-09-27 Jim Meyering <jim@meyering.net> + + * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef + HAVE_CONFIG_H. + + * lib/intprops.h (signed_type_or_expr__): Define. + (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound + for unsigned types. + +2005-09-26 Paul Eggert <eggert@cs.ucla.edu> + + * lib/verify.h (verify_expr): Remove, replacing with: + (verify_true): New macro that returns true instead of void. + (verify_type__): Remove. + (verify): Use verify_true rather than verify_type__. + +2005-09-26 Bruno Haible <bruno@clisp.org> + + * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H + is necessary. + (lib_SOURCES): Remove mbchar.c. + * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary. + (Files): Add m4/mbrtowc.m4. + * modules/mbiter: Likewise. + * modules/mbuiter: Likewise. + +2005-09-26 Bruno Haible <bruno@clisp.org> + + * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't + compile mbchar.c if they are not both present. + * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC. + * m4/mbiter.m4 (gl_MBITER): Likewise. + * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE. + * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise. + * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise. + +2005-09-25 Jim Meyering <jim@meyering.net> + + * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c + also uses socklen_t. + +2005-09-24 Paul Eggert <eggert@cs.ucla.edu> + + * lib/utimens.c (ENOSYS): Define if not already defined. + (futimens): Support having a null PATH if the file descriptor + is nonnegative. + + * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure): + Remove. + (__attribute): Define to empty unless GCC 3.1 or later. + This works around a core dump on OpenBSD 3.4, which has GCC + 2.95.3, which dumps core when given __attribute__(()). It also + simplifies other tests, since we really don't want to bother with + worrying about which ancient version of GCC supported what. + Original problem reported by Yoann Vandoorselaere, with part of + the fix suggested by Derek Price. + +2005-09-24 Jim Meyering <jim@meyering.net> + + * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type + so we can once again use a positive bitfield width of 1 -- now we + don't have to explain why we were using a bitfield width of 2. + +2005-09-23 Paul Eggert <eggert@cs.ucla.edu> + + * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp, + and similarly for the other external symbols. Problem reported + by James Gallager. + + * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux + bug reported by Jim Meyering. + + * m4/utimens.m4 (gl_UTIMENS): Check for futimesat. + * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change; + not needed, since socklen is a prerequisite module. + +2005-09-23 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>. + Problem reported by Eric Blake. + (getaddrinfo): Initialize se so that it's not garbage. + Redo internal storage allocation so that it doesn't make unportable + assumptions about alignment. + Fix a memory leak. + + * lib/utimens.c (futimens): Use futimesat if available. + Prefer it to futimes since it doesn't have the futimes bug. + + * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove. + (verify): Don't use the __LINE__ trick, as it doesn't work in general. + Instead, declare a function that returns a pointer to an array, + and use verify_type__ to declare the size of the array. + Problem and germ of a solution reported by Bruno Haible. + (verify_type__): Use 2, not 1, for bitfield size, to avoid + a warning with Irix 6.5 cc. Problem reported by Bruno Haible. + +2005-09-23 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + Correct build failure (socklen_t not defined) on at least + mips-sgi-irix6.5 and alphaev67-dec-osf5.1. + * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T. + +2005-09-23 Jim Meyering <jim@meyering.net> + + * modules/getaddrinfo (Depends-on): Add socklen. + +2005-09-23 Bruno Haible <bruno@clisp.org> + + * tests/test-verify.c: New file. + +2005-09-22 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + + * modules/argmatch (Depends-on): Add verify. + * modules/getloadavg (Depends-on): Depend on fcntl-safer, not + unistd-safer. + * modules/save-cwd (Depends-on): Likewise. + + * modules/openat (Files): Add lib/openat-die.c. + (Depends-on): Remove error, exitfail. + Add dirname. + + * modules/verify: New file. + * MODULES.html.sh (Diagnostics <assert.h>): New section, + with "verify" module. + +2005-09-22 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + + * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4: + * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4: + * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4: + * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4: + * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4: + * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4: + * m4/userspec.m4, xgetcwd.m4, xreadlink.m4: + Don't bother checking for string.h, stdlib.h, unistd.h. + * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require + AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat + module's job. + * m4/jm-macros.m4 (gl_MACROS): Likewise. + * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT. + + * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro. + (gl_GETDATE): Use it. + + * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h. + +2005-09-22 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + + * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h, + stat-time.h. + * lib/argmatch.h: Include verify.h + (ARGMATCH_VERIFY): Use verify rather than rolling our own. + (ARGMATCH_ASSERT): Remove; unused. + * lib/canonicalize.c: Assume STDC_HEADERS. + * lib/exclude.c: Include "strcase.h". + * lib/regex_internal.h [!defined _LIBC]: Likewise. + * lib/getusershell.c: Include stdio--.h rather than stdio.h + and stdio-safer.h. + (getusershell): Call fopen, not fopen_safer. + * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h. + Do not include unistd-safer.h. + (save_cwd): Don't call fd_safer; no longer needed + now that we include fcntl--.h. + + * lib/getdate.y (relative_time): New type. + (RELATIVE_TIME_0): New constant. + (parser_control): Use relative_time instead of doing it ourselves. + (%union): Add new relative_time rel member. + (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT): + Now typeless. + (relunit, relunit_snumber): Now of type rel. + (zone, rel, relunit, get_date): Adjust to above changes. + + * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h. + Do not include unistd-safer.h. + (getloadavg): Don't call fd_safer; no longer needed + now that we include fcntl--.h. + + * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined. + (make_dir_parents): Treat ENOSYS like EEXIST. + + Improve quality of diagnostics on restore_cwd failure. + * lib/mkdir-p.h (make_dir): Remove. All uses replaced by mkdir. + (make_dir_parents): Last arg is now int * (for errno), not bool *. + * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise. + Rewrite "mkdir -p" algorithm to avoid the need for "stat" + each time through the loop. Do not diagnose restore_cwd failure; + that is the caller's job (and perhaps the caller does not care). + + * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove. + (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP. + If the file already exists but is not a directory, don't bother + to try to make its parents. + Close potential file descriptor leak if we can't chdir("/") (!). + Don't always return true if chdir($PWD) fails; return true only + if the requested action was done successfully (except for the + chdir($PWD)). + Don't log final directory unless we actually made it. + Refactor to avoid duplicate code to fix up permissions. + Don't attempt to fix up parent permissions if chdir($PWD) fails. + + * lib/strftime.c (my_strftime): Rewrite the previous change slightly, + to make it a bit faster and (I hope) clearer. + * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z. + Fix bug in formats like %2N. + + * lib/verify.h: New file. + +2005-09-22 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h. + +2005-09-22 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + + * m4/lstat.m4 (gl_FUNC_LSTAT): + Use AC_LIBSOURCES to require lstat.c and lstat.h. + Remove obsolete comment. + * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ. + * m4/xstrtod.m4: Likewise. + + * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c. + +2005-09-22 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + + * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case. + + * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just + the .tm_year member, since otherwise gcc-4.0 would now warn about + tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday. + + * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in + order to avoid an unsuppressible warning from gcc on 64-bit systems. + + * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that + the command "date -d'2005-03-27 +1 day'" succeeds once again, even + when run in a time zone for which daylight savings time is in effect + for the starting date. + + * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD) + stop us from restricting permissions of just-created absolute-named + directories. + * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing + to restore initial working directory. + * lib/mkdir-p.c (make_dir_parents): New parameter: + different_working_dir, to tell caller if/when we change the working + directory and are unable to return to the initial one. + * lib/mkdir-p.h (make_dir_parents): Update prototype. + * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to + `return false'. This fixes a bug introduced on 2004-07-30. + + * lib/openat.c (fdopendir): Be sure to close the supplied + file descriptor before returning. This makes our replacement + implementation a little closer to Solaris's, where fdopendir + ties the file descriptor to the returned DIR* pointer. + * lib/openat.c (unlinkat): New function. + * lib/openat.h (unlinkat): Add prototype. + * lib/openat-die.c (openat_save_fail): Rename from openat_save_die. + (openat_restore_fail): Rename from openat_restore_die. + * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming. + + Provide an alternative to exiting immediately upon save_cwd or + restore_cwd failure. Now, an application can arrange e.g., + to perform a longjump in that case. + * lib/openat.c: Include dirname.h. + Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash. + (rpl_openat, fdopendir, fstatat): Call openat_save_die + and openat_restore_die rather than calling error directly. + Don't include "error.h" or "exitfail.h"; they're no longer needed. + + * lib/openat-die.c (openat_save_die, openat_restore_die): New file. + * lib/openat.h (openat_save_die, openat_restore_die): Declare and + define. + + * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface: + size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm, + int utc, int nanoseconds); + Background: + date should not have to allocate a megabyte of virtual memory to + handle a format argument like +%1048575T. When implemented with + strftime, it must allocate such a buffer, use strftime to fill it + in, print it, then free it. + With fprintftime, it simply prints everything and exits. + With no need for memory allocation, that's one fewer way to fail. + * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the + optional field width, not before, so we accept %9:z, not %:9z. + (my_strftime): Be sure to use L_('x') for literals. + + * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c: + * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c: + * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c: + * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c: + * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c: + * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c: + * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c: + * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c: + * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c: + * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c: + * lib/xgethostname.c, lib/xreadlink.c: + Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally. + + * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c: + * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c: + * lib/openat.h, lib/save-cwd.c, lib/tempname.c: + Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally, + and don't include <sys/file.h>). + +2005-09-22 Eric Blake <ebb9@byu.net> (tiny change) + + Sync from coreutils. + + * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin. + [__linux__]: Allocate a big enough buffer for /proc/loadavg. + [!LDAV_DONE]: Avoid unused variable warning. + +2005-09-21 Bruno Haible <bruno@clisp.org> + + * lib/unicodeio.h (unicode_to_mb): New declaration. + +2005-09-20 Derek Price <derek@ximbiot.com> + + * lib/getaddrinfo.c: Don't include <netdb.h> included from + getaddrinfo.h. + +2005-09-20 Bruno Haible <bruno@clisp.org> + + * gnulib-tool: Remove trailing slashes from the values specified for + --source-base, --m4-base, --tests-base, --aux-dir. + Suggested by Simon Josefsson <jas@extundo.com>. + +2005-09-20 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_all_modules, func_modules_transitive_closure, + func_modules_to_filelist, func_import, func_create_testdir): Make all + sorting results locale-independent, so that gnulib-cache.m4 doesn't + change when gnulib-tool is invoked in a different locale. + +2005-09-19 Simon Josefsson <jas@extundo.com> + + * m4/socklen.m4: Fix typo. + +2005-09-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> + + Use a consistent style for including <config.h>. + * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c, + lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c, + lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c, + lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c, + lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c, + lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c, + lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c, + lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c, + lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c, + lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c, + lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c, + lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c, + lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c, + lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c, + lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, + lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c, + lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c, + lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c, + lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c, + lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c, + lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c, + lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c, + lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c, + lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c, + lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c, + lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c, + lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c, + lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c, + lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c, + lib/xstrtoumax.c, lib/yesno.c: + Standardize inclusion of config.h. + * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h, + lib/inttostr.h: Removed inclusion of config.h from header files. + * lib/inttostr.c: Adjusted in-tree users. + * lib/timespec.h: Remove superfluous warning to include config.h. + * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c, + lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c, + lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c, + lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of + config.h with HAVE_CONFIG_H. + +2005-09-19 Jim Meyering <jim@meyering.net> + + * modules/pathmax (License): Change to LGPL. + +2005-09-19 Derek Price <derek@ximbiot.com> + + * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h. + +2005-09-19 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (import): Provide default for --tests-base. + +2005-09-19 Bruno Haible <bruno@clisp.org> + + * doc/quote.texi: New file, extracted from gnulib.texi. + * doc/ctime.texi: New file, extracted from gnulib.texi. + * doc/inet_ntoa.texi: New file, extracted from gnulib.texi. + * doc/gnulib-tool.texi: New file, extracted from gnulib.texi. + * doc/gnulib.texi: Include them. + +2005-09-18 Bruno Haible <bruno@clisp.org> + + Portability fix. + * gnulib-tool (func_readlink): New function. + (func_ln_if_changed): Use it. + +2005-09-18 Bruno Haible <bruno@clisp.org> + + * gnulib-tool: Support --with-tests also with --import. + (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase. + (func_import): Use variables $testsbase and $inctests. Emit a + gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am. + Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and + SUBDIRS += $testsdir. + (func_create_testdir): Update. + +2005-09-18 Bruno Haible <bruno@clisp.org> + + * gnulib-tool: Revise --dry-run implementation. Use variable $doit + instead of $dry_run. + (func_cp_if_changed, func_mv_if_changed): Remove functions. + (func_ln_if_changed): Don't handle dry-run here. + (func_import): In dry-run mode, detect more precisely which actions + would be performed, and don't use "...ing" verbs. + +2005-09-18 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize. + (func_import): Use join on two temporary files instead of three nested + loops, in order to determine which files are new or old. + +2005-09-18 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Comment out code that spits out the + new files with --dry-run. + +2005-09-18 Bruno Haible <bruno@clisp.org> + + * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten. + +2005-09-16 Paul Eggert <eggert@cs.ucla.edu> + + * lib/stat-time.h: New file. + * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP): + (MTIME_CMP, TIMESPEC_NS): Remove. Now done by stat-time.h, + in a different way. + (timespec_cmp): New function. + * lib/utimecmp.c: Include stat-time.h. + (SYSCALL_RESOLUTION): Depend on whether various struct stat + members exist, not on the obsolescent ST_MTIM_NSEC. + (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS. + +2005-09-16 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c. + +2005-09-16 Paul Eggert <eggert@cs.ucla.edu> + + * MODULES.html.sh (File system functions): Add stat-time. + * modules/stat-time: New file. + * modules/timespec (Files): Remove m4/st_mtim.m4; this + is now done in a different way, by the stat-time module. + * modules/utimecmp (Depends-on): Add stat-time. + +2005-09-15 Paul Eggert <eggert@cs.ucla.edu> + + * m4/st_mtim.m4: Remove. Superseded by... + * m4/stat-time.m4: New file. + * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE. + Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed. + +2005-09-15 Derek Price <derek@ximbiot.com> + + * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here. + +2005-09-15 Derek Price <derek@ximbiot.com> + + * lib/regex_internal.h: Blank `pure' for GNUC < 3. + * lib/regex_internal.c: Ditto, using this... + (__GNUC_PREREQ): ...new macro. + * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1 + using... + (__GNUC_PREREQ): ...this new macro. + + * lib/strstr.h: Include string.h. Define strstr as a macro here. + +2005-09-15 Derek Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous + changes, consolidating in... + * lib/regex_internal.h: ...this file. + +2005-09-13 Jim Meyering <jim@meyering.net> + + * lib/canon-host.c: Filter through gnu indent and reword comments + slightly. + * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing. + +2005-09-13 Derek Price <derek@ximbiot.com> + + * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation + failure. + Reported by Jim Meyering <jim@meyering.net>. + +2005-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change) + + * lib/base64.c: Typo. + (base64_encode): Put b64str in initialized data section. + +2005-09-12 Paul Eggert <eggert@cs.ucla.edu> + + Merge glibc and coreutils changes into gnulib, plus a few + extra fixes. + * lib/md5.c: Use #error rather than a string. + (CYCLIC): New macro, from glibc source. Use it instead of rol. + * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already. + (__attribute__): Define to empty for non recent-GCC. + (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block): + (__md5_process_bytes, __md5_read_ctx, __md5_stream): + Renamed from their non-__ counterparts, with new macros replacing + them if not _LIBC. Add __THROW attribute. + (rol): Remove. + (struct md5_ctx): Align buffer if using GCC. + * lib/sha1.h (struct sha1_ctx): Likewise. + * lib/sha1.c (SWAP): Renamed from the NOTSWAP. All uses changed. + The old name was backwards. + (NOTSWAP): Remove; not used. + (rol): New macro, moved here from md5.h. + (sha1_process_block): Remove a FIXME that doesn't make sense. + +2005-09-12 Derek Price <derek@ximbiot.com> + + Return usable errors from canon-host. + * lib/canon-host.h: New file. + * lib/canon-host.c (canon_host): Wrap... + (canon_host_r): ...this new function, which now relies exclusively on + getaddrinfo. + (ch_strerror): New function. + (last_cherror): New global. + * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test + interface. + (getaddrinfo): Add AI_CANONNAME functionality. Don't do arithmetic on + void *. + (freeaddrinfo): Free ai->ai_canonname when set. + +2005-09-12 Derek Price <derek@ximbiot.com> + + Make canon-host require getaddrinfo. + * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies. + AC_LIBSOURCE canon-host.h. Call... + (gl_PREREQ_CANON_HOST): ...this new function, which requires + gl_GETADDRINFO. + * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed. + +2005-09-12 Derek Price <derek@ximbiot.com> + + * modules/canon-host: Add canon-host.h. Depend on getaddrinfo. Make + LGPL. + * modules/getaddrinfo: Add link to opengroup spec. Depend on strdup. + +2005-09-12 Derek Price <derek@ximbiot.com> + + * lib/gai_strerror.c: Include config.h when available. Include + getaddrinfo.h before other headers to test interface. + Reported by Larry Jones <lawrence.jones@ugs.com>. + +2005-09-12 Derek Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + * modules/glob (Files): Add glob-libc.h. + +2005-09-12 Derek Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c, + glob_.h, glob-libc.h. + (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed. + +2005-09-12 Derek Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + * lib/glob-libc.h: Renamed from glob_.h. The new version is + taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB' + protecting things that should be done only in gnulib contexts. + * lib/glob_.h: New file, containing only the glob things needed for + gnulib. + (GLOB_PREFIX): Remove. All uses changed to look for __GLOB_GNULIB. + (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed. + (glob, globfree, glob_pattern_p): Now defined simply in terms of + rpl_glob, rpl_globfree, rpl_glob_pattern_p. + (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer + and to respect the namespace rules better. + +2005-09-08 Simon Josefsson <jas@extundo.com> + + * modules/socklen: New file. + +2005-09-08 Simon Josefsson <jas@extundo.com> + + * m4/socklen.m4: New file. + +2005-09-08 Paul Eggert <eggert@cs.ucla.edu> + + * modules/utimens (Files): Add m4/utimbuf.m4, since + m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF. + Reported by Sergey Poznyakoff. + +2005-09-08 Paul Eggert <eggert@cs.ucla.edu> + + * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function + definitions, since that's the preferred style in glibc. + Fix a minor spacing issue, and update copyright notice to match + glibc's. + +2005-09-08 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Remove glibc bug 1061; it's been fixed. + +2005-09-06 Simon Josefsson <jas@extundo.com> + + * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not + TCSETATTR. Reported by Derek Price <derek@ximbiot.com>. + +2005-09-06 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall + warning. + +2005-09-06 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Add glibc bug 1302. + +2005-09-05 Paul Eggert <eggert@cs.ucla.edu> + + Change bitset word type from unsigned int to unsigned long int, + as this has better performance on typical 64-bit hosts. + Port bitset code to hosts with unusual word sizes. + * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp): + (build_collating_symbol): + Prefer bitset to re_bitset_ptr_t in prototypes, when the actual + argument is a bitset. This is merely a style issue, but it makes + it clearer that an entire array is expected. + (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps): + * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op): + Port to the case where bitset_word is not the same as unsigned int. + * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain): + (bitset_not, bitset_merge, bitset_set_all, bitset_mask): + Likewise. + * lib/regexec.c (check_dst_limits_calc_pos_1, + check_subexp_matching_top): + (build_trtable, group_nodes_into_DFAstates): + Likewise. + * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8): + Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS. + * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise. + * lib/regexec.c (group_nodes_into_DFAstates): Likewise. + * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff. + * lib/regcomp.c (optimize_subexps, lower_subexp): + Work even if bitset_word has holes in its bitwise representation. + * lib/regex_internal.h (BITSET_WORD_BITS): Likewise. + * lib/regexec.c (check_dst_limits_calc_pos_1, + check_subexp_matching_top): + Likewise. + * lib/regex_internal.c (re_string_reconstruct): + Don't assume UCHAR_MAX == 255. + * lib/regex_internal.h (bitset_set_all): Likewise. + * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS. + All uses changed. + (BITSET_WORDS): Renamed from BITSET_UINTS. All uses changed. + (bitset_word): New type, replacing 'unsigned int' for bitset uses. + All uses changed. + (BITSET_WORD_MAX): New macro. + (bitset_set, bitset_clear, bitset_contain, bitset_empty): + (bitset_set_all, bitset_copy): Now inline functions, not macros. + (bitset_empty, bitset_copy): + Prefer sizeof (bitset) to multiplying it out ourselves. + (bitset_not_merge): Remove; unused. + (bitset_contain): Return bool, not unsigned int with one bit on. + All callers changed. + * lib/regexec.c (build_trtable): Don't assume bitset has no stricter + alignment than re_node_set; do this by defining a new internal + type struct dests_alloc and using it to allocate memory. + +2005-09-05 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Fix comparison in handling of symbolic + links. + +2005-09-04 Martin Lambers <marlam@marlam.de> (tiny change) + + * modules/size_max (Makefile.am): Add size_max.h + +2005-09-04 Derek Price <derek@ximbiot.com> + + * gnulib-tool (func_import): Fix reversed $symbolic logic. + +2005-09-03 Simon Josefsson <jas@extundo.com> + + * gnulib-tool: Fix typo. + +2005-09-03 Simon Josefsson <jas@extundo.com> + + * config/srclist.txt: Add glibc bug 1293. + +2005-09-03 Derek Price <derek@ximbiot.com> + + * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error. + From Larry Jones <lawrence.jones@ugs.com>. + +2005-09-02 Simon Josefsson <jas@extundo.com> + + * modules/socklen: New file. + +2005-09-02 Simon Josefsson <jas@extundo.com> + + * modules/havelib: New module. + + * modules/gettext, modules/iconv, modules/lock, modules/readline: + Use havelib. + +2005-09-02 Paul Eggert <eggert@cs.ucla.edu> + + Check for arithmetic overflow when calculating sizes, to prevent + some buffer-overflow issues. These patches are conservative, in the + sense that when I couldn't determine whether an overflow was possible, + I inserted a run-time check. + * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New + macros. + (SIZE_MAX) [!defined SIZE_MAX]: New macro. + (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc): + (re_xnrealloc, re_x2nrealloc): New inline functions. + * lib/regcomp.c (init_dfa, analyze, build_range_exp, + parse_bracket_exp): + (build_equiv_class, build_charclass): Check for arithmetic overflow + in size expression calculations. + * lib/regex_internal.c (re_string_realloc_buffers): + (build_wcs_upper_buffer, re_node_set_add_intersect): + (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last): + (re_dfa_add_node, register_state): Likewise. + * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal): + (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival): + (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry): + (match_ctx_add_subtop, match_ctx_add_sublast): Likewise. + +2005-09-02 Paul Eggert <eggert@cs.ucla.edu> + + * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4, + m4/ulonglong.m4. Problem reported by Martin Lambers. + +2005-09-02 Bruno Haible <bruno@clisp.org> + + Support for lib vs. lib64 distinction on biarch platforms. + * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro. + (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'. + * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise. + +2005-09-02 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (import): In the other first-use case, provide defaults + as well. + +2005-09-02 Bruno Haible <bruno@clisp.org> + + * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have + patches not yet found in the latest gettext release. + +2005-09-01 Paul Eggert <eggert@cs.ucla.edu> + + * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX, + to avoid a collision with bits/local_lim.h in glibc. + All uses changed. Problem reported by Dmitry V. Levin in + <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>. + + * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability + bugs in int versus size_t comparisons. + (re_string_context_at): Fix bug where the code assumed that + Idx is signed. + + Use bool where appropriate. + * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int. + All callers changed. + (calc_eclosure_iter): Likewise, for ROOT arg. + (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg. + (build_charclass_op): Likewise, for NON_MATCH arg. + * lib/regex_internal.c (re_string_allocate, re_string_construct): + (re_string_construct_common): Likewise, for ICASE arg. + * lib/regexec.c (re_search_2_stub, re_search_stub): + Likewise, for RET_LEN arg. + (check_matching): Likewise, for FL_LONGEST_MATCH arg. + (set_regs): Likewise, for FL_BACKTRACK arg. + * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8): + (duplicate_node_closure, calc_inveclosure, calc_eclosure): + (calc_eclosure_iter, parse_bracket_exp): + Use bool for internal variables that are booleans. + * lib/regexec.c (re_search_internal, check_matching, + proceed_next_node): + (set_regs, build_sifted_states, sift_states_bkref): + (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub): + (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates): + (find_collation_sequence_value): + Likewise. + * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last): + (re_node_set_compare): + Return bool, not int. All callers changed. + * lib/regexec.c (check_halt_node_context, check_dst_limits): + (build_trtable, check_node_accept): Likewise. + * lib/regex_internal.h: Include stdbool.h. + + Fix bugs uncovered when converting to bool. + * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation + failure instead of charging ahead blindly. + * lib/regex_internal.c (register_state): Likewise. + * lib/regexec.c (re_search_2_stub): Use simpler method than boolean + for freeing internal storage. + (group_nodes_into_DFA_states): Use unsigned int, not int, for + bitset pieces used as boolean, to avoid undefined behavior + on hosts that do int overflow checking. + +2005-09-01 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Add glibc bugs 1285-1287. + +2005-09-01 Jim Meyering <jim@meyering.net> + + * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of + CHOWN_MODIFIES_SYMLINK, which is used by lchown.c. + Require gl_STAT_MACROS, too. + +2005-09-01 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (import): In the first-use case, provide defaults. + +2005-09-01 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Remove the .tmp files. + +2005-09-01 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Fix handling of symbolic links. + +2005-08-31 Paul Eggert <eggert@cs.ucla.edu> + + On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the + old glibc regex code mishandles strings longer than 2**31 bytes. + This patch fixes this when the regex code is used in gnulib + (i.e., outside glibc). + + This patch should not affect the use of the regex code inside + glibc. No doubt this problem also needs to be handled for glibc + as well, but the result will be an incompatible change to the + glibc ABI, and the old ABI will have to be supported too. That + can be the the subject for another patch. + + * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro, + governing whether the rest of this patch is active. By default, + the macro is disabled and the patch has no effect. + (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int. + (__re_idx_t, __re_size_t, __re_long_size_t): New types. + (struct re_pattern_buffer, re_search, re_search_2, re_match): + (re_match_2, re_set_registers): Use the new types. + * lib/regex_internal.h (Idx, re_hashval_t): New types. + (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX): + New macros. + (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers): + (re_string_context_at, bin_tree_t, re_dfastate_t): + (struct re_state_table_entry, state_array_t, re_sub_match_last_t): + (re_sub_match_top_t, re_match_context_t, re_sift_context_t): + (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t): + (re_string_char_size_at, re_string_wchar_at): + (re_string_elem_size_at): + Use the new types and macros to port to 64-bit hosts. + Use unsigned types for internal values, so that the code + mostly works even for arrays larger than SSIZE_MAX. + * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node): + (search_duplicated_node, calc_eclosure_iter, fetch_number): + (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp): + (build_equiv_class, build_charclass, re_compile_fastmap_iter): + (free_dfa_content, create_initial_state, optimize_utf8, analyze): + (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure): + (calc_inveclosure, parse_dup_op, build_range_exp): + (build_collating_symbol, parse_bracket_exp, build_charclass_op): + (fetch_number, create_token_tree, mark_opt_subexp): + Likewise. + * lib/regex_internal.c (re_string_construct_common, + create_ci_newstate): + (create_cd_newstate, re_string_allocate, re_string_construct): + (re_string_realloc_buffers, build_wcs_upper_buffer): + (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer): + (re_string_reconstruct, re_string_peek_byte_case): + (re_string_fetch_byte_case, re_string_context_at): + (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2): + (re_node_set_init_copy, re_node_set_add_intersect): + (re_node_set_init_union, re_node_set_merge, re_node_set_insert): + (re_node_set_insert_last, re_node_set_compare, re_node_set_contains): + (re_node_set_remove_at, re_dfa_add_node, calc_state_hash): + (re_acquire_state, re_acquire_state_context, register_state): + Likewise. + * lib/regex.c (match_ctx_init, match_ctx_add_entry, + search_cur_bkref_entry): + (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init): + (re_search_internal, re_search_2_stub, re_search_stub) + (re_copy_regs, check_matching, check_halt_state_context, update_regs): + (push_fail_stack, sift_states_iter_mb, build_sifted_states): + (update_cur_sifted_state, check_dst_limits): + (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos): + (check_subexp_limits, sift_states_bkref, merge_state_array): + (check_subexp_matching_top, get_subexp, get_subexp_sub): + (find_subexp_node, check_arrival, check_arrival_add_next_nodes): + (check_arrival_expand_ecl, check_arrival_expand_ecl_sub): + (expand_bkref_cache, check_node_accept_bytes): + (group_nodes_into_DFAstates, check_node_accept, regexec, re_match): + (re_search, re_match_2, re_search_2, prune_impossible_nodes): + (acquire_init_state_context, check_halt_node_context): + (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return): + (sift_states_backward, clean_state_log_if_needed): + (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log): + (find_recover_state, transit_state_sb, transit_state_mb): + (transit_state_bkref, build_trtable, match_ctx_clean): + Likewise. + * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned, + to work around an assumption that REG_MISSING is negative. + + * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]: + (seek_collating_symbol_entry) [defined _LIBC]: + (lookup_collation_sequence_value) [defined _LIBC]: + (build_range_exp, build_collating_symbol) [defined _LIBC]: + Use prototypes rather than old-style function definitions. + * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]: + (transit_state_sb) [0]: + (find_collation_sequence_value) [defined _LIBC]: Likewise. + + * lib/regexec.c (re_search_internal): Simplify update of rm_so and + rm_eo. + + * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char): + (optimize_subexps, lower_subexp): + Don't assume 1<<31 has defined behavior on hosts with 32-bit int, + since the signed shift might overflow. Use 1u<<31 instead. + * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain): + Likewise. + * lib/regexec.c (check_dst_limits_calc_pos_1, + check_subexp_matching_top): Likewise. + + * lib/regcomp.c (optimize_subexps, lower_subexp): + Use CHAR_BIT rather than 8, for clarity. + * lib/regexec.c (check_dst_limits_calc_pos_1): + (check_subexp_matching_top): Likewise. + * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't + have to worry about portability issues when shifting it left. + Remove no-longer-needed test for table_size > 0. + * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are + in a word, as the resulting behavior is undefined. + * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise; + in one case, a <= should have been an <, and in another case the + whole test was missing. + * lib/regex_internal.h (BYTE_BITS): Remove. All uses changed to + the standard name CHAR_BIT. + * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1; + this is not true on one's complement and signed-magnitude hosts. + + * lib/regex_internal.h (re_sub_match_top_t): Remove unused member + next_last_offset. + (struct re_dfa_t): Remove unused member states_alloc. + * lib/regcomp.c (init_dfa): Don't initialize unused members. + +2005-08-31 Paul Eggert <eggert@cs.ucla.edu> + + * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define + _REGEX_LARGE_OFFSETS). Test for regoff_t/off_t bug in 64-bit + and large-file glibc and in 32-bit large-file Solaris. + +2005-08-31 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer + lengths fit in regoff_t; this isn't true if regoff_t is the same + width as size_t. + * lib/regex.c (re_search_internal): 5th arg is LAST_START + (= START + RANGE) instead of RANGE. This avoids overflow + problems when regoff_t is the same width as size_t. + All callers changed. + (re_search_2_stub): Check for overflow when adding the + sizes of the two strings. + (re_search_stub): Check for overflow when adding START + to RANGE; if it occurs, substitute the extreme value. + +2005-08-31 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284. + +2005-08-31 Jim Meyering <jim@meyering.net> + + * lib/regcomp.c (search_duplicated_node): Make first pointer arg + a pointer-to-const. + * lib/regex_internal.c (create_ci_newstate, create_cd_newstate): + (register_state): Likewise. + * lib/regexec.c (search_cur_bkref_entry, check_dst_limits): + (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos): + (group_nodes_into_DFAstates): Likewise. + +2005-08-31 Jim Meyering <jim@meyering.net> + + * check-module: Add a FIXME comment. + +2005-08-31 Eric Blake <ebb9@byu.net> + + * modules/unistd-safer (Files): Add unistd--.h. + * modules/stdio-safer (Files): Add stdio--.h. + +2005-08-31 Derek Price <derek@ximbiot.com> + + * lib/getdelim.c (getdelim): Return EOF on EOF. + Reported by Larry Jones <lawrence.jones@ugs.com>. + +2005-08-31 Bruno Haible <bruno@clisp.org> + + Avoid unnecessary diffs in the generated lib/Makefile.am. + * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into + the generated files. + (func_import): Don't set cmd. + +2005-08-31 Bruno Haible <bruno@clisp.org> + + * lib/strstr.c: Include <stddef.h>, for NULL. + * lib/strcasestr.c: Likewise. + Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>. + +2005-08-31 Bruno Haible <bruno@clisp.org> + + * gnulib-tool: New option --macro-prefix. + (func_import): Use macro_prefix. + (import): Handle option --macro-prefix. + +2005-08-31 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (import): Rename most ac_* variables to cached_*. + Also use new variables cached_lgpl, cached_libtool. + +2005-08-31 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of + always instantiating them. + +2005-08-31 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Read the previous cached settings + from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were + earlier added by gnulib but are now dropped. Warn when a gnulib file + overwrites a non-gnulib file. + +2005-08-31 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and + gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for + projects that don't keep autogenerated files in CVS. Put into + actioncmd only the specified modules, not the transitive closure. + +2005-08-31 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Fix defaulting of $libname and $libtool. + Create directories that shall be filled. + (import): Don't look for gl_* macros in configure.ac. Recurse across + all directories containing a gnulib-cache.m4 files, if meaningful. + +2005-08-31 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL. + (import): Set seen_libtool when we see gl_LIBTOOL. + +2005-08-31 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit + declaration macro definitions from generated gnulib.m4. + +2005-08-30 Oskar Liljeblad <oskar@osk.mine.nu> + + * lib/iconvme.h: Add prototype for iconv_alloc. + +2005-08-29 Simon Josefsson <jas@extundo.com> + + * lib/iconvme.c: Fix errno. + +2005-08-29 Bruno Haible <bruno@clisp.org> + + * gnulib-tool: Enclose all occurrences of $destdir in "...", so + that it works when the directory contains spaces. + +2005-08-29 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist. + +2005-08-29 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Emit more comments into gnulib.m4. + Emit more advice. + +2005-08-29 Bruno Haible <bruno@clisp.org> + and Stepan Kasal <kasal@ucw.cz> + + * check-module: If more parameters are given, check each of them + separately; add more exceptions, as noted by Jim Meyering. + (check_module): New procedure. + (%exempt_header): Now contains all exceptions. + +2005-08-29 Ben Pfaff <blp@cs.stanford.edu> + + * modules/byteswap (Makefile.am): Fix rule to not assume GNU make. + +2005-08-29 Oskar Liljeblad <oskar@osk.mine.nu> + + * lib/iconvme.c: Split iconv_string into iconv_alloc. + +2005-08-28 Bruno Haible <bruno@clisp.org> + + * m4/gnulib-tool.m4: New file. + +2005-08-27 Jim Meyering <jim@meyering.net> + + * modules/unistd-safer (Files): Add pipe-safer.c. + * modules/fcntl-safer (Files): Add creat-safer.c. + +2005-08-27 Jim Meyering <jim@meyering.net> + + * m4/stdlib-safer.m4: New file. From coreutils. + * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h. + * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the + AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ. + * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c. + Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list. + +2005-08-27 Jim Meyering <jim@meyering.net> + + * lib/fopen-safer.c: Merge minor changes from coreutils. + * lib/dup-safer.c: Likewise. + * lib/fd-safer.c: Likewise. + + Merge from coreutils. + * lib/stdio--.h: New file. + * lib/stdlib--.h: New file. + * lib/mkstemp-safer.c: New file. + + GNU tar needs these. + * lib/pipe-safer.c: New file. + * lib/creat-safer.c: New file. + * lib/fcntl--.h (creat): Define to creat_safer. + * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer. + * lib/unistd--.h (pipe): Define to pipe_safer. + * lib/unistd-safer.h: Declare pipe_safer. + +2005-08-26 Simon Josefsson <jas@extundo.com> + + * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno + Haible <bruno@clisp.org>. + +2005-08-26 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regex_internal.h: Remove all references to + RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89 + or better. + (bitset_not, bitset_merge, bitset_not_merge): + (bitset_mask, re_string_allocate, re_string_construct): + (re_string_reconstruct, re_string_destruct, re_string_elem_size_at): + (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case): + (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1): + (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect): + (re_node_set_init_union, re_node_set_merge, re_node_set_insert): + (re_node_set_insert_last, re_node_set_compare, re_node_set_contains): + (re_node_set_remove_at, re_dfa_add_node, re_acquire_state): + (re_acquire_state_context): + Remove unnecessary forward decls. + (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at): + Put __attribute at function definition, + now that the function decl has been removed. + * lib/regex_internal.c (re_string_peek_byte_case): + (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains): + Likewise. + +2005-08-25 Stepan Kasal <kasal@ucw.cz> + + * m4/regex.m4: Add AC_PREREQ(2.50). + (gl_REGEX): If --with-included-regex was given, skip the autodetection. + +2005-08-25 Simon Josefsson <jas@extundo.com> + + * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and + __fsetlocking. + +2005-08-25 Simon Josefsson <jas@extundo.com> + + * lib/getpass.c: Add WIN32 implementation. Conditionalize use of + termios.h, tcgetattr, tcsetattr and __fsetlocking. Remove some + GLIBC specific code. + +2005-08-25 Paul Eggert <eggert@cs.ucla.edu> + + Make regex safe for g++. This fixes one real bug (an "err" + that should have been "*err"). g++ problem reported by + Sam Steingold. + * lib/regex_internal.h (re_calloc): New macro, consistent with + re_malloc etc. All callers of calloc changed to use re_calloc. + * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t, + not int. All callers changed. + * lib/regcomp.c (re_compile_fastmap_iter): Don't use + alloca (mb_cur_max); just use an array of size MB_LEN_MAX. + * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc. + (find_recover_state): Change "err" to "*err"; this fixes what + appears to be a real bug. + (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t + versus int. + +2005-08-25 Paul Eggert <eggert@cs.ucla.edu> + + * modules/regex (Depends-on): Add malloc, since the code + assumes that !malloc(0) means failure. + +2005-08-25 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regexec.c (set_regs): Don't alloca with an unbounded size. + + alloca modernization/simplification for regex. + * lib/regex.c: Remove portability cruft for alloca. This no longer + needs to be at the start of the file, and can be moved into + regex_internal.h and simplified. + * lib/regex_internal.h: Include <alloca.h>. + (__libc_use_alloca) [!defined _LIBC]: New macro. + * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code + now works outside glibc. + +2005-08-25 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Add glibc bugs 1241, 1245. + +2005-08-25 Jim Meyering <jim@meyering.net> + + * lib/open-safer.c: Include <config.h>. + Otherwise, we'd lose LARGEFILE support in any file using + e.g. "fcntl--.h" + +2005-08-25 Bruno Haible <bruno@clisp.org> + + * m4/minmax.m4: Require autoconf 2.52. + (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead + of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust + alternatives of translit over the alphabet. + Based on a patch from Stepan Kasal <kasal@ucw.cz>. + +2005-08-24 Simon Josefsson <jas@extundo.com> + + * tests/test-getpass.c: New file. + +2005-08-24 Paul Eggert <eggert@cs.ucla.edu> + + * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing + for GNU regex features. + +2005-08-24 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX. + * lib/regex.h (regerror): Likewise. + + * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer + requires this. (The code never needed it.) + + * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c: + All uses of recently-renamed identifiers changed to use the new, + POSIX-compliant names. The code will build and run just fine + without these changes, but it's better to eat our own dog food + and use the standard-conforming names. + + * lib/regex.h: Fix a multitude of POSIX name space violations. + These changes have an effect only for programs that define + _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they + do not change anything for programs compiled in the normal way. + Also, there is no effect on the ABI. + + (_REGEX_SOURCE): New macro. + Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both + defined and _GNU_SOURCE is not; this fixes a name space violation. + + Rename the following macros to obey POSIX requirements. + The old names are still visible as macros if _REGEX_SOURCE is defined. + (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from + RE_BACKSLASH_ESCAPE_IN_LISTS. + (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM. + (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES. + (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS. + (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS. + (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS. + (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE. + (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL. + (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE. + (REG_INTERVALS): renamed from RE_INTERVALS. + (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS. + (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT. + (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES. + (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS. + (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS. + (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR. + (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES. + (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from + RE_UNMATCHED_RIGHT_PAREN_ORD. + (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING. + (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS. + (REG_DEBUG): renamed from RE_DEBUG. + (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD. + (REG_IGNORE_CASE): renamed from RE_ICASE. This renaming is a bit + unusual, since we can't clash with the POSIX REG_ICASE. + (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE. + (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP. + (REG_NO_SUB): renamed from RE_NO_SUB. + (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS. + (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK. + (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK. + (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK. + (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP. + (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP. + (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP. + (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED. + (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED. + (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON. + (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC. + (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from + RE_SYNTAX_POSIX_MINIMAL_BASIC. + (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED. + (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from + RE_SYNTAX_POSIX_MINIMAL_EXTENDED. + (REG_DUP_MAX): renamed from RE_DUP_MAX. No need to undef it. + (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED. + (REG_REALLOCATE): Renamed from REGS_REALLOCATE. + (REG_FIXED): Renamed from REGS_FIXED. + (REG_NREGS): Renamed from RE_NREGS. + + (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values + of other REG_* macros, since POSIX says the user is allowed to + #undef these macros selectively. + + (reg_errcode_t): Update comment stating what other tables need + to be consistent. + + Rename the following enum values to obey POSIX requirements. + The old names are still visible as macros. + (_REG_ENOSYS): Renamed from REG_ENOSYS. Define even if _XOPEN_SOURCE + is not defined, since GNU is supposed to be a superset of POSIX as + much as possible, and since we want reg_errcode_t to be a signed + type for implementation consistency. + (_REG_NOERROR): Renamed from REG_NOERROR. + (_REG_NOMATCH): Renamed from REG_NOMATCH. + (_REG_BADPAT): Renamed from REG_BADPAT. + (_REG_ECOLLATE): Renamed from REG_ECOLLATE. + (_REG_ECTYPE): Renamed from REG_ECTYPE. + (_REG_EESCAPE): Renamed from REG_EESCAPE. + (_REG_ESUBREG): Renamed from REG_ESUBREG. + (_REG_EBRACK): Renamed from REG_EBRACK. + (_REG_EPAREN): Renamed from REG_EPAREN. + (_REG_EBRACE): Renamed from REG_EBRACE. + (_REG_BADBR): Renamed from REG_BADBR. + (_REG_ERANGE): Renamed from REG_ERANGE. + (_REG_ESPACE): Renamed from REG_ESPACE. + (_REG_BADRPT): Renamed from REG_BADRPT. + (_REG_EEND): Renamed from REG_EEND. + (_REG_ESIZE): Renamed from REG_ESIZE. + (_REG_ERPAREN): Renamed from REG_ERPAREN. + (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE): + (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN): + (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND): + (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants. + + (_REG_RE_NAME, _REG_RM_NAME): New macros. + (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE. All uses + changed. But support the old name if the new one is not defined + and if _REGEX_SOURCE. + + Change the following member names in struct re_pattern_buffer. + The old names are still supported if !_REGEX_SOURCE. + The new names are always supported, regardless of _REGEX_SOURCE. + (re_buffer): Renamed from buffer. + (re_allocated): Renamed from allocated. + (re_used): Renamed from used. + (re_syntax): Renamed from syntax. + (re_fastmap): Renamed from fastmap. + (re_translate): Renamed from translate. + (re_can_be_null): Renamed from can_be_null. + (re_regs_allocated): Renamed from regs_allocated. + (re_fastmap_accurate): Renamed from fastmap_accurate. + (re_no_sub): Renamed from no_sub. + (re_not_bol): Renamed from not_bol. + (re_not_eol): Renamed from not_eol. + (re_newline_anchor): Renamed from newline_anchor. + + Change the following member names in struct re_registers. + The old names are still supported if !_REGEX_SOURCE. + The new names are always supported, regardless of _REGEX_SOURCE. + (rm_num_regs): Renamed from num_regs. + (rm_start): Renamed from start. + (rm_end): Renamed from end. + + (re_set_syntax, re_compile_pattern, re_compile_fastmap): + (re_search, re_search_2, re_match, re_match_2, re_set_registers): + Prepend __ to parameter names. + + Undo yesterday's changes. + +2005-08-24 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Remove glibc bug 1233 and add 1236, which + supersedes it. Add glibc bugs 1237, 1238, 1240. Comment out + lib/regex.c. + +2005-08-24 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + * m4/fcntl-safer.m4: New file. + + * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source + and object files for this module. + +2005-08-24 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files. + +2005-08-24 Jim Meyering <jim@meyering.net> + + * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line, + now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h. + +2005-08-24 Jim Meyering <jim@meyering.net> + + * modules/fcntl-safer: New module. + * modules/fts (Depends-on): Add fcntl-safer. + * MODULES.html.sh (File descriptor based Input/Output): + Add fcntl-safer. + +2005-08-24 Bruno Haible <bruno@clisp.org> + + Support for unit test modules. + * modules/README: Mention tests modules. + * modules/TEMPLATE-TESTS: New file. + * gnulib-tool: New options --extract-tests-module, --with-tests and + --tests-base (unused for the moment). + (testsbase, inctests): New variables. + (func_all_modules): Exclude TEMPLATE-TESTS and *-tests. + (func_verify_module): Exclude TEMPLATE-TESTS. + (func_verify_nontests_module, func_verify_tests_module): New functions. + (func_get_dependencies): Add implicit dependency for tests modules. + (func_get_tests_module): New function. + (func_modules_transitive_closure): When --with-tests was specified, + include the unit tests as well, unless explicitly avoided. + (func_emit_lib_Makefile_am): Ignore the tests modules here. + (func_emit_tests_Makefile_am): New function. + (func_create_testdir): When --with-tests was specified, emit a + tests/ directory. + * MODULES.html.sh (Future developments): Update. + +2005-08-24 Bruno Haible <bruno@clisp.org> + + * modules/tls-tests: New file. + * tests/test-tls.c: New file, from GNU gettext. + +2005-08-24 Bruno Haible <bruno@clisp.org> + + * modules/lock-tests: New file. + * tests/test-lock.c: New file, from GNU gettext. + +2005-08-24 Bruno Haible <bruno@clisp.org> + + * lib/lock.h: Add multiple inclusion guard. + * lib/tls.h: Add multiple inclusion guard. + +2005-08-24 Bruno Haible <bruno@clisp.org> + + * gnulib-tool: Add support for the --aux-dir option to + --create-testdir, --create-megatestdir, --test, --megatest. + (func_create_testdir, func_create_megatestdir): Optionally emit a + AC_CONFIG_AUX_DIR directive. + (create-testdir, create-megatestdir, test, megatest): Provide a + default value for $auxdir. + +2005-08-24 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (import): Use compound statement instead of subshell + where possible. + +2005-08-24 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (import): Change --aux-dir default to "build-aux". + +2005-08-24 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_version): Update. + +2005-08-24 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import, func_create_testdir, + func_create_megatestdir): Quote all autoconf macro arguments. + +2005-08-24 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_create_megatestdir): Call autoreconf without the + option --force, because --force causes the aclocal.m4 of each + subdirectory to be newer than the corresponding config.h.in. + +2005-08-23 Paul Eggert <eggert@cs.ucla.edu> + + * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used. + All contents moved to gl_REGEX. + (gl_REGEX): Don't bother checking whether lib/regex.c exists; + assume that it does. + +2005-08-23 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regex.h (REG_NOSYS) + [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]: + Define, since POSIX requires it as of 2001. + (_REG_ENOSYS) + [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]: + New private symbol, used to keep the enum signed in all cases. + * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James + Youngman in + <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>. + + * lib/regex_internal.c (re_string_skip_chars, register_state): + (calc_state_hash): + Remove forward decls; no longer needed now that we use prototypes. + * lib/regexec.c (acquire_init_state_context, check_halt_node_context): + (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes): + (clean_state_log_if_needed): Likewise. + +2005-08-23 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Add glibc bugs 1231-1233. + +2005-08-20 Paul Eggert <eggert@cs.ucla.edu> + + Fix problems reported by Sam Steingold in + <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>. + * lib/regexec.c (sift_states_bkref): Fix portability bug: the code + assumed that reg_errcode_t is a signed type, which is not + necessarily true if _XOPEN_SOURCE is not defined. + * lib/regex_internal.c (calc_state_hash): Put 'inline' before type, + since some compilers warn about it otherwise. + +2005-08-20 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regcomp.c (create_initial_state): Remove duplicate decl. + (init_word_char, create_initial_state, duplicate_node_closure): + (fetch_token, peek_token_bracket, build_range_exp): + (build_collating_symbol): Remove forward decls; no longer needed + now that we use prototypes. + + * lib/regcomp.c: + (re_compile_pattern, re_set_syntax, re_compile_fastmap): + (re_compile_fastmap_iter, regcomp, regerror, regfree): + (re_compile_internal, init_dfa, init_word_char, free_workarea_compile): + (create_initial_state, optimize_utf8, analyze, postorder, preorder): + (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next): + (link_nfa_nodes, duplicate_node_closure, search_duplicated_node): + (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter): + (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp): + (parse_branch, parse_expression, parse_sub_exp, parse_dup_op): + (build_range_exp, build_collating_symbol, parse_bracket_exp): + (parse_bracket_element, parse_bracket_symbol, build_equiv_class): + (build_charclass, build_charclass_op, fetch_number, create_tree): + (create_token_tree, mark_opt_subexp, duplicate_tree): + Use prototypes rather than old-style definitions. + + * lib/regex_internal.c: + (re_string_allocate, re_string_construct, re_string_realloc_buffers): + (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer): + (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer): + (re_string_reconstruct, re_string_peek_byte_case): + (re_string_fetch_byte_case, re_string_destruct, re_string_context_at): + (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2): + (re_node_set_init_copy, re_node_set_add_intersect): + (re_node_set_init_union, re_node_set_merge, re_node_set_insert): + (re_node_set_insert_last, re_node_set_compare, re_node_set_contains): + (re_node_set_remove_at, re_dfa_add_node, calc_state_hash): + (re_acquire_state, re_acquire_state_context, register_state): + (create_ci_newstate, create_cd_newstate, free_state): + Likewise. + * lib/regexec.c (regexec, re_match, re_search, re_match_2, + re_search_2): + (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers): + (re_search_internal, prune_impossible_nodes): + (acquire_init_state_context, check_matching, static): + (check_halt_node_context, check_halt_state_context, proceed_next_node): + (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return): + (update_regs, sift_states_backward, build_sifted_states): + (clean_state_log_if_needed, merge_state_array): + (update_cur_sifted_state, add_epsilon_src_nodes): + (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1): + (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref): + (sift_states_iter_mb, transit_state, merge_state_with_log, static): + (find_recover_state, check_subexp_matching_top, transit_state_mb): + (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node): + (check_arrival, check_arrival_add_next_nodes): + (check_arrival_expand_ecl, check_arrival_expand_ecl_sub): + (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates): + (check_node_accept_bytes, check_node_accept, extend_buffers): + (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry): + (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast): + (sift_ctx_init): + Likewise. + + * lib/regex_internal.h: + (re_string_allocate, re_string_construct, re_string_reconstruct): + (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer): + (build_upper_buffer, re_string_translate_buffer, re_string_destruct): + (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at): + (re_string_context_at, re_string_peek_byte_case): + (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES + is defined, since we now use prototypes always. + + * lib/regex.h (_RE_ARGS): Remove. No longer needed, since we assume + C89 or better. All uses removed. + +2005-08-20 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Add glibc bugs 1220-1227. + +2005-08-20 Jim Meyering <jim@meyering.net> + + * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration + of unused local, dfa. + +2005-08-20 Bruno Haible <bruno@clisp.org> + + * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE. + +2005-08-19 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert): + (re_node_set_insert_last, re_dfa_add_node): + Rename local variables to avoid GCC shadowing warnings. + +2005-08-19 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regex_internal.c (re_acquire_state, re_acquire_state_context) + [defined lint]: Suppress bogus uninitialized-variable warnings. + + * lib/regcomp.c (duplicate_node): Return new index, not an error code, + and let the caller return REG_ESPACE if out of space. This + removes an uninitialied-variable warning with GCC 4.0.1, and also + avoids taking the address of a local variable. All callers + changed. + +2005-08-19 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c, + $LIBCSRC/posix/regexec.c. + Add glibc bug 1217 for regcomp.c. + +2005-08-19 Jim Meyering <jim@meyering.net> + + * lib/regexec.c (proceed_next_node): Redo local variables to + avoid GCC shadowing warnings. + +2005-08-18 Bruno Haible <bruno@clisp.org> + + * lib/strstr.c (strstr): Fix return value in multibyte case. + * lib/strcasestr.c (strcasestr): Likewise. + +2005-08-17 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regex.h: Remove useless space-before-tab. From coreutils. + +2005-08-17 Jim Meyering <jim@meyering.net> + + Make the %s format (seconds since the epoch) work for a negative + number and when used with a zero-padded field width, e.g. %015s. + + * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding' + label so that it precedes the code to set `digits'. Otherwise, + %0Ns wouldn't work. Before this change, `date -d @-22 +%05s' would + print `00-22'. Now, it prints `-0022', as it should. + +2005-08-17 Bruno Haible <bruno@clisp.org> + + * modules/strstr (Files): Add m4/mbrtowc.m4. + (Depends-on): Add mbuiter. + +2005-08-17 Bruno Haible <bruno@clisp.org> + + * modules/strcasestr: New file. + * MODULES.html.sh (String handling, based on ANSI C 89): Add + strcasestr. + +2005-08-17 Bruno Haible <bruno@clisp.org> + + * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar. + +2005-08-17 Bruno Haible <bruno@clisp.org> + + * modules/mbuiter: New file. + * MODULES.html.sh (Extended multibyte and wide character utilities): + Add mbuiter. + +2005-08-17 Bruno Haible <bruno@clisp.org> + + * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always. + (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC. + +2005-08-17 Bruno Haible <bruno@clisp.org> + + * m4/strcasestr.m4: New file. + +2005-08-17 Bruno Haible <bruno@clisp.org> + + * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function. + * lib/strstr.c: Completely rewritten, with multibyte locale support. + +2005-08-17 Bruno Haible <bruno@clisp.org> + + * lib/strcasestr.h: New file. + * lib/strcasestr.c: New file. + +2005-08-17 Bruno Haible <bruno@clisp.org> + + * lib/strcasecmp.c: Use mbuiter.h. + +2005-08-17 Bruno Haible <bruno@clisp.org> + + * lib/mbuiter.h: New file. + +2005-08-16 Paul Eggert <eggert@cs.ucla.edu> + + * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results + of gl_GETOPT_SUBSTITUTE. That way, if both gl_GETOPT_SUBSTITUTE + and gl_GETOPT are both invoked via different paths (as happens + with GNU tar CVS because it uses both argp and getopt), the former + wins. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * modules/tls: New file. + * MODULES.html.sh (Multithreading): Add tls. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * modules/strnlen1: New file. + * MODULES.html.sh (String handling): Add strnlen1. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * modules/strcase (Files): Add m4/mbrtowc.m4. + (Depends-on): Add strnlen1, mbchar. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * modules/mbiter: New file. + * MODULES.html.sh (Extended multibyte and wide character utilities): + Add mbiter. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * modules/mbfile: New file. + * MODULES.html.sh (Extended multibyte and wide character utilities): + Add mbfile. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * modules/mbchar: New file. + * MODULES.html.sh (Extended multibyte and wide character utilities): + New section. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * m4/tls.m4: New file, from GNU gettext. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function + always. + (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * m4/mbiter.m4: New file. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * m4/mbfile.m4: New file. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * m4/mbchar.m4: New file. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * lib/tls.h: New file, from GNU gettext. + * lib/tls.c: New file, from GNU gettext. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * lib/strnlen1.h: New file. + * lib/strnlen1.c: New file. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field. + (mbi_init): Update. + (mbi_avail, mbi_advance): Let the iteration end before the terminating + NUL byte, not after it. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * lib/strcase.h (strcasecmp): Add note in comments. + * lib/strncasecmp.c: Use code from strcasecmp.c. + * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant. + (strcasecmp): Work correctly in multibyte locales. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * lib/mbiter.h: New file. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * lib/mbfile.h: New file. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * lib/mbchar.h: New file. + * lib/mbchar.c: New file. + +2005-08-16 Bruno Haible <bruno@clisp.org> + + * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after + the valid ones. Makes the comparison operations transitive: + cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0. + * lib/strcasecmp.c (strcasecmp): Use mb_casecmp. + +2005-08-15 Simon Josefsson <jas@extundo.com> + + * modules/ssize_t (License): Change to 'unlimited'. + + * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license. + +2005-08-15 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h. + Add comments for each pending glibc patch. + +2005-08-15 Bruno Haible <bruno@clisp.org> + + * lib/regex.h (__restrict_arr): Don't define to __restrict if + __cplusplus is defined. + +2005-08-14 Jim Meyering <jim@meyering.net> + + Sync from coreutils. + + * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir): + Use the hash-table-based cycle-detection code not just when + FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL. + Reported by James Youngman in + <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>. + * lib/fts_.h: Mention that with FTS_LOGICAL, we use + FTS_TIGHT_CYCLE_CHECK. + * lib/fts.c (fts_cross_check) [FTS_DEBUG]: + s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG, + once again. + * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own. + * lib/fts.c (fd_safer): Remove decl. + Include fcntl--.h rather than unistd-safer.h + (fts_safe_changedir): Don't call fd_safer; no longer needed + now that we include fcntl--.h. + +2005-08-12 Simon Josefsson <jas@extundo.com> + + * modules/getndelim2: Use ssize_t module. + * modules/getnline: Likewise. + * modules/safe-read: Likewise. + * modules/xreadlink: Likewise. + + * modules/ssize_t: New file. + +2005-08-12 Simon Josefsson <jas@extundo.com> + + * m4/readline.m4: Look for termcap, curses or ncurses if required. + +2005-08-12 Simon Josefsson <jas@extundo.com> + + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add + ssize_t. + +2005-08-12 Simon Josefsson <jas@extundo.com> + + * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add + readline, getdelim and check_version. + (Support for systems lacking ISO C 99: Sizes of integer types): + Add size_max. + +2005-08-12 Bruno Haible <bruno@clisp.org> + + * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first. + +2005-08-11 Simon Josefsson <jas@extundo.com> + + * modules/readline: New file. + + * modules/strnlen (Files): Add strnlen.h. + +2005-08-11 Simon Josefsson <jas@extundo.com> + + * m4/readline.m4: New file. + +2005-08-11 Simon Josefsson <jas@extundo.com> + + * lib/readline.h, readline.c: New file. + +2005-08-11 Simon Josefsson <jas@extundo.com> + + * doc/gnulib.texi (Initial import, Finishing touches): Mention + gl_AVOID. + +2005-08-11 Bruno Haible <bruno@clisp.org> + + * lib/strnlen.h (strnlen): Change parameter name to match comment. + +2005-08-10 Stepan Kasal <kasal@ucw.cz> + + * m4/onceonly_2_57.m4: Really require Autoconf 2.57. + +2005-08-10 Simon Josefsson <jas@extundo.com> + + * tests/test-iconvme.c: New file. + +2005-08-10 Simon Josefsson <jas@extundo.com> + + * m4/strnlen.m4: New file. + + * m4/strndup.m4: Don't check for strnlen declaration, done in + strnlen.m4. + +2005-08-10 Simon Josefsson <jas@extundo.com> + + * lib/strndup.c: Use strnlen.h. + + * lib/strnlen.h: New file. + +2005-08-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change) + + * README: Typos. + +2005-08-02 Simon Josefsson <jas@extundo.com> + + * modules/readline: New file. + +2005-08-02 Simon Josefsson <jas@extundo.com> + + * modules/getdelim: New file. + + * modules/getline: Rewrite, don't use getndelim2. + +2005-08-02 Simon Josefsson <jas@extundo.com> + + * m4/getline.m4: Separate out getdelim stuff into separate module. + + * m4/getdelim.m4: New file. + +2005-08-02 Simon Josefsson <jas@extundo.com> + + * lib/getline.h, getline.c: Rewrite. + + * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc. + +2005-07-31 Bruno Haible <bruno@clisp.org> + + * lib/lock.h (gl_lock_initializer): New macro. + (gl_lock_define_initialized): Use it. + (gl_rwlock_initializer): New macro. + (gl_rwlock_define_initialized): Use it. + (gl_recursive_lock_initializer): New macro. + (gl_recursive_lock_define_initialized): Use it. + +2005-07-30 Karl Berry <karl@gnu.org> + + * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib. + Report from Ben Pfaff, regarding getopt. + +2005-07-26 Paul Eggert <eggert@cs.ucla.edu> + + Add support to getopt for Emacs, which doesn't use LIBOBJS in the + normal way. + * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro. + (gl_GETOPT_SUBSTITUTE): Use it. Invoke gl_PREREQ_GETOPT. + (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros. + (gl_GETOPT): Use the new macros. Most of the implementation + is moved to the new macros. This is for programs like Emacs + that don't want all the functionality of gl_GETOPT. + +2005-07-26 Bruno Haible <bruno@clisp.org> + + * m4/lock.m4: Update from GNU gettext. + +2005-07-26 Bruno Haible <bruno@clisp.org> + + * lib/lock.h: Update from GNU gettext. + * lib/lock.c: Update from GNU gettext. + +2005-07-25 Paul Eggert <eggert@cs.ucla.edu> + + * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the + obsolescent AC_TRY_RUN. Include the default includes files, for + 'exit'. + +2005-07-24 Bruno Haible <bruno@clisp.org> + + * modules/visibility: New file. + * MODULES.html.sh (Misc): Add visibility. + +2005-07-24 Bruno Haible <bruno@clisp.org> + + * m4/visibility.m4: New file. + +2005-07-24 Bruno Haible <bruno@clisp.org> + + * doc/visibility.texi: New file. + +2005-07-22 Bruno Haible <bruno@clisp.org> + + * modules/alloca-opt (Makefile.am): Remove explicit dependency on + $(ALLOCA_H), redundant through BUILT_SOURCES. + * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H), + redundant through BUILT_SOURCES. + * modules/byteswap (Makefile.am): Remove explicit dependency on + $(BYTESWAP_H), redundant through BUILT_SOURCES. + * modules/fnmatch (Makefile.am): Remove explicit dependency on + $(FNMATCH_H), redundant through BUILT_SOURCES. + * modules/getopt (Makefile.am): Remove explicit dependency on + $(GETOPT_H), redundant through BUILT_SOURCES. + * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H), + redundant through BUILT_SOURCES. + * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H), + redundant through BUILT_SOURCES. + * modules/stdbool (Makefile.am): Remove explicit dependency on + $(STDBOOL_H), redundant through BUILT_SOURCES. + * modules/stdint (Makefile.am): Remove explicit dependency on + $(STDINT_H), redundant through BUILT_SOURCES. + * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES. + Remove explicit dependency on $(SYSEXITS_H). + Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>. + +2005-07-18 Simon Josefsson <jas@extundo.com> + + * lib/check-version.c (check_version): Accept identical versions too. + +2005-07-18 Bruno Haible <bruno@clisp.org> + + * modules/lock: New file. + * MODULES.html.sh (Multithreading): New section. + +2005-07-18 Bruno Haible <bruno@clisp.org> + + * m4/lock.m4: New file, from GNU gettext. + +2005-07-18 Bruno Haible <bruno@clisp.org> + + * lib/lock.h: New file, from GNU gettext. + * lib/lock.c: New file, from GNU gettext. + +2005-07-18 Bruno Haible <bruno@clisp.org> + + * lib/lock.h (gl_once_t): New type. + (gl_once_define, gl_once): New macros. + * lib/lock.c (fresh_once): New variable. + (glthread_once, glthread_once_call, glthread_once_singlethreaded): New + functions. + +2005-07-16 Simon Josefsson <jas@extundo.com> + + * doc/gnulib.texi (Library version handling): Add ELF symbol collision + workaround, suggested by Bruno. + +2005-07-15 Paul Eggert <eggert@cs.ucla.edu> + + * modules/xalloc (Depends-on): Add xalloc-die. + * modules/xvasprintf (Depends-on): Add xalloc-die. + +2005-07-15 Paul Eggert <eggert@cs.ucla.edu> + + * lib/quotearg.c: Add translator comment suggested by Bruno Haible, + with a minor change. + +2005-07-15 Bruno Haible <bruno@clisp.org> + + * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug. + When using lib/poll.c, define poll as rpl_poll. + +2005-07-14 Paul Eggert <eggert@cs.ucla.edu> + + * modules/argp (Depends-on): Remove unlocked-io. + +2005-07-14 Derek Price <derek@ximbiot.com> + + * m4/glob.m4 (gl_GLOB): Cache glob interface check result. Add check + for glob symlink bug. + +2005-07-14 Bruno Haible <bruno@clisp.org> + + * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO. + Instead, test for *_unlocked function declarations directly. + +2005-07-11 Simon Josefsson <jas@extundo.com> + + * modules/size_max: New file. + + * modules/xsize: Depend on size_max module for size_max.m4. + +2005-07-11 Simon Josefsson <jas@extundo.com> + + * lib/size_max.h: New file. + +2005-07-11 Paul Eggert <eggert@cs.ucla.edu> + + * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the + copyright symbol and the year. + * lib/version-etc.c (COPYRIGHT_YEAR): New constant. + (version_etc_va): Use parameterized copyright notice. + Reword to conform to the current GNU coding standards. + +2005-07-11 Karl Berry <karl@gnu.org> + + * doc/gnulib.texi (Quoting): new node. + (Initial import): more info, from Patrice. + +2005-07-11 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_usage): Document option --avoid. + (Command line options): Handle --avoid. + (func_acceptable): New function. + (func_modules_transitive_closure): Use it. + +2005-07-11 Bruno Haible <bruno@clisp.org> + + * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site. + Reported by Jim Meyering. + +2005-07-10 Bruno Haible <bruno@clisp.org> + + * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t. + Needed when size_t is smaller than 'unsigned int'. + Reported by Paul Eggert. + +2005-07-09 Sergey Poznyakoff <gray@gnu.org.ua> + + * modules/argp (Depends-on): Add unlocked-io + +2005-07-09 Sergey Poznyakoff <gray@gnu.org.ua> + + * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary + block of defines. + +2005-07-08 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Comment out regcomp.c, since we have a porting + fix now. + +2005-07-08 Eric Blake <ebb9@byu.net> (tiny change) + and Paul Eggert <eggert@cs.ucla.edu> + + * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value + in wint_t, not wchar_t. Remove now-unnecessary cast. + +2005-07-07 Paul Eggert <eggert@cs.ucla.edu> + + * modules/regex (Files): Add lib/regex_internal.c, + lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4. + (Depends-on): Add extensions. + (Makefile.am): Remove lib_SOURCES; now done by m4 code. + +2005-07-07 Paul Eggert <eggert@cs.ucla.edu> + + * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on + pathconf. + * m4/same.m4 (gl_SAME): Likewise. + Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase. + + * m4/regex.m4: Adjust to new libc regex implementation. + (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for + all the .c and .h parts of (the new) regex. + Quote the m4 stuff better. + Check for RE_ICASE bug of old gnulib. + Check for REG_STARTEND of recent libc. + Rename local variables from jm_* to gl_*. + Quote operand of "test -f". + Say "recent enough" version of libc, not "version 2". + (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a + prerequisite module. Remove AC_HEADER_STDC; no longer needed. + Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll. + Remove check for btowc, isascii. + Require AM_LANGINFO_CODESET. + +2005-07-07 Paul Eggert <eggert@cs.ucla.edu> + + * lib/regex.c, regex.h: Sync from libc. + * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h: + * lib/regexec.c: + New files, synced from libc, except that regex_internal.h + currently has a small porting fix. + +2005-07-07 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Add regcomp.c, regex.c, regex.h, + regex_internal.c, regexec.c. + Add regex_internal.h too, but as a comment, since the libc version + is currently broken in gnulib mode. + +2005-07-06 Paul Eggert <eggert@cs.ucla.edu> + + Support programs like Emacs that use gnulib but not gettext. + * MODULES.html.sh (Internationalization functions): Add gettext-h. + * modules/gettext-h: New file. + * modules/gettext (Files): Remove lib/gettext.h. + (Depends-on): Add gettext-h. + (Makefile.am): Remove lib_SOURCES. + * modules/argmatch, modules/c-stack, modules/closeout: + * modules/copy-file, modules/csharpcomp, modules/csharpexec: + * modules/execute, modules/file-type, modules/getaddrinfo: + * modules/getopt, modules/human, modules/javacomp: + * modules/javaexec, modules/mkdir-p, modules/obstack: + * modules/openat, modules/pagealign_alloc, modules/pipe: + * modules/quotearg, modules/regex, modules/rpmatch: + * modules/unicodeio, modules/userspec, modules/version-etc: + * modules/wait-process, modules/xalloc-die, modules/xmemcoll: + * modules/xsetenv: + Depend on gettext-h, not gettext. + +2005-07-05 Paul Eggert <eggert@cs.ucla.edu> + + * gnulib-tool (func_import): Add support for 'public domain' license. + * modules/alloca, modules/atexit, modules/memmove: + Now public domain, not GPL. + * modules/dup2, modules/getpagesize, modules/malloc, modules/memset: + * modules/realloc, modules/strerror, modules/strtod: + Now LGPL, not GPL. + +2005-07-05 Bruno Haible <bruno@clisp.org> + + * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current + autoconf CVS. Needed for mingw. + +2005-07-03 Paul Eggert <eggert@cs.ucla.edu> + + Remove the dependency of the strftime module on the tzset module. + * modules/strftime (Depends-on): Remove dependency on tzset. + +2005-07-03 Paul Eggert <eggert@cs.ucla.edu> + + Remove the dependency of the strftime module on the tzset module. + * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require + gl_FUNC_TZSET_CLOBBER. + +2005-07-03 Paul Eggert <eggert@cs.ucla.edu> + + Remove the dependency of the strftime module on the tzset module. + * lib/strftime.c (my_strftime) + [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]: + Copy the input structure, to work around some of the bug with + Solaris 2.5.1 and Solaris 2.6. If you still care about these old + Solaris releases, you should also use the tzset module, but we won't + require it as a dependency any more since we don't want LGPLed code + to depend on GPLed code. + +2005-07-02 Jim Meyering <jim@meyering.net> + + * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4: + * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4: + * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4: + Don't check for fcntl.h, and don't test for HAVE_FCNTL_H. + +2005-07-02 Jim Meyering <jim@meyering.net> + + * lib/backupfile.c (backup_args): Change a `0' to NULL. + +2005-07-01 Paul Eggert <eggert@cs.ucla.edu> + + * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h> + declares only 'struct timespec;' (!). + +2005-07-01 Jim Meyering <jim@meyering.net> + + * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c: + * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c: + * lib/save-cwd.c, tempname.c: + Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally, + and don't include <sys/file.h>). + +2005-06-29 Jim Meyering <jim@meyering.net> + + * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded + type name. Use the variable name instead. + * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname): + Likewise. + +2005-06-28 Simon Josefsson <jas@extundo.com> + + * modules/check-version (Files): Add check-version.m4. + +2005-06-28 Simon Josefsson <jas@extundo.com> + + * m4/check-version.m4: New file, suggested by Jim Meyering + <jim@meyering.net>. + +2005-06-28 Simon Josefsson <jas@extundo.com> + + * lib/check-version.h, lib/check-version.c: New files. + +2005-06-28 Simon Josefsson <jas@extundo.com> + + * lib/base64.c (base64_encode): Indent. Rename 'b64' to avoid + collision with global variable. Better indentation. Don't + increment buffer pointer beyond buffer end. Based on comments + from Paul Eggert <eggert@cs.ucla.edu>. + + * lib/base64.h: Indent. + +2005-06-28 Simon Josefsson <jas@extundo.com> + + * doc/gnulib.texi (Library version handling): New section. + +2005-06-28 Jim Meyering <jim@meyering.net> + + * check-module (find_included_lib_files): Hard-code another + pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h + but modules/fts-lgpl (correctly) does not list those files. + + * modules/canonicalize (Files): Add lib/pathmax.h. + +2005-06-25 Simon Josefsson <jas@extundo.com> + + * modules/check-version: New file. + +2005-06-24 Paul Eggert <eggert@cs.ucla.edu> + + * lib/canon-host.c (canon-host): Append trailing "," to 0 in + initializer of struct addrinfo, as an indication that we don't + care how many members the structure has. + +2005-06-24 Derek Price <derek@ximbiot.com> + and Bruno Haible <bruno@clisp.org> + + Remove stat module & update lstat. + * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of + AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK. + * m4/stat.m4: Remove this file. + +2005-06-24 Derek Price <derek@ximbiot.com> + and Bruno Haible <bruno@clisp.org> + + Remove stat module & update lstat. + * lib/stat.c: Remove this file... + (slash_aware_lstat): ...moving this content and its support... + * lib/lstat.c (rpl_lstat): ...into here. + * lib/lstat.h: New file. + +2005-06-24 Derek Price <derek@ximbiot.com> + and Bruno Haible <bruno@clisp.org> + + Remove stat module & update lstat. + * config/srclist.txt (libc sources): Remove stat. + +2005-06-24 Derek Price <derek@ximbiot.com> + and Bruno Haible <bruno@clisp.org> + + Remove stat module & update lstat. + * MODULES.html.sh (stat): Remove. + * MODULES.html: Regenerated. + * modules/lstat (Description): Correct function name. + (Files): Add "lstat.h". + (Depends-on): Remove stat, add xalloc, stat-macros. + * modules/stat: Remove this file. + (Include): Add "lstat.h", remove <sys/stat.h>. + +2005-06-23 Paul Eggert <eggert@cs.ucla.edu> + + * lib/mktime.c: Include <string.h> even if !DEBUG. (From glibc.) + (ranged_convert): Don't save conversion in a temporary struct. + This causes a warning with GCC 4.0.0, and anyway in the typical + case it's not worth the extra 100 bytes or so of code. + (ranged_convert, __mktime_internal): When calling a function via a + pointer P, use P () rather than (*P) (), as we now assume C89 or + better. + +2005-06-22 Paul Eggert <eggert@cs.ucla.edu> + + * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and + "who -r" failed to give output. Problem reported by Tim Waugh. + + * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant. + (xcalloc): Use it to avoid needless tests. + Problem reported by Jim Meyering. + +2005-06-20 Derek Price <derek@ximbiot.com> + + * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be + unnecessary for Autoconfs > 2.59c. + +2005-06-16 Sergey Poznyakoff <gray@Mirddin.farlep.net> + + * lib/argp.h (__option_is_short): Check upper limit of + __key. Isprint() requires its argument to have the value + of an unsigned char or EOF. + +2005-06-16 Jim Meyering <jim@meyering.net> + + * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1) + when either N or S is zero. + +2005-06-16 Derek Price <derek@ximbiot.com> + + * m4/bison.m4: Declare YACC & YFLAGS precious. + +2005-06-10 Paul Eggert <eggert@cs.ucla.edu> + + * lib/fnmatch.c (fnmatch): If there is an encoding error in a + multibyte string or pattern, fall back on unibyte matching. + Problem reported by James Youngman. + +2005-06-08 Bruno Haible <bruno@clisp.org> + + * modules/csharpcomp: New file. + * MODULES.html.sh (C#): Add csharpcomp. + +2005-06-08 Bruno Haible <bruno@clisp.org> + + * m4/csharpcomp.m4: New file, from GNU gettext. + +2005-06-08 Bruno Haible <bruno@clisp.org> + + * lib/csharpcomp.h: New file, from GNU gettext. + * lib/csharpcomp.c: New file, from GNU gettext. + * lib/csharpcomp.sh.in: New file, from GNU gettext. + +2005-06-08 Bruno Haible <bruno@clisp.org> + + * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc + warning on mingw. + +2005-06-07 Derek Price <derek@ximbiot.com> + + Sync from CVS. + * lib/glob_.h: Indent nested #ifdef. + +2005-06-02 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + Use "file name" when talking about file names, instead of "filename" + or "path", as per the GNU coding standards. + * lib/mkdir-p.c: Renamed from makepath.c. + (make_dir_parents): Renamed from make_path. All callers changed. + * lib/mkdir-p.h: Likewise. All includers changed. + * lib/filenamecat.c: Renamed from path-concat.c. + (file_name_concat): Renamed from path_concat. All callers changed. + [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT. + * lib/filenamecat.h: Likewise. All includers changed. + * lib/acl.c: Don't use "path" or "filename" to mean "file name" + in comments or local variable names. + * lib/basename.c: Likewise. + * lib/canonicalize.c, canonicalize.h: Likewise. + * lib/dirname.c, dirname.h: Likewise. + * lib/euidaccess.c: Likewise. + * lib/exclude.c: Likewise + * lib/fnmatch_.h, fnmatch_loop.c: Likewise. + * lib/fsusage.c, fsuage.h: Likewise. + * lib/fts.c, fts_.h: Likewise. + * lib/getcwd.c: Likewise. + * lib/getloadavg.c: Likewise. + * lib/mkstemp.c: Likewise. + * lib/mountlist.c, mountlist.h: Likewise. + * lib/openat.c, openat.h: Likewise. + * lib/readlink-stub.c: Likewise. + * lib/readutmp.c, readutmp.h: Likewise. + * lib/rename.c: Likewise. + * lib/rmdir.c: Likewise. + * lib/same.c: Likewise. + * lib/savedir.c: Likewise. + * lib/stripslash.c: Likewise. + * lib/tempname.c: Likewise. + * lib/xreadlink.c: Likewise. + * lib/exclude.c (excluded_file_name): Renamed from excluded_filename. + All uses changed. + * lib/exclude.h: Likewise. + + * lib/euidaccess.c (getuid, getgid, getuid, getegid) + [!defined _POSIX_VERSION]: Remove decls; not needed these days. + * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam) + [!defined _POSIX_VERSION]: Remove decls; not needed these days. + * lib/pathmax.h: Include <limits.h> unconditionally, since other + files have been getting away with it for years (MORE/BSD 4.3 + is extinct now). + * lib/userspec.c (getpwnam, getgrnam, getgrgid) + [!defined _POSIX_VERSION]: Remove decls; not needed these days. + + * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]: + Define to 256, not 255, as per modern POSIX. + +2005-06-02 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + Use "file name" when talking about file names, instead of "filename" + or "path", as per the GNU coding standards. + * MODULES.html.sh: mkdir-p renamed from makepath. + filenamecat renamed from path-concat. + * modules/filenamecat: Renamed from modules/path-concat. + (Files): filenamecat.h and filenamecat.c renamed from + path-concat.h and path-concat.c. + (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT. + (Include): filenamecat.h, not path-concat.h. + * modules/mkdir-p: Renamed from modules/makepath. + (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and + makepath.c. + (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH. + (Include): mkdir-p.h, not makepath.h. + +2005-06-02 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + * m4/mkdir-p.m4: Renamed from makepath.m4. + (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH. All uses changed. + Rename files from makepath.c to mkdir-p.c, and from + makepath.h to mkdir-p.h. + * m4/filenamecat.m4: Renamed from path-concat.m4. + (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT. All uses changed. + Rename files from path-concat.c to filenamecat.c, + and from path-concat.h to filenamecat.h. + * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean + "file name" in local variables or comments. + * m4/rename.m4: Likewise. + +2005-06-01 Bruno Haible <bruno@clisp.org> + + * modules/csharpexec: New file. + * MODULES.html.sh (C#): New section. + +2005-06-01 Bruno Haible <bruno@clisp.org> + + * m4/csharp.m4: New file, from GNU gettext. + * m4/csharpexec.m4: New file, from GNU gettext. + +2005-06-01 Bruno Haible <bruno@clisp.org> + + * lib/csharpexec.h: New file, from GNU gettext. + * lib/csharpexec.c: New file, from GNU gettext. + * lib/csharpexec.sh.in: New file, from GNU gettext. + +2005-05-31 Derek Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + Sync from cvs. + * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment. + +2005-05-31 Derek Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + Sync from cvs. + * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment. + +2005-05-29 Derek Price <derek@ximbiot.com> + + * config/srclist.txt (glob_.h, glob.c): Add these files. + +2005-05-29 Derek Price <derek@ximbiot.com> + + * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section. + * modules/glob: New file. + * modules/getlogin_r: Add link to POSIX spec in description. + +2005-05-29 Derek Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + * m4/glob.m4: New file. + +2005-05-29 Derek Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + * lib/glob_.h, lib/glob.c: New files. + +2005-05-27 Paul Eggert <eggert@cs.ucla.edu> + + * modules/fts (Files): Remove m4/inttypes-pri.m4. + * modules/fts-lgpl (Depends-on): Remove gettext. + +2005-05-27 Paul Eggert <eggert@cs.ucla.edu> + + * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h, + and don't require gt_INTTYPES_PRI. + +2005-05-27 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return. + + * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts; + the configuration hassle isn't worth it. + Include inttypes.h and stdint.h unconditionally if FTS_DEBUG. + (LONGEST_MODIFIER, PRIuMAX): Remove. + +2005-05-27 Bruno Haible <bruno@clisp.org> + + * lib/getlogin_r.h: Remove second include of <stddef.h>. + +2005-05-26 Paul Eggert <eggert@cs.ucla.edu> + + * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define + _POSIX_PTHREAD_SEMANTICS for Solaris. + +2005-05-25 Derek Price <derek@ximbiot.com> + + * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section. + +2005-05-25 Derek Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + * modules/getlogin_r, m4/getlogin_r.m4: New files. + * lib/getlogin_r.c, getlogin_r.h: New files. + +2005-05-25 Bruno Haible <bruno@clisp.org> + Derek Price <derek@ximbiot.com> + + * lib/getlogin_r.h: Simplify API documentation. + +2005-05-23 Derek Price <derek@ximbiot.com> + + * modules/minmax (Files): Add m4/minmax.m4. + (configure.ac): Add gl_MINMAX. + +2005-05-22 Paul Eggert <eggert@cs.ucla.edu> + + * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function, + so that unistd-safer.h (GPL'ed code) need not be included. + +2005-05-22 Bruno Haible <bruno@clisp.org> + + * m4/minmax.m4: New file. + Based on a patch by Derek Price <derek@ximbiot.com>. + +2005-05-22 Bruno Haible <bruno@clisp.org> + + * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs. + (INT64_MIN): Fix definition. + Suggested by Paul Eggert <eggert@cs.ucla.edu>. + + * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from + NEED_SIGNED_INT_TYPES. + + * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from + HAVE_SYSTEM_INTTYPES. + +2005-05-22 Bruno Haible <bruno@clisp.org> + + * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX. + Also include <sys/param.h> if it defines MIN, MAX. + Based on a patch by Derek Price <derek@ximbiot.com>. + +2005-05-21 Jim Meyering <jim@meyering.net> + + * modules/fts (Files): Add m4/inttypes-pri.m4. + (Depends-on): Add lstat and remove gettext. Alphabetize. + +2005-05-20 Paul Eggert <eggert@cs.ucla.edu> + + New fts module. + * lib/fts.c: Don't include "cycle-check.h" or "hash.h". + (setup_dir, free_dir): New functions. + (enter_dir, leave_dir): Define trivial + alternatives of _LGPL_PACKAGE. Move to fts-cycle.c if !_LGPL_PACKAGE. + (HT_INITIAL_SIZE, ENTER_DIR): Remove. All uses removed. + (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir. + (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir): + Move to fts-cycle.c. + (fts_open): Use setup_dir. + (fts_close): Use free_dir. + (fts_read): Have just one copy of the ENTER_DIR code rather than three. + This adds a label and some gotos, but the alternatives were messier. + Check for memory allocation failure when entering a dir. + (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code. + * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro. + (FTS): New member fts_cycle, that is a union that contains the + old active_dir_ht and cycle_state. All uses changed to mention + fts_cycle.ht and fts_cycle.state. + * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of + fts.c, with the following changes: + (setup_dir, free_dir): New functions. + (enter_dir): Now returns bool. Return true if successful, false + if memory exhausted. All callers changed. + Do not bother partly cleaning up on + memory allocation failure; that is free_dir's job. + However, free ad if hash_insert fails, to avoid memory leak. + (enter_dir, leave_dir): Accommodate change to FTS by inspecting + fts->fts_options to see which union member to use. + +2005-05-20 Paul Eggert <eggert@cs.ucla.edu> + + * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS. + (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros. + +2005-05-20 Paul Eggert <eggert@cs.ucla.edu> + + * MODULES.html.sh (File system functions): Add fts, fts-lgpl. + +2005-05-20 Jim Meyering <jim@meyering.net> + + * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]: + Now a macro, to pacify GCC. + +2005-05-20 Eric Blake <ebb9@byu.net> (tiny change) + + * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs + of -1. + +2005-05-20 Eric Blake <ebb9@byu.net> (tiny change) + + * lib/chown.c (rpl_chown): Return -1 on failure. + +2005-05-18 Paul Eggert <eggert@cs.ucla.edu> + + * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]): + Don't check for stddef.h. + * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we + don't use its results. + Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h, + since we include them unconditionally. Don't require + AM_STDBOOL_H, since stdbool is a prerequisite. + Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t + since we assume C89 or better. + Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT, + as we don't use their results. + Don't check for fchdir, memmove, memset, strrchr, as we use + them unconditionally. + * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define + GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it. + +2005-05-18 Paul Eggert <eggert@cs.ucla.edu> + + * lib/canonicalize.c: Include canonicalize.h first, to test interface. + Include <stddef.h> unconditionally, since we assume C89 now. + All uses of PTR_INT_TYPE replaced by ptrdiff_t. + * lib/fts.c: Include fts_.h first, to check interface. + Do not include intprops.h; no longer needed. + Include cycle-check.h and hash.h, since fts_.h no longer does. + Remove unnecessary casts of closedir to void. + (fts_build): Use a simpler method (not involving TYPE_SIGNED) to + decide whether to decrement nlinks. + * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed. + (FTS): Use struct hash_table * instead of Hash_table, so that + we no longer need to include hash.h here. + +2005-05-18 Jim Meyering <jim@meyering.net> + + * modules/dirfd (License): Change to LGPL. Most of the code + is already in the public domain. + +2005-05-18 Jim Meyering <jim@meyering.net> + + * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list. + Reported by Yoann Vandoorselaere. + +2005-05-17 Jim Meyering <jim@meyering.net> + + * m4/fts.m4: New file, from coreutils. + +2005-05-17 Jim Meyering <jim@meyering.net> + + * lib/fts.c, lib/fts_.h: New files, from coreutils. + +2005-05-14 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + * m4/unlinkdir.m4: New file. + +2005-05-14 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + * lib/unlinkdir.c, lib/unlinkdir.h: New files. + * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h, + lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h: + White space changes only. + * lib/makepath.c (make_path): Port to hosts where leading "//" is + special. + * lib/yesno.c: Include getline.h, not ctype.h. + (yesno): Don't remove leading white space; POSIX doesn't allow it. + Use getline to remove arbitrary restriction on response length. + +2005-05-14 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist-update: Spell out "Street" in FSF postal + mail address; this is the style the FSF seems to prefer. + + * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh, + build-aux/missing, build-aux/mkinstalldirs: Sync from Automake; + this updates FSF postal mail address. + + Sync from coreutils. + * modules/unlinkdir: New file. + * modules/yesno (Depends-on): Add getline. + * MODULES.html.sh (File system functions): Add unlinkdir. + +2005-05-13 Paul Eggert <eggert@cs.ucla.edu> + + * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c, + lib/strsep.h: + Change the initial comment to refer to GPL, not LGPL. + gnulib-tool will change it to LGPL as needed. + + * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c, + lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c, + lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h, + lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h, + lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c, + lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c, + lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c, + lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h, + lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h, + lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c, + lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h, + lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c, + lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset, + lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h, + lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c, + lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h, + lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c, + lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h, + lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c, + lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h, + lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c, + lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h, + lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c, + lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h, + lib/full-write.c, lib/full-write.h, lib/fwriteerror.c, + lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h, + lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h, + lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h, + lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h, + lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c, + lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c, + lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h, + lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h, + lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c, + lib/getusershell.c, lib/group-member.c, lib/group-member.h, + lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h, + lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c, + lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h, + lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c, + lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h, + lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c, + lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h, + lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c, + lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h, + lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c, + lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c, + lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c, + lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c, + lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c, + lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c, + lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c, + lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h, + lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c, + lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c, + lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h, + lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c, + lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h, + lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c, + lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c, + lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c, + lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c, + lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h, + lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c, + lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c, + lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c, + lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c, + lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c, + lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h, + lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h, + lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h, + lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c, + lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c, + lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h, + lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c, + lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c, + lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c, + lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c, + lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h, + lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h, + lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h, + lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h, + lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h, + lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h, + lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c, + lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c, + lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h, + lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h, + lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c, + lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h, + lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, + lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h, + lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c, + lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, + lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h, + lib/yesno.c, lib/yesno.h: + Update FSF postal mail address. + +2005-05-13 Paul Eggert <eggert@cs.ucla.edu> + + * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c, + tests/test-memmem.c, tests/test-stpncpy.c: + Update FSF postal mail address. + +2005-05-13 Bruno Haible <bruno@clisp.org> + + * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t, + int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX, + UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, + INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN, + INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C): + Add support for 64-bit integers in the MSVC compiler. + +2005-05-12 Sergey Poznyakoff <gray@Mirddin.farlep.net> + + * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST + +2005-05-12 Eric Blake <ebb9@byu.net> (tiny change) + + * gnulib-tool (func_import): Sort and uniquify recommended includes. + +2005-05-11 Paul Eggert <eggert@cs.ucla.edu> + + * doc/getdate.texi (General date syntax): Don't say that date + date --iso-8601=ns generates acceptable dates; it doesn't yet. + Problem reported by Nic Ferrier. + +2005-05-10 Yoann Vandoorselaere <yoann.v@prelude-ids.com> + + * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are + specified in ai_socktype. Fix invalid ai_protocol + check. ai_protocol is usually set to 0 or depending on + ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP. Checking for + SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid. Set + ai_socktype / ai_protocol in the returned addrinfo structure. + +2005-05-10 Simon Josefsson <jas@extundo.com> + + * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from + Yoann Vandoorselaere <yoann.v@prelude-ids.com>. + +2005-05-10 Karl Berry <karl@gnu.org> + + * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address + (from http://www.gnu.org/licenses). + * doc/COPYING.LIB: also rename to COPYING.LESSER. + * doc/COPYING.DOC: remove; per rms, only needed in doc files, so + fdl.texi suffices. + +2005-05-10 Karl Berry <karl@gnu.org> + + * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB. + (COPYING.DOC): remove. + + * config/srclist-update: new FSF address. + +2005-05-10 Derek Price <derek@ximbiot.com> + + * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when + possible. + +2005-05-09 Yoann Vandoorselaere <yoann.v@prelude-ids.com> + Bruno Haible <bruno@clisp.org> + + * modules/inet_ntop: New file. + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add + inet_ntop. + +2005-05-09 Yoann Vandoorselaere <yoann.v@prelude-ids.com> + Bruno Haible <bruno@clisp.org> + + * m4/inet_ntop.m4: New file. + +2005-05-09 Yoann Vandoorselaere <yoann.v@prelude-ids.com> + Bruno Haible <bruno@clisp.org> + + * lib/inet_ntop.h: New file. + * lib/inet_ntop.c: New file, from glibc with modifications. + +2005-05-09 Paul Eggert <eggert@cs.ucla.edu> + + * modules/time_r (License): Change to LGPL. + * modules/extensions (License): Change to LGPL. Actually, + the license is more permissive than that, but currently gnulib-tool + doesn't know how to handle more-permissive licenses. + + * modules/stat-macros (Depends-on): Don't depend on stat-macros (!). + Problem reported by Dave Love. + +2005-05-08 Jim Meyering <jim@meyering.net> + + * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing + blank. + +2005-05-06 Paul Eggert <eggert@cs.ucla.edu> + + * modules/argmatch (Depends-on): Add stdbool. + * modules/backupfile (Depends-on): Likewise. + * modules/chdir-long (Depends-on): Likewise. + * modules/closeout (Depends-on): Likewise. + * modules/cycle-check (Depends-on): Likewise. + * modules/dirname (Depends-on): Likewise. + * modules/fnmatch (Depends-on): Likewise. + * modules/fsusage (Depends-on): Likewise. + * modules/fwriteerror (Depends-on): Likewise. + * modules/getcwd (Depends-on): Likewise. + * modules/getloadavg (Depends-on): Likewise. + * modules/hard-locale (Depends-on): Likewise. + * modules/makepath (Depends-on): Likewise. + * modules/mountlist (Depends-on): Likewise. + * modules/nanosleep (Depends-on): Likewise. + * modules/posixtm (Depends-on): Likewise. + * modules/quotearg (Depends-on): Likewise. + * modules/readtokens (Depends-on): Likewise. + * modules/readtokens0 (Depends-on): Likewise. + * modules/readutmp (Depends-on): Likewise. + * modules/save-cwd (Depends-on): Likewise. + * modules/strftime (Depends-on): Likewise. + * modules/userspec (Depends-on): Likewise. + * modules/utimecmp (Depends-on): Likewise. + * modules/xgetcwd (Depends-on): Likewise. + * modules/xnanosleep (Depends-on): Likewise. + * modules/xstrtod (Depends-on): Likewise. + * modules/yesno (Depends-on): Likewise. + +2005-05-05 Paul Eggert <eggert@cs.ucla.edu> + + * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid + needless checks. + +2005-05-01 Paul Eggert <eggert@cs.ucla.edu> + + Merge from coreutils. Among other things, + add bulletproofing for cases where stdin, stdout, or stderr are closed. + * lib/fd-safer.c: New file. + * lib/fcntl-safer.h, open-safer.c: Remove. + * lib/chdir-long.c: Fix comment "fetish" -> "coreutils". + * lib/dup-safer.c: Include unistd-safer.h first. + Don't include errno.h. + (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work. + * lib/file-type.h: Don't assume invoker included sys/stat.h first. + * lib/file-type.c: Rely on file-type.h change. + * lib/getloadavg.c: Include unistd-safer.h. + (getloadavg): Use safer open. + * lib/getusershell.c: Include "stdio-safer.h". + (getusershell): Use safer fopen. + * lib/long-options.c (long_options): Use NULL rather than 0. + * lib/modechange.h (mode_free): Remove; all callers changed to invoke + 'free'. + * lib/modechange.c: Likewise. + xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed. + (MODE_DONE): New constant. + (struct mode_change): Remove 'next' member. + (make_node_op_equals): New function; like the old one of the + same name, except it allocates an array. + (mode_compile, mode_create_from_ref): Use it. + (mode_compile): Allocate result as an array, not a linked list. + Parse octal string ourself, so that we catch mistakes like "+0". + (mode_adjust): Arg is an array, not a linked list. + * lib/modechange.c: Include stat-macros.h, xalloc.h. + (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR): + (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU): + (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS): + Remove. This is now stat-macros.h's job. + (talloc): Remove. All callers replaced by xalloc, so that + our invokers don't have to worry about reporting memory failures. + (make_node_op_equals): Remove. + (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING): + New constants. + (struct mode_change): Moved here from modechange.h. + (mode_append_entry): Remove. + (mode_compile): Remove MASKED_OPS arg, since it encouraged + apps to have incorrect behavior. Use simpler algorithm for head + and tail. Don't futz with umask; that's now the job of mode_adjust. + Detect more invalid usages rather than having somewhat-random behavior. + Don't insert an "a=" action, as that leads to incorrect behavior. + (mode_compile, mode_create_from_ref): Return NULL on error instead + of an enum, since now there's only one way to have an error. All + callers changed. + (mode_adjust): Accept new arg UMASK_VALUE, and interpret it + at the correct time. Simplify calculation of "+u" and its ilk. + Don't mishandle "+X". + (mode_free): Remove "register" and localize decls. + * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING): + (struct mode_change): Move to modechange.c; callers don't + need to see this stuff. + (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL): + (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove. + (mode_change, mode_adjust): Reflect the new signatures noted above. + * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros + that might redefine system include files. + (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro. + (my_usleep): Use NULL rather than (void *) 0. + (rpl_nanosleep) [!defined SA_NOCLDSTOP]: + Use siginterrupt to specify that system calls should be interrupted. + (rpl_nanosleep): Move initialization of suspended closer to call of + my_usleep. + * lib/readutmp.h (read_utmp): New arg OPTIONS. All uses changed. + * lib/readutmp.c: Likewise. Include signal.h, stdbool.h. + (desirable_utmp_entry): New function. + (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation + using x2nrealloc, to simplify logic. + (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in + size calculation. Do not assume utmp file is a regular file. + * lib/readutmp.h (UT_PID): Moved here from ../src/who.c. + (READ_UTMP_CHECK_PIDS): New constant. + * lib/save-cwd.c: Include unistd-safer.h. + (save_cwd): Use fd_safer. + * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove. + [!_LIBC] Include "stat-macros.h" instead. + * lib/unistd-safer.h (fd_safer): New decl. + +2005-05-01 Paul Eggert <eggert@cs.ucla.edu> + + * modules/getloadavg (Depends-on): Add unistd-safer. + * modules/getusershell (Depends-on): Add stdio-safer. + * modules/lstat (Depends-on): Remove xalloc. + * modules/mkstemp (Depends-on): Add stat-macros. + * modules/modechange (Depends-on): Remove xstrtol. + Add stat-macros, xalloc. + * modules/save-cwd (Depends-on): Add unistd-safer. + * modules/stdio-safer (Makefile.am): Remove lib_SOURCES. + * modules/unistd-safer (Files): Add lib/fd-safer.c + (Makefile.am): Remove lib_SOURCES. + + * MODULES.html.sh (Enhancements for POSIX:2001 functions): + Remove fcntl-safer; unistd-safer supersedes it. + +2005-05-01 Paul Eggert <eggert@cs.ucla.edu> + + * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require + AC_HEADER_STAT. + * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise. + (gl_PREREQ_CHOWN): Remove. + * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling + it. Don't require AC_HEADER_STAT. + (gl_PREREQ_LSTAT): Remove. + * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once. + Don't require AC_HEADER_STAT. + * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT. + (gl_PREREQ_RMDIR): Remove. + * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't + mention stat-macros.h or AC_HEADER_STAT, since we'll make + the stat-macros module a prerequisite. + * m4/file-type.m4 (gl_FILE_TYPE): Likewise. + * m4/filemode.m4 (gl_FILEMODE): Likewise. + * m4/makepath.m4 (gl_MAKEPATH): Likewise. + * m4/modechange.m4 (gl_MODECHANGE): Likewise. + * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for + variable names. + * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from + fetish_FUNC_RMDIR_NOTEMPTY. All uses changed. Use gl_ for + variable prefixes. + * m4/fcntl-safer.m4: Remove. + * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ. + * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise. + Invoke gl_PREREQ_FD_SAFER. + (gl_PREREQ_FD_SAFER): New macro. + * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt. + * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE. + Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible. + Remove duplicate call to AC_LIBOBJ(readutmp). + (gl_PREREQ_READUTMP): Remove. All uses inlined. + + * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for + MAP_ANON. Problem reported by Moriyoshi Koizumi to bug-cvs. + +2005-05-01 Paul Eggert <eggert@cs.ucla.edu> + + * MODULES.html.sh (Misc): Add byteswap. + +2005-05-01 Oskar Liljeblad <oskar@osk.mine.nu> + + * modules/getcwd (Depends-on): Add extensions. + * modules/openat (Depends-on): Likewise. + +2005-05-01 Oskar Liljeblad <oskar@osk.mine.nu> + + * modules/byteswap: New file. + +2005-05-01 Oskar Liljeblad <oskar@osk.mine.nu> + + * m4/byteswap.m4: New file. + +2005-05-01 Oskar Liljeblad <oskar@osk.mine.nu> + + * lib/byteswap_.h: New file. + +2005-04-25 Karl Berry <karl@gnu.org> + + * m4/gettext.m4: Update from GNU gettext 0.14.4. + +2005-04-25 Albert Chin <china@thewrittenword.com> + + * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop + Toolkit C bug. + +2005-04-21 Oskar Liljeblad <oskar@osk.mine.nu> + + * gnulib-tool (Options): Add -s for --symlink/--symbolic. + (func_ln_if_changed) Remove forcibly for no error message + in case file does not exist. + +2005-04-19 Simon Josefsson <jas@extundo.com> + + * gnulib-tool (Options): Make --symlink mean --symbolic. + +2005-04-18 Oskar Liljeblad <oskar@osk.mine.nu> + + * doc/gnulib.texi (Initial import): Fix. Mention --aux-dir. + +2005-04-16 Simon Josefsson <jas@extundo.com> + + * modules/getpass-gnu (Makefile.am): Don't mention getpass.h. + +2005-04-15 Simon Josefsson <jas@extundo.com> + + * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES. + +2005-04-15 Simon Josefsson <jas@extundo.com> + + * gnulib-tool: Rename --symlink to --symbolic. + +2005-04-15 Oskar Liljeblad <oskar@osk.mine.nu> + + * gnulib-tool: Add -s, --symlink option to gnulib-tool to make + symbolic links to files instead of copying/moving. Add --aux-dir, + specifying directory relative --dir where auxiliary build tools + are placed. + +2005-04-14 Bruno Haible <bruno@clisp.org> + + * modules/allocsa (License): Change to LGPL. + Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>. + +2005-04-13 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so + that "UTC +1 second" continues to work. Problem reported + by Dmitry V. Levin. + (relunit_snumber): New rule. + (relunit): Use it. + +2005-04-12 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getdate.y (universal_time_zone_table): New constant. + (time_zone_table): Remove GMT, UT, UTC entries; they're now in + universal_time_zone_table. + (lookup_zone): Prefer universal_time_zone_table to + local_time_zone_table, so that "GMT" time stamps are allowed in + London during the summer. Problem reported by Ian Abbott. + +2005-04-12 Jim Meyering <jim@meyering.net> + + * lib/human.c (humblock): Set *options even when returning due to + xstrtoumax conversion failure. Thanks to a used-uninitialized + warning from gcc-4. + +2005-04-09 Jim Meyering <jim@meyering.net> + + * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's + -Wuninitialized: initialize tm0.tm_year. + +2005-04-04 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getdate.y (parser_control): rels_seen is now a boolean, not a + count, since there's no maximum. All uses changed. + Add member dsts_seen. + (local_zone): Accumulate dsts_seen rather than relying on tm_isdst + not being INT_MAX. + (get_date): Initialize dsts_seen, and check that it doesn't go over 1. + Use pc_rels_seen to decide whther a date is absolute. + + * lib/getdate.y (number): Don't overwrite year. + (get_date): Initialize pc.year.digits to 0, not 4, to enable above + check. + +2005-04-02 Simon Josefsson <jas@extundo.com> + + * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny + patch from Yoann Vandoorselaere <yoann@prelude-ids.org>. + +2005-03-28 Eric Blake <ebb9@byu.net> (tiny change) + + * m4/getcwd-path-max.m4: Return success on systems such as Cygwin + where no absolute path name can be longer than PATH_MAX. + +2005-03-27 Jim Meyering <jim@meyering.net> + + * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated. + +2005-03-26 Paul Eggert <eggert@cs.ucla.edu> + + * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): + "one's complement" -> "ones' complement" in comment, as per Knuth. + "value of type" -> "type or expression" in comment. + * lib/mktime.c, strftime.c: Propagate intprops.h comment nits. + +2005-03-26 Jim Meyering <jim@meyering.net> + + Comment nits. + * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'. + Correct typos: s/or/of/. + +2005-03-26 Jim Meyering <jim@meyering.net> + + * modules/check-include-files: Move to ../ and rename to... + * check-module: ...this. + +2005-03-25 Jim Meyering <jim@meyering.net> + + * modules/xvasprintf (Files): Add xalloc.h. + +2005-03-23 Paul Eggert <eggert@cs.ucla.edu> + + * modules/gettext (Files): config/config.rpath -> + build-aux/config.rpath + * modules/iconv (Files): Likewise. + Problem reported by Oskar Liljeblad. + +2005-03-23 Jim Meyering <jim@meyering.net> + + * modules/check-include-files: New script to check for + missing dependencies, multiple includes, etc. + + * modules/c-strtold (Depends-on): Add xalloc. + * modules/c-strtod (Depends-on): Add xalloc. + * modules/hash (Depends-on): Add xalloc. + (Files): Remove lib/xalloc.h. + + * modules/gethrxtime (Files): Add lib/gethrxtime.h. + * modules/userspec (Files): Add lib/inttostr.h. + +2005-03-23 Jim Meyering <jim@meyering.net> + + * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'. + +2005-03-22 Jim Meyering <jim@meyering.net> + + * modules/stat-macros: New module. + * modules/canonicalize, modules/euidaccess, modules/file-type, + * modules/filemode, modules/lchown, modules/makepath, + * modules/rmdir, modules/stat: Depend on new stat-macros module + rather than listing lib/stat-macros.h manually. + Don't add stat-macros.h to lib_SOURCES or list it in Files: section. + +2005-03-22 Jim Meyering <jim@meyering.net> + + * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro. + +2005-03-22 Bruno Haible <bruno@clisp.org> + + * config/srclist.txt: Replace target directory 'config' with + 'build-aux'. + * config/config.guess, config.sub, config.rpath, depcomp, install-sh: + * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to + ../build-aux/. + +2005-03-21 Paul Eggert <eggert@cs.ucla.edu> + + * modules/chdir-long (Depends-on): Add mempcpy. + + * modules/acl, modules/backupfile, modules/c-strtod, + modules/c-strtold, modules/canon-host, modules/canonicalize, + modules/cloexec, modules/closeout, modules/dirfd, modules/dirname, + modules/exclude, modules/exitfail, modules/file-type, + modules/filemode, modules/fpending, modules/fsusage, modules/getcwd, + modules/getdate, modules/getline, modules/getpagesize, + modules/getpass, modules/getugroups, modules/group-member, + modules/hard-locale, modules/hash, modules/human, modules/idcache, + modules/inttostr, modules/long-options, modules/makepath, + modules/md5, modules/memcasecmp, modules/memcoll, + modules/modechange, modules/mountlist, modules/path-concat, + modules/pathmax, modules/physmem, modules/posixtm, modules/posixver, + modules/quote, modules/quotearg, modules/readtokens, modules/readutmp, + modules/safe-read, modules/safe-write, modules/same, modules/savedir, + modules/settime, modules/sha1, modules/sig2str, modules/strdup, + modules/strftime, modules/strndup, modules/strverscmp, + modules/timespec, modules/unlocked-io, modules/userspec, + modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol, + modules/yesno: + Remove lib_SOURCES line from Makefile.am section, as this is now + done automatically by the corresponding Autoconf macro. + +2005-03-21 Jim Meyering <jim@meyering.net> + + Changes imported from coreutils. + + * lib/cycle-check.c: Don't include xalloc.h. + + * lib/path-concat.c: Don't include assert.h. + (path_concat): Remove assertion that would have triggered + for ABASE starting with more than one slash. + Reported by Andreas Schwab. + + * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT + properly when ABASE is an absolute file name. + Correct the description of this function. + Include <assert.h>. + Add an assertion and a test driver. + This fixes a bug introduced on 2004-07-02. + Andreas Schwab reported the resulting failure of cp --parents: + http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html + +2005-03-21 Jim Meyering <jim@meyering.net> + + * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR. + * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl. + +2005-03-21 Jim Meyering <jim@meyering.net> + and Paul Eggert <eggert@cs.ucla.edu> + + * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4, + m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4, + m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4, + m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4, + m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4, + m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4, + m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4, + m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4, + m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4, + m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4, + m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4, + m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4, + m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4, + m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4, + m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4, + m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4: + Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files + for these modules. + +2005-03-18 Paul Eggert <eggert@cs.ucla.edu> + + * lib/strftime.c (my_strftime): If the underlying strftime returns 0 + (which shouldn't happen), generate nothing instead of returning 0 + immediately, so that nstrftime (NULL, ...) doesn't return 0. + +2005-03-16 Bruno Haible <bruno@clisp.org> + + * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of + HAVE_LONGLONG_64BIT. + +2005-03-16 Bruno Haible <bruno@clisp.org> + + * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of + HAVE_LONGLONG_64BIT. + +2005-03-16 Bruno Haible <bruno@clisp.org> + + * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of + HAVE_LONGLONG_64BIT. + +2005-03-15 Paul Eggert <eggert@cs.ucla.edu> + + * lib/strftime.c (my_strftime): Prepend space to format so that we can + reliably distinguish strftime failure from empty output on POSIX + hosts. + +2005-03-15 Paul Eggert <eggert@cs.ucla.edu> + + * lib/iconvme.c (SIZE_MAX): New macro, if not already defined. + (iconv_string): Don't guess a size-zero buffer, as that might cause + buffer overrun. Instead, avoid multiplying by MB_LEN_MAX if the + result would be 'too large', where 'too large' is (heuristically) + the square root of SIZE_MAX, divided by MB_LEN_MAX to allay + overflow concerns. This will prevent some unwanted malloc failures + when the inputs are very large. + +2005-03-15 Karl Berry <karl@gnu.org> + + * config/srclist.txt (config.rpath): from gettext. + * config/config.rpath: update. + +2005-03-15 Bruno Haible <bruno@clisp.org> + + * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not' + to 'negate'. + + * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p + variable. + + * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc + results. + +2005-03-14 Simon Josefsson <jas@extundo.com> + + * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love + <fx@gnu.org>. + +2005-03-14 Paul Eggert <eggert@cs.ucla.edu> + + * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT, + TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from + intprops.h. + * lib/strtol.c: Likewise. + +2005-03-14 Jim Meyering <jim@meyering.net> + + * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT + && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[] + to be nonzero so that we (and caller) can detect the difference + between a valid zero-length expansion and an error return, even + when the underlying strftime fails before writing anything into + that location. + +2005-03-14 Bruno Haible <bruno@clisp.org> + + * m4/lib-link.m4, gettext.m4, nls.m4, po.m4: + Update from GNU gettext 0.14.3. + +2005-03-10 Jim Meyering <jim@meyering.net> + + * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir. + +2005-03-10 Jim Meyering <jim@meyering.net> + + * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long + so that this module works on systems without fchdir. + +2005-03-09 Paul Eggert <eggert@cs.ucla.edu> + + Factor int-properties macros into a single file, except for + glibc-related files. + * lib/intprops.h: New file. + * lib/getloadavg.c: Include it instead of limits.h. + (INT_STRLEN_BOUND): Remove. + * lib/human.c: Include intprops.h. + (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself. + * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than + 302/1000. + * lib/inttostr.h: Include intprops.h instead of limits.h. + (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove. + * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros, + for consistency with intprops.h. + (time_t_is_integer, twos_complement_arithmetic): Use them. + * lib/sig2str.h: Include <signal.h>, intprops.h. + (INT_STRLEN_BOUND): Remove. + * lib/strftime.c (TYPE_SIGNED): Remove. + (INT_STRLEN_BOUND): Switch to same implementation as intprops.h. + * lib/strtol.c: Adjust comments to match intprops.h. + * lib/userspec.c: Include intprops.h. + (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove. + * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise. + * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT + instead of rolling our own expressions. + * lib/xstrtol.c: Include xstrtol.h first, to test interface. + + * lib/strftime.c: Include <stdbool.h>. Use bool where appropriate, + instead of int. + (my_strftime): Do not mishandle years close to INT_MAX, by doing + the right thing even if adding 1900 would overflow. Similarly + for tm_mon + 1 and tm_yday + 1. + Make %Y always equivalent to %C%y, and similarly for %G and %g. + (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional. + (DO_SIGNED_NUMBER): New macro. + (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1. + +2005-03-07 Bruno Haible <bruno@clisp.org> + + * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions. + +2005-03-07 Bruno Haible <bruno@clisp.org> + + * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks. + +2005-03-04 Derek R. Price <derek@ximbiot.com> + + * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions. + (func_import): Only replace files via --import when they have actually + changed. + +2005-03-03 Derek R. Price <derek@ximbiot.com> + + * m4/mmap-anon.m4: New file. + * m4/pagealign_alloc.m4: New file. + +2005-03-03 Derek R. Price <derek@ximbiot.com> + Bruno Haible <bruno@clisp.org> + + * modules/pagealign_alloc: New file. + * MODULES.html.sh (Memory management functions): Add pagealign_alloc. + +2005-03-03 Derek R. Price <derek@ximbiot.com> + Bruno Haible <bruno@clisp.org> + + * lib/pagealign_alloc.h: New file. + * lib/pagealign_alloc.c: New file. + +2005-03-03 Bruno Haible <bruno@clisp.org> + + * m4/inttypes.m4, isc-posix.m4, once-only.m4: + Use an all-permissive copyright notice, recommended by RMS. + +2005-03-02 Bruno Haible <bruno@clisp.org> + + * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because + of AIX, the replacement has to be done only after <string.h> is + included, therefore not in config.h. stpncpy.h does the replacement, + and stpncpy.c uses it. + +2005-03-02 Bruno Haible <bruno@clisp.org> + + * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that + stpncpy.c uses it. + +2005-03-01 Paul Eggert <eggert@cs.ucla.edu> + + Remove workaround for bug in Linux kernel 2.6.8 or thereabouts. + The workaround isn't strictly needed for POSIX conformance, and + it's too much of a pain to configure and maintain. We'll ask + people to fix their kernels instead. + * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h. + (NANOSLEEP_BUG_WORKAROUND): Remove. + (xnanosleep): Remove the workaround. + +2005-03-01 Paul Eggert <eggert@cs.ucla.edu> + + * modules/gettime (Makefile.am): Remove lib_SOURCES line. + Reported by Derek Price. + (Include): Add "timespec.h". + + * modules/xnanosleep (Depends-on): Remove gethrxtime. + +2005-03-01 Paul Eggert <eggert@cs.ucla.edu> + + * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting + to detect nanosleep bug. + +2005-03-01 Bruno Haible <bruno@clisp.org> + + * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed. + +2005-02-26 Paul Eggert <eggert@cs.ucla.edu> + + * modules/gethrxtime: New file. + * modules/xnanosleep (Files): Add m4/xnanosleep.m4. + (Depends-on): Add gethrxtime. + (configure.ac): Add gl_XNANOSLEEP. + (Makefile.am): Remove lib_SOURCES line. + +2005-02-25 Paul Eggert <eggert@cs.ucla.edu> + + * m4/gethrxtime.m4, m4/xnanosleep.m4: New files. + * m4/gettime.m4 (gl_GETTIME): Check for nanotime. + +2005-02-25 Paul Eggert <eggert@cs.ucla.edu> + + * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files. + * lib/timespec.h (gettime): Return void, since it always + succeeds now. All uses changed. + * lib/gettime.c (gettime) Likewise. + [HAVE_NANOTIME]: Prefer nanotime. + Assume gettimeofday succeeds, as POSIX requires. + Assime time () succeeds, since other code already does. + * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h. + (timespec_subtract): Remove. + (NANOSLEEP_BUG_WORKAROUND): New constant. + (xnanosleep): Use gethrxtime rather than gettime; this simplifies + things considerably. Use it only on GNU/Linux hosts, since the + workaround shouldn't be needed elsewhere. + +2005-02-24 Bruno Haible <bruno@clisp.org> + + * modules/gettext (Files): Add m4/glibc2.m4. + +2005-02-24 Bruno Haible <bruno@clisp.org> + + * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4: + * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4: + * m4/progtest.m4: + Update from GNU gettext 0.14.2. + * m4/glibc2.m4: New file, from GNU gettext 0.14.2. + +2005-02-24 Bruno Haible <bruno@clisp.org> + + * lib/localcharset.c: Update from GNU gettext 0.14.2. + * lib/config.charset: Update from GNU gettext 0.14.2. + +2005-02-24 Bruno Haible <bruno@clisp.org> + + * lib/gettext.h: Update from GNU gettext 0.14.2. + +2005-02-23 Simon Josefsson <jas@extundo.com> + + * m4/iconvme.m4: New file. + +2005-02-23 Jim Meyering <jim@meyering.net> + + * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's + change. + Thanks to Bruno Haible for catching it. + +2005-02-22 Simon Josefsson <jas@extundo.com> + + * modules/iconvme: New file. + + * MODULES.html.sh: Add iconvme. + +2005-02-22 Simon Josefsson <jas@extundo.com> + + * lib/iconvme.h, lib/iconvme.c: New files, from libc. + +2005-02-22 Simon Josefsson <jas@extundo.com> + + * config/srclist.txt: Sync iconvme.h, iconvme.c from libc. + +2005-02-22 Jim Meyering <jim@meyering.net> + + * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo: + s/ifndef/ifdef/. + +2005-02-20 Neil Conway <neilc@samurai.com> + + * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is + returned by OSX/Darwin if the specified buffer is not large + enough for the hostname. + +2005-02-03 Sergey Poznyakoff <gray@Mirddin.farlep.net> + + * lib/argp-help.c (__argp_help): Create a fake struct argp_state and + pass it to _help, otherwise the latter coredumps trying to + dereference state.root_argp. + +2005-02-03 Paul Eggert <eggert@cs.ucla.edu> + + * modules/chdir-long (Depends-on): Add memrchr. + * modules/memrchr (Files): Add lib/memrchr.h. + (Include): "memrchr.h". + +2005-02-03 Paul Eggert <eggert@cs.ucla.edu> + + * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h. + +2005-02-03 Paul Eggert <eggert@cs.ucla.edu> + + * lib/memrchr.h: New file. + * lib/chdir-long.c: Include it. + * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h> + Don't bother including stddef.h. + +2005-02-01 Paul Eggert <eggert@cs.ucla.edu> + + * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double + inclusion. + Include <sys/types.h>, for dev_t. + (ME_DUMMY, ME_REMOTE): Move from here.... + * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here. + (ME_DUMMY): Count "subfs" as a dummy. Problem reported by + Dmitry V. Levin. + Include mountlist.h first, to test the interface. + +2005-01-29 Bruno Haible <bruno@clisp.org> + + * lib/progname.c (program_name): Initialize. + Needed when linking statically on MacOS X. + +2005-01-28 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + * modules/getloadavg (Files): Remove m4/getloadavg.m4. + (Depends-on): Add c-strtod. + (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG. + +2005-01-28 Paul Eggert <eggert@cs.ucla.edu> + + Sync from coreutils. + * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove. + + Remove files that are specific to coreutils. + * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove. + +2005-01-28 Bruno Haible <bruno@clisp.org> + + * modules/javacomp: New file. + * MODULES.html.sh (Java): Add javacomp. + +2005-01-28 Bruno Haible <bruno@clisp.org> + + * m4/javacomp.m4: New file, from GNU gettext. + +2005-01-28 Bruno Haible <bruno@clisp.org> + + * lib/javacomp.sh.in: New file, from GNU gettext. + * lib/javacomp.h: New file, from GNU gettext. + * lib/javacomp.c: New file, from GNU gettext. + +2005-01-26 Simon Josefsson <jas@extundo.com> + + * lib/gai_strerror.c: Use GPL in header. + +2005-01-26 Bruno Haible <bruno@clisp.org> + + * modules/javaexec: New file. + * MODULES.html.sh (Java): Add javaexec. + +2005-01-26 Bruno Haible <bruno@clisp.org> + + * m4/javaexec.m4: New file, from GNU gettext. + +2005-01-26 Bruno Haible <bruno@clisp.org> + + * lib/javaexec.sh.in: New file, from GNU gettext. + * lib/javaexec.h: New file, from GNU gettext. + * lib/javaexec.c: New file, from GNU gettext. + +2005-01-24 Sergey Poznyakoff <gray@Mirddin.farlep.net> + + * modules/lchown (Depends-on): Remove lchown.h + +2005-01-24 Sergey Poznyakoff <gray@Mirddin.farlep.net> + + * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H + must be defined if the header file was not found, in order + to provide a replacement. Reported by Todd Vierling <tv@duh.org> + +2005-01-24 Sergey Poznyakoff <gray@Mirddin.farlep.net> + + * lib/argp-help.c (hol_entry_help): Avoid using non-constant + initializers for struct pentry_state. + (__argp_error): Check return value of __asprintf + (__argp_failure): Translate error message + + * lib/argp-parse.c: Removed braces around the expansion of N_() + +2005-01-23 Paul Eggert <eggert@cs.ucla.edu> + + * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4, + backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4, + c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4, + clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4, + dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4, + exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4, + file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4, + free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4, + getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4, + getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4, + getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4, + gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4, + group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4, + idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4, + link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4, + makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4, + memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4, + memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4, + modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4, + path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4, + posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4, + readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4, + restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4, + savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4, + sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4, + stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4, + strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4, + strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4, + strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4, + time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4, + uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4, + unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4, + utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4, + xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4, + xstrtol.m4, xstrtoumax.m4, yesno.m4: + Use an all-permissive copyright notice, recommended by RMS. + +2005-01-21 Paul Eggert <eggert@cs.ucla.edu> + + * modules/chdir-long (Depends-on): Remove mempcpy. + +2005-01-21 Jim Meyering <jim@meyering.net> + + * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the + same value as for Solaris 9. + + * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on + component length. This included changing the parameter to be + of type `char *' rather than `char const *'. + * lib/chdir-long.h (chdir_long): Update prototype. + + * lib/openat.c (fdopendir, fstatat): New functions. + * lib/openat.h: Include headers required for use of DIR and struct + stat. + [AT_SYMLINK_NOFOLLOW]: Define. + (fdopendir, fstatat): Add prototypes. + +2005-01-21 Bruno Haible <bruno@clisp.org> + + * modules/classpath: New file. + * MODULES.html.sh (Java): Add classpath. + +2005-01-21 Bruno Haible <bruno@clisp.org> + + * lib/classpath.h: New file, from GNU gettext. + * lib/classpath.c: New file, from GNU gettext. + +2005-01-20 Simon Josefsson <jas@extundo.com> + + * modules/version-etc-fsf: New file. + +2005-01-20 Simon Josefsson <jas@extundo.com> + + * lib/version-etc-fsf.c: New file, with version_etc_copyright. + * lib/version-etc.c: Remove version_etc_copyright. + * lib/version-etc.h (version_etc_copyright): Use [] instead of * in + prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>. + +2005-01-20 Simon Josefsson <jas@extundo.com> + + * lib/base64.h (isbase64): Add. + + * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of + using a unsigned prototype, don't inline. + (base64_decode): Use it. + +2005-01-20 Paul Eggert <eggert@cs.ucla.edu> + + * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume + it. + +2005-01-20 Paul Eggert <eggert@cs.ucla.edu> + + * lib/save-cwd.c (save_cwd): Remove code to support the case + where fchdir is missing or flaky. + +2005-01-20 Paul Eggert <eggert@cs.ucla.edu> + + * MODULES.html.sh (Command-line arguments): Add version-etc-fsf. + +2005-01-19 Paul Eggert <eggert@cs.ucla.edu> + + * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h; + AC_LIBSOURCES now does this. + * MODULES.html.sh (Sizes of integer types <limits.h>): New element, + with new ullong_max module. + +2005-01-19 Bruno Haible <bruno@clisp.org> + + * modules/sh-quote: New file. + * MODULES.html.sh (Executing programs): Add sh-quote. + +2005-01-19 Bruno Haible <bruno@clisp.org> + + * lib/sh-quote.h: New file, from GNU gettext. + * lib/sh-quote.c: New file, from GNU gettext. + +2005-01-18 Paul Eggert <eggert@cs.ucla.edu> + + Merge from coreutils. + * m4/ullong_max.m4: New file. + * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX. + (gl_MACROS): Assume localeconv exists. + +2005-01-18 Paul Eggert <eggert@cs.ucla.edu> + + Merge changes from coreutils, as described below in several + changelogs dated today. + + * lib/save-cwd.c: Include "save-cwd.h" before other include files. + (O_DIRECTORY): Remove; not needed here, since "." must be + a directory. All uses removed. + (save_cwd): Use __sgi || __sun, not sun || __sun. __sun is + universal on Suns, and we also need to test for IRIX. + Revamp code to use 'if' rather than '#if'. + Avoid unnecessary comparison of cwd->desc to 0. + + * lib/utimens.c (futimens): Robustify the previous patch, by checking + for known valid error numbers rather than observed invalid ones. + +2005-01-18 Paul Eggert <eggert@cs.ucla.edu> + + * modules/ullong_max: New file. + + * modules/chdir-long, modules/openat: New files. + * modules/save-cwd (Depends-on): Depend on chdir-long. + (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES. + +2005-01-18 Jim Meyering <jim@meyering.net> + + Merge from coreutils. + * m4/chdir-long.m4, m4/openat.m4: New files. + * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c, + save-cwd.h. Add AC_LIBOBJ for save-cwd. + * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown + is sane and DOES follow symlinks. Besides, testing 20 different + systems found no broken chown implementations. + Prompted by a change in rsync's copy of this macro. + * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG. + + * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES. + + * m4/utimes.m4: Work around tests/touch/empty-file failure on a system + (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes' + NULL-means-set-to-current-time semantics. + Remove temporary file immediately, rather than waiting + for configure's at-exit trap code to do it. + +2005-01-18 Jim Meyering <jim@meyering.net> + + * lib/version-etc.c (version_etc_copyright): Update copyright date. + + * lib/utimens.c (futimens): Account for the fact that futimes + can also fail with errno == ENOSYS or errno == ENOENT. + Patch from Dmitry V. Levin. + + Change the name of the robust chdir function from chdir to chdir_long. + * lib/save-cwd.c: Include chdir-long.h rather than chdir.h. + (restore_cwd): Use chdir_long, not chdir. + * lib/chdir-long.c: Renamed from chdir.c. + * lib/chdir-long.h: Renamed from chdir.h. + [!defined PATH_MAX]: Define chdir_long to chdir on systems like the + Hurd. + +2005-01-18 Bruno Haible <bruno@clisp.org> + + * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4: + * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4: + * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4: + * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4: + * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4: + * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4: + * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4: + * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4: + * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4: + * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4: + * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4: + * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4: + * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4: + * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4: + Use an all-permissive copyright notice, recommended by RMS. + +2005-01-18 Bob Proulx <bob@proulx.com> + + * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to + simplify offsetof() macro construct to avoid compile failure with + native HP-UX 11.0 ANSI C compiler. + +2005-01-17 Bruno Haible <bruno@clisp.org> + + * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming, + redundant because stpncpy.m4 takes care of it. + +2005-01-17 Bruno Haible <bruno@clisp.org> + + * lib/progreloc.c: Include xalloc.h instead of xmalloc.h. + +2005-01-17 Bruno Haible <bruno@clisp.org> + + * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be + used. + +2005-01-17 Bruno Haible <bruno@clisp.org> + + * lib/fwriteerror.h (fwriteerror): Change specification to include + fclose. + * lib/fwriteerror.c: Include <stdbool.h>. + (fwriteerror): At the end, close the file stream. Record whether + stdout was already closed. + +2005-01-17 Bruno Haible <bruno@clisp.org> + + * lib/execute.c (environ): Declare if needed. + * lib/pipe.c (environ): Likewise. + Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>. + +2005-01-11 Sergey Poznyakoff <gray@Mirddin.farlep.net> + + * modules/argp: Depend on vsnprintf + +2005-01-10 Jim Meyering <jim@meyering.net> + + * modules/closeout (Depends-on): Add atexit. + +2005-01-06 Bruno Haible <bruno@clisp.org> + + * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here. + +2005-01-04 Paul Eggert <eggert@cs.ucla.edu> + + * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional + definitions to be after all include files, to avoid collisions. + Problem reported by Bob Proulx. + +2005-01-04 Jim Meyering <jim@meyering.net> + + Changes imported from coreutils. + * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX" + as the mkstemp template, use a temporary directory and an + 8.3-friendly template to avoid trouble on systems like DJGPP. + Reported by Juan M. Guerrero via Stepan Kasal. + * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of + close. Remove the temporary directory right away, rather than waiting + for configure's at-exit trap code to do it. + Suggestion from Stepan Kasal. + +2005-01-01 Simon Josefsson <jas@extundo.com> + + * gnulib-tool: Print #include directives when --import'ing. + +2004-12-28 Simon Josefsson <jas@extundo.com> + + * tests/test-base64.c: Include required header files. Remove + unused variables. + +2004-12-28 Paul Eggert <eggert@cs.ucla.edu> + + * modules/error (Depends-on): Remove gettext. + +2004-12-28 Paul Eggert <eggert@cs.ucla.edu> + + * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h"; + not needed. This removes a dependency on the gettext module. + [defined _LIBC]: Do not include <libintl.h>; not needed. + +2004-12-24 Paul Eggert <eggert@cs.ucla.edu> + + * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro. + (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold). + +2004-12-24 Paul Eggert <eggert@cs.ucla.edu> + + * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not + HAVE_DECL_STRTOLD. + +2004-12-23 Paul Eggert <eggert@cs.ucla.edu> + + * modules/getdate (Depends-on): Remove alloca-opt. + +2004-12-23 Paul Eggert <eggert@cs.ucla.edu> + + * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA. + +2004-12-23 Paul Eggert <eggert@cs.ucla.edu> + + * lib/argp-parse.c: Include <stddef.h>. + (alignof, alignto): New macros. + (parser_init): Don't assume that void * is aligned sufficiently + for struct option. + + * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no + need to extend the stack. + (YYINITDEPTH): New macro, so that the initial stack isn't overly + large. + +2004-12-22 Sergey Poznyakoff <gray@Mirddin.farlep.net> + + * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers. + +2004-12-19 Paul Eggert <eggert@cs.ucla.edu> + + * modules/regex (lib_SOURCES): Remove regex.c, undoing previous + (2004-10-24) change. Apparently this was a false alarm. + + * modules/getdate: Depend on alloca-opt, not alloca. + +2004-12-19 Paul Eggert <eggert@cs.ucla.edu> + + * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H. + Remove now-obsolete comment about AIX. + * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA. + (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA. + (YYMAXDEPTH): New macro. + +2004-12-18 Simon Josefsson <jas@extundo.com> + + * modules/alloca: Depend on alloca-opt, instead of duplicating it. + +2004-12-18 Bruno Haible <bruno@clisp.org> + + * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction. + +2004-12-18 Bruno Haible <bruno@clisp.org> + + * lib/fatal-signal.c (fatal_signals): Make non-const. + (init_fatal_signals): New function. + (uninstall_handlers, install_handlers): Ignore signals that were set to + SIG_IGN. + (at_fatal_signal): Call init_fatal_signals. + (init_fatal_signal_set): Likewise. Ignore signals that were set to + SIG_IGN. + Reported by Paul Eggert. + +2004-12-18 Bruno Haible <bruno@clisp.org> + + * doc/alloca.texi: New file. + * doc/alloca-opt.texi: New file. + +2004-12-17 Jim Meyering <jim@meyering.net> + + * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'. + Otherwise, install-sh could exit with improper exit status when + exiting via a trapped interrupt. Thanks to a report from Bob Proulx. + +2004-12-16 Simon Josefsson <jas@extundo.com> + + * tests/test-base64.c: Add license. + +2004-12-15 Stepan Kasal <address@hidden> + + * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command. + +2004-12-12 Paul Eggert <eggert@cs.ucla.edu> + + * modules/getcwd (Files): Add m4/d-ino.m4. + Suggested by Mark D. Baushke. + +2004-12-08 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getdate.y (textint): New member "negative". + (time_zone_hhmm): New function. + Expect 14 shift-reduce conflicts, not 13. + (o_colon_minutes): New rule. + (time, zone): Use it to add support for +HH:MM, UTC+HH:MM. + (yylex): Set the "negative" member of signed numbers. + +2004-12-08 Paul Eggert <eggert@cs.ucla.edu> + + * doc/getdate.texi (Time of day items, Time zone items): + Describe new formats +00:00, UTC+00:00. + +2004-12-07 Paul Eggert <eggert@cs.ucla.edu> + + * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change: + spurious "-l"s. Problem reported by Stepan Kasal. + +2004-12-06 Paul Eggert <eggert@cs.ucla.edu> + + * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug + in Autoconf 2.59. Problem reported by Mark D. Baushke. + +2004-12-04 Simon Josefsson <jas@extundo.com> + + * modules/getaddrinfo (License): Add LGPL, reported by Yoann + Vandoorselaere <yoann@prelude-ids.org>. + +2004-12-04 Paul Eggert <eggert@cs.ucla.edu> + + Changes imported from coreutils. + * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale + exist. + * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist. + +2004-12-04 Paul Eggert <eggert@cs.ucla.edu> + + Changes imported from coreutils. + * lib/hard-locale.c: Assume <locale.h> exists. + Include "strdup.h". + (GLIBC_VERSION): New macro. + (hard_locale): Assume setlocale exists. + Rewrite to avoid #ifdef. + Use strdup rather than malloc + strcpy. + * lib/human.c: Assume <locale.h> exists. + (human_readable): Assume localeconv exists. + +2004-12-04 Paul Eggert <eggert@cs.ucla.edu> + + * modules/hard-locale (Depends-on): Add strdup. + +2004-12-01 Jakub Jelinek <jakub@redhat.com> + + * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC, + convert T2, not T. (Imported from libc.) + +2004-11-30 Simon Josefsson <jas@extundo.com> + + * modules/restrict (License): Change to LGPL. + +2004-11-30 Simon Josefsson <jas@extundo.com> + + * m4/restrict.m4: Add copyright and copying conditions. + +2004-11-30 Simon Josefsson <jas@extundo.com> + + * m4/base64.m4: New file. + +2004-11-30 Simon Josefsson <jas@extundo.com> + + * MODULES.html.sh (Extra functions based on ANSI C 89): Add + base64. + + * tests/test-base64.c: New file. + + * modules/base64: New file. + +2004-11-30 Paul Eggert <eggert@cs.ucla.edu> + + * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): + Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working. + + * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h. + +2004-11-30 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getcwd.c (is_ENAMETOOLONG): New macro. + (__getcwd.c): Don't restore errno; glibc doesn't. + [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd + first, falling back to our code only if its results look suspicious. + Ensure that the resulting buffer is only as large as necessary. + + * lib/readutmp.c: Include readutmp.h first. + Include <errno.h>, since readutmp.h no longer does that. + * lib/readutmp.h: Don't include <errno.h>, + <sys/param.h>, <time.h>; not needed to establish interface. + (errno): Remove decl. + (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed. + (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME, + UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros. + +2004-11-28 Simon Josefsson <jas@extundo.com> + + * lib/base64.h, base64.c: New file. + +2004-11-27 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25. + +2004-11-26 Paul Eggert <eggert@cs.ucla.edu> + + * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4. + (Depends-on): Remove pathmax, same. Add mempcpy. + (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD. + (Makefile.am): Append getcwd.h to lib_SOURCES. + (Include): Add getcwd.h. + (Maintainer): Change from Jim Meyering to "all, glibc", + since getdate now uses intended-for-glibc code. + * modules/xgetcwd (Files): Remove m4/getcwd.m4. + (Depends-on): Depend on getcwd. Do not depend on pathmax. + +2004-11-25 Paul Eggert <eggert@cs.ucla.edu> + + Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using + HP's ANSI C compiler. + * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl. + Declaring int functions causes warnings on some modern systems and + shouldn't be needed to compile on ancient ones. + * lib/same.c (MIN) [defined MIN]: Don't define, since it's already + defined. + + * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but + with the following changes. + (__set_errno): Parenthesize properly. + Include <stdbool.h>. + (MIN, MAX, MATCHING_INO): New macros. + (__getcwd): Define with prototype, not K&R form. + Use heuristics to allocate default buffer on stack if possible. + If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2) + behavior, and to avoid the PATH_MAX limit when computing + ../../../../... + Use MATCHING_INO to compare inode number to file. + Check for arithmetic overflow in size calculations. + Fix bug in reallocation of dot array that caused getcwd to fail + on directories nested deeper than 75. + Be more careful about saving errno on error. + Do not use realloc; use only free+malloc, as this is a bit + more flexible and avoids a needless copy operation. + Do not inspect st_dev and st_ino for symbolic links; POSIX + doesn't specify the latter. + Check for closedir errors. + Avoid needless casts. + Use "#ifdef weak_alias" around weak_alias, to be like other + glibc code. + The following changes to getcwd.c have effect only when used in + gnulib; they have no effect inside glibc proper. + (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove, + as alloca isn't used. + (alloca, __alloca): Likewise. + [!_LIBC]: Include "getcwd.h", "mempcpy.h". + Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h> + unconditionally, as gnulib assumes C89 or better. + Do not include <sys/param.h>. + (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove + no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or + better. + (NULL) [!defined NULL]: Remove; we assume C89 or better. + Include <dirent.h> in a way that is compatible with modern Autoconf. + (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN): + New macros, if not already defined. + Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__. + Use "_LIBC", not "defined _LIBC", for consistency. + (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has + a mempcpy module. + (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros. + (GETCWD_RETURN_TYPE): Remove. All uses replaced by char *. + * lib/xgetcwd.c: David MacKenzie's old code was removed, so give + credit only to Jim Meyering and adjust the copyright dates. + Do not include <limits.h>, <stdio.h>, <sys/types.h>, + <stdlib.h>, <unistd.h>, "pathmax.h". + Instead, include "xgetcwd.h" (first) and "getcwd.h". + (INITIAL_BUFFER_SIZE): Remove. + (xgetcwd): Rely on getcwd, since we now depend on a reliable one. + +2004-11-25 Paul Eggert <eggert@cs.ucla.edu> + + * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from + GL_FUNC_GETCWD_PATH_MAX for consistency. All uses changed. + Use the _ONCE methods, for efficiency. + Check for fcntl.h. In test program, include <errno.h> + and <fcntl.h> if available. Remove old K&R cruft from + test program. Check for common errors in GNU/Linux, + OpenBSD, and Solaris. Just set gl_cv_func_getcwd_path_max; + don't do AC_LIBOBJ, as that's getcwd.m4's job. + * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from + AC_FUNC_GETCWD_NULL. All used changed. Change cache variable + name accordingly. + (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros. Revamp to + accommodate new getcwd.c. + * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX. + * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY. + * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since + that's all we need now. + +2004-11-23 Sergey Poznyakoff <gray@Mirddin.farlep.net> + + * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally: + argp-parse.c depends on getopt internals, that means we should + always use our getopt, to be on the safe side. + * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in + order not to spoil the result of an eventual previous invocation + of gl_GETOPT_SUBSTITUTE. + +2004-11-23 Sergey Poznyakoff <gray@Mirddin.farlep.net> + + * lib/getopt_.h: Re-addition of __getopt_argv_const caused + redefinition warnings. To avoid them, include the defines + in `#if !defined __need_getopt ... #endif'. The only place + where __getopt_argv_const is used is in definitions + of getopt_long and getopt_long_only below, which are as well + protected by `#ifndef __need_getopt'. + [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef + __need_getopt after including <stdio.h> and <unistd.h> These + headers might have defined it. + +2004-11-23 Paul Eggert <eggert@cs.ucla.edu> + + * m4/utimens.m4 (gl_UTIMENS): Check for futimes function. + +2004-11-23 Paul Eggert <eggert@cs.ucla.edu> + + * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros. + (futimens): New function, which uses futimes if available. + (futimens, utimens): Support timespec==NULL, with same semantics + as utime and utimens. + * lib/utimens.h (futimens): New decl. + +2004-11-23 Jim Meyering <jim@meyering.net> + + * lib/getopt_.h: Remove trailing blanks. + +2004-11-23 Jim Meyering <jim@meyering.net> + + * lib/__fpending.c: Add comment. + +2004-11-22 Paul Eggert <eggert@cs.ucla.edu> + + * modules/canonicalize (Depends-on): Add xreadlink. + Problem reported by James Youngman. + +2004-11-20 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID): + New macros. + (getopt, getopt_long, getopt_long_only, optarg, opterr, optind, + optopt): Use them instead of invoking ## directly; otherwise, the + symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt. + +2004-11-19 Bruno Haible <bruno@clisp.org> + + * lib/strtok_r.c: Move comments from here... + * lib/strtok_r.h: ... to here. + +2004-11-17 Paul Eggert <eggert@cs.ucla.edu> + + * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc + implementations that mishandle size_t overflow. + +2004-11-17 Paul Eggert <eggert@cs.ucla.edu> + + * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc + might fail. Problem reported by Yoann Vandoorselaere. + * lib/calloc.c (rpl_calloc): Defend against buggy calloc + implementations that mishandle size_t overflow. + +2004-11-16 Paul Eggert <eggert@cs.ucla.edu> + + * modules/canon-host (Depends-on): Add strdup. + +2004-11-16 Paul Eggert <eggert@cs.ucla.edu> + + * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo. + +2004-11-16 Paul Eggert <eggert@cs.ucla.edu> + + * lib/canon-host.c: Include "strdup.h". + (canon_host): Use getaddrinfo if available, so that IPv6 works. + Use strdup instead of malloc/strcpy to duplicate strings. + + * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit. + (human_space_before_unit): New constant. + * lib/human.c (human_readable): Support it. + + * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX. + (xgetcwd): Set errno correctly when failing. + Work around Solaris 9 bug: getcwd sets errno==ERANGE even though + the failure is actually due to a PATH_MAX problem. + + Further getopt changes to make it more likely that glibc will + buy the changes back. + * lib/getopt.c (POSIXLY_CORRECT): New constant. + (getopt): Use it, so to preserve glibc semantic + * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const * + when compiling for libc. + * lib/getopt_.h (__getopt_argv_const): Bring it back. + (getopt_long, getopt_long_only): Use it. + + * lib/getopt.c (_getopt_initialize, _getopt_internal_r, + _getopt_internal): New arg POSIXLY_CORRECT. All callers changed. + (getopt): Argv is now char * const *, as per standard. + (_getopt_internal_r, _getopt_internal): Argv is now char **, + not char *__getopt_argv_const *. + * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only, + _getopt_long_only_r): Likewise. + * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise. + * lib/getopt_int.h (_getopt_internal, _getopt_internal_r, + _getopt_long_r, _getopt_long_only_r): Likewise. + * lib/getopt_.h (__getopt_argv_const): Remove. + (getopt): Argv is now char * const *, as per standard. + + * lib/getdate.y (tORDINAL): New token. + (day, relunit): Allow it for relative times. + (relative_time_table): Use tORDINAL for ordinals. + +2004-11-16 Paul Eggert <eggert@cs.ucla.edu> + + * doc/getdate.texi (General date syntax): "next" is 1, not 2. + Document that "second" isn't allowed as an ordinal number. + +2004-11-16 Jim Meyering <jim@meyering.net> + + * modules/closeout (Depends-on): Add fpending. + +2004-11-15 Jim Meyering <jim@meyering.net> + + * lib/closeout.c: Include "__fpending.h" once again. + Include <stdbool.h>. + (close_stdout): Don't fail just because stdout was closed initially, + since some programs don't write to stdout in the normal course of + operation (other than --version and --help), and we don't want this + function to make e.g. `touch file >&-' fail. + But do fail if it was closed and someone has tried to write to it. + E.g., `printf foo >&-' must fail. + +2004-11-13 Jim Meyering <jim@meyering.net> + + * m4/jm-macros.m4: Do require gl_FUNC_FPENDING. + +2004-11-12 Simon Josefsson <jas@extundo.com> + + * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a + small doc fix is still pending. + +2004-11-11 Simon Josefsson <jas@extundo.com> + + * modules/strtok_r: New file. + + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add + strtok_r. + +2004-11-11 Simon Josefsson <jas@extundo.com> + + * m4/strtok_r.m4: New file. + + * m4/getopt.m4: Replace opterr. + +2004-11-11 Simon Josefsson <jas@extundo.com> + + * lib/strtok_r.h, strtok_r.c: New file. + +2004-11-11 Paul Eggert <eggert@cs.ucla.edu> + + * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead + of replacing opterr, getopt, etc. This should handle the + powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson. + +2004-11-11 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that + we can stop lying to compilers about the constness of argv when we + are compiled outside glibc. + (getopt, getopt_long, getopt_long_only): Use it. + * lib/getopt.c (_getopt_initialize, _getopt_internal_r, + _getopt_internal, getopt): Likewise. + * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only, + _getopt_long_only_r): Likewise. + * lib/getopt_int.h (_getopt_internal, _getopt_internal_r, + _getopt_long_r, _getopt_long_only_r): Likewise. + + * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]: + Include <stdlib.h> and <stdio.h>, and <unistd.h> if available. + Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for + the other external symbols. + (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style + declaration, since the above renaming now works around collisions. + +2004-11-11 Jim Meyering <jim@meyering.net> + + * lib/linebreak.c: Remove trailing blanks. + * lib/alloca_.h: Likewise. + * lib/acosl.c: Likewise. + * lib/euidaccess.c: Likewise. + * lib/allocsa.h: Likewise. + +2004-11-10 Simon Josefsson <jas@extundo.com> + + * m4/getaddrinfo.m4: New file. + +2004-11-10 Simon Josefsson <jas@extundo.com> + + * lib/getaddrinfo.h, lib/getaddrinfo.c: New files. + +2004-11-10 Simon Josefsson <jas@extundo.com> + + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add + getaddrinfo. + + * modules/getaddrinfo: New file. + +2004-11-10 Paul Eggert <eggert@cs.ucla.edu> + + * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV. + +2004-11-10 Paul Eggert <eggert@cs.ucla.edu> + + * lib/mktime.c (SHR): New macro, which is a portable + substitute for >> that should work even on Crays. + (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it. + Problem reported by Mark D. Baushke in + <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>. + * lib/getdate.y (SHR): Likewise. + (tm_diff): Use it. + * lib/strftime.c (SHR): Likewise. + (tm_diff): Use it. + * lib/quotearg.c (struct quoting_options): Use unsigned int for + quote_these_too, so that right shifts are well defined. All uses + changed. + +2004-11-10 Jim Meyering <jim@meyering.net> + + Ensure that no close failure goes unreported. + * lib/closeout.c (close_stdout): Always close stdout. I.e., don't + return early when it seems there's nothing to flush. + Don't include __fpending.h. + +2004-11-10 Jim Meyering <jim@meyering.net> + + * modules/closeout (Depends-on): Remove fpending. + +2004-11-10 Jim Meyering <jim@meyering.net> + + * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING. + +2004-11-09 Paul Eggert <eggert@cs.ucla.edu> + + * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove. Move its body to + gl_FUNC_STRFTIME. + (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE + and AC_REQUIRE when possible, to avoid duplicate checks. + Check for <wchar.h>. + +2004-11-09 Paul Eggert <eggert@cs.ucla.edu> + + * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too. + +2004-11-09 Bruno Haible <bruno@clisp.org> + + * m4/sockpfaf.m4: New file. + +2004-11-05 Bruno Haible <bruno@clisp.org> + + * lib/readlink.c: Include stddef.h, needed for size_t on Woe32. + Reported by Mark D. Baushke <mdb@cvshome.org>. + +2004-11-04 Bruno Haible <bruno@clisp.org> + + 2004-09-11 Bruno Haible <bruno@clisp.org> + * allocsa.valgrind: New file. + 2004-02-06 Bruno Haible <bruno@clisp.org> + * allocsa.h (sa_alignof): Define differently with HP-UX cc, to + avoid a bug of this cc on HP-UX 10.20 dealing with enums. + Reported by Christopher Seip <chris.seip@hp.com>. + +2004-11-04 Bruno Haible <bruno@clisp.org> + + * modules/allocsa (Files): Add lib/allocsa.valgrind. + (Makefile.am): Distribute it. + +2004-11-03 Paul Eggert <eggert@cs.ucla.edu> + + * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1 + with errno == ERANGE if the buffer is too small. + Problem reported by Mark D. Baushke. + +2004-11-03 Albert Chin <china@thewrittenword.com> + Paul Eggert <eggert@cs.ucla.edu> + + * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t + equivalent, substitute $ac_type for equivalent type rather than + blindly using uint32_t *always* which won't work if uint32_t is not + available. Define _UINT32_T to work around typedef of uint32_t if + <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris + 2.5.1. + +2004-11-02 Paul Eggert <eggert@cs.ucla.edu> + + * m4/jm-macros.m4: Sync from coreutils. + (gl_MACROS): Check for mbrlen, for pathchk. + (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk. + +2004-11-02 Paul Eggert <eggert@cs.ucla.edu> + + * lib/xreadlink.c (MAXSIZE): New macro. + (xreadlink): Use it instead of SSIZE_MAX. Ensure initial buffer + size does not exceed MAXSIZE. Avoid cast. + As suggested by Mark D. Baushke in + <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>, + if readlink fails with buffer size just under MAXSIZE, try again + with MAXSIZE. + +2004-11-02 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Add mktime.c; glibc bought all our changes. + +2004-11-02 Derek R. Price <derek@ximbiot.com> + and Paul Eggert <eggert@cs.ucla.edu> + + * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now. + (get_date): Overparenthesize to avoid GCC warning. + +2004-11-02 Bruno Haible <bruno@clisp.org> + + * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv() + returns void. + +2004-11-02 Bruno Haible <bruno@clisp.org> + + * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv() + function returns void. + +2004-11-01 Paul Eggert <eggert@cs.ucla.edu> + + * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of + fflush_unlocked, flockfile, funlockfile, funlockfile, + fputs_unlocked, putc_unlocked. + +2004-11-01 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getpass.c (fflush_unlocked, flockfile, funlockfile) + (funlockfile, fputs_unlocked, putc_unlocked): Don't define if + already declared. + +2004-10-29 Paul Eggert <eggert@cs.ucla.edu> + + * modules/getdate (Files): Add doc/getdate.texi. + (Depends-on): Add setenv, xalloc. + +2004-10-29 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getdate.y: Add support for TZ="foo" within a date string. + Fix some bugs near time_t boundaries. Reject dates with + out-of-range components, e.g., "Sept 31". + Include <stdlib.h>, "setenv.h", "xalloc.h". + (ISDIGIT_LOCALE): Remove; unused. + Note that the TZ and time functions used here are not reentrant. + (mktime_ok, get_tz): New functions. + (TZBUFSIZE): New constant. + (get_date): Parse leading TZ="foo". Reject out-of-range components;. + This requires that we sometimes generate our own TZ="XXX..." setting. + +2004-10-29 Paul Eggert <eggert@cs.ucla.edu> + + * doc/getdate.texi: New file, from coreutils with modifications for + the new TZ parsing. + +2004-10-27 Derek R. Price <derek@ximbiot.com> + + * lib/mktime.c (not_equal_tm): Remove redundant check. + +2004-10-24 Paul Eggert <eggert@cs.ucla.edu> + + * modules/regex (lib_SOURCES): Add regex.c. + Reported by James Youngman in + <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>. + +2004-10-24 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getdate.y: Use Bison 1.875 features, and some minor + code cleanups. This change does not affect semantics. + Don't include <stdlib.h>; no longer needed. + Don't include unlocked-io.h; only the "#if TEST" code uses + stdio, and performance isn't crucial there. + (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by + Bison 1.875 features as described below. + All uses of "PC." replaced by "pc->". + (YYSTYPE): Add a forward declaration. + (yylex, yyerror): Use full prototypes in forward decls. + Use "%pure-parser" rather than obsolescent "%pure_parser". + Use %parse-param and %lex-param instead of obsolescent + YYPARSE_PARAM and YYLEX_PARAM. + (meridian_table, month_and_day_table, time_units_table, + relative_time_table, time_zone_table, military_table, + lookup_zone, lookup_word, get_date): + Use NULL instead of 0 where appropriate. + (to_hour): Avoid abort (), to avoid a dependency on + stdlib.h. + (yyerror, yylex): Now accepts parser_control * arg. + (main) [TEST]: Use '\0' rather than 0 for char. + +2004-10-22 Paul Eggert <eggert@cs.ucla.edu> + + * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>. + +2004-10-22 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists. + It's now the caller's responsibility to handle the case where + !HAVE_GETPAGESIZE && !defined getpagesize. + + * lib/mktime.c (leapyear): Arg is long int, not int. + +2004-10-18 Paul Eggert <eggert@cs.ucla.edu> + + * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc. + +2004-10-17 Paul Eggert <eggert@cs.ucla.edu> + + * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was + missing. Problem reported by James Youngman. + +2004-10-16 Simon Josefsson <jas@extundo.com> + + * gnulib-tool: Fix comments. Fix parse problem. + (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES. + +2004-10-15 Paul Eggert <eggert@cs.ucla.edu> + + * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD + implementation of getopt_long. Problem reported by Alexander Taler in: + http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html + +2004-10-15 Bruno Haible <bruno@clisp.org> + + * gnulib-tool: Untabify. Initialize supplied_libname. + (func_usage): More homogenous output. + (func_modules_transitive_closure, func_modules_to_filelist, + func_emit_lib_Makefile_am): New functions. + (func_import): New function, extracted from big case statement. Use + func_get_license, func_modules_transitive_closure, + func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize + opt_lgpl. Don't use test -a, as it's not portable. + (func_create_testdir): Use func_modules_transitive_closure, + func_modules_to_filelist, func_emit_lib_Makefile_am. + +2004-10-15 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed. + +2004-10-15 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate + the portions belonging to each module. + Suggested by Derek Robert Price <derek@ximbiot.com>. + +2004-10-12 Simon Josefsson <jas@extundo.com> + + * lib/getpass.c (fflush_unlocked, flockfile, funlockfile) + (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map + to real functions. + +2004-10-11 Yoann Vandoorselaere <yoann@prelude-ids.org> + + * modules/vsnprintf: New file. + +2004-10-11 Yoann Vandoorselaere <yoann@prelude-ids.org> + + * m4/vsnprintf.m4: New file. + +2004-10-11 Yoann Vandoorselaere <yoann@prelude-ids.org> + + * lib/vsnprintf.h: New file. + * lib/vsnprintf.c: New file. + +2004-10-11 Bruno Haible <bruno@clisp.org> + + * MODULES.html.sh (Support for systems lacking ISO C 99): Add + vsnprintf. + +2004-10-10 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only). + +2004-10-07 Bruno Haible <bruno@clisp.org> + + * lib/snprintf.c (snprintf): Avoid a memory allocation if the result + fits into the provided buffer. + +2004-10-06 Paul Eggert <eggert@cs.ucla.edu> + + * lib/diacrit.c, diacrit.h: Add GPL notice. + + * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL + notice. + * lib/atanl.c (atanl): Keep the code as similar to glibc as possible. + * lib/logl.c (logl): Keep the code as similar to glibc as possible. + This avoids a potential constant-folding bug. + +2004-10-05 Bruno Haible <bruno@clisp.org> + + * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check + for the declaration of strsep. + +2004-10-05 Bruno Haible <bruno@clisp.org> + + * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP. + +2004-10-04 Simon Josefsson <jas@extundo.com> + + * modules/memmem: New file. + * tests/test-memmem.c: New file. + * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem. + +2004-10-04 Simon Josefsson <jas@extundo.com> + + * m4/memmem.m4: New file. + +2004-10-04 Simon Josefsson <jas@extundo.com> + + * lib/memmem.h: New file. + * lib/memmem.c: New file, taken from glibc. + +2004-10-04 Simon Josefsson <jas@extundo.com> + + * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of + '#ifdef USE_UNLOCKED_IO'. + +2004-10-04 Simon Josefsson <jas@extundo.com> + + * config/srclist.txt: Add memmem from glibc. + +2004-10-04 Paul Eggert <eggert@cs.ucla.edu> + + * modules/xalloc (Files, Makefile.am): Remove xstrdup.c. + + * modules/argmatch, modules/argp, modules/closeout, modules/error, + modules/exclude, modules/getdate, modules/getline, + modules/getndelim2, modules/getpass, modules/getpass-gnu, + modules/getusershell, modules/linebuffer, modules/md5, + modules/mountlist, modules/posixtm, modules/readtokens, + modules/readutmp, modules/regex, modules/sha1, + modules/version-etc, modules/yesno: + Remove dependency on unlocked-io. + +2004-10-04 Paul Eggert <eggert@cs.ucla.edu> + + * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove. All uses removed. + + * m4/unlocked-io.m4: Add copyright notice. + (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO. + +2004-10-04 Paul Eggert <eggert@cs.ucla.edu> + + * lib/xalloc.h (xmemdup): Renamed from xclone. All uses changed. + * lib/xmalloc.c (xmemdup): Likewise. + * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC, + XFREE): Remove these long-obsolescent macros. + * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c + * lib/xstrdup.c: Remove. + + * lib/regex.c (re_comp): Cast gettext return value to char *, + Problem reported by Martin Neitzel via Mark D. Baushke. + +2004-10-04 Paul Eggert <eggert@cs.ucla.edu> + + * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y, + getndelim2.c, getpass.c, getusershell.c, linebuffer.c, + md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c, + regex.c, sha1.c, version-etc.c, yesno.c: + Include "unlocked-io.h" only if USE_UNLOCKED_IO. + * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now + the includer's responsibility. + + Sync from coreutils. + + * lib/modechange.c (mode_compile): Don't decrement a pointer that + points to the start of a string, as the C Standard says the + resulting behavior is undefined. + + * lib/backupfile.h (enum backuptype): Rename none -> no_backups, + simple -> simple_backups, numbered_existing -> + numbered_existing_backups, numbered -> numbered_backups + to avoid shadowing problems. All uses changed. + * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise. + * lib/backupfile.c (check_extension, numbered_backup): + Rename locals to avoid shadowing 'basename'. + * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than + once. + + * lib/.cppi-disable: Add getopt_.h, getopt_int.h. + * lib/.cvsignore: Add getopt.h. + +2004-10-04 Bruno Haible <bruno@clisp.org> + + * modules/README: New file. + * gnulib-tool (func_all_modules, func_verify_module): modules/README is + not a module. + +2004-10-02 Jim Meyering <jim@meyering.net> + + * lib/dirfd.h, getpagesize.h: Add copyright notice. + +2004-10-01 Yoann Vandoorselaere <yoann@prelude-ids.org> + + * modules/strsep: New file. + +2004-10-01 Yoann Vandoorselaere <yoann@prelude-ids.org> + + * m4/strsep.m4: New file. + +2004-10-01 Yoann Vandoorselaere <yoann@prelude-ids.org> + + * lib/strsep.h: New file. + * lib/strsep.c: New file. + +2004-10-01 Simon Josefsson <jas@extundo.com> + + * lib/snprintf.c (snprintf): Handle size==0. + +2004-10-01 Simon Josefsson <jas@extundo.com> + Bruno Haible <bruno@clisp.org> + + * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>. + (snprintf): Declare 'args'. + +2004-10-01 Paul Eggert <eggert@cs.ucla.edu> + + * lib/snprintf.c: Remove comments as to why each header is needed. + +2004-10-01 Bruno Haible <bruno@clisp.org> + + * MODULES.html.sh: Add strsep. + +2004-09-30 Simon Josefsson <jas@extundo.com> + + * modules/snprintf: New file. + +2004-09-30 Simon Josefsson <jas@extundo.com> + + * m4/snprintf.m4: New file. + +2004-09-30 Simon Josefsson <jas@extundo.com> + + * lib/snprintf.h, lib/snprintf.c: New files. + +2004-09-30 Sergey Poznyakoff <gray@Mirddin.farlep.net> + + * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL + (hol_entry_help): Never translate an empty string. + Do not translate option tag (opt->name) if OPTION_NO_TRANS is set + * lib/argp.h (OPTION_NO_TRANS): New option. + +2004-09-30 Paul Eggert <eggert@cs.ucla.edu> + + * modules/argp (Maintainer): Replace Simon Josefsson + by Sergey Poznyakoff. + +2004-09-30 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Comment-out argp/argp.h, until we get the argp + changes merged back into glibc. + +2004-09-30 Paul Eggert <eggert@cs.ucla.edu> + + * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf. + +2004-09-29 Oskar Liljeblad <oskar@osk.mine.nu> + + * lib/xvasprintf.c: Include xalloc.h. + (xvasprintf): Use xalloc_die, not xmalloc_die. + +2004-09-29 Bruno Haible <bruno@clisp.org> + + * modules/alloca-opt: New file, derived from modules/alloca. + * modules/allocsa: Depend on alloca-opt instead of alloca. + * modules/setenv: Likewise. + * modules/vasnprintf: Likewise. + * MODULES.html.sh: Add alloca-opt. + +2004-09-28 Simon Josefsson <jas@extundo.com> + + * gnulib-tool: New parameter --lgpl, to asseert that modules are + LGPL, and to replace license template from GPL to LGPL. + +2004-09-28 Paul Eggert <eggert@cs.ucla.edu> + + * modules/dummy: Change license to LGPL. + +2004-09-28 Paul Eggert <eggert@cs.ucla.edu> + + * lib/dummy.c: Change copyright notice to FSF, and license to GPL. + +2004-09-24 Simon Josefsson <jas@extundo.com> + + * modules/minmax (License): Change from GPL to LGPL. + +2004-09-23 Simon Josefsson <jas@extundo.com> + + * gnulib-tool (--import): Typo. + +2004-09-23 Simon Josefsson <jas@extundo.com> + + * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default. + +2004-09-22 Bruno Haible <bruno@clisp.org> + + * modules/*: Add 'License' field. + * gnulib-tool: Accept --extract-license option. + (func_get_license): New function. + +2004-09-21 Bruno Haible <bruno@clisp.org> + + * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4. + Reported by Simon Josefsson. + +2004-09-20 Paul Eggert <eggert@cs.ucla.edu> + + * modules/inttostr (Files): Add m4/longlong.m4, since it uses + gl_AC_TYPE_LONG_LONG. + +2004-09-20 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Add getsubopt.c, since libc bought our changes. + +2004-09-18 Simon Josefsson <jas@extundo.com> + and Paul Eggert <eggert@cs.ucla.edu> + + * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal + calls with autoreconf. Define GL_LIB. + +2004-09-14 Karl Berry <karl@gnu.org> + + * config/srclist.txt: unsync setenv.c, sigh. + +2004-09-13 Paul Eggert <eggert@cs.ucla.edu> + + * lib/argp-pvh.c (argp_program_version_hook): Provide initial value. + Problem reported by Bruno Haible in: + http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html + +2004-09-13 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Comment out argp-pvh.c. + +2004-09-11 Paul Eggert <eggert@cs.ucla.edu> + + * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy, + in case some system header has #define'd it. Problem reported by + Soeren D. Schulze in + <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>. + +2004-09-09 Karl Berry <karl@gnu.org> + + * regex.[ch]: delete from the root. These were supposed to be + synced with emacs cvs, but this has not happened for about + a year, and anyway nothing else uses emacs regex.[ch]. + bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700. + lib/regex[.ch] is untouched. + +2004-09-09 Bruno Haible <bruno@clisp.org> + + * modules/vasnprintf (Files): Add m4/eoverflow.m4. + +2004-09-09 Bruno Haible <bruno@clisp.org> + + * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with + modifications. + * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW. + +2004-09-08 Oskar Liljeblad <oskar@osk.mine.nu> + + * modules/xvasprintf: New file. + * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf. + +2004-09-08 Oskar Liljeblad <oskar@osk.mine.nu> + + * lib/xvasprintf.h: New file. + * lib/xvasprintf.c: New file. + * lib/xasprintf.c: New file. + +2004-09-08 Bruno Haible <bruno@clisp.org> + + * m4/stdint.m4: New file, taken from GNU clisp with modifications. + +2004-09-08 Bruno Haible <bruno@clisp.org> + + * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting + length is > INT_MAX. + * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any + more. + +2004-09-08 Bruno Haible <bruno@clisp.org> + + * lib/stdint_.h: New file, taken from GNU clisp. + +2004-09-08 Bruno Haible <bruno@clisp.org> + Oskar Liljeblad <oskar@osk.mine.nu> + + * modules/stdint: New file. + * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint. + +2004-08-19 Paul Eggert <eggert@cs.ucla.edu> + + Import from coreutils. + * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on + strings on unbounded length. alloca's performance benefits aren't + that important here. + (V_STRDUP): Remove. + (parse_with_separator): New function, with most of the internals + of the old parse_user_spec. Allow user to omit both user and group, + for compatibility with FreeBSD. + Clone only the user name, not the entire spec. + Do not set *uid, *gid unless entirely successful. + Avoid memory leak in some failing cases. + Fix regression for USER.GROUP reported by Dmitry V. Levin in + <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html> + (parse_user_spec): Rewrite to use parse_with_separator. + +2004-08-19 Paul Eggert <eggert@cs.ucla.edu> + + * modules/userspec: Don't depend on alloca. + +2004-08-19 Paul Eggert <eggert@cs.ucla.edu> + + * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA. + +2004-08-17 Paul Eggert <eggert@cs.ucla.edu> + + * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise, + readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check, + utimecmp, utimens, xnanosleep. Rename sha to sha1. + +2004-08-16 Simon Josefsson <jas@extundo.com> + + * gnulib-tool: Use sed instead of autoconf --trace, inspired by + libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>. + Add --dry-run for --import. + Let user provided command line parameters override configure.ac + settings. + +2004-08-12 Simon Josefsson <jas@extundo.com> + + * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro, + as discussed with Paul Eggert in threads rooted at + <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html> + and + <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>. + Before, the test was empty, and relied on ELIDE_CODE in source + code.) + (gl_PREREQ_GETOPT): New macro. + (gl_GETOPT): Use them. + +2004-08-12 Simon Josefsson <jas@extundo.com> + + * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack. + * lib/getopt_.h: Renamed from getopt.h. + +2004-08-12 Simon Josefsson <jas@extundo.com> + + * gnulib-tool: Add --source-base, --m4-base, --libtool options. + Change default library name from libfoo to libgnu. + Now, if you have a configure.ac that says: + gl_SOURCE_BASE(gl) + gl_M4_BASE(gl/m4) + gl_MODULES(error getopt etcetera) + gl_INIT + you can import all you need by running: + ../gnulib/gnulib-tool --import + + * modules/getopt (Files): Rename getopt.h to getopt_.h. + (Makefile.am): Rewrite, use logic from argz. + (Include): Use <getopt.h> instead of "getopt.h". + +2004-08-12 Paul Eggert <eggert@cs.ucla.edu> + + * modules/argp (Files): Add m4/unlocked-io.m4. + (Depends-on): Add extensions. + +2004-08-12 Paul Eggert <eggert@cs.ucla.edu> + + * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody + uses HAVE_ARGP_H or HAVE_ARGP_PARSE. + Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS. + Check for program_invocation_name, program_invocation_short_name, + flockfile, funlockfile, features.h, _getopt_long_only_r. + +2004-08-12 Paul Eggert <eggert@cs.ucla.edu> + + * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of + its complicated substitute. + * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name + and program_invocation_name. + (__argp_basename) [!_LIBC]: Remove; the only use was + replaced by its body. + (__argp_short_program_name): Change condition from + !defined __argp_short_program_name to + ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME), + to match argp-namefrob.h. + (__argp_failure): Don't assume strerror_r returns char *. + * lib/argp-parse.c (N_): Define unconditionally. + (argp_default_options): Fill out initializers with 0 to avoid + gcc warnings. + +2004-08-12 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h), + getopt1.c. + +2004-08-11 Paul Eggert <eggert@cs.ucla.edu> + + Merge from coreutils. + + * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy. + + * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require + gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T. + +2004-08-11 Paul Eggert <eggert@cs.ucla.edu> + + Merge from coreutils. + + * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing + wmemchr or wmemcpy. Problem reported by Robert Dahlem + for Reliant Unix 5.43. + + * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available. + (union fooround): Use uintmax_t, not long int. + The rest is a merge from libc: + [defined _LIBC]: Include <shlib-compat.h>. + (_obstack) [defined _LIBC]: Remove after 2.3.4. + + * lib/settime.c (settime): Recode to avoid warning with + Sun Forte C 6U2. + + * lib/strverscmp.c: Convert to UTF-8. + +2004-08-11 Paul Eggert <eggert@cs.ucla.edu> + + * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4, + m4/uintmax_t.m4. + +2004-08-09 Paul Eggert <eggert@cs.ucla.edu> + + * modules/xalloc-die: New file. + * modules/xalloc: Remove dependencies on error, gettext, exitfail. + + * modules/md5 (Files): Add m4/uint32_t.m4. + * modules/sha1: Renamed from modules/sha. + (Files): + Rename lib/sha.h to lib/sha1.h. + Rename lib/sha.c to lib/sha1.c. + Rename m4/sha.m4 to m4/sha1.m4. + (lib_SOURCES): Likewise. + (configure.ac): Rename gl_SHA to gl_SHA1. + (Include): sha.h -> sha1.h. + +2004-08-09 Paul Eggert <eggert@cs.ucla.edu> + + * m4/uint32_t.m4, m4/uintptr_t.m4: New files. + * m4/sha1.m4: Renamed from sha.m4. + (gl_SHA1): Renamed from gl_SHA. All uses changed. + +2004-08-09 Paul Eggert <eggert@cs.ucla.edu> + + * lib/obstack.h (obstack_empty_p): + Don't assume that chunk->contents is suitably aligned. + * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk): + Likewise. Problem reported by Benno in + <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>. + + * lib/chown.c (rpl_chown): Work even if the file is writeable but not + readable. This could be improved further but it'd take some work. + +2004-08-08 Simon Josefsson <jas@extundo.com> + + * modules/xgethostname (Depends-on): Remove exit and error (not + used). + + * modules/getpass-gnu: Add getpass.h. + (Depends-on): Add stdbool. + * modules/getpass: Add getpass.h. + +2004-08-08 Simon Josefsson <jas@extundo.com> + + * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU): + Check getpass declaration. + +2004-08-08 Simon Josefsson <jas@extundo.com> + + * lib/xgethostname.c: Don't include error.h (not used). + + * lib/getpass.h: Add. + * lib/getpass.c: Include getpass.h first. + +2004-08-08 Paul Eggert <eggert@cs.ucla.edu> + + * lib/xalloc-die.c: New file. + * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove. + All uses removed. + * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted): + Likewise. Move inclusions of gettext.h, error.h, exitfail.h to + xalloc-die.c. + (_, N_, xalloc_die): Move to xalloc-die.c. + * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup, + so that we needn't mess with xalloc_msg_memory_exhausted. + + * lib/sha1.h: Renamed from sha.h. + (SHA1_H): Renamed from _SHA_H. + (sha1_ctx): Renamed from sha_ctx. + (sha1_init_ctx): Renamed from sha_init_ctx. + (sha1_process_block): Renamed from sha_process_block. + (sha1_process_bytes): Renamed from sha_process_bytes. + (sha1_finish_ctx): Renamed from sha_finish_ctx. + (sha1_read_ctx): Renamed from sha_read_ctx. + (sha1_stream): Renamed from sha_stream. + (sha1_buffer): Renamed from sha_buffer. + * lib/sha1.c: Likewise; renamed from sha.c. + Do not include <sys/types.h>. + Include <stddef.h> rather than <stdlib.h>. + +2004-08-08 Bruno Haible <bruno@clisp.org> + + * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from + FILESYSTEM_PREFIX_LEN. + * lib/progreloc.c: Likewise. + * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN. + +2004-08-06 Simon Josefsson <jas@extundo.com> + + * modules/progname (Depends-on): Don't depend on stdbool. + +2004-08-06 Simon Josefsson <jas@extundo.com> + + * modules/getsubopt: New file. + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add + getsubopt. + +2004-08-06 Paul Eggert <eggert@cs.ucla.edu> + + More merge from coreutils. + + * m4/utimens.m4, m4/utimecmp.m4: New files. + * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4, + fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4, + prereq.m4, sha.m4: Import changes from coreutils. + +2004-08-06 Paul Eggert <eggert@cs.ucla.edu> + + More merge from coreutils. + * modules/raise, modules/readtokens0, modules/utimens: + * modules/utimecmp, module/xnanosleep: New files. + * modules/strftime: Add lib/strftime.h. + Change include from <time.h> to "strftime.h". + * modules/yesno: Add lib/yesno.h. + * modules/backupfile: Remove lib/addext.c. + * modules/euidaccess: Add stat-macros.h. + * modules/canonicalize, modules/euidaccess, + modules/filemode, modules/lchown, modules/makepath, + modules/rmdir, modules/stat: Likewise. + +2004-08-06 Paul Eggert <eggert@cs.ucla.edu> + + Merge from tar. + * lib/argp-help.c (make_hol, hol_append): Don't assume that + SIZE_MAX is a valid preprocessor constant. + (__argp_basename): Change from "#ifndef _LIBC" + to "#ifndef __argp_short_program_name", so that + we don't compile these functions for tar. + + More merges from coreutils. + * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h: + * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c: + * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files. + * lib/addext.c: Remove; no longer needed. + * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h, + lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c, + lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c, + lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c, + lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y, + lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c, + lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c, + lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h, + lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c, + lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c, + lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h, + lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c, + lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c, + lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c, + lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c, + lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h, + lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c: + Import changes from coreutils. + +2004-08-05 Simon Josefsson <jas@extundo.com> + + * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it. + +2004-08-05 Simon Josefsson <jas@extundo.com> + + * m4/getsubopt.m4: New file. + +2004-08-05 Paul Eggert <eggert@cs.ucla.edu> + + Merge from coreutils. + + * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4: + * m4/getcwd-path-max.m4: New files. + + * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming. + FILESYSTEM_PREFIX_LEN -> + FILE_SYSTEM_PREFIX_LEN. + FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX -> + FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX. + FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR -> + FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR. + + * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the + prerequisite modules now handle the DOS stuff. + Don't check for unistd.h. + +2004-08-05 Paul Eggert <eggert@cs.ucla.edu> + + Merge from coreutils. + + * lib/.gdb-history: Remove; this doesn't belong here. + + * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c: + * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h: + * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c: + * lib/getcwd.c: New files. + + * lib/dirname.h: Include <stdbool.h>. + (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN, + for consistency with POSIX terminology. All uses changed. + (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros. + (strip_trailing_slashes): Use bool for booleans. + * lib/stripslash.c (strip_trailing_slashes): Likewise. + + * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it + sometimes returns a positive errno value even when it succeeds. + (print_errno_message) [!LIBC]: Fall back on strerror if + __strerror_r fails. + + * lib/path-concat.c (mempcpy): Don't define if a system header defines + it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h. + (longest_relative_suffix): New function. + (path_concat): Use it. Assume first argument is not NULL. + Port to DOS. Omit redundant separators. + Report an error instead of returning NULL. + Use mempcpy instead of memcpy. + (xpath_concat): Remove: not declared or used. + + * lib/same.h: Include <stdbool.h> + (same_name): Return bool, not int. + * lib/same.c (same_name): Likewise. + (errno): Don't declare; we assume C89 or better now. + + * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros, + if not already defined. + + * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now. + * lib/dup-safer.c (errno): Likewise. + +2004-08-05 Paul Eggert <eggert@cs.ucla.edu> + + Merge from coreutils. + * modules/c-strtod, modules/c-strtold, modules/canonicalize: + * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files. + * modules/path-concat: Don't depend on strdup. + +2004-08-03 Simon Josefsson <jas@extundo.com> + + * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined. + * lib/progname.h: Don't include stdbool.h. + +2004-08-03 Paul Eggert <eggert@cs.ucla.edu> + + * modules/fatal: Remove, as the "fatal" module wasn't used or working. + * MODULES.html.sh (func_all_modules): Remove fatal. + +2004-08-03 Paul Eggert <eggert@cs.ucla.edu> + + * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working. + +2004-08-03 Paul Eggert <eggert@cs.ucla.edu> + + * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or + working. + +2004-08-02 Simon Josefsson <jas@extundo.com> + + * lib/getsubopt.h: New file, with comments from Bruno Haible. + * lib/getsubopt.c: New file, from glibc, but slightly modified based on + suggestions from Paul Eggert <eggert@cs.ucla.edu>. + +2004-08-01 Simon Josefsson <jas@extundo.com> + + * lib/xgetdomainname.c: Include stdlib.h, for free(). + +2004-07-19 Bruno Haible <bruno@clisp.org> + + * MODULES.html.sh (func_all_modules): Add dummy. + +2004-07-16 Simon Josefsson <jas@extundo.com> + + * modules/dummy: New file. + +2004-07-16 Simon Josefsson <jas@extundo.com> + + * lib/dummy.c: New file. + +2004-07-16 Bruno Haible <bruno@clisp.org> + + * lib/backupfile.h: Add extern "C" for C++. + * lib/closeout.h: Likewise. + * lib/copy-file.h: Likewise. + * lib/findprog.h: Likewise. + * lib/full-write.h: Likewise. + * lib/pathname.h: Likewise. + * lib/progname.h: Likewise. + * lib/stpcpy.h: Likewise. + * lib/stpncpy.h: Likewise. + * lib/strcase.h: Likewise. + * lib/strstr.h: Likewise. + * lib/xalloc.h: Likewise. + + * lib/mbswidth.h: Add extern "C" for C++. + Reported by Albert Chin-A-Young <china@thewrittenword.com>. + +2004-07-13 Robert Millan <robertmh@gnu.org> + + * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g. + +2004-07-09 Simon Josefsson <jas@extundo.com> + + * lib/getndelim2.c: Include stddef.h, for ptrdiff_t. (FreeBSD 4.9 + failed without this.) + +2004-07-09 Paul Eggert <eggert@cs.ucla.edu> + + * modules/chown (Files): Add lib/fchown-stub.c, since + gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub). + +2004-07-09 Paul Eggert <eggert@cs.ucla.edu> + + * lib/fchown-stub.c: New file. + +2004-06-24 Jim Meyering <jim@meyering.net> + + * lib/obstack.h (obstack_base): Cast to (void *), per documentation. + +2004-06-22 Paul Eggert <eggert@cs.ucla.edu> + + * modules/argz: Omit "#include". + + * MODULES.html.sh (func_all_modules): Add calloc, to match + 2004-06-01 addition of calloc module. + +2004-06-22 Paul Eggert <eggert@cs.ucla.edu> + + * m4/argz.m4: New file, which is autoupdated from libtool. + +2004-06-22 Paul Eggert <eggert@cs.ucla.edu> + + * lib/argz.c, lib/argz_.h: New files, which are autoupdated from + libtool. + +2004-06-22 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist-update: Don't insist on "USA." before the + close-comment, as libtool omits the period and puts the */ on a + separate line. + * config/srclist.txt: Add argz.c, argz_.h, argz.m4. + * config/srclistvars.sh: Add LIBTOOL (for eggert only). + +2004-06-22 Gary V. Vaughan <gary@gnu.org> + + * modules/argz: New file. + * MODULES.html.sh (func_all_modules): Add argz. + +2004-06-12 Jim Meyering <jim@meyering.net> + and Paul Eggert <eggert@cs.ucla.edu> + + * modules/hash (Files): Add lib/xalloc.h. + * modules/pipe (Depends-on): Add wait-process. + * modules/stat (Depends-on): Add xalloc. + * modules/userspec (Files): Add lib/userspec.h. + * modules/xstrto + + Upgrade from gettext-0.13. + * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4, + m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4, + m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4. + +2004-06-10 Jim Meyering <jim@meyering.net> + + * lib/calloc.c: New file. + +2004-06-06 Paul Eggert <eggert@cs.ucla.edu> + + * lib/getdate.y (yylex): Allow space between sign and number. + Problem reported by Dan Jacobson. + +2004-06-01 Paul Eggert <eggert@cs.ucla.edu> + + Merge from coreutils CVS. + + * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4, + makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4, + putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4, + strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4, + xstrtol.m4: Fix copyright date and/or serial number. + + * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h. + See if we need an fchown replacement. + (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro. + (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK, + and use the replacement function if we detect either defect. + + * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR, + gl_UTIMECMP. + +2004-06-01 Paul Eggert <eggert@cs.ucla.edu> + and Jim Meyering <jim@meyering.net> + + Merge from coreutils CVS. + + * lib/stat-macros.h: New file, with contents from file-type.h + and coreutils' system.h. + * lib/file-type.c: Include "stat-macros.h". + * lib/file-type.h (file_type): Move all macro definitions to new file, + stat-macros.h. + + * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]: + Wrap old code with this conditional. + [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown + function that does not dereference symlinks. + * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown. + + * lib/xreadlink.c: Include xreadlink.h first, to catch .h file + dependency problems. + (xreadlink): Accept new arg SIZE, for efficiency. + All decls and uses changed. + * lib/xreadlink.h: Include <stddef.h>, for size_t. + + * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h, + gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h. + + * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h, + sysexits.h. + +2004-06-01 Jim Meyering <jim@meyering.net> + + * m4/calloc.m4: New file. + +2004-05-31 Paul Eggert <eggert@cs.ucla.edu> + + * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI + C B3910B A.05.55 [Dec 04 2003]. Problem reported by Jim Meyering. + Also, fix a typo in a diagnostic. + +2004-05-30 Paul Eggert <eggert@cs.ucla.edu> + + * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC + or AC_FUNC_REALLOC. + +2004-05-30 Paul Eggert <eggert@cs.ucla.edu> + + * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these + macros to be defined. + (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if + the allocator returns NULL because the requested size is zero. + +2004-05-20 Paul Eggert <eggert@cs.ucla.edu> + + * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this + var. Add comment explaining why libc still defines it. This + merges the following patch from glibc: + http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html + +2004-05-20 Andreas Schwab <schwab@suse.de> + + * m4/free.m4: Replace free if it not known to work, not the other + way round. + +2004-05-19 Paul Eggert <eggert@cs.ucla.edu> + + * lib/obstack.c (_obstack): Remove unused variable. It hasn't been + present in glibc since revision 1.1 of this file. + * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast, + obstack_alignment_mask, obstack_alloc, obstack_base, + obstack_blank, obstack_blank_fast, obstack_chunk_size, + obstack_copy, obstack_copy0, obstack_finish, obstack_grow, + obstack_grow0, obstack_init, obstack_int_grow, + obstack_int_grow_fast, obstack_make_room, obstack_memory_used, + obstack_next_free, obstack_object_size, obstack_ptr_grow, + obstack_ptr_grow_fast, obstack_room): Remove declarations of + nonexistent functions. + +2004-05-18 Karl Berry <karl@gnu.org> + + * config/srclist.txt: break link for vasnprintf.c. + +2004-05-17 Paul Eggert <eggert@cs.ucla.edu> + + Port obstack to the AS/400, where pointers are 16 bytes wide and + you cannot cast an integer to a valid pointer. This patch is + currently waiting to be integrated into glibc; see + <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>. + + * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove. + All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN. + (__BPTR_ALIGN, __PTR_ALIGN): New macros. + (struct obstack): temp member is now a union of a pointer and + an integer, instead of an integer. All integer uses changed. + This does not affect the physical layout of struct obstack, + except on hosts (like the AS/400) where the size or alignment of + void * is greater than that of ptrdiff_t. + (obstack_finish) [! (defined __GNUC__ && defined __STDC__ && + __STDC__)]: Store temporary in pointer member of union, not + integer member. + * lib/obstack.c: Include <stddef.h>, for offsetof. + (struct fooalign): Remove; it doesn't need a name. + (union fooround): Change double to long double, and add void *. + (DEFAULT_ALIGNMENT): Use offsetof to compute. + (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant, + not a macro. Hence the values are always int; so remove all + casts-to-int in uses. + +2004-05-17 Paul Eggert <eggert@cs.ucla.edu> + + * config/srclist.txt: Break link for argp-help.c and argp-parse.c until + we can get this patch merged into glibc. + +2004-05-17 Derek R. Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + * m4/argp: Depend on alloca. + +2004-05-17 Derek R. Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than + freecoding. + +2004-05-17 Bruno Haible <bruno@clisp.org> + + * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a + precision that consists of a '.' followed by an empty digit string. + Patch by Tor Lillqvist <tml@iki.fi>. + +2004-05-16 Paul Eggert <eggert@cs.ucla.edu> + + * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always, + for backward compatibility with older code. We need our own + alloca.h if _AIX is defined. Define HAVE_ALLOCA if we discover + it under some other name, and our alloca.h will define it. + +2004-05-16 Paul Eggert <eggert@cs.ucla.edu> + Derek Price <derek@ximbiot.com> + + * lib/alloca.c: Include <alloca.h>, to get our interface. + * lib/alloca_.h: Use __alloca on AIX, so that we don't have to + include <alloca.h> first. Use C89 prototype for alloca; this + requires including <stddef.h> for size_t. Use extern "C" if C++. + Use #elif for simplicity, since we can assume C89 now. + Don't try to source the system alloca.h since it will not be found + and to prevent recursively including its replacement. + * lib/fnmatch.c: Include <alloca.h> instead of opencoding. + * lib/regex.c: Likewise. + +2004-05-16 Derek Price <derek@ximbiot.com> + Paul Eggert <eggert@cs.ucla.edu> + + getline cleanup. This changes the getndelim2 API: both order of + arguments, and meaning of delim2 (now uses EOF, not 0, to indicate + no delimiter). + + * lib/getline.c: Don't include stddef.h or stdio.h, since our + interface does that. + (getline): Always use getdelim, so that we don't have two + copies of this code. + * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h> + if available. + (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined. + (GETNDELIM2_MAXIMUM): New macro. + (getndelim2): Reorder arguments. delim==EOF now means no delimiter, + instead of the old practice of delim2==0. All callers changed. + Return -1 on overflow, instead of returning junk. + Do not set *linesize unless allocation succeeds. + * lib/getndelim2.h: Do not include stddef.h; no longer needed, now + that we include sys/types.h. + * lib/getnline.h: Likewise. + * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro. + (getndelim2): Reorder arguments. + * lib/getnline.c (getnline, getndelim): + Don't discard the NMAX argument. + (getnline): Invoke getndelim, to avoid code duplication. + * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead + of (size_t) -1 by callers of the getnline family. + +2004-05-13 Paul Eggert <eggert@cs.ucla.edu> + + * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC. + Check for gettimeofday. + * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC. + Check for settimeofday, stime. + +2004-05-13 Paul Eggert <eggert@cs.ucla.edu> + + * lib/nanosleep.c (suspended): Change its type from int to + sig_atomic_t volatile. + (first_call): Make it private to rpl_nanosleep, and have it + be zero initially as that's a bit faster. + (my_usleep): Round up fractional times instead of truncating them, + as this is the usual meaning for 'sleep'. + + * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday' + doesn't work. + * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway). + (ENOSYS): Define if not defined. + (settime): Fall back on stime if it exists and settimeofday fails. + But don't bother with fallbacks if a method fails with errno == EPERM. + +2004-05-11 Jim Meyering <jim@meyering.net> + + Prior to this change, the save_cwd caller required read access to the + current directory on most systems (ones with the fchdir function). + + * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only + fails, try write-only, and finally, resort to using xgetcwd. + +2004-05-06 Paul Eggert <eggert@cs.ucla.edu> + + * lib/obstack.c, obstack.h: Import changes from libc. + +2004-04-28 Bruno Haible <bruno@clisp.org> + + * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it + also implicitly appends .exe to executables. + * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now + accepts Windows pathnames. + * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN): + Treat Cygwin like Windows, since it now accepts Windows pathnames. + * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN): + Treat Cygwin like Windows, since it now accepts Windows pathnames. + Reported by Derek Robert Price <derek@ximbiot.com>. + +2004-04-21 Karl Berry <karl@gnu.org> + + * config/srclist.txt (localcharset.c): break sync. + +2004-04-20 Paul Eggert <eggert@twinsun.com> + + * m4/host-os.m4: Add a copyright notice. + +2004-04-20 Jim Meyering <jim@meyering.net> + + Change UTILS_ to gl_ in AC_DEFINE'd names. + Change utils_- and jm_-prefixed variables, too. + * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from + UTILS_FUNC_MKDIR_TRAILING_SLASH. + * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP. + + * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD. + Don't emit trailing blanks. + Also rename jm_-prefixed variables to have gl_ prefix. + + * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS. + Also rename jm_-prefixed variables to have gl_ prefix. + + * m4/jm-macros.m4: Reflect the renamings. + * m4/prereq.m4: Likewise. + +2004-04-20 Jim Meyering <jim@meyering.net> + + * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak + memory. + +2004-04-20 Jim Meyering <jim@meyering.net> + Bruno Haible <bruno@clisp.org> + + * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak + memory when realloc fails. + +2004-04-19 Jim Meyering <jim@meyering.net> + + * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE, + now that readutmp.c may call `free (0)'. + +2004-04-19 Bruno Haible <bruno@clisp.org> + + * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well. + * m4/inttypes_h.m4: Likewise. + * m4/stdint_h.m4: Likewise. + * m4/intmax_t.m4: Likewise. + * m4/uintmax_t.m4: Likewise. + +2004-04-18 Jim Meyering <jim@meyering.net> + + * m4/prereq.m4: Don't forbid jm_ prefix. + + * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4: + * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4: + * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4: + * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4: + * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4: + * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4: + * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4: + * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4: + * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4: + * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4: + * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4: + * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4: + * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4: + * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4: + * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4: + * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4, + * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4: + * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4: + Change jm_ to gl_ in AC_DEFINE'd names. Update all uses. + +2004-04-18 Jim Meyering <jim@meyering.net> + + * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc + failure, don't leak memory and do call END_UTMP_ENT. + +2004-04-16 Jim Meyering <jim@meyering.net> + + * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro. It is specific to + coreutils' stat program. + (gl_PREREQ): Don't require jm_PREREQ_STAT. + +2004-04-11 Paul Eggert <eggert@twinsun.com> + + * lib/inttostr.h: Include <limits.h> unconditionally, since we assume + C89. + (CHAR_BIT): Remove, since we assume C89. + Include <stdint.h> if available, as per current Autoconf CVS advice. + +2004-03-31 Jim Meyering <jim@meyering.net> + + * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC. + Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC. + * m4/xalloc.m4: Likewise. + +2004-03-30 Paul Eggert <eggert@twinsun.com> + + Merge from coreutils. + + * m4/inttostr.m4: New file. + * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff. + Require AM_STDBOOL_H and gl_TIMESPEC instead. + Require gl_CLOCK_TIME. + * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE. + +2004-03-30 Paul Eggert <eggert@twinsun.com> + + * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int + not bool, to be more consistent with Unix conventions. + Suggested by Bruno Haible. + + Merge from coreutils. + + * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c: + * lib/umaxtostr.c: New files. + + * lib/getdate.h: Include stdbool.h, and timespec.h instead of + the usual <time.h> dance. + (get_date): Change signature to support fractional time stamps. + All callers changed. + * lib/getdate.y: Include "getdate.h" first, as we can now + assume C89 and don't need to worry about 'const'. + Similarly, include "unlocked-io.h" near start, not in middle. + Include <limits.h>. + (textint.value): Use long int rather than int. + (textint.digits): Use size_t rather than int. + (BILLION, LOG10_BILLION): New constants. + (parser_control): New member rel_ns. Members day_ordinal, + time_zone, month, day, hour, minutes, rel_year, rel_month, + rel_day, rel_hour, rel_minutes, rel_seconds + are now long int, not int. Member seconds is now struct timespec, + not int. New member timespec_seen. Members dates_seen, days_seen, + local_zones_seen, rels_seen, times_seen, zones_seen are now size_t, + not int. + (%union.intval): Now long int, not int. + New member timespec. + (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens. + (seconds, signed_seconds, unsigned_seconds): New nonterminals. + (spec): Now is a timespec or an item list. + (timespec, items): New nonterminals. + (time, rel, relunit, number, get_date): + Add support for fractional seconds. + (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax. + (gmtime, localtime, mktime): Remove decls; not needed with C89. + (to_hour): First arg is now long int, not int. + (to_year): Returns long int, not int. + Don't treat year -70 like 70. + (tm_diff): Returns long int, not int. + (lookup_word): Use bool instead of int when appropriate. + (yylex): Use size_t for count, not int. + Detect overflow when parsing large integer constants. + Add support for fractions. + (get_date): Make pointers 'const' if possible. + Use more-portable code to detect integer overflow. + (main) [TEST]: Adjust to above changes. Test for localtime failure. + Don't use ctime; it's not reliable if the year has >4 digits. + + * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set. + This is for compatibility with BSD. + + * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define. + (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise. + From coreutils' system.h. + + * lib/userspec.c: Don't include "posixver.h". + (parse_user_spec): Fall back on USER.GROUP parsing, regardless + of POSIX version, as POSIX 1003.1-2001 allows that behavior as a + compatible extension. Simplify code by removing a boolean int + that was always nonzero if a string was nonnull. + +2004-03-30 Jim Meyering <jim@meyering.net> + + Merge from coreutils. + + Avoid a configure-time warning about sys/ucred.h on OSF V4.0. + * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since + on some systems one must include <grp.h> before it. + Reported by Christian Krackowizer. + +2004-03-30 Jim Meyering <jim@meyering.net> + + Merge from coreutils. + + * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h. + + * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading + an empty input stream. + + * lib/readtokens.c: Include <stdbool.h>. + (readtoken): Use `size_t' rather than int/long. + All callers adjusted. + Use `bool' rather than `int' where appropriate. + Use memset rather than an explicit loop. + Use x2nrealloc rather than xrealloc. + Allow the use of `\0' as a delimiter. + (readtokens): Likewise. + * lib/readtokens.h (readtoken, readtokens): Update prototypes. + +2004-03-30 Jim Meyering <jim@meyering.net> + + * m4/realloc.m4: Remove file, since now it does no more than + AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via + the `configure.ac' section of module/realloc. + * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC. + +2004-03-30 Bruno Haible <bruno@clisp.org> + + * lib/getloadavg.c (getloadavg): Don't assume setlocale returns + nonnull. + +2004-03-29 Paul Eggert <eggert@twinsun.com> + + Merge changes to getloadavg.c from coreutils and Emacs. + + * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale): + Define to an expression, not to the empty string. + Include cloexec.h and xalloc.h. + (getloadavg): Restore LC_NUMERIC locale after setting it temporarily. + Use set_cloexec_flag rather than rolling our own. + * lib/cloexec.c, lib/cloexec.h: New files. + +2004-03-29 Paul Eggert <eggert@twinsun.com> + + * m4/cloexec.m4: New file. + +2004-03-18 Paul Eggert <eggert@twinsun.com> + + * lib/getopt.h: Sync with libc CVS. + +2004-03-18 Paul Eggert <eggert@twinsun.com> + Bruno Haible <bruno@clisp.org> + + * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares + mbswidth. + +2004-03-18 Paul Eggert <eggert@twinsun.com> + Bruno Haible <bruno@clisp.org> + + * lib/mbswidth.h: Include <wchar.h> only if + HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have + <wchar.h>. + * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>. + +2004-03-09 Paul Eggert <eggert@twinsun.com> + + * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c: + Sync with libc CVS. + * lib/getopt_int.h: New file, also synced from libc. + +2004-03-09 Paul Eggert <eggert@twinsun.com> + + * config/srclistvars.sh: Add GNUWWWLICENSES for eggert. + * config/srclist.txt: Sync getopt with libc. Add getopt_int.h. + Bring back getopt.c, getopt.h, getopt1.c. + +2004-03-07 Paul Eggert <eggert@twinsun.com> + + * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK. + All uses changed. Check for sa_sigaction member; this fixes + a bug first reported by Jason Andrade in + <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>. + +2004-03-07 Paul Eggert <eggert@twinsun.com> + + * lib/c-stack.c (SIGACTION_WORKS): New macro. Use it instead of long + '#if' expressions. Unlike the code it replaces, it does not + depend on (defined _SC_PAGESIZE). However, it does depend on + HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug + first reported by Jason Andrade in + <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>. + +2004-02-25 Simon Josefsson <jas@extundo.com> + + * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared. + +2004-02-25 Simon Josefsson <jas@extundo.com> + + * lib/strdup.h: New file. + * lib/strdup.c: Include it. + * lib/path-concat.c: Include strdup.h. Drop strdup declaration. + * lib/userspec.c: Include strdup.h. Drop strdup declaration. + +2004-02-23 Karl Berry <karl@gnu.org> + + * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files + (from fencepost.gnu.org:/gd/gnuorg). + +2004-02-23 Karl Berry <karl@gnu.org> + + * config/srclistvars.sh (GNUORG) [karl]: redefine. + * config/srclist.txt: add maintain/standards documents. + +2004-02-18 Bruno Haible <bruno@clisp.org> + + * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE. + Reported by Derek Robert Price <derek@ximbiot.com>. + +2004-02-16 Karl Berry <karl@gnu.org> + + * config/mkinstalldirs, install-sh: update from automake. + +2004-02-06 Karl Berry <karl@gnu.org> + + * m4/po.m4: update from gettext 0.14.1. + +2004-02-06 Karl Berry <karl@gnu.org> + + * lib/config.charset: update from gettext 0.14.1. + +2004-02-05 Paul Eggert <eggert@twinsun.com> + + Add comments and code, prompted by suggestions from Bruno Haible + for sh-quote. + * lib/quotearg.h (quotearg_alloc): New decl. Improve the comments + describing the enum quoting_style values. + * lib/quotearg.c (quotearg_alloc): New function. + (quotearg_buffer_restyled): Treat lone { and } as special. + Treat = as special. Work around bug with older shells + that "see" a '\' that is really the 2nd byte of a multibyte char. + Quote empty string with shell_quoting_style. + +2004-02-03 Bruno Haible <bruno@clisp.org> + + * m4/pipe.m4: New file, from GNU gettext. + +2004-02-03 Bruno Haible <bruno@clisp.org> + + * lib/pipe.h: New file, from GNU gettext. + * lib/pipe.c: New file, from GNU gettext. + +2004-01-27 Bruno Haible <bruno@clisp.org> + + * m4/execute.m4: New file, from GNU gettext. + +2004-01-27 Bruno Haible <bruno@clisp.org> + + * lib/execute.h: New file, from GNU gettext. + * lib/execute.c: New file, from GNU gettext. + * lib/w32spawn.h: New file, from GNU gettext. + +2004-01-24 Paul Eggert <eggert@twinsun.com> + + Merge from diffutils. + + * lib/file-type.c (file_type): Add typed memory objects. + * lib/file-type.h (S_TYPEISTMO): New macro. + + * lib/c-stack.h (c_stack_action): Remove argv argument. + * lib/c-stack.c (c_stack_action): Likewise. All uses changed. + (die): Don't calculate message unless segv_action returns. + (get_stack_location, min_address_from_argv, max_address_from_argv, + volatile stack_base, volatile_stack_size): Remove. + (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume + that every segmentation violation is a stack overflow. (Ouch!) + See Debian bug 136249 (still outstanding) for more info about why + HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels. + +2004-01-24 Paul Eggert <eggert@twinsun.com> + + Exit-status fix from coreutils. + + Use exit_failure consistently in place of EXIT_FAILURE, + so that program exit statuses are consistent on failure. + + * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]: + Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE. + * lib/argmatch.h: Comment fix to match the above. + * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]: + Now a macro referring to exit_failure, instead of a separate + variable. Include "exitfail.h" to get it. + * lib/xstrtol.h: Include "exitfail.h". + (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2. + + * lib/long-options.c (parse_long_options): Use prototype + for usage function arg. Pass it EXIT_SUCCESS rather than 0, + for clarity. + +2004-01-21 Jim Meyering <jim@meyering.net> + + * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal + so as not to conflict with a different-sized __mktime_internal + function in GNU libc. + * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise. + Problem building statically-linked `ls' reported by Michael Brunnbauer. + +2004-01-20 Karl Berry <karl@gnu.org> + + * config/config.guess: update from config. + + * config/srclistvars.sh: GNUWWWLICENSES for karl. + +2004-01-20 Bruno Haible <bruno@clisp.org> + + Safer stack allocation. + * lib/setenv.c: Include allocsa.h. + (alloca): Remove fallback definition. + (freea): Remove macro. + (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa + instead of freea. + +2004-01-20 Bruno Haible <bruno@clisp.org> + + * m4/eealloc.m4: New file, from GNU gettext. + +2004-01-20 Bruno Haible <bruno@clisp.org> + + * m4/allocsa.m4: New file, from GNU gettext. + +2004-01-20 Bruno Haible <bruno@clisp.org> + + * lib/xallocsa.h: New file, from GNU gettext. + * lib/xallocsa.c: New file, from GNU gettext. + +2004-01-20 Bruno Haible <bruno@clisp.org> + + * lib/wait-process.c: On Windows, include windows.h. Needed on mingw. + +2004-01-20 Bruno Haible <bruno@clisp.org> + + * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument. + * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE + specially. + +2004-01-20 Bruno Haible <bruno@clisp.org> + + * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid() + patch. + +2004-01-20 Bruno Haible <bruno@clisp.org> + + * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration. + +2004-01-20 Bruno Haible <bruno@clisp.org> + + * lib/eealloc.h: New file. + +2004-01-20 Bruno Haible <bruno@clisp.org> + + * lib/binary-io.h: Avoid warnings on Cygwin. + +2004-01-20 Bruno Haible <bruno@clisp.org> + + * lib/allocsa.h: New file, from GNU gettext. + * lib/allocsa.c: New file, from GNU gettext. + +2004-01-18 Karl Berry <karl@gnu.org> + + * doc/gpl.texi, doc/lgpl.texi: new files. + +2004-01-18 Karl Berry <karl@gnu.org> + + * config/srclistvars.sh (GNUWWWLICENSES): new variable. + * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there. + +2004-01-15 Paul Eggert <eggert@twinsun.com> + + Merge from coreutils. + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t. + * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION. + (gl_DEFAULT_POSIX2_VERSION): Move + the documentation from 'configure' into 'config.hin', + so that 'configure --help' isn't burdened by it and + we don't have to worry about its formatting there. + Reword the documentation so that it's more succinct + and can be run together into a single paragraph. + * m4/same.m4 (gl_SAME): Check for pathconf. + +2004-01-15 Paul Eggert <eggert@twinsun.com> + + Merge from coreutils. + + * lib/posixver.c: Include posixver.h. + + * lib/same.c: Include <stdbool.h>, <limits.h>. + (_POSIX_NAME_MAX): Define if not defined. + (MIN): New macro. + (same_name): If file names are silently truncated, report + that the file names are the same if they are the same after + the silent truncation. + + * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the + conversion function. + * lib/xstrtod.c (xstrtod): Likewise. All callers changed to + include c-strtod.h and use c_strtod. Don't include stdlib.h; no + longer needed. + +2004-01-15 Jim Meyering <jim@meyering.net> + + Merge from coreutils. + + * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME + if no library is required. + * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX. + * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE. + * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58. + (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58. + * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW. + * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the + value, $ac_cv_search_crypt, if it's "none required". + * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro. + * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG, + not gl_FUNC_GETLOADAVG. + * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH, + gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS. + +2004-01-15 Jim Meyering <jim@meyering.net> + + Merge from coreutils. + + * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code. These + days, gcc-3.x does better all by itself. Patch from Dean Gaudet: + http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html + + * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new, + optional configure-time default. + + * lib/version-etc.c (version_etc_copyright): Update copyright date. + + * lib/xreadlink.c (xreadlink): Correct outdated comment. + +2004-01-15 Alexandre Duret-Lutz <adl@gnu.org> + + Merge from coreutils. + + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the + value, $ac_cv_search_nanosleep, if it's "none required". + +2004-01-14 Paul Eggert <eggert@twinsun.com> + + * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided + with like-named macro in fnmatch.c. + (EXT): Use an internal constant instead. + + Merge fnmatch patches from glibc. + * lib/fnmatch.c (mbsinit): Remove define. + Add libc_hidden_ver (__fnmatch, fnmatch). + * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate. + Adjust to renaming of collseq_table_lookup to __collseq_table_lookup. + +2004-01-14 Karl Berry <karl@gnu.org> + + * config/install-sh: update from automake. + +2004-01-13 Karl Berry <karl@gnu.org> + + * config/install-sh: update from automake. + +2004-01-09 Karl Berry <karl@gnu.org> + + * config/install-sh: update from automake. + +2004-01-05 Karl Berry <karl@gnu.org> + + * config/config.{sub,guess}: update from config. + +2003-12-31 Karl Berry <karl@gnu.org> + + * config/depcomp: update from automake. + +2003-12-14 Karl Berry <karl@gnu.org> + + * lib/config.charset: update from gettext-runtime. + +2003-12-03 Paul Eggert <eggert@twinsun.com> + + * lib/getgroups.c (getgroups): xmalloc takes one argument, not two. + Bug reported by Alfred M. Szmidt. + +2003-12-03 Bruno Haible <bruno@clisp.org> + + * m4/gettext.m4: Upgrade from gettext-0.13. + * m4/po.m4: Upgrade from gettext-0.13. + * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here. + * m4/intmax.m4: New file, from gettext-0.13. + * m4/printf-posix.m4: New file, from gettext-0.13. + +2003-11-29 Karl Berry <karl@gnu.org> + + * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc. + +2003-11-25 Paul Eggert <eggert@twinsun.com> + Bruno Haible <bruno@clisp.org> + + * lib/printf-parse.h: Don't include sys/types.h. + (ARG_NONE): New macro. + (char_directive): Change type of *arg_index fields to size_t. + * lib/printf-parse.c: Don't include sys/types.h. + (SSIZE_MAX): Remove macro. + (PRINTF_PARSE): Change the type of the arg_index variables to size_t. + Remove unnecessary overflow check. + * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index + fields. + +2003-11-25 Bruno Haible <bruno@clisp.org> + + * modules/vasnprintf (Files): Remove m4/ssize_t.m4. + +2003-11-25 Bruno Haible <bruno@clisp.org> + + * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require + gt_TYPE_SSIZE_T. + +2003-11-24 Paul Eggert <eggert@twinsun.com> + + * modules/alloca: Remove dependency on xalloc. + +2003-11-24 Paul Eggert <eggert@twinsun.com> + + * lib/alloca.c: Remove dependency on xalloc module. + (xalloc_die): Remove. + (memory_full) [!defined emacs]: New macro. + [!defined emacs]: Don't include xalloc.h. + (alloca): Invoke memory_full, not xalloc_die, if malloc fails or + address arithmetic overflows. Change datatypes a bit to avoid + unnecessary casts. + +2003-11-22 Jim Meyering <jim@meyering.net> + + * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments: + s/size/size_t/. + +2003-11-21 Karl Berry <karl@gnu.org> + + * config/config.{sub,guess}: update from config. + +2003-11-18 Karl Berry <karl@gnu.org> + + * config/config.{sub,guess}: update from config. + + * config/(printf-{parse,args}.[ch]): sync broken, sigh. + +2003-11-17 Paul Eggert <eggert@twinsun.com> + + * README: Mention that S+T cannot overflow if S is the size of + an existing object and T is sufficiently small. + +2003-11-17 Jim Meyering <jim@meyering.net> + + On systems without utime and without a utimes function capable of + dealing with a NULL struct utimbuf* argument, this utime replacement + could -- in unusual circumstances -- leak a file descriptor. + * lib/utime.c: Include <unistd.h> and <errno.h>. + (utime_null): Be sure to close `fd' and to preserve errno. + Reported by Geoff Collyer via Arnold Robbins. + +2003-11-17 Bruno Haible <bruno@clisp.org> + + * modules/vasnprintf (Files): Add m4/ssize_t.m4. + (Depends-on): Add xsize. + +2003-11-17 Bruno Haible <bruno@clisp.org> + + * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T. + +2003-11-17 Bruno Haible <bruno@clisp.org> + + * lib/vasnprintf.c (alloca): Remove fallback definition. + (freea): Remove definition. + (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes. + Reported by Paul Eggert. + +2003-11-16 Paul Eggert <eggert@twinsun.com> + Bruno Haible <bruno@clisp.org> + + Protect against address arithmetic overflow. + * lib/printf-args.h: Include stddef.h. + (arguments): Change type of field 'count' to size_t. + * lib/printf-args.c (printf_fetchargs): Use size_t instead of + 'unsigned int' where appropriate. + * lib/printf-parse.h: Include sys/types.h. + (char_directive): Change type of *arg_index fields to ssize_t. + (char_directives): Change type of fields 'count', max_*_length to + size_t. + * lib/printf-parse.c: Include sys/types.h and xsize.h. + (SSIZE_MAX): Define fallback value. + (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t + instead of 'int' where appropriate. Check a_allocated, d_allocated + against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1. + * lib/vasnprintf.c: Include xsize.h. + (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate. + Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against + overflow. Avoid wraparound when converting a width or precision from + decimal to binary. + +2003-11-16 Bruno Haible <bruno@clisp.org> + + Update from GNU gettext. + * lib/printf-parse.c: Generalize to it can be compiled for wide + strings. + (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros. + * lib/vasnprintf.c: Generalize to it can be compiled for wide strings. + (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF, + SNPRINTF): New macros. + Don't include <alloca.h> if the file is used inside libintl. + (local_wcslen): New function, for Solaris 2.5.1. + (VASNPRINTF): Use it instead of wcslen. + +2003-11-16 Bruno Haible <bruno@clisp.org> + + * lib/xsize.h (xmax): New function. + (xsum, xsum3, xsum4): Declare as "pure" functions. + +2003-11-12 Paul Eggert <eggert@twinsun.com> + + * modules/xalloc (Files): Undo latest change, since xalloc.h + no longer needs SIZE_MAX or PTRDIFF_MAX. + +2003-11-12 Paul Eggert <eggert@twinsun.com> + + * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or + gl_PTRDIFF_MAX. + +2003-11-12 Paul Eggert <eggert@twinsun.com> + + * lib/xstrtol.c (__xstrtol): Remove "break" immediately after + "return", to pacify some unknown compiler. Problem reported + by Joerg Schilling. + +2003-11-12 Paul Eggert <eggert@twinsun.com> + + * lib/xalloc.h: Do not include <limits.h> or <stdint.h>. + (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for + the heuristic, rather than PTRDIFF_MAX and SIZE_MAX. This + heuristic is just as accurate as far as we know, and it removes a + dependency on size_max.m4 and ptrdiff_max.m4. + +2003-11-11 Bruno Haible <bruno@clisp.org> + + * modules/xsize (Files): Add m4/size_max.m4. + * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4. + +2003-11-11 Bruno Haible <bruno@clisp.org> + + * m4/size_max.m4: New file. + * m4/ptrdiff_max.m4: New file. + * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX. + * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro. + (gl_XALLOC): Invoke it. + +2003-11-11 Bruno Haible <bruno@clisp.org> + + * lib/xsize.h (SIZE_MAX): Remove fallback definition. + * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are + defined. + +2003-11-10 Paul Eggert <eggert@twinsun.com> + + * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX && + PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have + rejected some allocations of exactly SIZE_MAX - 2 bytes. + From Bruno Haible. + [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX, + not (size_t) -1, since it's defined here. + +2003-11-09 Karl Berry <karl@gnu.org> + + * config/mkinstalldirs, depcomp, mdate-sh: update from automake. + +2003-11-06 Paul Eggert <eggert@twinsun.com> + + * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>. + (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]: + Reject sizes of exactly SIZE_MAX bytes. + * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX + is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts. + +2003-11-05 Bruno Haible <bruno@clisp.org> + + * lib/xsize.h: Include limits.h, to avoid a possible collision with + SIZE_MAX defined in <limits.h> on Solaris. + +2003-11-04 Jim Meyering <jim@meyering.net> + + * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd + variable names, rather than @VAR@. + * modules/poll: Likewise. + +2003-11-04 Bruno Haible <bruno@clisp.org> + + * modules/xsize: New file. + * modules/linebreak: Depend on xsize. + * MODULES.html.sh (func_all_modules): Add xsize. + +2003-11-04 Bruno Haible <bruno@clisp.org> + + * m4/xsize.m4: New file. + +2003-11-04 Bruno Haible <bruno@clisp.org> + + * lib/xsize.h: New file. + * lib/linebreak.c: Include xsize.h. + (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc() + argument for overflow. + Suggested by Paul Eggert. + +2003-11-03 Karl Berry <karl@gnu.org> + + * config/config.{guess,sub}: update from config. + +2003-11-03 Jim Meyering <jim@meyering.net> + + * modules/userspec (lib_SOURCES): Add userspec.h. + (Include): Add "userspec.h". + Improve description. + +2003-11-03 Jim Meyering <jim@meyering.net> + + * lib/userspec.c: Include "userspec.h". + * lib/userspec.h: New file. + +2003-11-03 Bruno Haible <bruno@clisp.org> + + * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid. + +2003-11-03 Bruno Haible <bruno@clisp.org> + + * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if + available, to avoid (extremely rare) race condition. + Suggested by Paul Eggert. + +2003-11-02 Karl Berry <karl@gnu.org> + + * config/srclist.txt (vasprintf.c): sync broken, sigh. + +2003-10-31 Paul Eggert <eggert@twinsun.com> + + * lib/mountlist.h (struct mount_entry.me_type_malloced): New member. + * lib/mountlist.c (SIZE_MAX): Define if not defined already. + (read_filesystem_list): Set and use me_type_malloced. + Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or + whatever the type happens to be), for brevity and consistency. + Check for size calculation overflow on Alphas running OSF/1. + +2003-10-31 Jim Meyering <jim@meyering.net> + + * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized. + + * lib/linebuffer.c: Include <string.h> for declaration of memset. + +2003-10-30 Paul Eggert <eggert@twinsun.com> + Bruno Haible <bruno@clisp.org> + + * lib/vasprintf.c: Include <limits.h>, <stdlib.h>. + (vasprintf): Fail if the resulting length doesn't fit in an 'int'. + +2003-10-30 Paul Eggert <eggert@cs.ucla.edu> + + * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to + netbsd*-gnu*. Suggested by Robert Millan. + +2003-10-29 Paul Eggert <eggert@twinsun.com> + + * modules/group-member: Depend on stdbool. + +2003-10-29 Paul Eggert <eggert@twinsun.com> + + * m4/xalloc.m4 (gl_XALLOC): Undo previous change. + +2003-10-29 Paul Eggert <eggert@twinsun.com> + + * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu. Add comments + to it, and to knetbsd*-gnu and kfreebsd*-gnu. Remove the '*' from + after the 'gnu' in these cases. This fixes some bugs in the + previous change, and is based on suggestions by Robert Millan. + +2003-10-29 Paul Eggert <eggert@twinsun.com> + + * lib/xalloc.h (xalloc_oversized): Now a macro, not a function, + so that it works even if SIZE_MAX < N. Do not include <stdbool.h>; + no longer needed. + * lib/quotearg.c (quotearg_n_options): Use it. + * lib/group-member.c: Include <stdbool.h>. + (free_group_info): Arg is now const *; don't free arg. + (get_group_info): Now returns bool and accepts struct group_info *, + rather than returning a malloc'ed struct group_info *. + All uses changed. Check for overflow in internal size calculation. + + * lib/getusershell.c (readname): Simplify the code by using x2nrealloc + rather than xmalloc/xrealloc. + * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by + using x2realloc rather than xmalloc/xrealloc. Also, fix a C + conformance bug: the old code used a pointer after freeing the + storage that it addressed. + * lib/hash.c (hash_initialize): Simplify the code by using + xalloc_oversized rather than doing it by hand. + * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need + the buffer preserved. Use free and xmalloc instead. + * lib/quotearg.c (quotearg_n_options): Likewise. + Use a simpler test for size overflow. Don't use xalloc_oversized + because unsigned int might be wider than size_t (!); this suggests + that we should switch from unsigned int to size_t for slot numbers. + +2003-10-28 Paul Eggert <eggert@twinsun.com> + + * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and + GNU/KNetBSD. These implementations use glibc atop the FreeBSD and + NetBSD kernels. Requested by Richard Stallman. + +2003-10-27 Paul Eggert <eggert@twinsun.com> + + * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc + to allocate the returned structure. Do not allocate a subarray, + as x2nrealloc will do that. + (add_exclude): Use x2nrealloc to reallocate ex->exclude, + instead of xnrealloc. + (add_exclude_file): Use x2realloc instead of malloc + xnrealloc. + +2003-10-27 Bruno Haible <bruno@clisp.org> + + * lib/stdbool_.h: Better support for BeOS. + +2003-10-26 Paul Eggert <eggert@twinsun.com> + + * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h + now uses inline. + +2003-10-26 Paul Eggert <eggert@twinsun.com> + + * lib/xalloc.h (xalloc_oversized): New static inline function, for + callers that want to do their own size-overflow checking. Include + <stdbool.h>, since xalloc_oversized returns bool. + * lib/xalloc.c (array_size_overflow): Remove. All callers changed + to use xalloc_oversized. + + Add two functions x2realloc, x2nrealloc, for programs that grow + arrays dynamically by doubling their sizes. + * lib/xalloc.h (x2realloc, x2nrealloc): New decls. + * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc): + New functions. + + Port to C99 semantics for 'inline' of external functions. + Bug reported by Bruno Haible. + * lib/xmalloc.c (xnmalloc_inline): New static inline function, + with the old contents of xnmalloc. + (xnmalloc, xmalloc): Use it. + (xnrealloc_inline): New static inline function, + with the old contents of xnrealloc. + (xnrealloc, xrealloc): Use it. + + * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for + that. + +2003-10-26 Karl Berry <karl@gnu.org> + + * config/srclist.txt (COPYING.DOC): no longer available from + /gd/gnuorg; don't know where the ultimate source is. + +2003-10-25 Paul Eggert <eggert@twinsun.com> + + Fix several address-calculation bugs in the hash modules, + plus some minor code cleanup. + + * lib/hash.h: Include <stdbool.h>, for bool. + * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now. + * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used, + hash_get_n_entries, hash_get_max_bucket_length, + hash_get_entries, hash_do_for_each, hash_string, hash_initialize, + hash_rehash): Use size_t rather than unsigned. + * lib/hash.c (struct hash_table, hash_get_n_buckets, + hash_get_n_buckets_used, hash_get_n_entries, + hash_get_max_bucket_length, hash_table_ok, hash_print_statistics, + hash_get_entries, hash_do_for_each, hash_string, is_prime, + next_prime, hash_initialize, hash_rehash, hash_delete, hash_print): + Likewise. + (SIZE_MAX): Define if not defined. + (hash_get_max_bucket_length, hash_table_ok, hash_lookup, + hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each, + hash_print): + Use const * when possible. + (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P. + (check_tuning): Fix bug: if tuning parameters were very close to + 0 or 1, rounding errors could have caused subscript violations. + (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast. + (hash_initialize): Add 'fail:' label + to free table and return NULL, and use it to simplify code. + Use calloc rather than clearing the storage ourself. + (hash_initialize, hash_rehash): Check for arithmetic overflow in + buffer size calculations. + * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned. + Include <stddef.h>, for size_t. + * lib/hash-pjw.c (hash_pjw): Likewise. + Switch to method described by Bruno Haible. + Include <limits.h>, for CHAR_BIT. + (SIZE_BITS): New macro. + +2003-10-23 Paul Eggert <eggert@twinsun.com> + + * m4/getline.m4 (AM_FUNC_GETLINE): + Don't include getndelim2.o twice into LIBOBJS; this breaks on some + hosts. Problem reported by Derek Robert Price in + <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>. + This patch can be withdrawn after Autoconf 2.58 is required for gnulib. + * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise. + +2003-10-21 Paul Eggert <eggert@twinsun.com> + + * lib/getndelim2.c (getndelim2): When size calculation overflows, + ceiling the allocation at NMAX bytes rather than silently + discarding input bytes before NMAX is reached. This makes + a difference only if NMAX exceeds SIZE_MAX / 2. + + * lib/obstack.c: Merge from glibc. + [defined _LIBC]: Include <obstack.h>, not "obstack.h". + Add libc_hidden_def (_obstack_newchunk). + (_obstack_free) [! defined _LIBC]: Remove. + [defined _LIBC]: Make a strong alias from obstack_free, rather than + a clone of the function body. + (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove. + [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>. + + * lib/obstack.h: Indenting cleanup, to make it easier to merge with + glibc. + (obstack_grow, obstack_grow0): Remove unnecessary parentheses around + arg to memcpy. + + * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg. + (obstack_ptr_grow_fast, obstack_int_grow_fast): + Don't use lvalue casts, as GCC plans to remove support for them + in GCC 3.5. Reported by Joseph S. Myers. This bug + was also present in the non-GCC version, indicating that this + code had always been buggy and had never been widely used. + (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank): + Use the fast variant of each macro, rather than copying the + definiens of the fast variant; that way, we'll be more likely to + catch future bugs in the fast variants. + +2003-10-20 Bruno Haible <bruno@clisp.org> + + * modules/wait-process: New file. + * MODULES.html.sh (func_all_modules): Add wait-process. + +2003-10-20 Bruno Haible <bruno@clisp.org> + + * m4/wait-process.m4: New file. + +2003-10-20 Bruno Haible <bruno@clisp.org> + + * lib/wait-process.h: New file, from GNU gettext. + * lib/wait-process.c: New file, from GNU gettext. + +2003-10-19 Jim Meyering <jim@meyering.net> + + * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on + HPUX 10.20. + +2003-10-18 Karl Berry <karl@gnu.org> + + * config/config.guess: update from config. + +2003-10-16 Paul Eggert <eggert@twinsun.com> + + * lib/getgroups.c: Include <errno.h>, <stdlib.h>. + (getgroups): First arg is int, not size_t. + Don't let 'free' mangle errno. + +2003-10-16 Paul Eggert <eggert@twinsun.com> + + * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL. + +2003-10-16 Karl Berry <karl@gnu.org> + + * config/config.{guess,sub}: update from config. + +2003-10-16 Jim Meyering <jim@meyering.net> + + * lib/xmalloc.c: Include <string.h>, for declarations of memset and + memcpy. + +2003-10-15 Paul Eggert <eggert@twinsun.com> + + * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>. + (SIZE_MAX): Remove. + (new_exclude, add_exclude_file): Initial size no longer needs to + be a power of 2. + (add_exclude, add_exclude_file): Use xnrealloc instead of rolling + our own address arithmetic overflow checking. + + * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't. + (fnmatch): Do not alloca more than 2000 wide characters; + instead, use malloc for large buffers. + Check for address arithmetic overflow, and return -1 + with errno set to ENOMEM in that case. + * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro. + (NEW_PATTERN): Do not alloca more than 8000 bytes; + instead, return -1. Check for address arithmetic overflow. + +2003-10-14 Paul Eggert <eggert@twinsun.com> + + Handle invalid suffixes and overflow independently, so that + callers can treat them independently as needed. Fix some bugs in + suffix handling, e.g., "100k@" was not diagnosed as an invalid + suffix for a human-readable blocksize. The major caller-visible + change is the addition of a new + LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating + that both overflow and suffix chars were found. + + * lib/human.c (humblock): Don't check separately for invalid suffix + char; that is xstrtoumax's job (now that its bug is fixed). + * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined + INTMAX_MAX]: New macros. + * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM, + TYPE_MAXIMUM): New macros. + (bkm_scale, bkm_scale_by_power): Return strtol_error, not int. + (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values + if overflow occurs, as it's what __strtol does and it's more useful + in practice. + (__xstrtol): If __strtol reports some error other than ERANGE, + reflect it to the caller as LONGINT_INVALID. If it reports + ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW + | LONGINT_INVALID_SUFFIX_CHAR if both errors occur. + * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum + value. + (_STRTOL_ERROR): Handle it. Abort when given unknown error codes. + * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros. + * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) + [defined UINTMAX_MAX]: New macros. + +2003-10-14 Bruno Haible <bruno@clisp.org> + + * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list. + +2003-10-14 Bruno Haible <bruno@clisp.org> + + * m4/sig_atomic_t: New file, from GNU gettext. + * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T. + +2003-10-14 Bruno Haible <bruno@clisp.org> + + * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert. + * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert. + Also use volatile where needed. + +2003-10-12 Paul Eggert <eggert@twinsun.com> + + * modules/xalloc: Do not depend on 'exit'. Depend on 'stdbool'. + Change maintainer from Bruno Haible to 'all'. + +2003-10-12 Paul Eggert <eggert@twinsun.com> + + * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE. + +2003-10-12 Paul Eggert <eggert@twinsun.com> + + * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls. + (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate, + and define in terms of the other primitives. + * lib/xmalloc.c: Include stdbool.h; do not include exit.h. + (SIZE_MAX): Define if not already defined. + (array_size_overflow): New function. + (xalloc_die): Abort instead of exiting if 'error' returns. + (xnmalloc, xnrealloc, xzalloc, xclone): New functions. + (xmalloc, xrealloc): Use them. + (xcalloc): Check for address arithmetic overflow. + * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be + a bit faster than strcpy. + +2003-10-10 Simon Josefsson <jas@extundo.com> + + * modules/argp (Depends-on): Add restrict and strcase. + +2003-10-10 Simon Josefsson <jas@extundo.com> + + * m4/argp.m4: Add AC_C_INLINE. + +2003-10-08 Paul Eggert <eggert@twinsun.com> + + Merge getpass from libc, plus a few fixes. + + * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1. + Include <stdbool.h>. + Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define + __fsetlocking to empty. + [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but + do include <bits/libc-lock.h>. + Do not include <fcntl.h>; not needed. + [_LIBC]: Include <wchar.h>. + (NOTCANCEL_MODE): New macro. + (flockfile, funlockfile) [_LIBC]: New macros. + (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr) + [!_LIBC]: New macros. + (call_fclose): New function. + (getpass): Use it. Save tty stream separately; this simplifies the + code and makes it more reliable if stdin happens to equal stdout. + Invoke __fsetlocking on tty. + Handle thread cancellation if needed. + Namespace cleanup (use __tcgetattr, __getline). + Use bool for Booleans. + [USE_IN_LIBIO]: Handle wide streams. + [!_LIBC]: Unconditionally do the fseek, since we don't know what + stream might go where. + + * lib/unlocked-io.h: Include <stdio.h>, so that the caller + doesn't have to include <stdio.h> before us. + (clearerr_unlocked, feof_unlocked, ferror_unlocked, + fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked, + fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked, + putc_unlocked, putchar_unlocked): Define to the unlocked counterpart + if not declared, so that we can use getpass.c code from libc without + rewriting it. + (flockfile, ftrylockfile, funlockfile): New macros. + +2003-10-08 Paul Eggert <eggert@twinsun.com> + + * modules/getpass: Depend on stdbool. + +2003-10-08 Paul Eggert <eggert@twinsun.com> + + * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h. + +2003-10-07 Karl Berry <karl@gnu.org> + + * config/config.{guess,sub}: update from config. + +2003-10-06 Jim Meyering <jim@meyering.net> + Bruno Haible <bruno@clisp.org> + + This lets translators provide better translations for the + "Written by ..." part of --version output. + * lib/version-etc.h: Include stdarg.h. + (version_etc_copyright): Declare as readonly. + (version_etc): Make this function variadic with a NULL-terminated list + of author name strings. + (version_etc_va): New declaration. + * lib/version-etc.c: Include stdarg.h, stdlib.h. + (version_etc_copyright): Declare as readonly. + (version_etc_va): New function. Provide a different translatable string + for each possible number of authors < 10. Abbreviate when there are 10 + authors or more. + (version_etc): Make this function variadic. Call version_etc_va. + Suggestion from Gary V. Vaughan. + + * lib/long-options.h (parse_long_options): Change prototype: the + authors string is moved to the end and becomes variadic. + * lib/long-options.c: Include stdarg.h. + (parse_long_options): Make this function variadic, too. + Call version_etc_va, not version_etc. + +2003-10-06 Bruno Haible <bruno@clisp.org> + + * modules/version-etc-2: Remove file. + * MODULES.html.sh (func_all_modules): Remove version-etc-2. + +2003-10-06 Bruno Haible <bruno@clisp.org> + + * modules/fatal-signal: New file. + * MODULES.html.sh (func_all_modules): Add fatal-signal. + +2003-10-06 Bruno Haible <bruno@clisp.org> + + * m4/fatal-signal.m4: New file. + * m4/signalblocking.m4: New file, from GNU gettext. + +2003-10-06 Bruno Haible <bruno@clisp.org> + + * lib/version-etc-2.h: Remove file. + * lib/version-etc-2.c: Remove file. + +2003-10-06 Bruno Haible <bruno@clisp.org> + + * lib/fatal-signal.h: New file, from GNU gettext. + * lib/fatal-signal.c: New file, from GNU gettext. + +2003-10-05 Paul Eggert <eggert@twinsun.com> + + * README: Rework advice for preventing empty .o files. + Don't recommend ELIDE constructs. Recommend <stddef.h>, + not <sys/types.h>. + +2003-10-04 Karl Berry <karl@gnu.org> + + * lib/argp*: update from libc. + +2003-10-04 Karl Berry <karl@gnu.org> + + * config/config.{guess,sub}: update from config. + +2003-10-02 Bruno Haible <bruno@clisp.org> + + * modules/lchown (Include): Add lchown.h. + * modules/time_r (Include): Use "..." syntax. + * modules/xgetdomainname (Include): Add xgetdomainname.h. + +2003-10-01 Simon Josefsson <jas@extundo.com> + + * MODULES.html.sh (func_all_modules): Move gethostname from section + 'based on' to section 'lacking' POSIX:2001. + +2003-10-01 Larry Jones <lawrence.jones@eds.com> + + * lib/getpass.c (getpass): Use a no-op fseek when switching from input + to output mode on the same stream. + +2003-09-29 Paul Eggert <eggert@twinsun.com> + + * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]: + Fix arg typo in previous patch. + +2003-09-28 Jim Meyering <jim@meyering.net> + + * lib/error.c: Correct cpp indentation. + +2003-09-27 Paul Eggert <eggert@twinsun.com> + + * modules/free: New file. + +2003-09-27 Paul Eggert <eggert@twinsun.com> + + * m4/free.m4: New file. + +2003-09-27 Paul Eggert <eggert@twinsun.com> + + * lib/minmax.h (MIN, MAX) + [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]: + Omit the special code that used __typeof__, since we worry that + it could be more trouble than it's worth. See: + http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html + http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html + + * lib/free.c: New file. + +2003-09-27 Oskar Liljeblad <oskar@osk.mine.nu> + + Trivial fixes to Makefile.am parts of module listings. + * modules/strstr: Append strstr.h to lib_SOURCES. + * modules/strcase: Likewise, for strcase.h. + +2003-09-27 Karl Berry <karl@gnu.org> + + * config/mkinstalldirs: update from automake. + +2003-09-26 Paul Eggert <eggert@twinsun.com> + + * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define. + (error_tail): Do not loop, reallocating temporary buffer, since + the output cannot contain more wide characters than the input + contains bytes, the size must be big enough already. This avoids + one potential size overflow calculation. Check for size overflow + when calculating temporary buffer size. Free temporary buffer + when done, if it was allocated with malloc; this plugs a memory + leak. Remove casts from void * to pointers, that are no longer + needed now that we're assuming C89 or better. + + Merge error changes from glibc. + + * lib/error.c, error.h: Update copyright notice header to match glibc. + * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>. + (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]: + Disable cancellation while printing error. + * lib/error.h: Prepend __ to parameter names. + +2003-09-26 Jim Meyering <jim@meyering.net> + + * lib/error.c (error_tail): Move some declarations + into inner scope where the local variables are used. + +2003-09-26 Bruno Haible <bruno@clisp.org> + + * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX + stpncpy(). + Don't define stpncpy through config.h; it's now done through stpncpy.h. + +2003-09-26 Bruno Haible <bruno@clisp.org> + + * lib/stpncpy.h (gnu_stpncpy): New declaration. + (stpncpy): Define as alias for gnu_stpncpy. + * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy. + +2003-09-25 Simon Josefsson <jas@extundo.com> + + * lib/xgetdomainname.h: New file. + * lib/xgetdomainname.c: New file. + +2003-09-25 Simon Josefsson <jas@extundo.com> + Bruno Haible <bruno@clisp.org> + + * modules/getdomainname: New file. + * modules/xgetdomainname: New file. + * MODULES.html.sh (func_all_modules): Add getdomainname, + xgetdomainname. + +2003-09-25 Simon Josefsson <jas@extundo.com> + Bruno Haible <bruno@clisp.org> + + * m4/getdomainname.m4: New file. + +2003-09-25 Simon Josefsson <jas@extundo.com> + Bruno Haible <bruno@clisp.org> + + * lib/getdomainname.h: New file. + * lib/getdomainname.c: New file. + +2003-09-25 Karl Berry <karl@gnu.org> + + * lib/argp-fmtstream.c, argp-help.c: update from libc. + +2003-09-25 Karl Berry <karl@gnu.org> + + * config/install-sh: update from automake. + +2003-09-25 Bruno Haible <bruno@clisp.org> + + * modules/version-etc-2: New file, from modules/version-etc with + modifications. + * MODULES.html.sh (func_all_modules): Add version-etc-2. + +2003-09-25 Bruno Haible <bruno@clisp.org> + + * lib/version-etc-2.h: New file, from version-etc.h with modifications. + * lib/version-etc-2.c: New file, from version-etc.c with modifications. + +2003-09-24 Simon Josefsson <jas@extundo.com> + + * modules/xgethostname: Add xgethostname.h. + +2003-09-24 Paul Eggert <eggert@twinsun.com> + + * lib/linebuffer.c (freebuffer): Don't free the argument, just + the buffer associated with the argument. Bug reported by + Simon Josefsson. + +2003-09-24 Paul Eggert <eggert@twinsun.com> + + * README: Document assumptions that 'int' is at least 32 bits + wide, that integer arithmetic is 2's complement without overflow, + that there are no holes in integer values, that adding sizes of + two nonoverlapping objects can't overflow, and that all-bits-zero + yields scalar zero. Fix spelling and capitalization typos. + +2003-09-19 Karl Berry <karl@gnu.org> + + * lib/argp.h: update from libc. + +2003-09-17 Paul Eggert <eggert@twinsun.com> + + * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first, + to avoid spurious warnings like "AC_RUN_IFELSE was called before + gl_USE_SYSTEM_EXTENSIONS" from autoreconf. + +2003-09-17 Paul Eggert <eggert@twinsun.com> + + * gnulib-tool: Use "test -h", not "test -L", for portability + to Solaris 8 /bin/sh. (This bug is fixed in Solaris 9.) + (tags_regexp): Remove, since \| doesn't conform to POSIX. + (sed_extract_prog): Issue s commands one-by-one, rather than + using \| in one s command. + +2003-09-16 Paul Eggert <eggert@twinsun.com> + + * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon + input error, instead of returning NULL the next time we are called + (and therefore losing track of errno). + +2003-09-16 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_create_testdir): Warn about duplicated + dependencies. + +2003-09-15 Paul Eggert <eggert@twinsun.com> + + * modules/argmatch, modules/fatal, modules/obstack, + modules/xalloc, modules/xgethostname: Sort dependencies by + importance, not alphabetically. + +2003-09-15 Paul Eggert <eggert@twinsun.com> + + * lib/getndelim2.c (getndelim2): Don't trash errno when a read + fails, so that the caller gets the proper errno. + + * lib/readutmp.c (read_utmp): Likewise. + Check for fstat error. Close stream and free storage + when failing. + +2003-09-14 Karl Berry <karl@gnu.org> + + * config/srclist.txt (strdup.c): disable for c89 changes. + +2003-09-14 Jim Meyering <jim@meyering.net> + + * lib/getloadavg.c: Correct cpp indentation. + * lib/strdup.c: Likewise. + * lib/vasnprintf.c: Likewise. + +2003-09-14 Bruno Haible <bruno@clisp.org> + + * modules/fwriteerror: New file. + * MODULES.html.sh (func_all_modules): Add fwriteerror. + +2003-09-14 Bruno Haible <bruno@clisp.org> + + * lib/fwriteerror.h: New file. + * lib/fwriteerror.c: New file. + +2003-09-12 Paul Eggert <eggert@twinsun.com> + + * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack, + modules/xgethostname, modules/xalloc: Depend on exit. + +2003-09-12 Paul Eggert <eggert@twinsun.com> + + * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it. + + * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX + and AC_MINIX, too, so that their extensions are available. + + * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove. All uses removed. + This macro has been superseded by gl_BACKUPFILE. + + More patches to assume C89 or better. + + * m4/error.m4 (gl_ERROR): Don't check for vprintf. + + * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h> + unconditionally. + * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h. + * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): + Include <string.h>, <stdlib.h> unconditionally. + * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free. + * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h. + * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C + headers or for string.h. + * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h + or strtoul. + + * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C + headers. + * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise. + * m4/userspec.m4 (gl_USERSPEC): Likewise. + * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise. + * m4/xstrtod.m4 (gl_XSTRTOD): Likewise. + * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise. + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h, + memcpy, memset. + (jm_FUNC_GNU_STRFTIME): Don't require standard C headers. + * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h. + * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h, + strtol. + * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h. + * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h. + * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol, + strtoul. + +2003-09-12 Paul Eggert <eggert@twinsun.com> + + * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h. + * lib/obstack.c [!defined _LIBC]: Likewise. + * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h + * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise. + * lib/exitfail.c: Don't include stdlib.h; no longer needed. + + More changes to assume C89 or better. + + * lib/error.c (error_tail): Assume vprintf. + + * lib/argmatch.c (getenv): Remove decl. + * lib/progreloc.c (get_full_program_name): Define via prototype. + * lib/setenv.c (clearenv): Likewise. + * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not + needed. + * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally. + (malloc, memcpy): Remove decls. + * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove. + (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove. + Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally. + (memcpy): Remove macro. + (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally. + (__P): Remove. All uses removed. + (PTR): Remove. All uses changed to void *. + (CHAR_BIT, NULL): Remove. + (spaces, zeros, memset_space, memset_zero) + [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]: + Remove. + (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove. + (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days): + Define with prototype. + Remove now-unnecessary prototype decl. + (extra_args_spec): Assume ANSI C. All uses changed. + (extra_args_spec_iso): Remove. + (my_strftime, emacs_strftimeu): Define via prototype. + * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h> + unconditionally. + (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls. + * lib/strtoimax.c: Include <stdlib.h> unconditionally. + (strtoul, strtol): Remove decls. + * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX, + LONG_MAX): Remove. + Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally. + (LOCALE_PARAM_DECL): Remove. All uses changed to LOCALE_PARAM_PROTO. + (LOCALE_PARAM_PROTO): New macro. + (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R. + (INTERNAL (strtol), strtol): Define with a prototype. + (PARAMS): Remove. All uses removed. + * lib/tempname.c: Include <string.h> unconditionally. + * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally. + * lib/xgethostname.c (main): Define with a prototype. + * lib/xmalloc.c: Include "xalloc.h" first, to check interface. + Include <stdlib.h> unconditionally. + (calloc, malloc, realloc, free): Remove decls. + * lib/xstrtod.c: Include "xstrtod.h" first, to check interface. + Include <stdlib.h> unconditionally. Sort include file names. + (strtod): Remove. + (xstrtod): Define with a prototype. + * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally. + (strtol, strtoul): Remove decls. + +2003-09-11 Paul Eggert <eggert@twinsun.com> + + More patches to assume C89 or better. + * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check. + * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h, + string.h, memchr, STDC_HEADERS. + +2003-09-11 Paul Eggert <eggert@twinsun.com> + + * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>. + Include <stdlib.h>, <string.h> unconditionally. + Remove now-unnecessary cast to char *. + * lib/strnlen.c: Include <string.h> unconditionally. + * lib/yesno.c (yesno): Define with a prototype. + +2003-09-11 Bruno Haible <bruno@clisp.org> + + * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment. + +2003-09-10 Jim Meyering <jim@meyering.net> + + * lib/error.c: Correct indentation of cpp directives. + +2003-09-10 Bruno Haible <bruno@clisp.org> + + * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check. + * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check. + * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check. + * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check. + * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove + <stdlib.h> and <string.h> checks. + * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check. + * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check. + +2003-09-10 Bruno Haible <bruno@clisp.org> + + * lib/strcspn.c: Include <string.h> unconditionally. + * lib/strpbrk.c: Include <string.h> unconditionally. + * lib/strstr.c: Include <string.h> unconditionally. + * lib/unicodeio.c: Include <string.h> unconditionally. + * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally. + * lib/unsetenv.c: Likewise. + * lib/xreadlink.c: Include <stdlib.h> unconditionally. + * lib/yesno.c: Include <stdlib.h> unconditionally. + (rpmatch): Add prototype. + +2003-09-09 Paul Eggert <eggert@twinsun.com> + + More patches to assume C89 or better. + * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h. + * m4/getopt.m4 (gl_GETOPT): Don't check for string.h. + * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers + or for string.h. + * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for + stdlib.h. + * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard + C headers. + * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h, + string.h. + * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free. + * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv. + * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers, + or for string.h. + * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h. + * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard + C headers. + * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers, + memcpy. + * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy. + * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h. + * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h. + * m4/memcoll.m4 (gl_MEMCOLL): Likewise. + * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h. + * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h, + string.h, free. + * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers. + * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers. + * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard + C headers, or for string.h. + * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h. + (gl_PREREQ_OBSTACK): Don't check for stdlib.h. + * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C + headers, memory.h, stdlib.h, string.h, strings.h. + * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h. + * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv. + * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy, + strchr. + * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C + headers, memory.h, string.h. + * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h. + * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h, + free. + * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C + headers. + * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free. + * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers. + * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers. + * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h. + * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h. + +2003-09-09 Paul Eggert <eggert@twinsun.com> + + More K&R removal. + + * lib/acosl.c (main): Use a prototype. + * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c, + tanl.c: Likewise. + + * lib/getloadavg.c (getloadavg, main): Define via prototypes. + + * lib/getopt.h (struct option.name): Assume C89, and use 'const'. + (getopt, etopt_long, getopt_long_only, _getopt_internal) + [defined __GNU_LIBRARY__]: Assume C89, so we can always declare + with a prototype. + * lib/getopt.c (const): Remove macro. + Include <string.h> unconditionally. + (my_index): Remove; all uses changed to strchr. + (strlen): Remove decl. + (exchange): Remove forward decl; no longer needed. + (exchange, _getopt_initialize, _getopt_internal, getopt, main): + Define with prototype. + * lib/getopt1.c (const): Remove macro. + (getopt_long, getopt_long_only, main): Define with prototype. + + * lib/getugroups.c: Include <string.h> unconditionally. + + * lib/getusershell.c: Include <stdlib.h> unconditionally. + (getusershell, setusershell, endusershell, readname, main): + Define with prototypes. + + * lib/group-member.c: Include group-member.h first. + Include <stdlib.h> unconditionally. + + * lib/hard-locale.c: Include hard-locale.h first. + Include <stdlib.h>, <string.h> unconditionally. + + * lib/hash.c (free, malloc): Remove decls. + Include <stdlib.h> unconditionally. + + * lib/human.c: Include <stdlib.h>, <string.h> unconditionally. + (getenv): Do not declare. + + * lib/idcache.c: Include <string.h> unconditionally. + + * lib/long-options.c: Include long-options.h first, to test interface. + Include <stdlib.h> unconditionally. + + * lib/makepath.c: Include makepath.h first, to test interface. + Include <stdlib.h> and <string.h> unconditionally. + + * lib/linebuffer.c: Include <stdlib.h>. + (free): Remove decl. + + * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with + stddef.h. rpl_malloc returns void *, not char *. + * lib/realloc.c (rpl_realloc): Likewise. Also, define with a + prototype. + + * lib/md5.h: Include <limits.h> unconditionally. + (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case. + (__P): Remove; all uses removed. + * lib/md5.c: Include "md5.h" first. + (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream, + md5_buffer, md5_process_bytes, md5_process_block): + Define with prototypes. + * lib/sha.h (__P): Remove all uses. (It wasn't defined??) + * lib/sha.c: Include "sha.h" first. + Include <stdlib.h>, <string.h> unconditionally. + + * lib/memchr.c (__ptr_t): Remove; all uses changed to void *. + * lib/memcmp.c (__ptr_t): Likewise. + * lib/memrchr.c (__ptr_t): Likewise. + * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c: + Include <string.h> unconditionally. + * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally. + * lib/memchr.c: Include <stdlib.h> unconditionally. + * lib/memchr.c (LONG_MAX): Remove. + * lib/memrchr.c (LONG_MAX): Likewise. + * lib/memchr.c (__memchr): Define via a prototype. + * lib/memrchr.c (__memrchr): Likewise. + * lib/memcmp.c (__P): Remove, and remove all uses. + (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment): + Remove forward decls; no longer needed. + * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>. + Use types required by C89 in prototype. + + * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally. + * lib/savedir.c: Likewise. + * lib/mkdir.c (free): Remove decl. + * lib/rmdir.c (rmdir): Define with a prototype. + * lib/savedir.c: Include savedir.h first, to test interface. + + * lib/mktime.c (STDC_HEADERS): Remove. + Include <stdlib.h>, <string.h> unconditionally. + + * lib/modechange.c: Include <stdlib.h> unconditionally. + (malloc): Remove decl. + + * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally. + (free): Remove decl. + + * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]: + Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H. + (This type really should be intptr_t, but that's a C99ism.) + (_obstack_memcpy): Remove: all uses changed to memcpy. + Include <string.h> unconditionally. + (struct obstack): Assume __STDC__ for types of members + chunkfun, freefun, extra_arg. + (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1, + _obstack_memory_used, obstack_alloc_failed_handler, obstack_init, + obstack_begin, obstack_specify_allocation, + obstack_specify_allocation_with_arg, obstack_chunkfun, + obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]: + Remove unprototyped decls and the macros that use them. + * lib/obstack.c (POINTER): Remove. All uses changed to void *. + (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN, + _obstack_begin, _obstack_begin_1, _obstack_allocated_p) + (defined __STDC__ && __STDC__)]: + Remove nonprototyped code. + Include <stdlib.h> unconditionally. + (_obstack_begin, _obstack_begin_1, _obstack_newchunk, + _obstack_allocated_p, _obstack_free, obstack_free, + _obstack_memory_used, print_and_abort): + Define using prototypes. + (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base, + obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0, + obstack_finish, obstack_grow, obstack_grow0, obstack_make_room, + obstack_next_free, obstack_object_size, obstack_room) [0]: + Remove unused, unprototyped code. + + * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally. + + * lib/physmem.c (physmem_total, physmem_available, main): Define + with prototypes. + + * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally. + (main): Define with a prototype. + + * lib/posixver.c (getenv): Remove decl. + + * lib/putenv.c (malloc): Returns void *, not char *. + Include <string.h> unconditionally. + (strchr, memcpy, NULL): Do not define. + + * lib/readtokens.c: Include readtokens.h first, to test interface. + Include <stdlib.h>, <string.h> unconditionally. + (init_tokenbuffer): Define with a prototype. + + * lib/regex.c (PARAMS): Remove. All uses removed. + All uses of _RE_ARGS removed, too. + Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h> + unconditionally. + (bzero): Assume memset exists. + (memcmp, memcpy, NULL): Remove. + (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed + char, or assignments to local vars of type signed char. + (init_syntax_once, PREFIX(extract_number_and_incr), + PREFIX(print_partial_compiled_pattern), + PREFIX(print_compiled_pattern), PREFIX(print_double_string), + convert_mbs_to_wcs, print_fastmap, re_set_syntax, + PREFIX(regex_grow_registers), PREFIX(regex_compile), + PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1), + PREFIX(insert_op2), PREFIX(at_begline_loc_p), + PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space, + wcs_compile_range, byte_compile_range, truncate_wchar, + PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers, + re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2, + count_mbs_length, wcs_re_match_2_internal, + byte_re_match_2_internal, PREFIX(group_match_null_string_p), + PREFIX(alt_match_null_string_p), + PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate), + re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror, + regfree, PREFIX(extract_number)): Define with prototype. Remove + now-unnecessary declaration, if any. + (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec, + regcomp, regexec): + Remove now-unnecessary casts among pointer types. + * lib/regex.h (_RE_ARGS): Remove. All uses removed. + + * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally. + (free): Remove decl. + + * lib/rpmatch.c: Include <stdlib.h> unconditionally. + + * lib/same.c: Include <stdlib.h>, <string.h> unconditionally. + (free): Remove decl. + + * lib/save-cwd.c: Include <stdlib.h> unconditionally. + * lib/xgetcwd.c: Likewise. + + * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally. + (free): Remove decl. + + * lib/strchrnul.c (strchrnul): Define with a prototype. + Fix bug: c_in was not converted to char before searching. + + The following changes are not K&R related: + + * lib/group-member.h: Include <sys/types.h>, so that this file is + self-contained. + * lib/makepath.h: Likewise. + + * lib/getusershell.c (readname, default_index, line_size, readname): + Use size_t, not int, for sizes. + (readname): If the size overflows, report an error instead of + looping forever. + +2003-09-09 Paul Eggert <eggert@twinsun.com> + + * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from + libc. + +2003-09-09 Paul Eggert <eggert@twinsun.com> + + * README: New section: portability guidelines. + +2003-09-09 Derek Robert Price <derek@ximbiot.com> + + * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the + C89 spec. + +2003-09-09 Derek Robert Price <derek@ximbiot.com> + + * lib/getndelim2.c: Assume stdlib.h per the C89 spec. + +2003-09-08 Paul Eggert <eggert@twinsun.com> + + Assume C89 or better; remove K&R cruft. + A few of these changes were first proposed by Derek Robert Price + in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>. + + * lib/addext.c: Include <string.h> unconditionally. + * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally. + Don't declare getenv or malloc. + + * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally. + (POINTER_TYPE, pointer): Remove; all uses changed to void *. + (NULL): Remove. + (find_stack_direction, alloca): Use prototypes. + + * lib/atexit.c (atexit): Define using a prototype. + + * lib/basename.c, dirname.c, stripslash.c: + Include <string.h> unconditionally. + + * lib/bcopy.c: Include <stddef.h>. + (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'. + + * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally. + + * lib/error.h (error, error_at_line, error_print_progname) + [! (defined (__STDC__) && __STDC__)]: Remove decls. + * lib/error.c: Include error.h first, to check interface. + Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally. + (VA_START): Remove; all uses changeed to va_start. + (exit, strerror): Remove decls. + (error_print_progname): Prototype uncondionally. + Don't include <errno.h>; no longer needed. + (private_strerror): Remove. + (error_tail): Always define. + (error, error_at_line): Assume C89 or better; always use prototypes. + * lib/fatal.c: Include "fatal.h" first, to test interface. + Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally. + (VA_START): Remove; all uses changed to va_start. + [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for + this case. + (exit): Remove decl. + (fatal): Prototype unconditionally. Assume va_start works. + Abort at end, to pacify gcc. + + * lib/euidaccess.c (main): Define with a prototype. + + * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally. + + * lib/exitfail.c: Include <stdlib.h> unconditionally. + + * lib/fnmatch_.h (__P): Remove. All uses changed to assume + prototypes. + * lib/fnmatch.c: Include fnmatch.h first, to test interface. + Include <string.h>, <stddef.h>, <stdlib.h> unconditionally. + (getenv): Remove decl. + (fnmatch): Define using a prototype. + * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed. + (FCT): Define using a prototype. + + * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally. + + * lib/gethostname.c: Include <stddef.h>. + (gethostname): Define with prototype. Length is size_t, not int. + +2003-09-08 Paul Eggert <eggert@twinsun.com> + + Assume C89 or better; remove K&R cruft. + * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h. + * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h, + string.h, getenv, malloc. + * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard + headers. + * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h. + * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and + do not check for strerror. + * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h. + * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h. + * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and + do not check for doprnt or vprintf. + * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove. All uses removed. + * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h. + +2003-09-08 Paul Eggert <eggert@twinsun.com> + + * lib/getversion.c: Remove; was migrated to backupfile.c in 1997. + getversion.c should have been removed then, but was accidentally + preserved. + + * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>. + (utime_null): Fix typo: 'st' was sometimes called 'sb'. + +2003-09-08 Karl Berry <karl@gnu.org> + + * config/config.sub, config.guess, srclistvars.sh: update from savannah + config, forget about prep. + + * config/depcomp, missing: update from automake. + +2003-09-07 Paul Eggert <eggert@twinsun.com> + + * modules/time_r: Depend on 'restrict'. Fix from Simon Josefsson in + <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>. + +2003-09-07 Paul Eggert <eggert@twinsun.com> + + * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to + copy_tm_result. Bug reported by Simon Josefsson in + <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>. + +2003-09-06 Paul Eggert <eggert@twinsun.com> + + * m4/time_r.m4: New file. + * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h. + * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime + is. Check for timegm declaration. + (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME. + Do not check for gmtime_r. + Replace mktime if __mktime_internal does not exist and if mktime + hasn't been replaced already. + +2003-09-06 Paul Eggert <eggert@twinsun.com> + + * lib/time_r.c, lib/time_r.h: New files. + + * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to + __localtime_r. + (__localtime_r) [!defined _LIBC]: New macro. Include <time_r.h>. + (__mktime_internal) [!defined _LIBC]: Now extern, not static. + + * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to + __gmtime_r. + (my_strftime_localtime_r): Remove; all uses changed to __localtime_r. + (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros. + Include <time_r.h>. + + * lib/timegm.c: Switch to glibc implementation, with the following + changes: + [defined HAVE_CONFIG_H]: Include <config.h>. + [!defined _LIBC]: Include "timegm.h" rather than <time.h>. + (__mktime_internal) [!defined _LIBC]: New decl. + (__gmtime_r) [!defined _LIBC]: New macro and function. + (timegm): Use a prototype, since gnulib assumes C89. + Do not bother declaring tmp to be const, as it's not really usefu. + * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef. + (timegm): Declare only if HAVE_DECL_TIMEGM. + +2003-09-06 Paul Eggert <eggert@twinsun.com> + + * MODULES.html.sh (func_all_modules): Add time_r. + * modules/time_r: New file. + * modules/mktime, modules/strftime, modules/timegm: Depend on time_r. + * modules/timegm: Depend on mktime. Change maintainer to "all, glibc". + +2003-09-03 Paul Eggert <eggert@twinsun.com> + + * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k. + Bug reported by Lute Kamstra in + <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>. + + * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow", + "yesterday", "today", and "now" rather than tMINUTE_UNIT. Of + course with correspondingly smaller numbers for tomorrow and + yesterday. From Tadayoshi Funaba. Originally installed into + sh-utils on 1999-08-07, but the patch got lost (I guess during the + coreutils merge?). + +2003-08-31 Simon Josefsson <jas@extundo.com> + + * modules/timegm: New file. + * MODULES.html.sh (func_all_modules): Add timegm. + +2003-08-31 Simon Josefsson <jas@extundo.com> + + * m4/timegm.m4: New file. + +2003-08-31 Simon Josefsson <jas@extundo.com> + + * lib/timegm.h: New file. + * lib/timegm.c: New file. Based on + wget-1.8.2/src/http.c:mktime_from_utc. + +2003-08-31 Karl Berry <karl@gnu.org> + + * lib/argp.h: update from libc. + +2003-08-28 Bruno Haible <bruno@clisp.org> + + * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here. + This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch' + followed by '#define fnmatch fnmatch_posix' gives an error. + +2003-08-28 Bruno Haible <bruno@clisp.org> + + * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a + warning on QNX, which defines O_BINARY to 000000. + +2003-08-27 Jim Meyering <jim@meyering.net> + + * m4/mkstemp.m4: Require that the system mkstemp be able to create + 70 temporary files, not just 30. Tru64 V4.0F's mkstemp function + would fail after 32. Reported by Danny Levinson. Details here: + http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html + +2003-08-24 Bruno Haible <bruno@clisp.org> + + * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when + MSVC7 <stdio.h> is included later. + +2003-08-22 Simon Josefsson <jas@extundo.com> + + * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES. + +2003-08-20 Karl Berry <karl@gnu.org> + + * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial. + +2003-08-20 Bruno Haible <bruno@clisp.org> + + * modules/progname: New file. + * MODULES.html.sh (func_all_modules): Add progname. + +2003-08-20 Bruno Haible <bruno@clisp.org> + + * lib/progname.h: New file, from GNU gettext. + * lib/progname.c: New file, from GNU gettext. + * lib/progreloc.c: New file, from GNU gettext. + +2003-08-19 Jim Meyering <jim@meyering.net> + + * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here: + http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html + +2003-08-19 Bruno Haible <bruno@clisp.org> + + * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any + more. + +2003-08-19 Bruno Haible <bruno@clisp.org> + + * lib/xstrdup.c: Assume <string.h> exists. + +2003-08-18 Paul Eggert <eggert@twinsun.com> + + * modules/stdbool: Add BUILT_SOURCES. Prefer $@ to target name + in makefile rules. + +2003-08-18 Jim Meyering <jim@meyering.net> + + * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB). + * m4/lib-ld.m4: Likewise. + +2003-08-18 Jim Meyering <jim@meyering.net> + + * lib/setenv.h: Indent nested cpp directive. + * lib/vasnprintf.c: Remove trailing blanks. + +2003-08-17 Simon Josefsson <jas@extundo.com> + + * modules/xstrndup: New file. + * MODULES.html.sh (func_all_modules): Add xstrndup. + +2003-08-17 Simon Josefsson <jas@extundo.com> + + * modules/argp: Fix autoconf macro name. Add more dependencies. + +2003-08-17 Simon Josefsson <jas@extundo.com> + + * m4/xstrndup.m4: New file. + +2003-08-17 Simon Josefsson <jas@extundo.com> + + * m4/argp.m4: New file. + +2003-08-17 Simon Josefsson <jas@extundo.com> + Bruno Haible <bruno@clisp.org> + + * lib/xstrndup.h: New file. + * lib/xstrndup.c: New file. + +2003-08-17 Bruno Haible <bruno@clisp.org> + + * modules/strndup (Files, Include): Add lib/strndup.h. + +2003-08-17 Bruno Haible <bruno@clisp.org> + + * modules/euidaccess (Files): Add lib/euidaccess.h. + +2003-08-17 Bruno Haible <bruno@clisp.org> + + * lib/strndup.h: New file. + +2003-08-17 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS + like AC_GNU_SOURCE. + * modules/extensions (configure.ac): Comment out the invocation of + gl_USE_SYSTEM_EXTENSIONS. + +2003-08-16 Paul Eggert <eggert@twinsun.com> + + Merges from coreutils, etc. + * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax + error in gl_FUNC_MATCH. This fixes a bug I introduced on 2003-05-28. + * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE, + fixing a typo. + * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD. + * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL. + +2003-08-16 Paul Eggert <eggert@twinsun.com> + + Document merge from coreutils. + * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES. + * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES. + * modules/utime: Add m4/utimes-null.m4. + +2003-08-16 Paul Eggert <eggert@twinsun.com> + + * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white + space, undoing this 2003-08-12 change: + <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html> + +2003-08-16 Paul Eggert <eggert@twinsun.com> + + * config/srclist.txt: Get regex.h, strdup.c, strtoll.c, + strtoul.c from libc, undoing this 2003-08-12 change: + <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html> + +2003-08-16 Jim Meyering <jim@meyering.net> + + Merges from coreutils. + * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_) + prefix. Adjust cache variables similarly. Create 500 rather than + just 300 files, to exercise bug on Darwin6.5, too. + * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined + $missing_dir. + * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not + AM_SYS_POSIX_TERMIOS. + Reported by mkc@mathdogs.com. + Also change use of $am_cv_sys_posix_termios + to $ac_cv_sys_posix_termios. Reported by Andreas Schwab. + * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS + and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB. + * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point + in /proc/mounts until it finds one with matching device number. This + is unnecessary when the FILE argument *is* a mount point. No stat call + is necessary in that case. So, disable the statvfs-testing code on + systems with GNU libc. Reported by Andrei Gaponenko via Tim Waugh + as RedHat bug# 84846. + * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size + to 1MB, so as not to render systems with no stack size limit (e.g., + linux-2.2.x) unusable. Suggestion and code from Bruno Haible. + Include <unistd.h>. On some systems, + it is required for the definition of _SC_PAGESIZE. + +2003-08-16 Jim Meyering <jim@meyering.net> + + Merge from coreutils. + * lib/xstrtoimax.c: #else #if -> #elif. + * lib/xstrtoumax.c: Likewise. + +2003-08-16 Jim Meyering <jim@meyering.net> + + * m4/utimes.m4 (gl_FUNC_UTIMES): New file. + * m4/utimes.m4: Removed. + * m4/utimes-null.m4: Renamed from utimes.m4. + + * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size + to 1MB, so as not to render systems with no stack size limit (e.g., + linux-2.2.x) unusable. Suggestion and code from Bruno Haible. + Include <unistd.h>. On some systems, + it is required for the definition of _SC_PAGESIZE. + +2003-08-16 Jim Meyering <jim@meyering.net> + and Paul Eggert <eggert@cs.ucla.edu> + + Merges from coreutils, etc. + + * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define + using the latest version from cvs. This avoids problems with #line + directives using a vendor (Sun) compiler. + (jm_MACROS): Bump prerequisite from 2.52g to 2.57. + Don't set GETGROUPS_LIB here; now it's + done via getgroups.m4's wrapper function. + AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here, + rather than just in sh-util/configure.in, so that the + now-shared-by-fileutils-and-textutils lib/Makefile.am are all the + same. + Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new + AC_FUNC_GETLOADAVG where to find getloadavg.c. + Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME, + UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR, + gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME. + Remove code that is now done by the newly-required macros. + Append $(EXEEXT) to DF_PROG. + AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown. + Do not invoke or require the following here, + since prereq.m4 or some gnulib .m4 now does this for us: + gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME, + jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC, + jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP, + jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV, + jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX, + AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF, + vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE, + AC_FUNC_OBSTACK. + Do not replace the following functions, as this is now the job + of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname, + getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul + strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp, + atexit getpass, strdup, getpagesize. + Replace 'raise'. + Do not check for the following functions, as this is now the job + of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime, + getcwd, getmntinfo, resolvepath. But check for sysctl, setreuid, + setregid. + (jm_CHECK_ALL_HEADERS): Do not check for fenv.h. + Check for sys/sysctl.h. + (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE, + jm_CHECK_TYPE_STRUCT_TIMESPEC. Invoke gt_TYPE_SSIZE_T instead + of checking for ssize_t ourselves. + + * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them. + Require every macro that gnulib/modules/* suggests for us. + (jm_PREREQ_ADDEXT): New macro. + (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4. + Require jm_AC_TYPE_LONG_LONG instead of invoking it. + + * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro. + (gl_PHYSMEM): Use it. + Also check for `table' function. + Check for new headers and functions. + Add check for sys/sysmp.h. + With suggestions from Kaveh Ghazi. + Ignore headers that are present but cannot be compiled. This + avoids spurious warnings on Solaris 9 sparc with Forte Developer 7 + C 5.4. + +2003-08-15 Paul Eggert <eggert@twinsun.com> + + Document merge from coreutils. + * modules/userspec: Depend on posixver. + * modules/strftime: Depend on tzset. + +2003-08-15 Paul Eggert <eggert@twinsun.com> + + * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces, + rather than tab, after '#' in shell-script copyright notices. + Suggested by Bruno Haible. + +2003-08-15 Paul Eggert <eggert@twinsun.com> + + * config/srclist-update: Use three spaces, rather than tab, after '#' + in shell-script copyright notices. Suggested by Bruno Haible. + Remove unnecessary parenthesization in regular expression. + +2003-08-15 Jim Meyering <jim@meyering.net> + + Merge from coreutils. + * lib/xgethostname.c: Include <stdlib.h>. + (xghostname): Don't exit for anything other than memory-related + failure; just return NULL. + * lib/userspec.c: Include "posixver.h". + (parse_user_spec): Accept `.' as a separator only + in pre-POSIX-200112 mode. + * lib/strtoimax.c: Use #elif rather than #else #if. + * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]: + Remove function, now that we can rely on a working tzset function. + [!_LIBC]: Ensure that the required autoconf test has been run. + [!defined _NL_CURRENT && HAVE_STRFTIME]: + Use underlying_strftime for %r. + * lib/sha.c: Merge in some clean-up and optimization changes from + glibc. + * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file. + Ensure that it is a multiple of 64. + Rearrange loop exit tests so as to avoid performing an + additional fread after encountering an error or EOF. + * lib/realloc.c: Update copyright date. + +2003-08-15 Jim Meyering <jim@meyering.net> + and Paul Eggert <eggert@twinsun.com> + + Merge from coreutils. + * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit + member but strut utmpx does not. Needed for AIX 4.3.3. + (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define. + +2003-08-15 Jim Meyering <jim@meyering.net> + and Paul Eggert <eggert@cs.ucla.edu> + + Merges from coreutils, etc. + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): + Require gl_FUNC_TZSET_CLOBBER. + * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit, + ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination + members. + +2003-08-14 Paul Eggert <eggert@twinsun.com> + + Help the merge from coreutils. + * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro. + (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it. + * m4/tzset.m4: Use it too. + +2003-08-14 Paul Eggert <eggert@twinsun.com> + + * modules/tzset: New file. + +2003-08-14 Jim Meyering <jim@meyering.net> + + Merges from coreutils. + * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED + variable names, rather than @FNMATCH_H@. + * modules/alloca: Likewise for $(ALLOCA_H). + + * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of + the three copies of the literal target, `fnmatch.h'. + * modules/alloca (alloca.h): Likewise. + +2003-08-14 Jim Meyering <jim@meyering.net> + + Merge from coreutils. + * m4/tzset.m4: New file. + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the + MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since + otherwise, AIX 5.1 systems would end up using the latter. + MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting + whether a file system is remote doesn't work 2) the MOUNTED_VMOUNT + code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1 + code reports merely /MOUNT_POINT. Reported by Mike Jetzer. + +2003-08-14 Jim Meyering <jim@meyering.net> + + Merge from coreutils. + * lib/obstack.h: Whitespace changes. + * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc, + and xcalloc return values. + (read_filesystem_list) [MOUNTED_GETFSSTAT]: + Use MNT_NOWAIT, rather than MNT_WAIT. Otherwise, `df DIR' could + hang on OSF/1 5.1 for DIR on both local and remote file systems. + Reported by (and fix confirmed by) Nelson H. F. Beebe. + (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any + error from mntctl. + Use mntctl's return value to drive the entry-processing loop, since + we can't rely on the value of the vmt_length member in the last + entry. On some systems doing so could result in exhausting + virtual memory. Based in part on a patch from Mike Jetzer. + +2003-08-14 Jim Meyering <jim@meyering.net> + and Paul Eggert <eggert@twinsun.com> + + Merges from coreutils, plus other fixes. + * lib/physmem.c: Merge in portability changes from gcc/libiberty + to support AIX, IRIX, Tru64, and Windows. See the ChangeLog there + for credits and details. Thanks to Kaveh Ghazi for helping + to keep these files in sync. + (ARRAY_SIZE): Define it. + (physmem_total, physmem_available): Add comments. From Kaveh Ghazi. + * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'. + (memcasecmp): Don't assume size_t fits in unsigned int. + Remove casts and duplicate code. + * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally. + (memcpy): Remove definition. + Merge in some clean-up and optimization changes from glibc. + [BLOCKSIZE]: Move definition to top of file. + Ensure that it is a multiple of 64. + Rearrange loop exit tests so as to avoid performing an + additional fread after encountering an error or EOF. + * lib/md5.h (md5_uintptr): Define. + * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to + return to the initial working directory. Preserve errno + for caller. + * lib/idcache.c: Include "xalloc.h". + (xmalloc, xrealloc): Remove decls. + (getuser): Remove casts no longer required in C89. + * lib/human.c: Include stdio.h, for sprintf. + * lib/group-member.c: Include "xalloc.h". + (xmalloc, xrealloc): Remove decls. + (get_group_info): Remove casts no longer required in C89. + * lib/getusershell.c (readname): Remove casts no longer required in + C89. + * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions. + * lib/getline.c: Whitespace fix, from coreutils. + +2003-08-13 Paul Eggert <eggert@twinsun.com> + + * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC. + Check for isascii. + + * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4, + lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4: + Undo previous (whitespace-only) change. + +2003-08-13 Paul Eggert <eggert@twinsun.com> + + * lib/exclude.c: Include <ctype.h> + (IN_CTYPE_DOMAIN): New macro. + (is_space): New fn. + (add_exclude_file): If LINE_END is a space, ignore trailing spaces + and empty lines. + + * lib/argp-help.c, argp-parse.c, config.charset, getopt.h: + Undo previous (whitespace-only) change. + +2003-08-13 Paul Eggert <eggert@twinsun.com> + + * config/srclist-update: Change update back to the old behavior, + leaving whitespace alone. Use one 'sed' command rather than a + pipeline. + (fixlicense): Now a variable, not a function. + (remove_trailing_blanks): Remove. + (fixfile): Don't invoke unexpand or cat, or remove trailing blanks. + * config/config.guess, config.sub, install-sh, missing, texinfo.tex: + Undo previous (whitespace-only) change. + +2003-08-12 Paul Eggert <eggert@twinsun.com> + + Merge from coreutils. + * modules/euidaccess: Add lib_SOURCES, include for new + file euidaccess.h + +2003-08-12 Paul Eggert <eggert@twinsun.com> + + * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4, + lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4: + Normalize leading white space and remove trailing white space. + + Merge from coreutils + * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl. + + * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext + 0.12.1. These files are now being upgraded automatically by + ../config/srclist-update. + +2003-08-12 Paul Eggert <eggert@twinsun.com> + + * lib/argp-help.c, argp-parse.c, config.charset, getopt.h: + Normalize leading white space and remove trailing white space. + * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright + notice, as per ../config/srclist-update. + + Merge from coreutils. + * lib/euidaccess.h: New file. + * lib/euidaccess.c: Include it. + * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h, + vasnprintf.h, vasprintf.h. Remove strdup.c, gettext.h. + * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space. + +2003-08-12 Paul Eggert <eggert@twinsun.com> + + * config/srclist-update: Add copyright notice. + (remove_id_lines, remove_trailing_blanks): New constants. + (fixfile): Use them to normalize spacing a bit in copied files. + * config/config.guess, config.sub, install-sh, missing, texinfo.tex: + Normalize leading white space and remove trailing white space. + + * config/texinfo.tex: Sync with texinfo. + + * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c, + strtoul.c from libc, to merge coreutils whitespace changes. + + * config/srclist.txt: Get the following m4 files from gettext: + codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4, + inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4, + longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4, + wint_t.m4. + +2003-08-12 Karl Berry <karl@gnu.org> + + * config/srclist.txt: can't sync vasnprintf.c any more, changes have + been made. + +2003-08-11 Paul Eggert <eggert@twinsun.com> + + * modules/gnu-source, m4/gnu-source.m4: + Remove; we're assuming Autoconf 2.54 or later now. + Suggested by Bruno Haible. + * MODULES.html.sh (func_all_modules): Remove gnu-source. + +2003-08-11 Bruno Haible <bruno@clisp.org> + + * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen. + +2003-08-11 Bruno Haible <bruno@clisp.org> + + * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1. + (vasnprintf): Use it instead of wcslen. + +2003-08-11 Bruno Haible <bruno@clisp.org> + + * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum + value to ensure that _Bool promotes to int. Use #define for _Bool when + using the Solaris C compiler. Adds comments suggested by Paul Eggert. + +2003-08-10 Karl Berry <karl@gnu.org> + + * lib/regex.h: update from libc (whitespace fix). + +2003-08-09 Paul Eggert <eggert@twinsun.com> + + Merge some files from coreutils. These changes were + originally made by Jim Meyering. + * lib/acl.c: Include <sys/types.h> before <sys/stat.h>; + many older Unixes require this. + * lib/alloca.c (alloca): Remove cast to argument of free; + no longer needed in C89. + * lib/alloca_.h, regex.h: Fix white space to match + what GNU indent does. + +2003-08-09 Paul Eggert <eggert@twinsun.com> + + * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371"; + apparently Emacs's Unicode mode got confused before my 2003-08-05 + checkin. + +2003-08-08 Paul Eggert <eggert@twinsun.com> + + * m4/extensions.m4: New file. + * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): + Require gl_USE_SYSTEM_EXTENSIONS. + * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): + Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE. + +2003-08-08 Paul Eggert <eggert@twinsun.com> + + * MODULES.html.sh (func_all_modules): Add extensions, gnu-source. + * modules/extensions, modules/gnu-source: New files. + * modules/timespec, modules/unlocked-io: Depend on extensions. + +2003-08-07 Paul Eggert <eggert@twinsun.com> + + * modules/restrict: New file. + * MODULES.html.sh (func_all_modules): Add restrict. + * modules/regex: Depend on restrict. + +2003-08-07 Paul Eggert <eggert@twinsun.com> + + * m4/restrict.m4: New file. + * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT. + +2003-08-07 Bruno Haible <bruno@clisp.org> + + * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not + lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2). + +2003-08-07 Bruno Haible <bruno@clisp.org> + + * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This + makes the module 'getndelim2' compatible with the module 'getline'. + +2003-08-05 Paul Eggert <eggert@twinsun.com> + + * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII + byte with "\201" to avoid glitches when editing that source file + with multi-gnome-terminal. + +2003-08-05 Paul Eggert <eggert@twinsun.com> + + * lib/bumpalloc.h: Remove. + +2003-08-05 Paul Eggert <eggert@twinsun.com> + + * MODULES.html.sh (func_all_modules): Remove bumpalloc. + * modules/bumpalloc: Remove. + +2003-08-04 Paul Eggert <eggert@twinsun.com> + + * lib/getloadavg.c: Change copyright notice and spacing to conform to + GNU coding style. + + Merge from coreutils. + * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is + 1. From glibc. + * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion + from Karl Berry, implemented by Jim Meyering. + * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns; + from Dmitry V. Levin. + Remove anachronistic cast of xrealloc. + * lib/fnmatch_.h (__const): Remove. Use 'const'. + * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper + type. Otherwise, it wouldn't compile with at least /bin/cc on + ymp-cray-unicos9.0.2.X. + Combine two mostly-identical uses of alloca into one. + Thanks to the Cray-Cyber project for access to a Cray Y-MP. + +2003-08-04 Dave Love <d.love@dl.ac.uk> + + [From Emacs.] + + * lib/getloadavg.c: Check `__unix' as well as `unix'. Use #ifdef, not + #if. Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE. Check + F_SETFD, not FD_SETFD. Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not + obsolete NLIST_NAME_UNION. + [__GNU__]: Undef BSD and FSCALE. + [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT. + +2003-08-03 Paul Eggert <eggert@twinsun.com> + + * lib/stdbool_.h (_Bool): Make it signed char, instead of + an enum type, so that it's guaranteed to promote to int. See: + <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html> + +2003-08-03 Karl Berry <karl@gnu.org> + + * config/depcomp: update from automake. + +2003-07-31 Paul Eggert <eggert@twinsun.com> + + * lib/strerror.c: Include config.h, limits.h. Declare sprintf. + (strerror): Don't assume that a printable int fits in 14 bytes. + +2003-07-31 Bruno Haible <bruno@clisp.org> + + * modules/getpass-gnu: New file. + * MODULES.html.sh (func_all_modules): Add getpass-gnu. + +2003-07-31 Bruno Haible <bruno@clisp.org> + + * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro. + +2003-07-24 Karl Berry <karl@gnu.org> + + * config/missing: update from automake. + +2003-07-24 Derek Robert Price <derek@ximbiot.com> + Bruno Haible <bruno@clisp.org> + + * lib/getline.h (getline, getdelim): Change return type to ssize_t. + * lib/getline.c (getline, getdelim): Likewise. + Remove _GNU_SOURCE define; now it's defined in config.h through + m4/getline.m4. + +2003-07-23 Karl Berry <karl@gnu.org> + + * config/config.sub: update from prep. + +2003-07-22 Paul Eggert <eggert@twinsun.com> + + * modules/xalloc (Depends-on): Add exitfail. + * modules/xmemcoll: Likewise. + +2003-07-22 Paul Eggert <eggert@twinsun.com> + + * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and + over-parenthesization in macros. + + Sync with coreutils. + + * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not + required by C99. + + Use `exit_failure' for xalloc and xmemcoll instead of their own + private exit-failure variables. + * lib/xalloc.h (xalloc_exit_failure): Remove. + * lib/xmalloc.c: Likewise. Include exitfail.h. + (xalloc_die): Use exit_failure instead of xalloc_exit_failure. + * lib/xmemcoll.h (xmemcoll_exit_failure): Remove. + * lib/xmemcoll.c: Likewise. Include exitfail.h. + (xmemcoll): Use exit_failure instead of xalloc_exit_failure. + +2003-07-20 Jim Meyering <jim@meyering.net> + + * modules/closeout (Depends-on): Add exitfail. + Suggestion from Bruno Haible. + +2003-07-19 Karl Berry <karl@gnu.org> + + * config/config.sub: update from prep. + +2003-07-18 Paul Eggert <eggert@twinsun.com> + + * lib/closeout.h (close_stdout_set_status, close_stdout_status): + Remove. + * lib/closeout.c: Likewise. Include "closeout.h" right after config.h, + to test that it can stand by itself. Include "exitfail.h". + Clients should set exit_failure instead. + (EXIT_FAILURE): Remove; no longer needed. Do not include <stdlib.h>. + +2003-07-18 Bruno Haible <bruno@clisp.org> + + * modules/getndelim2: New file. + * modules/getline: Share files with module getndelim2. + * modules/getnline: Depend on getndelim2 instead of sharing files with + it. Add getnline.c to lib_SOURCES. + * MODULES.html.sh (func_all_modules): Add getndelim2. + +2003-07-18 Bruno Haible <bruno@clisp.org> + + * m4/getndelim2.m4: New file. + * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and + invoke gl_PREREQ_GETNDELIM2. + (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by + gl_PREREQ_GETNDELIM2. + * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by + gl_GETNDELIM2. + +2003-07-18 Bruno Haible <bruno@clisp.org> + + * lib/getndelim2.h: New file. + * lib/getndelim2.c: Make into a module of its own. Include config.h, + getndelim2.h. + (getndelim2): Make non-static. Change return type to ssize_t. + * lib/getline.h: Change argument names. + * lib/getline.c: Include getndelim2.h instead of getndelim2.c. + * lib/getnline.c: Include getndelim2.h. + +2003-07-18 Andreas Schwab <schwab@suse.de> + + * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno. + +2003-07-17 Karl Berry <karl@gnu.org> + + * config/config.sub: update from prep. + +2003-07-17 Bruno Haible <bruno@clisp.org> + + * modules/getnline: New file. + * modules/getline: Add lib/getndelim2.c to source file list. + * MODULES.html.sh (func_all_modules): Add getnline. + +2003-07-17 Bruno Haible <bruno@clisp.org> + + * m4/getnline.m4: New file. + +2003-07-17 Bruno Haible <bruno@clisp.org> + + * m4/Makefile.am.in: Remove file. + * m4/Makefile.am: Remove file. + * m4/Makefile.in: Remove file. + +2003-07-17 Bruno Haible <bruno@clisp.org> + + * lib/getnline.h: New file. + * lib/getnline.c: New file. + * lib/getndelim2.c: New file, extracted from getline.c. + (getndelim2): Renamed from getdelim2, with added nmax argument. + * lib/getline.c: Include getndelim2.c. + (getdelim2): Moved out to getndelim2.c. + (getline, getdelim): Update. + +2003-07-17 Bruno Haible <bruno@clisp.org> + + * lib/Makefile.am: Remove file. + * lib/Makefile.in: Remove file. + +2003-07-17 Bruno Haible <bruno@clisp.org> + + * configure.in: Remove file. + * Makefile.in: Remove file. + +2003-07-17 Bruno Haible <bruno@clisp.org> + + * MODULES.html.sh: Put the </BODY> right before </HTML>. + +2003-07-16 Karl Berry <karl@gnu.org> + + * config/srclist-update: was running fixlicense twice, which caused + texinfo.tex to be nullified for some reason. Simplify, + $gplsrc is no longer needed as far as I can see? + +2003-07-16 Jim Meyering <jim@meyering.net> + + * modules/save-cwd: Depend on xgetcwd. From Derek Price. + +2003-07-15 Paul Eggert <eggert@twinsun.com> + + * config/srclist.txt: Get the following files from gettext-runtime/intl + instead: config.charset, localcharset.c, localcharset.h, ref-add.sin, + ref-del.sin. From Bruno Haible. + * config/srclist-update (fixfile): Change grep pattern again, since the + previous fix didn't work (there was another trailing $). Use + '[$]' to escape the $s. + +2003-07-15 Karl Berry <karl@gnu.org> + + * lib/vasnprintf.c: update from gettext. + +2003-07-15 Karl Berry <karl@gnu.org> + + * config/srclist-update (fixfile): Change grep pattern, since 'Id' + gets expanded when surrounded by '$'. + +2003-07-15 Jim Meyering <jim@meyering.net> + + * modules/save-cwd: Don't depend on error. From Derek Price. + +2003-07-15 Jim Meyering <jim@meyering.net> + + * lib/makepath.c (make_path): Enclose diagnostic in _(...). + +2003-07-14 Simon Josefsson <jas@extundo.com> + + * modules/mempcpy: New file. + * MODULES.html.sh (func_all_modules): Add mempcpy. + +2003-07-14 Simon Josefsson <jas@extundo.com> + + * m4/mempcpy.m4: New file. + +2003-07-14 Simon Josefsson <jas@extundo.com> + + * lib/mempcpy.h: New file. + * lib/mempcpy.c: New file. + +2003-07-14 Paul Eggert <eggert@twinsun.com> + + * modules/getdate, modules/posixtm: Depend on mktime. + +2003-07-14 Paul Eggert <eggert@twinsun.com> + + * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h, + sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c, + unicodeio.c, unicodeio.h, unlocked-io.h: + Switch from LGPL to GPL. + +2003-07-14 Paul Eggert <eggert@twinsun.com> + + * lib/asnprintf.c, asprintf.c, config.charset, gettext.h, + localcharset.c, localcharset.h, mkdtemp.c, printf-args.c, + printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin, + ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h, + vasprintf.c, vasprintf.h: Regenerate. These files are now being + updated automatically by ../config/srclist-update. This changes + their license from LPGL to GPL. + +2003-07-14 Paul Eggert <eggert@twinsun.com> + + * config/srclist.txt: Add tons more gettext files. $GETTEXT is now + assumed to refer to the root of the most recent stable gettext version. + * config/srclistvars.sh: Add defaults for eggert. + * config/srclist-update: Convert LGPL to GPL in shell scripts, too. + Match "This program" as well as "The program". This is needed + for gettext. + +2003-07-14 Jim Meyering <jim@meyering.net> + + Don't emit diagnostics. Let callers do that. + * lib/save-cwd.c: Don't include "error.h". + (save_cwd): Don't call error. Ensure that errno is valid + when returning nonzero. + + * lib/save-cwd.h (restore_cwd): Update prototype. + * lib/save-cwd.c (restore_cwd): Remove two parameters. + Simplify. Don't call error upon failure. Let callers do that. + (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4 + when auditing is enabled. But don't bother updating the #if. + +2003-07-11 Alexandre Duret-Lutz <adl@gnu.org> + + * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13; + it breaks C++ compilation. + [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*. + +2003-07-10 Simon Josefsson <jas@extundo.com> + + * modules/strchrnul (Makefile.am): Add strchrnul.h. + +2003-07-10 Jim Meyering <jim@meyering.net> + + * m4/clock_time.m4: Remove trailing blank. + * m4/intmax_t.m4: Likewise. + +2003-07-10 Jim Meyering <jim@meyering.net> + + * lib/vasnprintf.c: Remove trailing blanks. + Make cpp indentation consistent. + +2003-07-09 Paul Eggert <eggert@twinsun.com> + + * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h, + posixver.c, strftime.c, strnlen.c, strverscmp.c: + Switch from LGPL to GPL. + +2003-07-09 Paul Eggert <eggert@twinsun.com> + + * config/srclist.txt: Sort sublists. Add + $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files + that differ from gnulib for one reason or another; we'd like this list + to be smaller but for now let's document what we have. + +2003-07-08 Paul Eggert <eggert@twinsun.com> + + * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding + the use of GNU extensions. Change "x=`eval echo $x`" to the shorter + and sweeter "eval x=$x". + * config/srclist.txt: Get lib/argp* from glibc. + +2003-07-07 Paul Eggert <eggert@twinsun.com> + + * lib/mktime.c: Fix some boundary cases and remove need for floating + point. + + Issue a compile-time diagnostic if time_t is floating point, or if + two's complement arithmetic is not in effect, or if arithmetic + right shift does not propagate the sign. These assumptions were + all in the original code but they weren't checked. + + (TIME_T_MIDPOINT, verify): New macros. + (__isleap): Remove; it has integer overflow problems. + (leapyear): New function, without those problems. + (ydhms_tm_diff): Remove; splitting into two parts. + (ydhms_diff): New function, containing the arithmetic part of + the old ydhms_tm_diff function. Issue a compile-time + diagnostic if we are not using C99 integer division. + Avoid casts when possible. + (guess_time_tm): New function, containing the checking part of + the old ydhms_tm_diff function. Return the new value, rather than + the difference between it and the old. Accept a new argument T + so that *T specifies the old value. Check for overflow in the result. + + (__mktime_internal): Use a time_t offset, not a long int offset. + This undoes the 2003-06-04 change, which is no longer needed now + that we have better overflow checking. + (localtime_offset): Likewise. + + (__mktime_internal): Avoid harmful overflow on hosts where time_t + and long are 64-bit but int is only 32-bit. + (ydhms_diff): Use long int to store year1 and yday1. + Issue a compile-time diagnostic if long int is not wide enough. + + (__mktime_internal): Use long int to store adjusted year and yday. + Use plain C rather than preprocessor commands, if that doesn't + affect efficiency. + Check for overflow (and try to repair) after each probe + rather than checking only at the very end. This avoids some bugs + (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time + does not equal GMT offset at maximum time). + Use integer to check for overflow rather than floating point; this + is more portable to non-IEEE hosts, and is a tad faster. + When we detect that we are oscillating between two values, + don't check whether tm_isdst has the requested value, since + we already know the answer. When tm_isdst has the wrong value, + use a different heuristic to find the right one, based on the + extreme values actually observed in practice in tz2003a, + rather than the (overly optimistic) "previous 3 calendar quarters". + + (not_equal_tm, print_tm, check_result): Use "const T" rather than + "T const" to accommodate glibc style. + (check_result): Use less-confusing report format. "long" -> "long int. + (main): Likewise. + Don't loop if the iteration overflows time_t. + Allow a negative step in the iteration. + +2003-07-06 Karl Berry <karl@gnu.org> + + * config/depcomp: update from automake. + * config/config.sub: update from prep. + +2003-07-03 Karl Berry <karl@gnu.org> + + * config/config.guess: update from prep. + +2003-07-01 Paul Eggert <eggert@twinsun.com> + + * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since + xreadlink.c now includes it unconditionally. + +2003-07-01 Paul Eggert <eggert@twinsun.com> + + * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of + having it depend on HAVE_SYS_TYPES_H. + +2003-07-01 Bruno Haible <bruno@clisp.org> + + * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>. + <sys/types.h> should be sufficient. + Reported by Paul Eggert. + +2003-06-26 Karl Berry <karl@gnu.org> + + * config/depcomp: update from automake. + +2003-06-26 Bruno Haible <bruno@clisp.org> + + * modules/human: Depend on module stdbool. + +2003-06-25 Bruno Haible <bruno@clisp.org> + + * modules/readlink: New file. + * modules/xreadlink: Depend on it. + * MODULES.html.sh (func_all_modules): Add readlink. + +2003-06-25 Bruno Haible <bruno@clisp.org> + + * m4/readlink.m4: New file. + +2003-06-25 Bruno Haible <bruno@clisp.org> + + * lib/readlink.c: New file. + +2003-06-22 Karl Berry <karl@gnu.org> + + * config/srclist.txt: update mkinstalldirs from automake. + * config/mkinstalldirs: update. + +2003-06-22 Bruno Haible <bruno@clisp.org> + + Portability to mingw32. + * m4/ssize_t.m4: New file, from GNU gettext. + * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T. + * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T. + +2003-06-22 Bruno Haible <bruno@clisp.org> + + * modules/safe-read: Add m4/ssize_t.m4. + * modules/xreadlink: Add m4/ssize_t.m4. + +2003-06-20 Bruno Haible <bruno@clisp.org> + + Assume C89, so PARAMS isn't needed. + * lib/unicodeio.h (PARAMS): Remove. + * lib/unicodeio.c: Don't use PARAMS. + +2003-06-18 Karl Berry <karl@gnu.org> + + * config/config.{guess,sub}: update from prep. + +2003-06-18 Jim Meyering <jim@meyering.net> + + Merge changes from coreutils. + * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally. + Remove explicit declarations of xmalloc and realloc. + Include xalloc.h. + (read_utmp): Remove anachronistic cast of xmalloc. + +2003-06-17 Paul Eggert <eggert@twinsun.com> + + Assume C89, so PARAMS isn't needed. + * lib/backupfile.h (PARAMS): Remove. All uses removed. + * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h, + lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h, + lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h, + lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h, + lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h, + lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h, + lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h, + lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h, + lib/xstrtod.h, lib/xstrtol.h: Likewise. + * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h, + lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h; + no longer needed. Anyway, config.h should always be included before any + other file. + +2003-06-11 Simon Josefsson <jas@extundo.com> + + * modules/sysexits: New file. + * MODULES.html.sh (func_all_modules): Add sysexits. + +2003-06-11 Simon Josefsson <jas@extundo.com> + + * lib/sysexit_.h: New file. + +2003-06-11 Derek Price <derek@ximbiot.com> + + * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is + necessary. + +2003-06-11 Bruno Haible <bruno@clisp.org> + + * m4/sysexits.m4: New file. + +2003-06-10 Simon Josefsson <jas@extundo.com> + + * lib/argp.h: New file, from glibc. + * lib/argp-ba.c: New file, from glibc. + * lib/argp-eexst.c: New file, from glibc. + * lib/argp-fmtstream.c: New file, from glibc. + * lib/argp-fmtstream.h: New file, from glibc. + * lib/argp-fs-xinl.c: New file, from glibc. + * lib/argp-help.c: New file, from glibc. + * lib/argp-namefrob.h: New file, from glibc. + * lib/argp-parse.c: New file, from glibc. + * lib/argp-pv.c: New file, from glibc. + * lib/argp-pvh.c: New file, from glibc. + * lib/argp-xinl.c: New file, from glibc. + +2003-06-10 Simon Josefsson <jas@extundo.com> + + * modules/strchrnul: New file. + +2003-06-10 Simon Josefsson <jas@extundo.com> + + * modules/argp: New file. + +2003-06-10 Simon Josefsson <jas@extundo.com> + + * m4/strchrnul.m4: New file. + +2003-06-10 Simon Josefsson <jas@extundo.com> + + * lib/strchrnul.h: New file. + * lib/strchrnul.c: New file. + +2003-06-10 Bruno Haible <bruno@clisp.org> + + * MODULES.html.sh (func_all_modules): Add strchrnul and argp. + +2003-06-07 Karl Berry <karl@gnu.org> + + * config/config.{guess,sub}: update from prep. + +2003-06-07 Jim Meyering <jim@meyering.net> + + * modules/strtod: Use $(...) notation, not @...@ for + AC_REPLACE'd variables. + * modules/localcharset: Likewise. + +2003-06-07 Jim Meyering <jim@meyering.net> + + * lib/readtokens.h: Put `Free Software Foundation, Inc.' + in place of my name in the copyright comment. + Remove definition and uses of __P. + + From coreutils. + * lib/stat.c: Don't declare xmalloc explicitly. + Instead, include "xalloc.h". + * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc, + xrealloc, and xcalloc return values. + * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h". + Improve comment. + * lib/xgetcwd.h: Remove definition/uses of PARAMS. + +2003-06-07 Bruno Haible <bruno@clisp.org> + + * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to + avoid AC_CONFIG_LINKS. + * modules/fnmatch (Makefile.am): Use explicit creation rule for + fnmatch.h, to avoid AC_CONFIG_LINKS. + * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe. + +2003-06-07 Bruno Haible <bruno@clisp.org> + + * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX, + gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking + AC_CONFIG_LINKS. Needed to allow for a different name of the lib + directory. + * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking + AC_CONFIG_LINKS. Needed to allow for a different name of the lib + directory. + +2003-06-06 Jim Meyering <jim@meyering.net> + + Merge from coreutils. + * lib/same.c: (same_name): Declare *_basename locals to be `const'. + Consolidate declarations and initializations of *_base* locals. + + Merge from coreutils. + This avoids a core dump on systems without GNU putenv, + when running `env -u SOME_ALREADY_UNSET_VARIABLE'. + * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define. + (unsetenv): New static function, from GNU libc. + (rpl_putenv): Use it. + + * lib/modechange.c: Remove trailing blanks. + + Merge from coreutils. + * lib/fsusage.c: Remove declaration of statfs. + It conflicted with one from OSF/1 5.1 in <sys/mount.h>. + + * lib/posixtm.c: Include <stdbool.h> unconditionally. + +2003-06-06 Jim Meyering <jim@meyering.net> + + * lib/stdbool_.h: Renamed from stdbool.h.in. + +2003-06-06 Jim Meyering <jim@meyering.net> + Bruno Haible <bruno@clisp.org> + + * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h. + Adjust Makefile.am snippet not to redirect directly to target. + Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables. + +2003-06-05 Paul Eggert <eggert@twinsun.com> + + * lib/mktime.c (__mktime_internal): When resolving a tm_isdst + mismatch, look in future quarters as well as past. This fixes a + bug when processing fall-backwards gaps immediately after a long + period of daylight-saving time. + + * lib/mktime.c: Assume freestanding C89 or better. + (HAVE_LIMITS_H): Remove. Assume it's 1. + (__P): Remove; not used. + (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them. + (mktime, not_equal_tm, print_tm, check_result, + main): Use prototypes. Use const * where appropriate. + (main): Fix typo in testing code that uncovered by above changes. + (Local Variables): Remove -DHAVE_LIMITS_H from compile-command. + +2003-06-04 Paul Eggert <eggert@twinsun.com> + + * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H. Check for + locale.h, localeconv. This merges changes from coreutils. + + * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS. + It can be removed after the next Autoconf is released. + * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner + needed. + +2003-06-04 Paul Eggert <eggert@twinsun.com> + + * lib/mktime.c: Fix Debian bug 177940 + <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>. + (localtime_offset): Now long int, not time_t, because we want it + to be guaranteed to be signed. All uses changed. + (__mktime_internal): If overflow would occur when adding offset, + don't add it. + + Merge 'human' changes from coreutils. Rewrite to support + locale-specific notations like thousands separators. + * lib/human.c: Simplify authorship notice. + Include human.h immediately after config.h. + <sys/types.h>, <stdio.h>: Do not include; no longer needed. + <limits.h>: Do not include, since human.h does. + (SIZE_MAX, UINTMAX_MAX): New macros. + <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H. + <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV. + (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro. + (power_letter): Renamed from suffixes. + (generate_suffix_backwards): Remove. + (adjust_value): Now takes int style (because of human.h changes) + and long double value (for greater precision on some platforms). + (group_number): New function. + (human_readable): Use it. Use integer options, not enum. + Put the options before the sizes in the arg list. + Support all the new options. + The old human_readable function has been removed; + use inttostr.h instead. + (human_readable, default_block_size, humblock): + Use uintmax_t, not int, for block sizes. + (human_readable_inexact, block_size_types): Remove. + (block_size_opts): New constant. + (human_options): Renamed from human_block_size, with new signature + that allows block sizes up to UINTMAX_MAX. All callers changed. + * lib/human.h: Add copyright and authorship notice. + Include <limits.h> and <stdbool.h> unconditionally. + (PARAMS): Remove. All uses removed. + (LONGEST_HUMAN_READABLE): Add support for thousands separator. + (enum human_inexact_style): Remove tag; now a nameless enum. + (human_floor, human_ceiling, human_round_to_even): Now have + values 2, 0, 1 rather than -1, 1, 0. + (human_group_digits, human_suppress_point_zero, human_autoscale, + human_base_1024, human_SI, human_B): New constants. + (human_readable_inexact, human_block_size): Remove. + (human_readable): Size args are now uintmax_t, not int. + (human_options): New decl. + + * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are + unnecessary now that we assume C89 or better. This change + imported from coreutils. + + * lib/mktime.c (__mktime_internal): Do not reject negative timestamps + arbitrarily. This is the same patch as 2003-05-28, but it got lost + in the 2003-05-30 sync from glibc. + + .h files should stand alone, but we shouldn't include <sys/types.h> + if we can get away with just <stddef.h>. + + * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c, + malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h> + rather than <sys/types.h>, as we merely need size_t. + * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>, + to get size_t. + * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h: + Include <stdio.h>, to get FILE. + * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume + memcasecmp.h has included <stddef.h> and all we need is size_t. + * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks + our interface, instead of including <sys/types.h> + +2003-06-04 Paul Eggert <eggert@twinsun.com> + + * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for + now, as glibc mktime is buggy on non-glibc systems. + +2003-06-03 Karl Berry <karl@gnu.org> + + * config/config.sub: update from prep. + +2003-06-02 Paul Eggert <eggert@twinsun.com> + + [from coreutils] + Fix some minor time-related bugs with POSIX time arguments. + Some valid time stamps were being rejected (notably -1, and + time stamps before 1900 on 64-bit hosts). And some invalid + time stamps were being accepted, e.g. September 31. + + * lib/posixtm.h (posixtime): Return bool instead of time_t, so + that we can return (time_t) -1 successfully. + * lib/posixtm.c: Likewise. + [HAVE_STDBOOL_H]: Include <stdbool.h>. + (bool, false, true) [!HAVE_STDBOOL_H]: New type. + (t): Remove static var. + (year, posix_time_parse): Now takes struct tm * arg to modify, instead + of static var. All uses changed. + (year): Do not reject years before 1900; they can occur with + 64-bit time_t. + (posix_time_parse): Do not check for out-of-range components; + that is now the caller's responsibility, since our checks were + only approximations. + (posixtime): Use mktime to check for out-of-range components, + since it knows them exactly. + If mktime returns (time_t) -1, check whether an error actually occurred + by invoking localtime on -1. + (main) [TEST_POSIXTIME]: Check for input data errors, and report + posixtime failures better. + Improve the test data (in comments only). + +2003-06-02 Karl Berry <karl@gnu.org> + + * config/mkinstalldirs (version): new variable. + (--version): new option. + (usage): improve message. + +2003-05-30 Karl Berry <karl@gnu.org> + + * lib/mktime.c: update from libc. + +2003-05-30 Bruno Haible <bruno@clisp.org> + + * modules/gettext: Add files m4/nls.m4 and m4/po.m4. + * config/config.rpath: Upgrade to gettext-0.12.1. + +2003-05-30 Bruno Haible <bruno@clisp.org> + + * m4/gettext.m4: Upgrade to gettext-0.12.1. + * m4/nls.m4: New file, from gettext-0.12.1. + * m4/po.m4: New file, from gettext-0.12.1. + * m4/progtest.m4: Upgrade to gettext-0.12.1. + +2003-05-30 Bruno Haible <bruno@clisp.org> + + * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1. + * lib/localcharset.h: Likewise. + * lib/localcharset.c: Likewise. + +2003-05-29 Karl Berry <karl@gnu.org> + + * config/config.rpath: update from gettext. + +2003-05-28 Paul Eggert <eggert@twinsun.com> + + Assume the headers required for C89 freestanding compilers. + * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h. + * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise. + * m4/human.m4 (gl_HUMAN): Likewise. + * m4/pathmax.m4 (gl_PATHMAX): Likewise. + * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise. + * m4/userspec.m4 (gl_USERSPEC): Likewise. + * m4/xreadlink.m4 (gl_XREADLINK): Likewise. + * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise. + * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h. + +2003-05-28 Paul Eggert <eggert@twinsun.com> + + Assume the headers required for C89 freestanding compilers. + * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c, + lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c, + lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H. + * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c, + lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't + define, since <limits.h> is guaranteed to do that. + * lib/fatal.c: Include <stdarg.h> without checking for __STDC__. + * lib/exclude.c: Include <stdbool.h> unconditionally. + * lib/tempname.c: Include <stddef.h> unconditionally. + * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT. + * lib/modechange.c, rpmatch.c (NULL): Don't define, since + <stddef.h> does that. + * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed. + * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that. + * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer + needed. + * lib/xstrtol.c: Likewise. + * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed. + * lib/savedir.c: Include <stddef.h> instead of defining NULL. + + * lib/addext.c (addext): Use assignment rather than cast, to avoid + warnings on some platforms. + + * lib/mktime.c (__mktime_internal): Do not reject negative timestamps + arbitrarily. + +2003-05-26 Jim Meyering <jim@meyering.net> + + Merge in a change from coreutils: + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one + that is guaranteed to be `no'. Use `no_such_member' to indicate + that condition, rather than `-1' which is slightly misleading. + Change the name of the cache variable to have the gl_ prefix. + Prompted by a patch from Richard Dawe for DJGPP. + +2003-05-24 Karl Berry <karl@gnu.org> + + * config/config.guess: update from prep. + +2003-05-22 Karl Berry <karl@gnu.org> + + * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg. + +2003-05-20 Karl Berry <karl@gnu.org> + + * config/config.guess: update from prep. + +2003-05-18 Karl Berry <karl@gnu.org> + + * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF + might actually be set by the user. + + * config/depcomp, install-sh, mdate-sh: update from automake. + +2003-05-17 Bruno Haible <bruno@clisp.org> + + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an + invalid expansion for AC_EGREP_CPP. + * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise. + * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise. + Suggested by Akim Demaille <akim@epita.fr> in + http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html + +2003-05-12 Jim Meyering <jim@meyering.net> + + * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect + the space-padded-by-default conversion specifiers, %e, %k, %l. + +2003-05-12 Bruno Haible <bruno@clisp.org> + + * lib/linebreak.c (iconv_string_length): Don't return -1 just because + the string is longer than 4 KB. + +2003-05-11 Karl Berry <karl@gnu.org> + + * config/config.{guess,sub}: update from prep. + +2003-05-09 Bruno Haible <bruno@clisp.org> + + * modules/error: Add m4/strerror_r.m4 to file list. + +2003-05-03 Bruno Haible <bruno@clisp.org> + + Upgrade to Unicode-4.0. + * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD, + U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615, + U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5, + U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B + from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1. + (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width + of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2. + Change width of U+E0100..U+E01EF from 1 to 0. + +2003-04-25 Jim Meyering <jim@meyering.net> + + * lib/copy-file.c (copy_file_preserving): Declare buf_size to be + of type size_t, not int. + +2003-04-25 Bruno Haible <bruno@clisp.org> + + * lib/copy-file.c: Include <stddef.h>, for size_t. + +2003-04-21 Paul Eggert <eggert@twinsun.com> + + * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some + code which expansion is under static control. Patch imported from + Akim Demaille's patch to Bison; see + <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>. + +2003-04-14 Bruno Haible <bruno@clisp.org> + + * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF. + +2003-04-11 Jim Meyering <jim@meyering.net> + + Merge changes from Coreutils. + + 2003-03-22 Jim Meyering <jim@meyering.net> + + * lib/strftime.c (widen): Cast alloca return value to proper type. + + 2003-01-19 Ulrich Drepper <drepper@redhat.com> + + From GNU libc. + * lib/strftime.c (my_strftime): Handle very large width + specifications for numeric values correctly. Improve checks for + overflow. + + 2003-01-19 Jim Meyering <jim@meyering.net> + + * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical + definitions. + (nl_get_alt_digit) [! defined my_strftime]: Define. + (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of + _nl_get_alt_digit and _nl_get_walt_digit. + + * lib/strftime.c (my_strftime): Merge in locale-related changes from + libc. These changes have no effect outside of _LIBC. + +2003-04-10 Bruno Haible <bruno@clisp.org> + + * modules/findprog: New file. + * MODULES.html.sh (func_all_modules): Add it. + +2003-04-10 Bruno Haible <bruno@clisp.org> + + * m4/findprog.m4: New file. + * m4/eaccess.m4: New file. + +2003-04-10 Bruno Haible <bruno@clisp.org> + + * lib/findprog.h: New file, from GNU gettext. + * lib/findprog.c: New file, from GNU gettext. + +2003-04-05 Jim Meyering <jim@meyering.net> + + Merge changes from Coreutils. + + * lib/exclude.h (PARAMS): Remove definition and uses. + * lib/exclude.c: Remove uses of `PARAMS'. + + * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test. + Add test-cases for DOS filenames. Declare program_name. + (main): Set up program_name. Patch by Rich Dawe. + + * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any + error from mntctl. + Use mntctl's return value to drive the entry-processing loop, since + we can't rely on the value of the vmt_length member in the last + entry. On some systems doing so could result in exhausting + virtual memory. Based in part on a patch from Mike Jetzer. + +2003-04-04 Bruno Haible <bruno@clisp.org> + + * modules/linebreak: New file. + * MODULES.html.sh (func_all_modules): Add it. + +2003-04-04 Bruno Haible <bruno@clisp.org> + + * m4/linebreak.m4: New file. + +2003-04-04 Bruno Haible <bruno@clisp.org> + + * lib/linebreak.h: New file, from GNU gettext. + * lib/linebreak.c: New file, from GNU gettext with slight + modifications. + * lib/lbrkprop.h: New file, from GNU gettext. + +2003-04-03 Bruno Haible <bruno@clisp.org> + + * modules/utf8-ucs4: New file. + * modules/utf16-ucs4: New file. + * modules/ucs4-utf8: New file. + * modules/ucs4-utf16: New file. + * MODULES.html.sh (func_all_modules): Add them. + +2003-04-03 Bruno Haible <bruno@clisp.org> + + * m4/utf-ucs4.m4: New file. + * m4/ucs4-utf.m4: New file. + +2003-04-03 Bruno Haible <bruno@clisp.org> + + * lib/utf8-ucs4.h: New file, from GNU gettext. + * lib/utf16-ucs4.h: New file, from GNU gettext. + * lib/ucs4-utf8.h: New file, from GNU gettext. + * lib/ucs4-utf16.h: New file, from GNU gettext. + +2003-04-02 Bruno Haible <bruno@clisp.org> + + * modules/binary-io: New file. + * MODULES.html.sh (func_all_modules): Add it. + +2003-04-02 Bruno Haible <bruno@clisp.org> + + * lib/binary-io.h: New file, from GNU gettext. + +2003-04-01 Bruno Haible <bruno@clisp.org> + + * modules/pathname: New file. + * MODULES.html.sh (func_all_modules): Add it. + +2003-04-01 Bruno Haible <bruno@clisp.org> + + * lib/pathname.h: New file, from GNU gettext. + * lib/concatpath.c: New file, from GNU gettext. + +2003-03-30 Bruno Haible <bruno@clisp.org> + + * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown(). + +2003-03-30 Bruno Haible <bruno@clisp.org> + + * lib/copy-file.c (copy_file_preserving): Don't set owner if the + function chown() doesn't exist. + +2003-03-28 Bruno Haible <bruno@clisp.org> + + * modules/copy-file: New file. + * MODULES.html.sh (func_all_modules): Add it. + +2003-03-28 Bruno Haible <bruno@clisp.org> + + * m4/copy-file.m4: New file. + +2003-03-28 Bruno Haible <bruno@clisp.org> + + * lib/copy-file.h: New file, from GNU gettext. + * lib/copy-file.c: New file, from GNU gettext. + +2003-03-18 Jim Meyering <jim@meyering.net> + + * lib/quote.c (quote_n): Fix typo in comment. + +2003-03-18 Bruno Haible <bruno@clisp.org> + + * m4/onceonly.m4: Use m4_defn instead of defn, for better error + checking. + * m4/onceonly_2_57.m4: Likewise. + +2003-03-17 Bruno Haible <bruno@clisp.org> + + * m4/onceonly.m4: Require autoconf 2.54 or newer. + (m4_quote): Remove macro. + * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer. + +2003-03-14 Jim Meyering <jim@meyering.net> + + Merge changes from Coreutils. + * lib/obstack.h (obstack_object_size): Declare temporary, __o, + to be const, in order to avoid warnings. + (obstack_room): Likewise. + (obstack_empty_p): Likewise. + +2003-03-14 Bruno Haible <bruno@clisp.org> + + * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, + AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly. + +2003-03-13 Paul Eggert <eggert@twinsun.com> + + Merge changes from Bison. + * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to + (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5 + when compiling Bison 1.875's `bitset bset = obstack_alloc + (bobstack, bytes);'. Problem reported by Nelson H. F. Beebe. + * lib/hash.c: Include <stdbool.h> unconditionally. + +2003-03-13 Paul Eggert <eggert@twinsun.com> + + * m4/onceonly.m4 (m4_quote): New macro. + (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE): + Quote AC_FOREACH variable-expansions properly. + +2003-03-13 Paul Eggert <eggert@twinsun.com> + + * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version. + +2003-03-09 Paul Eggert <eggert@twinsun.com> + + * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't. + Reported by Bruce Becker; see: + http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html + +2003-03-03 Paul Eggert <eggert@twinsun.com> + Bruno Haible <bruno@clisp.org> + + * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1. + Reported by John Hughes, see + http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html + +2003-02-20 Bruno Haible <bruno@clisp.org> + + * MODULES.html.sh (func_all_modules): Add poll. + +2003-02-19 Paolo Bonzini <bonzini@gnu.org> + + * modules/poll: New file. + +2003-02-19 Paolo Bonzini <bonzini@gnu.org> + + * lib/poll_.h: New file. + * lib/poll.c: New file. + +2003-02-19 Paolo Bonzini <bonzini@gnu.org> + + * m4/poll.m4: New file. + +2003-02-18 Paolo Bonzini <bonzini@gnu.org> + + * modules/mathl: New file. + +2003-02-18 Paolo Bonzini <bonzini@gnu.org> + + * lib/mathl.h: New file. + * lib/acosl.c: New file. + * lib/asinl.c: New file. + * lib/atanl.c: New file. + * lib/ceill.c: New file. + * lib/cosl.c: New file. + * lib/expl.c: New file. + * lib/floorl.c: New file. + * lib/frexpl.c: New file. + * lib/ldexpl.c: New file. + * lib/logl.c: New file. + * lib/sincosl.c: New file. + * lib/sinl.c: New file. + * lib/sqrtl.c: New file. + * lib/tanl.c: New file. + * lib/trigl.c: New file. + * lib/trigl.h: New file. + +2003-02-18 Paolo Bonzini <bonzini@gnu.org> + + * m4/mathl.m4: New file. + +2003-02-18 Bruno Haible <bruno@clisp.org> + + * MODULES.html.sh (func_all_modules): Add mathl. + +2003-02-17 Bruno Haible <bruno@clisp.org> + + * modules/mkdtemp: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-02-17 Bruno Haible <bruno@clisp.org> + + * m4/mkdtemp.m4: New file, from GNU gettext with modifications. + +2003-02-17 Bruno Haible <bruno@clisp.org> + + * lib/mkdtemp.h: New file, from GNU gettext. + * lib/mkdtemp.c: New file, from GNU gettext. + +2003-02-02 Jim Meyering <jim@meyering.net> + + * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in + e.g. glibc-2.2.93. + +2003-01-31 Bruno Haible <bruno@clisp.org> + + * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to + 'rpl_rename'. + * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to + 'rpl_strnlen'. + * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to + 'rpl_strtod'. + * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to + 'rpl_utime'. + +2003-01-31 Bruno Haible <bruno@clisp.org> + + * lib/rename.c: #undef rename before defining rpl_rename. + * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen. + +2003-01-30 Bruno Haible <bruno@clisp.org> + + * modules/vasnprintf, modules/vasprintf: New modules. + * MODULES.html.sh (func_all_modules): Add them. + +2003-01-30 Bruno Haible <bruno@clisp.org> + + * m4/signed.m4: New file, from GNU gettext. + * m4/longdouble.m4: New file, from GNU gettext. + * m4/wchar_t.m4: New file, from GNU gettext. + * m4/wint_t.m4: New file, from GNU gettext. + * m4/vasnprintf.m4: New file. + * m4/vasprintf.m4: New file. + +2003-01-30 Bruno Haible <bruno@clisp.org> + + * lib/printf-args.h: New file, from GNU gettext. + * lib/printf-args.c: New file, from GNU gettext. + * lib/printf-parse.h: New file, from GNU gettext. + * lib/printf-parse.c: New file, from GNU gettext. + * lib/vasnprintf.h: New file, from GNU gettext. + * lib/vasnprintf.c: New file, from GNU gettext. + * lib/asnprintf.c: New file, from GNU gettext. + * lib/vasprintf.h: New file, from GNU gettext with modifications. + * lib/vasprintf.c: New file, from GNU gettext. + * lib/asprintf.c: New file, from GNU gettext. + +2003-01-29 Bruno Haible <bruno@clisp.org> + + * modules/stpncpy: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-01-29 Bruno Haible <bruno@clisp.org> + + * m4/stpncpy.m4: New file. + +2003-01-29 Bruno Haible <bruno@clisp.org> + + * lib/stpncpy.h: New file, from GNU gettext with modifications. + * lib/stpncpy.c: New file, from GNU gettext with modifications. + +2003-01-28 Bruno Haible <bruno@clisp.org> + + * modules/c-ctype: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-01-28 Bruno Haible <bruno@clisp.org> + + * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by + Paul Eggert. + * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by + Paul Eggert. + +2003-01-27 Bruno Haible <bruno@clisp.org> + + * modules/xsetenv: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-01-27 Bruno Haible <bruno@clisp.org> + + * lib/xsetenv.h: New file, from GNU gettext. + * lib/xsetenv.c: New file, from GNU gettext. + +2003-01-23 Jim Meyering <jim@meyering.net> + + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this + from working on systems without dirfd (at least Irix and OSF1/Tru64). + +2003-01-23 Bruno Haible <bruno@clisp.org> + + * modules/minmax: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-01-23 Bruno Haible <bruno@clisp.org> + + * lib/minmax.h: New file, from GNU gettext, with comments from Paul + Eggert. + +2003-01-22 Bruno Haible <bruno@clisp.org> + + * modules/exit: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-01-22 Bruno Haible <bruno@clisp.org> + + * lib/exit.h: New file, from GNU gettext. + +2003-01-19 Bruno Haible <bruno@clisp.org> + + * gnulib-tool: Recognize option --extract-maintainer. + (func_get_maintainer): New function. + * modules/*: Add Maintainer entry. + +2003-01-16 Jim Meyering <jim@meyering.net> + + * m4/regex.m4: The `regex' struct is both input and output. + Initialize it before each use. Patch by Tim Waugh. + +2003-01-16 Bruno Haible <bruno@clisp.org> + + * MODULES.html.sh: Add a table of contents. Add the module name as + leftmost column. Add hyperlinks. + +2003-01-15 Bruno Haible <bruno@clisp.org> + + * m4/md5.m4 (gl_MD5): Require AC_C_INLINE. + +2003-01-15 Bruno Haible <bruno@clisp.org> + + * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix. + * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL + suffix. + +2003-01-15 Bruno Haible <bruno@clisp.org> + + * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites. + +2003-01-15 Bruno Haible <bruno@clisp.org> + + * lib/stpcpy.h (stpcpy): Use ANSI C function declarations. + * lib/strcase.h (strcasecmp, strncasecmp): Likewise. + +2003-01-14 Jim Meyering <jim@meyering.net> + + * lib/same.c (same_name): Tweak a comment. + +2003-01-14 Bruno Haible <bruno@clisp.org> + + * lib/same.c (same_name): Reorder tests so as to avoid calling stat() + when a string comparison is sufficient. + +2003-01-14 Bruno Haible <bruno@clisp.org> + + * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not + 'unsigned int'. + +2003-01-14 Bruno Haible <bruno@clisp.org> + + * lib/hash-pjw.c: Add comment about low quality of this function. + +2003-01-13 Bruno Haible <bruno@clisp.org> + + * modules/stpcpy: Distribute lib/stpcpy.h. + * modules/setenv: Depend on alloca. Distribute lib/setenv.h. + +2003-01-13 Bruno Haible <bruno@clisp.org> + + * modules/*: Add a description. + * modules/strpbrk: Fix Makefile.am snippet. + * modules/strtoimax: Fix dependencies. + * modules/strtoumax: Likewise. + +2003-01-13 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS. + * modules/alloca (Makefile.am): All object files depend on alloca.h. + * modules/stdbool (Makefile.am): All object files depend on stdbool.h. + +2003-01-13 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_create_testdir): Store config/* files in the main + directory. + * config.rpath: Move to ... + * config/config.rpath: ... here. + * modules/gettext: Contains config/config.rpath, not config.rpath. + * modules/iconv: Likewise. + +2003-01-12 Paul Eggert <eggert@twinsun.com> + + Finish renaming getstr -> getdelim2 and readline -> readlinebuffer, + to avoid collisions with libcurses and libreadline. + + * m4/getstr.m4: Remove. + * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC. + +2003-01-12 Paul Eggert <eggert@twinsun.com> + + Finish renaming getstr -> getdelim2 and readline -> readlinebuffer, + to avoid collisions with libcurses and libreadline. + + * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h. + * lib/getstr.h, getstr.c: Remove. + * lib/getline.c: Include "getline.h", to check interface. + Move body of old getstr.c here: this defines MIN_CHUNK and + declares getdelim2, which is renamed from getstr. + (getline, getdelim): Adjust to renaming of getstr -> getdelim2. + + * lib/linebuffer.c (readlinebuffer): Renamed from readline. + All uses changed. + * lib/linebuffer.h: Likewise. + (readline): Remove backward-compatibility macro. + +2003-01-12 Paul Eggert <eggert@twinsun.com> + + Finish renaming getstr -> getdelim2 and readline -> readlinebuffer, + to avoid collisions with libcurses and libreadline. + * getstr: Remove. + * MODULES.html.sh: Remove getstr. + * modules/getline: Depend on unlocked-io, not getstr. + +2003-01-12 Jim Meyering <jim@meyering.net> + + * lib/makepath.c: Don't test HAVE_ERRNO_H. It's not necessary. + +2003-01-10 Bruno Haible <bruno@clisp.org> + + * modules/alloca: Change Makefile.am requirements. Simplify Include + requirements. Add lib/alloca_.h to file list. + +2003-01-10 Bruno Haible <bruno@clisp.org> + + * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H. + +2003-01-10 Bruno Haible <bruno@clisp.org> + + * lib/alloca_.h: New file. + * lib/getdate.y: Unconditionally include alloca.h. + * lib/makepath.c: Likewise. + * lib/setenv.c: Likewise. + * lib/userspec.c: Likewise. + +2003-01-09 Karl Berry <karl@gnu.org> + + * MODULES.html.sh: include `dirname $0` in PATH, to find + gnulib-tool. + +2003-01-09 Bruno Haible <bruno@clisp.org> + + * modules/stdbool: Change configure.ac, Makefile.am requirements. + Simplify Include requirements. Add lib/stdbool.h.in to file list. + +2003-01-09 Bruno Haible <bruno@clisp.org> + + * m4/stdbool.m4 (AM_STDBOOL_H): New macro. + +2003-01-09 Bruno Haible <bruno@clisp.org> + + * lib/stdbool.h.in: New file. + +2003-01-09 Bruno Haible <bruno@clisp.org> + + * gnulib-tool (func_all_modules): Ignore files ending in ~. + * MODULES.html.sh: Likewise. + +2003-01-08 Jim Meyering <jim@meyering.net> + + * lib/full-write.c: Undefine and define-away `const' after inclusion + of errno.h, not before. Suggestion from Bruno Haible. + +2003-01-08 Bruno Haible <bruno@clisp.org> + + * modules/full-read: Depend on full-write. + +2003-01-08 Bruno Haible <bruno@clisp.org> + + * lib/safe-read.c: Include specification header first, to ensure its + selfcontainedness. + * lib/full-write.c: Likewise. + +2003-01-07 Jim Meyering <jim@meyering.net> + + * lib/full-write.c: Rework so that it may serve to define full_read, + too. + * lib/full-read.c: Simply #define FULL_READ and include full-write.c. + +2003-01-07 Bruno Haible <bruno@clisp.org> + + * lib/strtoimax.c: Include <stdint.h> as an alternative to + <inttypes.h>. + * lib/xstrtol.h: Likewise. + * lib/xstrtoimax.c: Likewise. + * lib/xstrtoumax.c: Likewise. + * lib/human.h: Likewise. + + * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error + on systems that have <inttypes.h> but not <stdint.h>. + +2003-01-07 Bruno Haible <bruno@clisp.org> + + * MODULES.html.sh: Add copyright notice. + (missed_files): Omit CVS directory entries. + (func_module): Make it work with sed-3.02. + * MODULES.txt: Remove file. + +2003-01-06 Jim Meyering <jim@meyering.net> + + * lib/version-etc.c: Update year in translatable copyright string. + +2003-01-03 Karl Berry <karl@gnu.org> + + * config/config.{guess,sub}: update from prep. + +2003-01-02 Karl Berry <karl@gnu.org> + + * doc/COPYING.DOC: belatedly updated to 1.2. + +2003-01-01 Karl Berry <karl@gnu.org> + + * gnulib-tool (func_verify_module): report module name $module in + error message, not $1. + * gnulib-tool (create-testdir): don't complain if destdir couldn't + be created, only if it doesn't exist. + * gnulib-tool (last_checkin_date): don't expand the $Date here. + +2002-12-31 Paul Eggert <eggert@twinsun.com> + + * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP. + +2002-12-31 Paul Eggert <eggert@twinsun.com> + + * lib/memcoll.c (memcoll): Fall back on a simple algorithm using + memcmp if strcoll doesn't work. + +2002-12-31 Bruno Haible <bruno@clisp.org> + + * lib/utime.c (utime_null): No need to call ftruncate if the file was + nonempty. + +2002-12-31 Bruno Haible <bruno@clisp.org> + + * lib/memcoll.c (STRCOLL): New macro. + (memcoll): Use it. + +2002-12-31 Bruno Haible <bruno@clisp.org> + + * lib/localcharset.h: New file. + * lib/localcharset.c: Include it. + * lib/unicodeio.c: Likewise. + +2002-12-31 Bruno Haible <bruno@clisp.org> + + * lib/getstr.h (getstr): Define, to avoid clash with libcurses. + * lib/linebuffer.h (readline): Define, to avoid clash with libreadline. + +2002-12-31 Bruno Haible <bruno@clisp.org> + + * lib/getline.h: Include <stddef.h>, for size_t. + + * lib/unicodeio.h: Include <stddef.h>, for size_t. + * lib/unicodeio.c: Don't include <stddef.h>. + +2002-12-31 Bruno Haible <bruno@clisp.org> + + * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not + HAVE_TM_ZONE. + +2002-12-24 Karl Berry <karl@gnu.org> + + * config/config.guess: update from prep. + +2002-12-24 Bruno Haible <bruno@clisp.org> + + General infrasructure. + * m4/README: Rewritten. + * m4/onceonly.m4: New file. + * m4/onceonly_2_57.m4: New file. + + Module atexit. + * m4/atexit.m4: New file. + + Module strtod. + * m4/strtod.m4: New file. + + Module strtol. + * m4/strtol.m4: New file. + + Module strtoul. + * m4/strtoul.m4: New file. + + Module memchr. + * m4/memchr.m4: New file. + + Module memcmp. + * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro. + (jm_FUNC_MEMCMP): Invoke it. + + Module memcpy. + * m4/memcpy.m4: New file. + + Module memmove. + * m4/memmove.m4: New file. + + Module memset. + * m4/memset.m4: New file. + + Module strcspn. + * m4/strcspn.m4: New file. + + Module strpbrk. + * m4/strpbrk.m4: New file. + + Module strstr. + * m4/strstr.m4: New file. + + Module strerror. + * m4/strerror.m4: New file. + + Module mktime. + * m4/mktime.m4: Renamed from jm-mktime.m4. + (gl_PREREQ_MKTIME): New macro. + (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME. + + Module malloc. + * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro. + (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC. + Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it. + + Module realloc. + * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro. + (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC. + Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it. + + Module strftime. + * m4/tm_gmtoff.m4: New file, extracted from strftime.m4. + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME. + Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and + gl_TM_GMTOFF. + (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros. + + Module xalloc. + * m4/xalloc.m4: New file. + + Module alloca. + * m4/alloca.m4: New file. + + Module putenv. + * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro. + (jm_FUNC_PUTENV): Invoke it. + + Module setenv. + * m4/setenv.m4 (gt_FUNC_SETENV): New macro. + (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4 + when invoked twice. + (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old + gt_FUNC_SETENV. + + Module memrchr. + * m4/memrchr.m4: New file. + + Module stpcpy. + * m4/stpcpy.m4: New file. + + Module strcase. + * m4/strcase.m4: New file. + + Module strdup. + * m4/strdup.m4: New file. + + Module strnlen. + * m4/strnlen.m4: New file. + + Module strndup. + * m4/strndup.m4: New file. + + Module xstrtod. + * m4/xstrtod.m4: New file. + + Module xstrtol. + * m4/xstrtol.m4: New file. + + Module getdate. + * m4/getdate.m4: New file. + + Module unlocked-io. + * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4. + (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros. + * m4/jm-glibc-io.m4n: Remove file. + + Module long-options. + * m4/long-options.m4: New file. + + Module md5. + * m4/md5.m4: New file. + + Module sha. + * m4/sha.m4: New file. + + Module getstr. + * m4/getstr.m4: New file. + + Module getline. + * m4/getline.m4 (gl_PREREQ_GETLINE): New macro. + (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not + <sys/types.h>, for size_t. Use the function name gnu_getline, not + simply getline. Infoke gl_PREREQ_GETLINE. + + Module obstack. + * m4/obstack.m4: New file. + + Module hash. + * m4/hash.m4: New file. + + Module readtokens. + * m4/readtokens.m4: New file. + + Module strverscmp. + * m4/strverscmp.m4: New file. + + Module stdbool. + * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for + OSF/1. + + Module strtoll. + * m4/strtoll.m4: New file. + + Module strtoull. + * m4/strtoull.m4: New file. + + Module strtoimax. + * m4/strtoimax.m4: New file. + + Module strtoumax. + * m4/strtoumax.m4: New file. + + Module xstrtoimax. + * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from + jm_AC_PREREQ_XSTRTOIMAX. + Moved the strtol prerequisites to strtol.m4. + Moved the strtoll prerequisites to strtoll.m4. + Moved the strtoimax prerequisites to strtoimax.m4. + + Module xstrtoumax. + * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from + jm_AC_PREREQ_XSTRTOUMAX. + Moved the strtoul prerequisites to strtoul.m4. + Moved the strtoull prerequisites to strtoull.m4. + Moved the strtoumax prerequisites to strtoumax.m4. + + Module chown. + * m4/chown.m4 (gl_PREREQ_CHOWN): New macro. + (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN. + + Module dup2. + * m4/dup2.m4: New file. + + Module ftruncate. + * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro. + (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE. + + Module getgroups. + * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro. + (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS. + + Module gettimeofday. + * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro. + (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke + gl_PREREQ_GETTIMEOFDAY. + + Module mkdir. + * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro. + (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR. + + Module mkstemp. + * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro. + (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke + jm_AC_TYPE_UINTMAX_T. + (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME. + + Module stat. + * m4/stat.m4 (gl_PREREQ_STAT): New macro. + (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT. + + Module lstat. + * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro. + (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT. + + Module timespec. + * m4/timespec.m4 (gl_TIMESPEC): New macro. + (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>. + * m4/st_mtim.m4: Indentation. + + Module nanosleep. + * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro. + (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke + gl_PREREQ_NANOSLEEP. + + Module regex. + * m4/regex.m4 (jm_PREREQ_REGEX): New macro. + (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX. + (gl_REGEX): New macro. + + Module rename. + * m4/rename.m4 (gl_PREREQ_RENAME): New macro. + (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME. + + Module rmdir. + * m4/rmdir.m4: New file. + + Module utime. + * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros. + * m4/utime.m4 (gl_PREREQ_UTIME): New macro. + (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME. + + Module dirname. + * m4/dirname.m4: New file. + + Module getopt. + * m4/getopt.m4: New file. + + Module unistd-safer. + * m4/unistd-safer.m4: New file. + + Module fnmatch. + * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit() + declaration. + (gl_PREREQ_FNMATCH_EXTRA): New macro. + (gl_FUNC_FNMATCH_POSIX): New macro. + (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke + gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not + simply fnmatch. + + Module exclude. + * m4/exclude.m4: New file. + + Module human. + * m4/human.m4: New file. + + Module acl. + * m4/acl.m4: Nop. + + Module backupfile. + * m4/backupfile.m4: New file. + * m4/d-ino.m4: Indentation. + + Module fsusage. + * m4/fsusage.m4 (gl_FSUSAGE): New macro. + (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac. + (gl_PREREQ_FSUSAGE_EXTRA): New macro. + + Module dirfd. + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP + requirements. + + Module euidaccess. + * m4/euidaccess.m4: New file. + + Module file-type. + * m4/file-type.m4: New file. + + Module fileblocks. + * m4/fileblocks.m4: New file. + + Module filemode. + * m4/filemode.m4: New file. + + Module isdir. + * m4/isdir.m4: New file. + + Module lchown. + * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro. + (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN. + + Module makepath. + * m4/makepath.m4: New file. + + Module modechange. + * m4/modechange.m4: New file. + + Module mountlist. + * m4/mountlist.m4: New file. + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros. + Indentation. + + Module path-concat. + * m4/path-concat.m4: New file. + + Module pathmax. + * m4/pathmax.m4: New file. + + Module same. + * m4/same.m4: New file. + + Module save-cwd. + * m4/save-cwd.m4: New file. + + Module savedir. + * m4/savedir.m4: New file. + + Module xgetcwd. + * m4/xgetcwd.m4: New file. + * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros. + + Module xreadlink. + * m4/xreadlink.m4: New file. + + Module safe-read. + * m4/safe-read.m4: New file. + + Module safe-write. + * m4/safe-write.m4: New file. + + Module closeout. + * m4/closeout.m4: New file. + + Module stdio-safer. + * m4/stdio-safer.m4: New file. + + Module getpass. + * m4/getpass.m4: New file. + + Module getugroups. + * m4/getugroups.m4: New file. + + Module group-member. + * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro. + (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER. + + Module idcache. + * m4/idcache.m4: New file. + + Module userspec. + * m4/userspec.m4: New file. + + Module gettime. + * m4/clock_time.m4: New file. + * m4/gettime.m4: New file. + + Module settime. + * m4/settime.m4: New file. + + Module posixtm. + * m4/posixtm.m4: New file. + + Module gethostname. + * m4/gethostname.m4: New file. + + Module canon-host. + * m4/canon-host.m4: New file. + + Module gettext. + * m4/codeset.m4: New file, from gettext-0.11.5. + * m4/gettext.m4: New file, from gettext-0.11.5. + * m4/glibc21.m4: New file, from gettext-0.11.5. + * m4/iconv.m4: New file, from gettext-0.11.5. + * m4/intdiv0.m4: New file, from gettext-0.11.5. + * m4/inttypes-pri.m4: New file, from gettext-0.11.5. + * m4/inttypes.m4: New file, from gettext-0.11.5. + * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications. + * m4/isc-posix.m4: New file, from gettext-0.11.5. + * m4/lcmessage.m4: New file, from gettext-0.11.5. + * m4/lib-ld.m4: New file, from gettext-0.11.5. + * m4/lib-link.m4: New file, from gettext-0.11.5. + * m4/lib-prefix.m4: New file, from gettext-0.11.5. + * m4/progtest.m4: New file, from gettext-0.11.5. + * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications. + * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications. + * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications. + + Module localcharset. + * m4/localcharset.m4: New file. + + Module hard-locale. + * m4/hard-locale.m4: New file. + + Module mbswidth. + * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use + onceonly macros. + * m4/mbrtowc.m4: Add comment. + + Module memcasecmp. + * m4/memcasecmp.m4: New file. + + Module memcoll. + * m4/memcoll.m4: New file. + + Module unicodeio. + * m4/unicodeio.m4: New file. + + Module rpmatch. + * m4/rpmatch.m4: New file. + + Module yesno. + * m4/yesno.m4: New file. + + Module exitfail. + * m4/exitfail.m4: New file. + + Module c-stack. + * m4/c-stack.m4 (gl_C_STACK): New macro. + (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros. + + Module error. + * m4/error.m4 (gl_ERROR): New macro. + (jm_PREREQ_ERROR): Use onceonly macros. + + Module fatal. + * m4/fatal.m4: New file. + + Module getloadavg. + * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros. + (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros. + + Module getpagesize. + * m4/getpagesize.m4: New file. + + Module getusershell. + * m4/getusershell.m4: New file. + + Module physmem. + * m4/physmem.m4: New file. + + Module posixver. + * m4/posixver.m4: New file. + + Module quotearg. + * m4/quotearg.m4: New file. + + Module quote. + * m4/quote.m4: New file. + + Module readutmp. + * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4. + + Module sig2str. + * m4/sig2str.m4: New file. + + Other. + * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to + ulonglong.m4. + * m4/intmax_t.m4: New file. + * m4/d-type.m4: Indentation. + * m4/jm-macros.m4: Update. + * m4/prereq.m4 (jm_PREREQ): Update. + (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4. + (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4. + (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4. + (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4. + (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4. + (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4. + (jm_PREREQ_HASH): Remove, obsoleted by hash.m4. + (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4. + (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4. + (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4. + (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4. + (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4. + (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4. + (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4. + (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4. + (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4. + (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4. + (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4. + * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros. + +2002-12-24 Bruno Haible <bruno@clisp.org> + + * MODULES.txt: Update according to m4/ changes. + + Module gettext. + * config.rpath: New file, from gettext-0.11.5. + + * modules/*: New module descriptions. + * gnulib-tool: New file. + * MODULES.html.sh: New file. + +2002-12-21 Karl Berry <karl@gnu.org> + + * doc/fdl.texi: update to version 1.2. + +2002-12-19 Karl Berry <karl@gnu.org> + + * config/config.guess: update from prep. + +2002-12-18 Bruno Haible <bruno@clisp.org> + + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r. + * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise. + +2002-12-17 Bruno Haible <bruno@clisp.org> + + * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h, + stdlib.h, string.h. + +2002-12-17 Bruno Haible <bruno@clisp.org> + + * lib/canon-host.c (strdup): Remove unused declaration. + + * lib/fsusage.c: Include full_read.h. + (get_fs_usage): Use full_read instead of safe_read. + + * lib/utime.c (utime_null): Use SAFE_READ_ERROR. + +2002-12-12 Karl Berry <karl@gnu.org> + + * config/config.guess: update from prep. + +2002-12-11 Bruno Haible <bruno@clisp.org> + + * m4/setenv.m4: New file, from gettext-0.11.5. + +2002-12-11 Bruno Haible <bruno@clisp.org> + + * lib/setenv.h: Rewritten to cope with systems that have setenv() but + not unsetenv(). + * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following + modifications: + + 2002-12-11 Bruno Haible <bruno@clisp.org> + + * setenv.c (alloca): Fall back to malloc. + (freea): New macro. + (setenv): Use freea() to free memory allocated with alloca(). + + 2002-11-13 Bruno Haible <bruno@clisp.org> + + * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C + function declarations. + * unsetenv.c (unsetenv): Likewise. + + 2002-03-04 Bruno Haible <bruno@clisp.org> + + Portability to AIX 4.3.3. + * unsetenv.c: New file, extracted from setenv.c. + * setenv.c: Move the unsetenv() function to unsetenv.c. + + 2001-12-20 Bruno Haible <bruno@clisp.org> + + * setenv.c (__add_to_environ): Don't call realloc(NULL,...), + use malloc instead. For SunOS 4. + + 2001-12-11 Bruno Haible <bruno@clisp.org> + + * setenv.c: Declare alloca. + (compar_fn_t): New typedef. + (KNOWN_VALUE, STORE_VALUE): Use it. + + * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c, + setenv.h. + +2002-12-10 Paul Eggert <eggert@twinsun.com> + + Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7. + * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS): + Choose values that are less likely to collide with system fnmatch + options. + * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not + defined (e.g., a pure POSIX system). + (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME + instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems. + +2002-12-06 Paul Eggert <eggert@twinsun.com> + + Undo the 2001-07-02 change for jm-glibc-io, as it was too much of + a pain in practice to deal with generated m4 files. This change + goes together with the 2002-12-04 unlocked-io.h change in ../lib. + + * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n + and jm-glibc-io.m4, as they are no longer a special case. + * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the + kludge and the auto-generation stuff. Check only whether the + functions are declared, not whether they exist, since older hosts + that don't declare the functions can't use the optimization anyway. + +2002-12-06 Jim Meyering <jim@meyering.net> + + * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'. + + Merge in changes from libc's misc/error.c, in preparation + for the merge of gnulib's changes back into libc. + + * lib/error.c (_): Define only if not already defined. + Move definition to follow all #include directives. + Include unlocked-io.h only if !_LIBC. + [_LIBC]: Include <libio/libioP.h>. + [USE_IN_LIBIO]: Include <libio/iolibio.h> + (fflush): Tweak definition to use INTUSE. + (putc): Define. + +2002-12-05 Paul Eggert <eggert@twinsun.com> + + * lib/alloca.c [defined emacs]: Include "lisp.h". + (xalloc_die) [defined emacs]: New macro. + (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE. + [! defined emacs]: Include <xalloc.h>. + (POINTER_TYPE) [!defined POINTER_TYPE]: New macro. + (pointer): Typedef to POINTER_TYPE *. + (malloc): Remove decl; we now always use xmalloc. + (alloca): Use old-style definition, since Emacs needs this. + Check for arithmetic overflow when computing combined size. + +2002-12-04 Paul Eggert <eggert@twinsun.com> + + Do not generate unlocked-io.h automatically, since it's easier to + maintain it by hand. + + * lib/unlocked-io.h: New file, from GNU diffutils, + but with proper copyright notice and attribution. + * lib/gen-uio: Remove. + * lib/Makefile.am: Add copyright notice. + (libfetish_a_SOURCES): Add unlocked-io.h. + (BUILT_SOURCES, all-local): Remove unlocked-io.h. + (DISTCLEANFILES, io_functions): Remove macros. + (EXTRA_DIST): Remove gen_uio. + (unlocked-io.h): Remove rule. + +2002-12-04 Jim Meyering <jim@meyering.net> + + Reflect the fact that stat.c and lstat.c are no longer generated. + * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c. + (DISTCLEANFILES): Likewise. + (EXTRA_DIST): Likewise. + (all_local): Don't depend on stat.c or lstat.c. + (stat.c, lstat.c): Remove rules. + (EXTRA_DIST): Remove xstat.in. + + * lib/xstat.in: Remove file. Contents moved into stat.c. + * lib/stat.c: New file. Contents mostly from xstat.in. + * lib/stat.c: Rework so that it may serve to define rpl_lstat, too. + * lib/lstat.c: New file. Simply #define LSTAT and include stat.c. + + * lib/safe-read.c: Rework so that it may serve to define safe_write, + too. + * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c. + +2002-12-03 Jim Meyering <jim@meyering.net> + + * lib/safe-read.c, safe-write.c: Change variable names and comments, + but not semantics, to minimize the differences between these two files. + (safe_read): Change comment to mention SAFE_READ_ERROR. + + * lib/safe-read.c (IS_EINTR): Define. + (safe_read): Use IS_EINTR in place of in-function cpp directives. + +2002-12-02 Jim Meyering <jim@meyering.net> + + * lib/safe-read.c (EINTR): Define. + (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define. + (INT_MAX): Provide fallback. + (safe_read): Rewrite to iterate IFF the read fails with EINTR. + + * lib/safe-read.h (SAFE_READ_ERROR): Define. + +2002-12-02 Bruno Haible <bruno@clisp.org> + + * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): + Define, taken from safe-read.c. + (INT_MAX): Provide fallback. + (safe_write): Rewrite to iterate IFF the write fails with EINTR. + * lib/safe-write.h (SAFE_WRITE_ERROR): Define. + + * lib/safe-read.c (EINTR): Remove definition. + (safe_read): Don't use EINTR if it is absent. + +2002-12-01 Jim Meyering <jim@meyering.net> + + * lib/safe-read.c: (safe_read): Also exit the loop when read returns + zero. + (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define. + +2002-11-27 Paul Eggert <eggert@twinsun.com> + + * lib/hash.c (hash_lookup, hash_get_first, hash_get_next, + hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();' + with `if (! (value < limit)) abort ();', for readability. + +2002-11-26 Karl Berry <karl@gnu.org> + + * lib/strdup.c: copy from libc again, with jim's ok. + * lib/.cppi-disable: re-add strdup.c + +2002-11-25 Karl Berry <karl@gnu.org> + + * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c> + instead of "strtol.c". + +2002-11-25 Karl Berry <karl@gnu.org> + + * config/install-sh: update from automake for variable quoting, $0 in + error msgs, etc. + + * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry. + * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new + entry. + +2002-11-25 Jim Meyering <jim@meyering.net> + + * lib/mktime.c: Sync from libc, now that it has the latest fix. + +2002-11-24 Karl Berry <karl@gnu.org> + + * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c, + regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl. + +2002-11-24 Jim Meyering <jim@meyering.net> + + Update from coreutils: + + * lib/mktime.c: Merge in changes from libc. + + Avoid a link-time failure on some Linux systems. + * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static' + (otherwise). + (__mon_yday): Declare with the STATIC attribute. + (__mktime_internal): Likewise. + Based on a report from Greg Schafer. + +2002-11-23 Jim Meyering <jim@meyering.net> + + * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc: + Use `unsigned', not `int', as type of index. + + * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>. + + * lib/fsusage.c: Remove unneeded parentheses around operands of + `defined'. + +2002-11-22 Paul Eggert <eggert@twinsun.com> + + * lib/quotearg.h: Allow multiple inclusion by surrounding with + "#ifndef QUOTEARG_H_". Include <stddef.h>, for size_t, + so that we can be included first. + (PARAMS): Remove; we now assume C89 or later. All uses removed. + * lib/quotearg.c: Include quotearg.h immediately after config.h. + No need to include stddef.h or sys/types.h any more. + Surround local include files with "", not "<>". + Assume HAVE_LIMITS_H unconditionally, as we assume C89. + Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX, + HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS. + (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC. + (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT. + (ISPRINT): Remove; no longer needed now that we assume C89. + + (clone_quoting_options, quotearg_buffer, quotearg_n_options): + Preserve errno. + + (quotearg_buffer_restyled, quotearg_n, quotearg_n_style, + quotearg_char): Use SIZE_MAX rather than + (size_t) -1 when we are talking about "infinity". + + (quotearg_buffer_restyled): Fix bug when quoting trigraphs. + +2002-11-22 Paul Eggert <eggert@twinsun.com> + + * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards + hint that one should use `if (! x) abort ();' rather than `assert + (x);', and anyway it's one less thing to worry about configuring. + (hash_lookup, hash_get_first, hash_get_next, hash_find_entry, + hash_rehash, hash_insert): Use abort rather than assert. + +2002-11-22 Bruno Haible <bruno@clisp.org> + + * lib/safe-read.h: Assume C89. Add comments. + (safe_read): Change return type to size_t. + * lib/safe-read.c (safe_read): Change return type to size_t. Handle + byte counts > SSIZE_MAX correctly. + * lib/safe-write.h: New file. + * lib/safe-write.c: New file. + * lib/full-read.h: New file. + * lib/full-read.c: New file. + * lib/full-write.h: Assume C89. Add comments. + * lib/full-write.c: Include safe-write.h. + (full_write): Rewritten to use safe_write. + Suggested by Jim Meyering and Paul Eggert. + +2002-11-21 Jim Meyering <jim@meyering.net> + + * lib/strdup.c (strdup): Tweak comment and initial #if/#include. + + Merge in changes from the coreutils. + + 2002-09-25 Paul Eggert <eggert@twinsun.com> + * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include + <stdint.h>. + (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro. + (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than + int. Work more efficiently if X is the same width as uintmax_t. + Do not compare X to -1, to avoid bogus compiler warning. + (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast. + Don't assume that f_frsize and f_bsize are the same type. + + * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid + warning on FreeBSD. + + * lib/makepath.c (make_path): Restore umask *before* creating the final + component. + (make_path): Minor reformatting. + + * lib/xmalloc.c: Adjust to work with new autoconf macros, + AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef + HAVE_MALLOC/HAVE_REALLOC. + + * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as + dummy ones. At least on GNU/Linux systems, `auto' means something + else. + From Michael Stone. + +2002-11-21 Bruno Haible <bruno@clisp.org> + + Remove case insensitive option matching. + * lib/argmatch.h (argcasematch): Remove declaration. + (ARGCASEMATCH): Remove macro. + (__xargmatch_internal): Remove case_sensitive argument. + (XARGMATCH): Update. + (XARGCASEMATCH): Remove macro. + * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove + case_sensitive argument. + (argcasematch): Remove function. + (__xargmatch_internal): Remove case_sensitive argument. + (main): Use XARGMATCH instead of XARGCASEMATCH. + + * lib/xmalloc.c: Change compile-time error message. Add comment about + required autoconf version. + +2002-11-20 Paul Eggert <eggert@twinsun.com> + + Merge argmatch cleanups from Bison. Assume C89. + + * lib/argmatch.c: Include config.h here, not in argmatch.h. + Include stdlib.h, for EXIT_FAILURE. + Always include <string.h>, since we assume C89. + (EXIT_FAILURE): Remove pre-C89 bug workaround. + * lib/argmatch.h: Do not include <config.h> or <sys/types.h>. + Include <stddef.h> instead, since it's all we need for size_t. + (PARAMS): Remove. All uses removed. + (ARRAY_CARDINALITY): Do not bother to #undef. + (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg, + ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH): + Remove unnecessary parentheses. + (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH): + Insert necessary parentheses. + (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros. + (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT. + +2002-11-19 Bruno Haible <bruno@clisp.org> + + * lib/mbswidth.c: Include mbswidth.h right at the beginning. + * lib/mbswidth.h: Include <stddef.h>, for size_t. + + * lib/mbswidth.h (PARAMS): Remove macro. + (mbswidth, mbsnwidth): Use ANSI C function declarations. + * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise. + + * lib/gcd.h (PARAMS): Remove macro. + (gcd): Use ANSI C function declarations. + * lib/gcd.c (gcd): Likewise. + +2002-11-15 Bruno Haible <bruno@clisp.org> + + * lib/strcspn.c: Include <stddef.h>. + (strcspn): Use ANSI C function declaration. Change return type to + size_t. Use NULL. + * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>. + (strpbrk): Use NULL. + * lib/strpbrk.h (PARAMS): Remove macro. + (strpbrk): Use ANSI C function declaration. + * lib/strstr.c: Don't include <sys/types.h>. + * lib/strstr.h (PARAMS): Remove macro. + (strstr): Use ANSI C function declarations. + +2002-11-14 Karl Berry <karl@gnu.org> + + * config/mkinstalldirs: `do' on separate line, instead of + `for var; do'. + +2002-11-06 Bruno Haible <bruno@clisp.org> + + * lib/gcd.h (gcd): Change argument type to 'unsigned long'. + * lib/gcd.c (gcd): Likewise. + +2002-11-05 Bruno Haible <bruno@clisp.org> + + * lib/gcd.h: New file, from gettext-0.11.5. + * lib/gcd.c: New file, from gettext-0.11.5. + +2002-11-05 Bruno Haible <bruno@clisp.org> + + * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>. + * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>. + * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>. + * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>. + + * lib/argmatch.c: Include gettext.h instead of <locale.h> and + <libintl.h>. + * lib/makepath.c: Include gettext.h instead of <locale.h> and + <libintl.h>. + + * lib/closeout.c: Include gettext.h instead of <libintl.h>. + * lib/human.c: Include gettext.h instead of <libintl.h>. + * lib/quotearg.c: Include gettext.h instead of <libintl.h>. + * lib/rpmatch.c: Include gettext.h instead of <libintl.h>. + * lib/unicodeio.c: Include gettext.h instead of <libintl.h>. + * lib/userspec.c: Include gettext.h instead of <libintl.h>. + * lib/version-etc.c: Include gettext.h instead of <libintl.h>. + * lib/xmalloc.c: Include gettext.h instead of <libintl.h>. + (textdomain): Remove definition. + * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>. + + * lib/long-options.c: Remove include of <libintl.h> and definition of + _. + * lib/same.c: Remove include of <libintl.h> and definition of _. + +2002-11-04 Owen Taylor <otaylor@redhat.com> + + * lib/config.charset: A few additions for Solaris. + +2002-11-04 Bruno Haible <haible@clisp.cons.org> + + Make it possible to build libcharset with CC=gcc CFLAGS="-x c++". + * lib/localcharset.c (locale_charset): Declare as extern "C". + +2002-11-04 Bruno Haible <haible@clisp.cons.org> + + * lib/config.charset: msdos in uk_UA uses CP1125. + +2002-11-04 Bruno Haible <bruno@clisp.org> + + * lib/stpcpy.h: New file, from GNU gettext-0.11.5. + * lib/strcase.h: New file, from GNU gettext-0.11.5. + * lib/strpbrk.h: New file, from GNU gettext-0.11.5. + * lib/strstr.h: New file, from GNU gettext-0.11.5. + * lib/xgetcwd.h: New file, from GNU gettext-0.11.5. + +2002-11-04 Bruno Haible <bruno@clisp.org> + + * lib/localcharset.c (locale_charset): Don't return an empty string. + +2002-11-04 Bruno Haible <bruno@clisp.org> + + * lib/localcharset.c (get_charset_aliases): Add more Windows specific + aliases. + +2002-11-04 Bruno Haible <bruno@clisp.org> + + * lib/config.charset: Update for newest glibc. Add canonical names + ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS. + +2002-11-04 Bruno Haible <bruno@clisp.org> + + * lib/config.charset: Add support for NetBSD. + +2002-11-04 Bruno Haible <bruno@clisp.org> + + * lib/config.charset [msdosdjgpp]: For Russian, use CP866. + +2002-11-01 Bruno Haible <bruno@clisp.org> + + * configure.in: Add AC_CONFIG_AUX_DIR call. + (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile, + test/Makefile. + * Makefile.in (subdirs): Add m4, lib. Remove doc, test. + +2002-09-28 Karl Berry <karl@gnu.org> + + * config/srclist.txt: can't copy install-sh/mkinstalldirs from + installed automake until the next release, since changes have been + made. + +2002-09-25 Karl Berry <karl@gnu.org> + + * lib/strdup.c: copy from libc/string (via ../config/srclist*). + * lib/getopt*: copy from libc/posix. + * lib/gettext.h: copy from gettext. + * lib/.cppi-disable: add strdup.c, gettext.h. + +2002-09-25 Karl Berry <karl@gnu.org> + + * config/srclist.txt: enable gettext.h check. + * config/config.{guess,sub}: update from prep. + * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update + from automake 1.6.3. + See srclist*. + +2002-08-23 Stefan Monnier <monnier@cs.yale.edu> + + * regex.c (PATFETCH): Remove the translating fetch. + (PATFETCH_RAW): Rename to PATFETCH. + (set_image_of_range): New fun. + (SET_RANGE_TABLE_WORK_AREA): Use it. + (regex_compile): Don't translate the pattern chars so eagerly. + Only do it when inserting an `exactn' bytecode or when handling + a char-range. + (mutually_exclusive_p): Avoid empty statement. + +2002-07-06 Jim Meyering <meyering@lucent.com> + + * m4/README: Don't mention Makefile.am.in. + Outline how I've tested changes to .m4 files. Yep, it's a pain. + +2002-07-01 Jim Meyering <meyering@lucent.com> + + * lib/c-stack.c: Include sys/time.h. + From Volker Borchert. + +2002-06-26 Paul Eggert <eggert@twinsun.com> + + * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc. + +2002-06-26 Paul Eggert <eggert@twinsun.com> + + * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT): + New macro. Use it uniformly instead of + (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H). + It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1 + reported by Vin Shelton. + +2002-06-22 Paul Eggert <eggert@twinsun.com> + + * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]: + Do not assume SA_SIGINFO behavior. + Bug reported by Jim Meyering on NetBSD 1.5.2. + +2002-06-22 Jim Meyering <meyering@lucent.com> + + * m4/c-stack.m4: New file, from diffutils-2.8.2. + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK. + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE, + now that configure.ac uses AC_GNU_SOURCE. + (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU. + * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH. + + Update to latest tools. Suggestions from Paul Eggert. + * m4/stdbool.m4: New file, from diffutils-2.8.2. + * m4/gnu-source.m4: Update from diffutils-2.8.2. + * m4/fnmatch.m4: Likewise. + * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h) + to AC_HEADER_STDBOOL + +2002-06-22 Jim Meyering <meyering@lucent.com> + + * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about + redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h. + +2002-06-22 Jim Meyering <meyering@lucent.com> + + * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2. + + * lib/exitfail.c, exitfail.h: Likewise. + * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h. + + * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place + of fnmatch.h. + (EXTRA_DIST): Add fnmatch_loop.c. + (libfetish_a_SOURCES): Add c-stack.c and c-stack.h. + + * lib/fnmatch_loop.c: New file, from diffutils-2.8.2. + * lib/fnmatch.c: Update from diffutils-2.8.2. + * lib/fnmatch_.h: New file. From diffutils-2.8.2. + * lib/fnmatch.h: Remove file. + +2002-06-21 Jim Meyering <meyering@lucent.com> + + * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2. + * m4/mbrtowc.m4: Likewise. + + * m4/mbstate_t.m4: Update from diffutils-2.8.2. + * m4/mbswidth.m4: Reflect name change: + s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T. + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise. + + * m4/lib-link.m4: Update from gettext-0.11.2. + * m4/gettext.m4: Likewise. + + * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h. + From Alfred M. Szmidt. + +2002-06-18 Paul Eggert <eggert@twinsun.com> + + * lib/file-type.h: Report an error if neither S_ISREG nor + S_IFREG is defined, instead of using a test specific to glibc + 2.2. This should be safe, since POSIX requires S_ISREG and + Unix Version 7 had S_IFREG. We don't need to check for + <sys/types.h> since we don't use any symbols that it defines. + +2002-06-15 Richard Dawe <richdawe@bigfoot.com> + + * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than + $@-t, so that each temporary file name is unique and valid in the first + 8 characters, for operation under DOS. + +2002-06-15 Paul Eggert <eggert@twinsun.com> + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author. + +2002-06-15 Jim Meyering <meyering@lucent.com> + + Work even with DJGPP 2.03, which lacks support for symlinks. + From Richard Dawe. + * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK + is defined. + * lib/lchown.c (S_ISLNK): Likewise. + +2002-06-15 Jim Meyering <meyering@lucent.com> + + * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef. + For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h> + have been included before this file. + +2002-06-14 Jim Meyering <meyering@lucent.com> + + * lib/file-type.h: Use the version from diffutils-2.8.2. + * lib/file-type.c: Likewise. + +2002-06-07 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h. + They're needed at least for NetBSD 1.5.2. + ($statxfs_includes): Include those same headers. + ($statxfs_includes): Include sys/vfs.h if available. + ($statxfs_includes): Likewise for sys/statvfs.h. + Check for the following members in both structs statfs and statvfs: + f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen. + +2002-06-01 Jim Meyering <meyering@lucent.com> + + * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro: + s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/. + +2002-05-28 Jim Meyering <meyering@lucent.com> + + * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'. + Reported by Volker Borchert. + +2002-05-27 Jim Meyering <meyering@lucent.com> + + Fix a problem seen only on nonconforming systems whereby ls.c's + use of localtime, and then of gettimeofday would cause trouble: + the localtime call used to initialize rpl_gettimeofday's save + mechanism would clobber ls's current local time information so + that in any long listing the first file would always be listed + with date 1970-01-01. Analysis by Volker Borchert. + + * lib/gettimeofday.c (localtime): Undefine. + (rpl_localtime): New function. + +2002-05-27 Jim Meyering <meyering@lucent.com> + + * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace + localtime. + + * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to + use the replacement function; it wouldn't resolve at link time. + Reported by Volker Borchert. + +2002-05-22 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and + file-type.h. + * lib/file-type.h: New file. + * lib/file-type.c (file_type): New file/function. Extracted from + diffutils. + +2002-04-30 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT. + +2002-04-29 Paul Eggert <eggert@twinsun.com> + + * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed. + +2002-04-29 Paul Eggert <eggert@twinsun.com> + + * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h. + Do not check for alloca.h (no longer used) or stdbool.h (was never + used?). Add AM_C_PROTOTYPES since hard-locale.h uses it. + +2002-04-29 Paul Eggert <eggert@twinsun.com> + + * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1. + +2002-04-29 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN. + * m4/prereq.m4: Add jm_PREREQ_STRNLEN. + Use AC_FUNC_STRNLEN here instead. + + * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]). + With autoconf-2.53a, it's part of AC_PROG_CC. + +2002-04-28 Paul Eggert <eggert@twinsun.com> + + * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str). + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR. + +2002-04-28 Paul Eggert <eggert@twinsun.com> + + * lib/sig2str.h, lib/sig2str.c: New files. + * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h. + +2002-04-28 Paul Eggert <eggert@twinsun.com> + + * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid + depending on <sys/wait.h> and WTERMSIG. Default to 64 instead + of 127, since 64 is the largest conceivable number for ancient + nonstandard hosts. + * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed. + +2002-04-28 Jim Meyering <meyering@lucent.com> + + * lib/sig2str.c (WTERMSIG): Remove definition (unused). + +2002-04-24 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro. + (jm_PREREQ): Use it. + + * m4/getloadavg.m4: Check for these headers: locale.h unistd.h + mach/mach.h fcntl.h. + Check for this function: setlocale. + +2002-04-24 Jim Meyering <meyering@lucent.com> + + * lib/gettext.h: New file, from Gettext. + * lib/Makefile.am (INCLUDES): Remove -I../intl. + (libfetish_a_SOURCES): Add gettext.h. + +2002-04-16 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members: + ut_pid, ut_id, ut_exit. + +2002-04-16 Jim Meyering <meyering@lucent.com> + + * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c). + (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define. + (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define. + +2002-04-12 Jim Meyering <meyering@lucent.com> + + * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove + now-bogus check for f_type in sys/mount.h. Instead, just test for the + existence of the getmntinfo function. Needed for Darwin 5.3. + + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro. + This is necessary at least on Darwin 5.3. + + * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use + AC_FUNC_STRNLEN. Otherwise, we'd end up putting two copies of + strnlen.o in the library, and that makes some versions of ranlib + object. + +2002-04-12 Jim Meyering <meyering@lucent.com> + + * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro. + +2002-04-09 Jim Meyering <meyering@lucent.com> + + * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message + to be more precise. Rather than saying we're checking whether the + function `works', say what we're testing. + * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise. + Reported by Bruno Haible. + +2002-03-10 Jim Meyering <meyering@lucent.com> + + * lib/makepath.c (make_path): Remove a comma from a diagnostic. + Suggestion from Santiago Vila. + +2002-03-08 Jim Meyering <meyering@lucent.com> + + * lib/rename.c: Mention that this wrapper is needed also on + mips-dec-ultrix4.4 systems. + +2002-03-02 Jim Meyering <meyering@lucent.com> + + * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME, + not HAVE_CLOCK_SETTIME. + +2002-02-27 Paul Eggert <eggert@twinsun.com> + + * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used. + Check for clock_settime. + +2002-02-27 Paul Eggert <eggert@twinsun.com> + + * lib/nanosleep.h: Rename to.... + * lib/timespec.h: New name for nanosleep.h. All uses changed. + + * lib/gettime.c: New file. + * lib/settime.c: New file. + * lib/stime.c: Remove. + + * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c, + timespec.h. Remove nanosleep.h. + +2002-02-25 Paul Eggert <eggert@twinsun.com> + + * m4/acl.m4: New file. + * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL. + Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now. + +2002-02-25 Paul Eggert <eggert@twinsun.com> + + * lib/acl.c, lib/acl.h: New files. + * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c. + +2002-02-24 Jim Meyering <meyering@lucent.com> + + * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent + prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't + cause trouble. Reported by Nelson Beebe. + +2002-02-23 Paul Eggert <eggert@twinsun.com> + + * lib/path-concat.c (xpath_concat): Reorder code to pacify + compilers that don't know that xalloc_die never returns. + +2002-02-20 Jim Meyering <meyering@lucent.com> + + * lib/getdate.c: Regenerate using bison-1.33. + +2002-02-17 Jim Meyering <meyering@lucent.com> + + * config/config.guess (main): Don't use `head -1'; it's no longer + portable. Use `sed 1q' instead. + +2002-02-16 gettextize <bug-gnu-gettext@gnu.org> + + * m4/codeset.m4: Upgrade to gettext-0.11. + * m4/gettext.m4: Upgrade to gettext-0.11. + * m4/glibc21.m4: Upgrade to gettext-0.11. + * m4/iconv.m4: Upgrade to gettext-0.11. + * m4/isc-posix.m4: Upgrade to gettext-0.11. + * m4/lcmessage.m4: Upgrade to gettext-0.11. + * m4/lib-ld.m4: New file, from gettext-0.11. + * m4/lib-link.m4: New file, from gettext-0.11. + * m4/lib-prefix.m4: New file, from gettext-0.11. + * m4/progtest.m4: Upgrade to gettext-0.11. + +2002-02-15 Paul Eggert <eggert@twinsun.com> + + * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro. + (jm_PREREQ): Use it. + +2002-02-15 Paul Eggert <eggert@twinsun.com> + + * lib/posixver.c, lib/posixver.h: New files. + * lib/Makefile.am (libfetish_a_SOURCES): Add them. + +2002-02-02 Paul Eggert <eggert@twinsun.com> + Bruno Haible <bruno@clisp.org> + + * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument. + (fwrite_success_callback): New declaration. + * lib/unicodeio.c (unicode_to_mb): New function, extracted from + print_unicode_char. Call failure callback instead of error. + (fwrite_success_callback): New function. + (exit_failure_callback): New function. + (fallback_failure_callback): New function. + (print_unicode_char): Call unicode_to_mb. + +2002-01-26 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g. + * m4/strnlen.m4: Remove file, now that it's part of autoconf. + +2002-01-26 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h. + +2002-01-22 Paul Eggert <eggert@twinsun.com> + + * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO. + +2002-01-22 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES). + Otherwise, some versions of automake would omit the rule that makes + Makefile from Makefile.in. + +2002-01-21 Paul Eggert <eggert@twinsun.com> + + * lib/xmemcoll.h, lib/xmemcoll.c: New files. + * lib/Makefile.am (libfetish_a_SOURCES): Add them. + * lib/memcoll.c: Include errno.h, and declare errno if not defined. + (memcoll): Set errno to zero if there is no error. + + * lib/quotearg.c (quotearg_buffer_restyled): + Fix bug with quoting buffers containing NUL when backslashing escapes. + This bug was exposed by the other changes in this patch. + (quotearg_n_options): New arg ARGSIZE. + All callers changed. + (quoting_options_from_style): New function. + (quotearg_n_style): Use it. + (quotearg_n_style_mem): New function. + + * lib/quotearg.h (quotearg_n_style_mem): New function. + +2002-01-19 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN. + Remove useless quotes: DF_PROG="df". + * m4/strnlen.m4: New file. + +2002-01-16 Paul Eggert <eggert@twinsun.com> + + * lib/backupfile.c (ISDIGIT): Comment fix. + * lib/getdate.y (ISDIGIT): Likewise. + * lib/posixtm.c (ISDIGIT, year): Likewise. + * lib/strverscmp.c (ISDIGIT): Likewise. + * lib/userspec.c (ISDIGIT): Likewise. + +2002-01-16 Jim Meyering <meyering@lucent.com> + + * lib/getdate.y: Add three semicolons, each just before a closing + brace. Bison (as of version 1.31) no longer papers over that mistake. + +2002-01-05 Jim Meyering <meyering@lucent.com> + + * lib/version-etc.c (version_etc_copyright): Update copyright year. + +2001-12-19 Paul Eggert <eggert@twinsun.com> + + * lib/closeout.c (close_stdout_status): If ferror (stdout), do + not silently exit merely because the output buffer happens to + have nothing pending. + +2001-12-18 Paul Eggert <eggert@twinsun.com> + + See the big note in ../ChangeLog. + * lib/human.c (suffixes): Prefer K to k for 1024. + (generate_suffix_backwards): New function. + (human_readable_inexact): Use it. + * lib/xstrtol.c (__xstrtol): If there is no number but there + is a valid suffix, assume 1. "MB" now means decimal, "MiB" binary. + Accept 'K' as well as 'k'. + +2001-12-15 Jim Meyering <meyering@lucent.com> + + * lib/regex.h (__restrict_arr): Update from libc. + + * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs + as `remote' if the name starts with `//'. Suggested by Michael Stone. + (STREQ): Define. + +2001-12-14 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_MACROS): Check for iswspace. + Suggestion from Bruno Haible. + +2001-12-10 Jim Meyering <meyering@lucent.com> + + * lib/linebuffer.c: Remove explicit declarations of xmalloc and + xrealloc, Instead, include "xalloc.h". + (initbuffer): Don't cast xmalloc return value to char*. + (readline): Reword comment. + Don't cast xrealloc return value to char* + Return NULL, not 0. + +2001-12-09 Jim Meyering <meyering@lucent.com> + + * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning + about `signed and unsigned type in conditional expression'. + * lib/posixtm.c (posix_time_parse): Likewise. + + * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning. + + * lib/readtokens.c (readtoken): Declare an index to be of type unsigned + to avoid a pedantic warning. + + * lib/getstr.c: Don't include assert.h. + (getstr): Remove warning-evoking assertions. + Return -1 if offset parameter is out of bounds. + Change the type of a local from int to size_t. + + * lib/strftime.c (my_strftime_localtime_r): Include this function + definition in the `#if ! HAVE_TM_GMTOFF' block. + + * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc. + Include xalloc.h instead. + +2001-12-02 Jim Meyering <meyering@lucent.com> + + * lib/tempname.c: Don't declare getenv, thus reverting the change of + 2001-11-18. It's no longer necessary, now that stdlib.h is always + included. + + * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded, + __unbounded, and __ptrvalue. Reported by Uwe H. Steinfeld. + +2001-11-30 Akim Demaille <akim@epita.fr> + + * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared + before being defined. + +2001-11-27 Paul Eggert <eggert@twinsun.com> + + * lib/quotearg.h (quotearg_n, quotearg_n_style): + First arg is int, not unsigned. + * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise. + (SIZE_MAX, UINT_MAX): New macros. + (quotearg_n_options): Abort if N is negative. + Avoid overflow check on hosts where size_t is 64 bits and int + is 32 bits, as overflow is impossible there. + Fix off-by-one typo that caused unnecessary reallocation. + +2001-11-27 Jim Meyering <meyering@lucent.com> + + * lib/tempname.c: Merge with version from libc. + * lib/regex.c: Likewise. + + * lib/tempname.c: Include stdlib.h unconditionally. On some old + systems for which STDC_HEADERS is 0, it was not included, resulting in + a warning about an integer-to-pointer conversion problem with getenv. + Reported by Volker Borchert. + +2001-11-26 Jim Meyering <meyering@lucent.com> + + * lib/gtod.h: Remove file. + * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h. + * lib/gettimeofday.c: Don't include gtod.h. + (GTOD_init): Remove function. + (rpl_gettimeofday): Do its job here instead, rather than aborting. + Suggestion from Volker Borchert. + +2001-11-23 Jim Meyering <meyering@lucent.com> + + * lib/hash.h (struct hash_table): Don't define here. Merely declare + it. + * lib/hash.c (struct hash_table): Define it here instead. + +2001-11-22 Jim Meyering <meyering@lucent.com> + + * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif. + +2001-11-20 Jim Meyering <meyering@lucent.com> + + * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that + SunOS 4.1.4 and Solaris 2.5.1 lose, too. + +2001-11-19 Jim Meyering <meyering@lucent.com> + + * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary + directory. Use "conftestXXXXXX" as the template. + Suggestion from Paul Eggert. + + * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor + immediately, so the test doesn't mistakenly hit the max-open-files + limit. + +2001-11-18 Paul Eggert <eggert@twinsun.com> + + * lib/tempname.c (TMP_MAX): Remove; no longer needed. + (TEMPORARIES): New macro. + (__gen_tempname): Use TEMPORARIES rather than TMP_MAX. This + removes an artificial limitation (e.g. HP-UX 10.20, where + TMP_MAX is 17576). + +2001-11-18 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv. + +2001-11-18 Jim Meyering <meyering@lucent.com> + + * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning + on SunOS 4. + + * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those + files will be created before anything else. + +2001-11-17 Paul Eggert <eggert@twinsun.com> + + * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define + WINSIZE_IN_PTEM if <termios.h> defines struct winsize. + +2001-11-17 Jim Meyering <meyering@lucent.com> + + * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro. + Prompted by a report from Bob Proulx. + + * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here. + Instead, require UTILS_FUNC_MKSTEMP. + +2001-11-17 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM. + Now, that's done as part of AC_FUNC_STRTOD. + +2001-11-17 Jim Meyering <meyering@lucent.com> + + * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26 + that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable + rather than group writable. Patch by Juan F. Codagnone. + + * lib/readtokens.c: Remove explicit declarations of xmalloc and + xrealloc, Instead, include "xalloc.h". + + * lib/mountlist.c: Include unlocked-io.h after all system headers. + Remove explicit declarations of xmalloc, xrealloc, + and xstrdup. Instead, include "xalloc.h". + + * lib/argmatch.c, closeout.c, error.c, exclude.c: Include + unlocked-io.h. + * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c: + Likewise. + * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise. + + * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise. + Reported by Padraig Brady. + + * lib/mkstemp.c: #undef mkstemp. + Include config.h. + (rpl_mkstemp): Rename from mkstemp. + Protoize. + +2001-11-16 Jim Meyering <meyering@lucent.com> + + * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>. + (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to + determine the amount of total physical memory, use pstat_getstatic. + HPUX-11 doesn't define _SC_PHYS_PAGES. + (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]: + If sysconf couldn't be used to determine the amount of available + physical memory, use both pstat_getstatic and pstat_getdynamic. + Based on a patch from Bob Proulx. + +2001-11-10 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function. + (jm_PREREQ): Use it. + +2001-11-09 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4: Require autoconf-2.52f. + (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD): + Use these AC_-prefixed names, not the AM_-prefixed ones. + + * m4/afs.m4 (jm_AFS): Quote the body. Patch by Akim Demaille. + +2001-11-05 Jim Meyering <meyering@lucent.com> + + * lib/xstat.in (slash_aware_lstat): Correct a misleading comment. + +2001-11-04 Jim Meyering <meyering@lucent.com> + + * m4/fpending.m4: Remove unused cruft that saved, set, and restored + $DEFS. + +2001-11-03 Jim Meyering <meyering@lucent.com> + + * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg + of AC_DEFUN. + + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to + know the name of the variable in the macro definition. + +2001-11-03 Jim Meyering <meyering@lucent.com> + + * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args + in argmatch_to_argument call. + + * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an + argument. + + * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or + e.g., a fault due to an attempt to free a NULL pointer. + +2001-11-01 Jim Meyering <meyering@lucent.com> + + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro. + * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD. + +2001-11-01 Jim Meyering <meyering@lucent.com> + + * lib/dirfd.c, lib/dirfd.h: New files. + * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h. + + * lib/hash.c (hash_print) [TESTING]: Clean up. + +2001-10-22 Paul Eggert <eggert@twinsun.com> + + * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__, + to avoid a warning if -Wall. + +2001-10-22 Jeff Bailey <jbailey@outpost.dnsalias.org> + + * README: New file + * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi + (per RMS's instructions, this is now the canonical source) + * lgpl/, gpl/: New directories. + +2001-10-21 Paul Eggert <eggert@twinsun.com> + + * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job. + +2001-10-21 Jim Meyering <meyering@lucent.com> + + * lib/obstack.c (_): Honor the setting of ENABLE_NLS. Otherwise, + this code would end up calling gettext even in packages built + with --disable-nls. + * lib/getopt.c (_): Likewise. + * lib/regex.c (_): Likewise. + +2001-10-20 Paul Eggert <eggert@twinsun.com> + + * m4/error.m4 (jm_PREREQ_ERROR): + Do not invoke AC_CHECK_FUNCS with strerror_r, as + AC_FUNC_STRERROR_R does that. + Check for strerror declaration. + + * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files + are supposed to have them these days. + (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached. + Merge changes from latest Autoconf CVS. + Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p, + and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since + POSIX decided to standardize on the int flavor of strerror_r. + +2001-10-20 Paul Eggert <eggert@twinsun.com> + + * lib/error.c (strerror_r): Do not declare unless !_LIBC. + Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P. + Use strerror_r that is only a macro, even if it is not a function. + (strerror): Check for HAVE_DECL_STRERROR before declaring. + (private_strerror): Use prototypes, not old-style function definition. + (print_errno_message): New function. + Support the POSIX 'int'-flavored strerror_r, as well as the traditional + char*-flavored one. + (error_tail, error, error_at_line): Use it. + +2001-10-11 Jim Meyering <meyering@lucent.com> + + * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ... + and quote_n (1, ... to avoid clobbering a buffer. + +2001-10-05 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and + hash-pjw.h. + * lib/hash-pjw.c: New file (factored out of fileutils' remove.c). + * lib/hash-pjw.h: New file. + +2001-09-30 Jim Meyering <meyering@lucent.com> + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if + `struct fsstat' has the `f_fstypename' member. + Use that to define FS_TYPE, which is now used to make + the getfsstat link test tighter. + +2001-09-30 Jim Meyering <meyering@lucent.com> + + * lib/mountlist.c [MOUNTED_GETFSSTAT]: + Include <sys/ucred.h>, for Apple Darwin. + Include sys/mount.h and sys/fs_types.h only if available. + (FS_TYPE): Define. + (read_filesystem_list): Use FS_TYPE. + +2001-09-29 Paul Eggert <eggert@twinsun.com> + + * lib/exclude.c (excluded_filename): 0 -> false, since it's + a boolean context. + +2001-09-29 Jim Meyering <meyering@lucent.com> + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS) + [one-argument getmntent function]): Include stdio.h before mntent.h. + SunOS 4.1.x needs it for the declaration of `FILE'. + Patch by Volker Borchert. + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS) + Check for these headers: sys/param.h sys/ucred.h sys/mount.h + sys/fs_types.h, and make the link-test for getfsstat guard #include + directives with appropriate #if HAVE_*_H tests so that we can + detect getfsstat on Apple Darwin1.3.7 systems. + Reported by Nelson Beebe. + Fix harmless typo in cache variable name: s/getsstat/getfsstat/. + +2001-09-28 Paul Eggert <eggert@twinsun.com> + + Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which + #defines strtoimax. Also treat the other strto* functions + like strtoimax. + + * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): + Check for strtoul and strtoumax, + as those declarations are made even in the signed case. + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): + Likewise, for strtol and strtoimax. + +2001-09-28 Paul Eggert <eggert@twinsun.com> + + Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which + #defines strtoimax. Also treat the other strto* functions + like strtoimax. + + * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL. + (strtoul): Do not declare if HAVE_DECL_STRTOUL. + (strtoimax, strtoumax): Do not declare if already defined as a macro. + +2001-09-26 Jim Meyering <meyering@lucent.com> + + Most macros in unlocked-io.h had the wrong number of arguments. + * lib/gen-uio: New script. + (USE_UNLOCKED_IO): Define to 1 if not already defined. + * lib/unlocked-io.hin: Remove file. + * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script, + rather than trying to embed it here. + (EXTRA_DIST): Add gen-uio. Remove unlocked-io.hin + Reported by Padraig Brady. + +2001-09-25 Volker Borchert <bt@teknon.de> + + * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable + `result'. + +2001-09-24 Jim Meyering <meyering@lucent.com> + + * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS. + +2001-09-23 Jim Meyering <meyering@lucent.com> + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test + instead of the mere test for existence of mntent.h. The latter + would get a false-positive on AIX 3.4 systems. + In the outer getmntent if-block, don't die if neither of the getmntent + tests succeeds. Instead, just fall through and continue with the + remaining tests. + +2001-09-23 Jim Meyering <meyering@lucent.com> + + * lib/mountlist.c: Remove useless parentheses in #if directives. + (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when + the deprecated MOUNTED symbol is no longer defined in mntent.h. + +2001-09-22 Jim Meyering <meyering@lucent.com> + + * m4/gettext.m4: New file. From gettext. + * m4/lcmessage.m4: Sync with gettext -- this changes only comments. + * m4/progtest.m4: Likewise + * m4/isc-posix.m4: Decrement serial number to sync with gettext. + * m4/glibc21.m4: Likewise. + + * m4/libintl.m4: Remove. No longer used. + +2001-09-22 Jim Meyering <meyering@lucent.com> + + * lib/localcharset.c: Update from latest gettext. + * lib/config.charset: Likewise. + +2001-09-20 Jim Meyering <meyering@lucent.com> + + * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of + strtoimax. + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of + strtoumax. + +2001-09-20 Jim Meyering <meyering@lucent.com> + + * lib/xstrtol.c (strtoimax): Guard declaration with + `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'. + The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0) + have their own, conflicting declaration of strtoimax in sys/inttypes.h. + (strtoumax): Likewise, for completeness (it wasn't necessary). + +2001-09-17 Paul Eggert <eggert@twinsun.com> + + * lib/strtoimax.c (HAVE_LONG_LONG): + Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned. + (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base), + to work around bug in IBM C compiler. + +2001-09-17 Jim Meyering <meyering@lucent.com> + + * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4, + * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4, + * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4, + * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4, + * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED, + whenever the right hand side need not be expanded by the shell. + +2001-09-16 Paul Eggert <eggert@twinsun.com> + + * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C + library. It's not correct, as some older glibcs are buggy. + fnmatch wasn't fixed until glibc 2.2. + + Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no + special shell magic here. + +2001-09-16 Jim Meyering <meyering@lucent.com> + + * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro. + * m4/jm-macros.m4: Require it. + +2001-09-16 Jim Meyering <meyering@lucent.com> + + * lib/mkdir.c: New file. + +2001-09-15 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4: Check for help2man. + +2001-09-11 Jim Meyering <meyering@lucent.com> + + * m4/host-os.m4 (UTILS_HOST_OS): New file/macro. + The body, by Paul Eggert, was moved here from configure.in. + * m4/jm-macros.m4: Require UTILS_HOST_OS. + +2001-09-04 Paul Eggert <eggert@twinsun.com> + + * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro. + (jm_PREREQ): Use it. + +2001-09-04 Paul Eggert <eggert@twinsun.com> + + * lib/xreadlink.c (xreadlink): Omit size_t* arg. All uses changed. + Use ssize_t, not int, to store result of readlink. + Check for ssize_t overflow as well as size_t overflow, + as POSIX says the result of readlink is implementation-defined + when ssize_t overflows. + Remove unnecessary cast to char*. + Use free+malloc instead of realloc, as the storage doesn't need + to be preserved and it's clearer and can be more efficient that way. + (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare. + * lib/xreadlink.h (xreadlink): Update prototype. + +2001-09-04 Paul Eggert <eggert@twinsun.com> + + * lib/xgetcwd.c: Revert some of the previous change; intead, + fix the HAVE_GETCWD_NULL code to behave more like the + !HAVE_GETCWD_NULL code used to. + + Include "xalloc.h". + (xgetcwd): Do not return NULL when memory is exhausted; instead, + invoke xalloc_die. + +2001-09-03 Paul Eggert <eggert@twinsun.com> + + * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and + sys/param.h, as pathmax.h includes them. + +2001-09-03 Paul Eggert <eggert@twinsun.com> + + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD. + (jm_PREREQ_XGETCWD): New macro. + + * m4/getcwd.m4: New file. + +2001-09-03 Paul Eggert <eggert@twinsun.com> + + * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more + like the HAVE_GETCWD_NULL code. + Include pathmax.h if not HAVE_GETCWD. + Do not include xalloc.h. + (INITIAL_BUFFER_SIZE): New symbol. + Do not use xmalloc / xrealloc, since the caller is responsible for + handling errors. Preserve errno around `free' during failure. + Do not overrun buffer when using getwd. + +2001-09-03 Paul Eggert <eggert@twinsun.com> + + * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined + __GLIBC__ && __GLIBC__ >= 2), to decide whether to use + getcwd (NULL, 0). + +2001-09-03 Paul Eggert <eggert@twinsun.com> + + * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between + usage of FNM_CASEFOLD and FNM_LEADING_DIR. The bug was + spotted by Jim Meyering. + +2001-09-03 Jim Meyering <meyering@lucent.com> + + * lib/xreadlink.c (xreadlink): Preserve errno around `free' during + failure. + +2001-09-02 Jim Meyering <meyering@lucent.com> + + * lib/error.c: Update from GNU libc. + +2001-09-01 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name. + Used by df. + +2001-09-01 Jim Meyering <meyering@lucent.com> + + * lib/xreadlink.c: New file. + * lib/xreadlink.h: New file. + * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and + xreadlink.h. + + * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it + doesn't conflict with sparc Solaris 7's definition in + /usr/include/sys/int_types.h. + + * lib/exclude.c: Use `""', not `<>' to #include non-system header + files. + (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp + and strncasecmp as r-values. Unixware didn't have declarations. + +2001-08-31 Paul Eggert <eggert@twinsun.com> + + * lib/xstrtol.h: Add copyright notice. + (_DECLARE_XSTRTOL): Improve quality of diagnostic for + LONGINT_INVALID_SUFFIX_CHAR. + +2001-08-31 Paul Eggert <eggert@twinsun.com> + + * lib/xstrtol.c (strtoimax): New decl. + +2001-08-31 Paul Eggert <eggert@twinsun.com> + + * lib/xgetcwd.c: Don't include pathmax.h. + Include stdlib.h and unistd.h if available. + Include xalloc.h. + (xmalloc, xstrdup, free): Remove decls. + (xgetcwd): Don't assume sizes fit in unsigned. + Check for overflow when computing sizes. + Simplify reallocation code. + +2001-08-31 Paul Eggert <eggert@twinsun.com> + + * lib/savedir.c (savedir): Remove size parameter, as POSIX says that + a directory's st_size can have an arbitrary value, so the old + usage could waste an arbitrary amount of memory. All uses + changed. + * lib/savedir.h: Update prototype. + +2001-08-31 Paul Eggert <eggert@twinsun.com> + + * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c. + + * lib/strtoimax.c: Renamed from strtoxmax.c, removing the + old strtoimax.c. + + Also, make the following further changes to make this file's + configuration more similar to that of strtol.c: + (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED. All uses changed. + (strtoumax, uintmax_t, strtoull, strtol): Remove. + (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED. + (strtoimax): Renamed from strtoumax. All uses of unsigned values + changed to signed values. + + And make the following changes as well: + Fix copyright notice, as 1999 was missing. + (verify): New macro. + (strtoimax): Check sizes at compile-time, not run-time. + Prefer strtol to strtoll if both work. + (main): Remove; it was not that useful and was a pain to maintain. + + * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c. + +2001-08-31 Jim Meyering <meyering@lucent.com> + + * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication. + Use an initial, malloc'd, buffer of length 128 rather than + a statically allocated one of length 1024. + +2001-08-30 Paul Eggert <eggert@twinsun.com> + + Simplify code, partly by assuming autoconf 2.52 semantics. + + * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4. + + * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52. + (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52. + All uses removed. + (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T): + Move AC_REQUIRE to next-to-top level, to avoid confusion. + Use 2.52's AC_CHECK_TYPE instead of merely looking for the header. + * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require + jm_AC_HEADER_INTTYPES_H. + * m4/jm-macros.m4 (jm_MACROS): Likewise. + + * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4. + + * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): + Quote first arg of AC_DEFUN. + Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG + since they are needed to parse the include file even if we need + only xstrtoimax. Simplify logic behind the args to AC_REPLACE. + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise, + but with opposite signedness. + +2001-08-30 Paul Eggert <eggert@twinsun.com> + + Merge 'exclude' changes from tar 1.13.22. + This fixes one or two unlikely storage allocation overflow bugs, + but doesn't change user-visible behavior otherwise. + +2001-08-30 Paul Eggert <eggert@twinsun.com> + + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE. + (jm_PREREQ_EXCLUDE): New macro. + +2001-08-30 Paul Eggert <eggert@twinsun.com> + + * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct + tm to be declared. + +2001-08-30 Paul Eggert <eggert@twinsun.com> + + * lib/hash.c: Remove '2001' from copyright notice. + +2001-08-30 Paul Eggert <eggert@twinsun.com> + + * lib/full-write.h: New file. + * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h. + * lib/full-write.c: Correct credits, as cccp.c no longer + exists and anyway it was so heavily changed from the old cccp + code as to be unrecognizable. Include full-write.h. + (full_write) Return size_t, with short writes meaning failure. + All callers changed. This fixes a bug with large buffers + on 64-bit hosts. + * lib/utime.c: Include full-write.h. + +2001-08-30 Paul Eggert <eggert@twinsun.com> + + * lib/exclude.c (bool): Declare, perhaps by including stdbool.h. + (<sys/types.h>): Include only if HAVE_SYS_TYPES_H. + (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>): + Include if available. + (<xalloc.h>): Include + (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't. + (verify): New macro. Use it to verify that EXCLUDE macros do not + collide with FNM macros. + (struct patopts): New struct. + (struct exclude): Use it, as exclude patterns now come with options. + (new_exclude): Support above changes. + (new_exclude, add_exclude_file): + Initial size must now be a power of two to simplify overflow checking. + (free_exclude, fnmatch_no_wildcards): New function. + (excluded_filename): No longer requires options arg, as the options + are determined by add_exclude. Now returns bool, not int. + (excluded_filename, add_exclude): + Add support for the fancy new exclusion options. + (add_exclude, add_exclude_file): Now takes int options arg. + Check for arithmetic overflow when computing sizes. + (add_exclude_file): xrealloc might modify errno, so don't + realloc until after errno might be used. + + * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS): + New macros. + (free_exclude): New decl. + (add_exclude, add_exclude_file): Now takes int options arg. + (excluded_filename): No longer requires options arg, as the options + are determined by add_exclude. Now returns bool, not int. + +2001-08-30 Paul Eggert <eggert@twinsun.com> + + * lib/alloca.c (alloca): Arg is of type size_t, not unsigned. + +2001-08-27 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c + + * lib/version-etc.c (N_): Remove definition. + Revert most of last change. + Instead, simply don't mark the `Copyright...' string for translation. + Based on advice from Paul Eggert. + + * lib/strtoxmax.c: Tweak comment. + +2001-08-26 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX. + + * m4/xstrtoimax.m4: New file. + * m4/xstrtoumax.m4: Add comments explaining why we + AC_REPLACE_FUNCS(strtol). + +2001-08-26 Jim Meyering <meyering@lucent.com> + + * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year + of copyright with `%s' so translators don't get an untranslated + message in 2002. + (COPYRIGHT_YEAR): Define. + (version_etc): Use fprintf rather than fputs. + Suggestion from Ulrich Drepper. + + * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c. + + * lib/strtoll.c: New file, from GNU libc. + * lib/xstrtoimax.c: New file. + + * lib/xstrtol.h: Add xstrtoimax. + * lib/strtoumax.c: New file. Simply include "strtoumax.c". + * lib/strtoimax.c: New file. Likewise, but first define + STRTOUXMAX_SIGNED. + + * lib/strtoumax.c: Factor to work both for unsigned and signed types, + ... + * lib/strtoxmax.c: ... then renamed to this. + +2001-08-18 Paul Eggert <eggert@twinsun.com> + + * m4/inttypes.m4: Add AC_PREREQ(2.13). + (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too. + (jm_AC_TYPE_INTMAX_T): New macro. + (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4. + + * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro. + + * m4/longlong.m4: Renamed from ulonglong.m4. + * m4/inttypes.m4: Renamed from inttypes_h.m4. + * m4/uintmax_t.m4: Removed. + +2001-08-13 Paul Eggert <eggert@twinsun.com> + + * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice. + Port to Solaris 8, where 'sed' requires a space after the 'r' + command, and where sh dislikes "$/". Clean up the spacing a bit. + Redirect output to $tmp just once. + +2001-08-12 Paul Eggert <eggert@sic.twinsun.com> + + * lib/addext.c (<errno.h>): Include. + (errno): Declare if not defined. + (addext): Work correctly when pathconf returns -1 and leaves + errno alone because there is no limit. Also, work even if + pathconf returns a value greater than SIZE_MAX. + +2001-08-12 Jim Meyering <meyering@lucent.com> + + * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4, + d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4, + fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4, + group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4, + jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4, + link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4, + mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4, + prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4, + rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, + strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4, + utime.m4, utimes.m4, xstrtoumax.m4: + Quote the first argument in each use of AC_DEFUN. + +2001-08-12 Jim Meyering <meyering@lucent.com> + + * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]: + Simply `return getcwd (NULL, 0);'. + [! (defined __GLIBC__ && __GLIBC__ >= 2)]: + Use 1300 as initial value for length, not PATH_MAX. + + * lib/pathmax.h: Clean up cpp syntax. + +2001-08-12 Jim Meyering <meyering@lucent.com> + + * lib/gettimeofday.c: New file. + * lib/gtod.h: New file. + * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h. + +2001-08-05 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4: Require autoconf-2.52. + +2001-08-04 Jim Meyering <meyering@lucent.com> + + * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if + stmt, to get in sync with glibc. + +2001-08-03 Paul Eggert <eggert@twinsun.com> + + The following changes are from gettext 0.10.39 as maintained by + Bruno Haible. + + * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID): + Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID + with inverted sense. All uses changed. + + * lib/mbswidth.c: Don't include <limits.h>. + Include <stdlib.h> and <string.h> unconditionally. + (iswcntrl, mbsinit, ISCNTRL): New macros. + (mbsnwidth): Use K&R style function declarations. + Don't bother checking for MB_LEN_MAX == 1, since the compiler + can optimize it when MB_CUR_MAX == 1. + The width of control characters is zero, not 1. + +2001-08-03 Paul Eggert <eggert@twinsun.com> + + The following changes are from gettext 0.10.39 as maintained by + Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ. + + * m4/codeset.m4: Upgrade to serial AM1. + (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET; + all uses changed. Quote first arg of AC_DEFUN. + (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset. + + * m4/iconv.m4: Upgrade to serial AM2. + (AM_ICONV): Renamed from jm_ICONV; all uses changed. + Add --with-libconv-prefix. + Quote first arg of AC_DEFUN. Add description for ICONV_CONST. + (am_cv_func_iconv): Renamed from jm_cv_func_iconv. + (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv. + (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv. + * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings. + + * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN. + * m4/getline.m4 (AM_FUNC_GETLINE): Likewise. + * m4/glibc21.m4 (jm_GLIBC21): Likewise. + * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise. + * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise. + * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise. + * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise. + * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise. + * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise. + + * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for + string.h any more. + + * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no", + not the default value. + + 2001-06-25 Bruno Haible <haible@clisp.cons.org> + * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES. + Also check for mbsinit. Needed for SCO 3.2v5.0.2. + Also include <string.h>; this is where AIX 3.2.5 declares wcwidth. + Also check for iswcntrl, used for wcwidth fallback. + Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability + to Autoconf 2.13. + +2001-08-03 Jim Meyering <meyering@lucent.com> + + * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include', + as it was in the original. Reported by Paul Eggert. + +2001-07-16 Jim Meyering <meyering@lucent.com> + + * m4/gettimeofday.m4: New file. + Prompted by a report from Bernhard Baehr. + +2001-07-15 Jim Meyering <meyering@lucent.com> + + * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h + stuff. Now it's in ../Makefile.cfg. + +2001-07-15 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin. + (BUILT_SOURCES): Add unlocked-io.h. + (io_functions): Define. + (unlocked-io.h): New rule. + (DISTCLEANFILES): Add unlocked-io.h. + (all-local): Depend on unlocked-io.h, to ensure it is created. + + * lib/unlocked-io.hin: New file + + * lib/regex.c: Update from glibc. + +2001-07-05 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake + recommendation. + (libfetish_a_SOURCES): Put all .h files here instead. + Remove a thus-exposed (better checks in automake) duplicate and + two unnecessary .h files. + +2001-07-04 Jim Meyering <meyering@lucent.com> + + * m4/Makefile.am.in (glibc-io.struct): New target. Rework the code + that generates jm-glibc-io.m4 so that it doesn't trigger any make + distcheck failure. + +2001-07-02 Jim Meyering <meyering@lucent.com> + + The following changes were prompted by suggestions from Bruno Haible. + + * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4 + is now generated. + * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted + definition of EXTRA_DIST. + (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to + ensure that the generated file is created/updated whenever the list + of $(unlocked_functions) is changed. + (jm-glibc-io.m4): New rule. + (unlocked-io.h): New rule -- currently unused. + +2001-06-24 Jim Meyering <meyering@lucent.com> + + * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an + unmatched right bracket, rather than kludging it with an extra, + falsely-matching quote in a comment. Patch by Akim Demaille. + +2001-06-11 Jim Meyering <meyering@lucent.com> + + * lib/regex.c: Update from GNU libc. + +2001-05-27 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx. + Check for ut_type in struct utmp. + +2001-05-27 Jim Meyering <meyering@lucent.com> + + * lib/readutmp.h (UT_TYPE): Define. + +2001-05-24 Jim Meyering <meyering@lucent.com> + + * lib/argmatch.c: Include "quote.h". + (argmatch_invalid): Remove explicit `' quotes. Instead, use the + quote function. Reported by Göran Uddeborg. + +2001-05-22 Jim Meyering <meyering@lucent.com> + + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime), + now that we use the package-supplied version unconditionally. + (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason. + +2001-05-21 Jim Meyering <meyering@lucent.com> + + * m4/regex.m4: Change a couple backticks to single quotes to avoid + shell syntax errors. + +2001-05-21 Alexandre Duret-Lutz <duret_g@epita.fr> + + * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__. + +2001-05-20 Paul Eggert <eggert@twinsun.com> + + * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): + Don't bother to check library strftime, since + we'll be using our own my_strftime function anyway. + Define my_strftime instead of strftime. + +2001-05-20 Alexandre Duret-Lutz <duret_g@epita.fr> + + * lib/dirname.c (dir_name): Compute append_dot using path, not newpath + which is not yet declared. + +2001-05-15 Jim Meyering <meyering@lucent.com> + + * m4/regex.m4: Use proper quoting so brackets appear in the test + program. + Reported by, and with help from, Bruno Haible. + +2001-05-13 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if + undefined. + +2001-05-11 Paul Eggert <eggert@twinsun.com> + + dirname code cleanup. base_name now behaves more compatibly + with POSIX basename when given file names that have trailing + slashes, and similarly for dir_name. Add new primitives + base_len and dir_len. Put the directory-name-related decls + into dirname.h. + + * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h. + * lib/backupfile.c (base_name): Likewise. + * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise. + * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise. + * lib/makepath.c (strip_trailing_slashes): Likewise. + * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN, + ISSLASH): Likewise. + * lib/rename.c (strip_trailing_slashes): Likewise. + * lib/same.c (base_name): Likewise. + * lib/stripslash.c (ISSLASH): Likewise. + + * lib/addext.c: Include <dirname.h> after size_t is defined. + * lib/backupfile.c: Likewise. + + * lib/addext.c (addext): Use base_len to trim redundant + trailing slashes instead of doing it ourselves. + But do not trim the last slash if it is not redundant. + + * lib/backupfile.c (find_backup_file_name, + max_backup_version): Use base_len instead of rolling it ourselves. + Handle the case of "" and (on DOS) "C:" correctly. + + * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer + needed. Include <string.h>, <dirname.h>. + (base_name): Allow file names ending in slashes, other than names + that are all slashes. In this case, return the basename followed + by the slashes. This is more general, and can be used in places + where the original base_name purposely had an assertion failure. + (base_len): New function. + + * lib/dirname.c: Include <string.h> instead of <stdlib.h>. + Do not include <assert.h>; no longer needed. + Include xalloc.h. + (memrchr): Remove decl. + (dir_name_r): Remove. + (dir_len): Renamed from dirlen. All callers changed. + Rewrite in terms of base_name, for simplicity and consistency. + (dir_name): Never return NULL. All callers changed. + Do not include <stdlib.h> in test program; no longer needed. + return 0; is fine for test program. + + * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN): + New macros. + (base_name, base_len, dir_len, strip_trailing_slashes): New decls. + + * lib/path-concat.c (path_concat): Use base_len to compute + base length, not strlen; this means we cannot rely on memcpy + to null-terminate. + + * lib/same.c (STREQ): Remove. + (same_name): Handle the case where the basename ends in trailing '/'. + + * lib/stripslash.c (strip_trailing_slashes): Return nonzero if + a slash was stripped. Do not strip the last slash after a + file system prefix. + +2001-05-11 Paul Eggert <eggert@twinsun.com> + + * lib/Makefile.am (libfetish_a_SOURCES): + Add strftime.c, since we now compile it on all hosts. + + * lib/strftime.c (my_strftime): + Define to nstrftime if emacs, but only if my_strftime is not defined. + (extra_args, extra_args_spec, extra_args_spec_iso): Rename from + ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively. + Add one more extra argument: a nanoseconds value. + All uses changed. + (ns): New macro. + (my_strftime function): Add %N format. + (emacs_strftimeu): Renamed from emacs_strftime, + with extra ut argument. + +2001-05-09 Paul Eggert <eggert@twinsun.com> + + * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used. + +2001-04-21 Jim Meyering <meyering@lucent.com> + + * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask + doesn't interfere. + +2001-04-21 Alexandre Duret-Lutz <duret_g@epita.fr> + + * m4/ftruncate.m4: Check for chsize. + Link with ftruncate.o unconditionally if ftruncate is missing. + This was required when cross-compiling to i586-mingw32msvc. + +2001-04-08 Jim Meyering <meyering@lucent.com> + + * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is + recomputed; that's necessary when the offset spans a DST transition. + Patch by David J. MacKenzie. Reported by Hon-Yin Kok. + +2001-04-02 Jim Meyering <meyering@lucent.com> + + * lib/regex.h, regex.c: Update from GNU libc. + +2001-03-24 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4: Require autoconf-2.49d. + +2001-03-20 Bruno Haible <haible@clisp.cons.org> + + * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv. + +2001-03-19 Paul Eggert <eggert@twinsun.com> + + * lib/version-etc.c (version_etc_copyright): Update to 2001. + +2001-03-17 Jim Meyering <meyering@lucent.com> + + * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP, + now that the version in autoconf is equivalent. + (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP. + + * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R. + Suggestion from Akim Demaille. + + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME. + (jm_PREREQ_TEMPNAME): New function. + +2001-03-16 Paul Eggert <eggert@twinsun.com> + + * lib/tempname.c (uint64_t): Define to uintmax_t if + not defined, and if UINT64_MAX is not defined. + Required at least for Vax Ultrix4.3, which doesn't define uint64_t. + Reported by John David Anglin. + +2001-03-15 Bruno Haible <haible@clisp.cons.org> + + * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also + resolve alias if codeset is empty. + * lib/config.charset (BeOS): Use wildcard syntax. + +2001-03-13 Jim Meyering <meyering@lucent.com> + + * lib/path-concat.c (path_concat) + [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when + concatenating e.g., `C:' and `foo'. + From Bruno Haible. + +2001-03-06 Bruno Haible <haible@clisp.cons.org> + + * lib/localcharset.c (locale_charset): Don't use + setlocale(LC_CTYPE,NULL). Don't return NULL. + * lib/unicodeio.c (print_unicode_char): Simplify accordingly. + +2001-03-06 Bruno Haible <haible@clisp.cons.org> + + * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add + support for DOS/DJGPP. + +2001-03-01 Paul Eggert <eggert@twinsun.com> + + * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system + lacks mkstemp. Compile our own tempname.c if we compile our own + mkstemp.c, as mkstemp relies on tempname. + +2001-03-01 Jim Meyering <meyering@lucent.com> + + * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that + AH_VERBATIM really does output its argument verbatim. + +2001-02-28 Paul Eggert <eggert@twinsun.com> + + * lib/Makefile.am (libfetish_a_SOURCES): + Add dup-safer.c, fopen-safer.c. + (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h. + + * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h: + * lib/unistd-safer.h: New files. + +2001-02-25 Paul Eggert <eggert@twinsun.com> + + The mkstemp replacement is taken from glibc 2.2.2, with some + portability fixes for use outside glibc, as follows: + + * lib/tempname.c (struct_stat64): New macro. + (direxists, __gen_tempname): Use it. + This avoids a portability problem with Solaris 8. + + * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H. + (<stddef.h>, <stdint.h>, <string.h>): + Include only if STDC_HEADERS || _LIBC. + (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC. + (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC. + (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC. + (__set_errno): Define this macro if <errno.h> doesn't. + (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE): + Define these macros if <stdio.h> doesn't. + (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR): + Define these macros if <sys/stat.h> + doesn't. Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN. + (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64, + __xstat64): Define if not _LIBC. + (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC). + (__gen_tempname): Invoke gettimeofday only if + HAVE_GETTIMEOFDAY || _LIBC; + otherwise, fall back on plain "time". + Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600. + + * lib/mkstemp.c (__GT_FILE): Define to zero if not defined. + + * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2. + +2001-02-18 Paul Eggert <eggert@twinsun.com> + + * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h. + +2001-02-17 Paul Eggert <eggert@twinsun.com> + + * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC. + * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): + Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc). + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise. + +2001-02-17 Paul Eggert <eggert@twinsun.com> + + * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit): + Remove workaround macros for hosts that have mbrtowc but not + mbstate_t, as we now insist on proper declarations for both + before using mbrtowc. + +2001-02-17 Jim Meyering <meyering@lucent.com> + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for + getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt + further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on + UnixWare 7.1.1. + + * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc., + rather than AC_CACHE_VAL. + +2001-02-17 Jim Meyering <meyering@lucent.com> + + * lib/strtoul.c: Sync from GNU libc. Use double quotes, not <...> + around included file name. + + * lib/strnlen.c (__strnlen): Merge in a change from GNU libc. + + * lib/strftime.c: Update from GNU libc (the only changes were to + comments). + +2001-02-17 Jim Meyering <meyering@lucent.com> + + * lib/regex.c: Update from libc. + +2001-02-17 Bruno Haible <haible@clisp.cons.org> + + * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype + clash. + +2001-02-16 Paul Eggert <eggert@twinsun.com> + + * lib/alloca.c (malloc): Undef before defining, since stdlib.h + may have defined it. Needed for Encore Umax-3.0.9.16b systems. + Reported by Mark Hounschell via Paul Eggert. + +2001-02-07 Jim Meyering <meyering@lucent.com> + + * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug. + +2001-02-05 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because + it includes the patch required for `large file' support with at least + HP-UX's 10.20 /bin/cc. + +2001-02-03 Jim Meyering <meyering@lucent.com> + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of + AS_IF, now that it works once again (mysteriously). + * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise. + +2001-01-30 Jim Meyering <meyering@lucent.com> + + Don't use filenames that are 8.3-equivalent to "conftest" on DOS. + * m4/chown.m4: Rename conftestchown to conftest.chown. + * m4/rename.m4: s/conftestdir/conftest.d1/ and + s/conftestdir2/conftest.d2/. + * m4/utimes.m4: s/conftestdata/conftest.data/ + Inspired by Pavel Roskin's change in autoconf. + +2001-01-30 Bruno Haible <haible@clisp.cons.org> + + * lib/config.charset: Update for FreeBSD 4.2. + +2001-01-27 Jim Meyering <meyering@lucent.com> + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was + a use of AS_IF. + * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise. + +2001-01-26 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that + quotearg.c includes it. + +2001-01-26 Jim Meyering <meyering@lucent.com> + + * lib/quotearg.c: Include stddef.h. + * lib/quote.c: Include stddef.h. + Reported by Axel Kittenberger. + + * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking + line in double quotes so that it evokes a better diagnostic. + [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise. + Reported by Axel Kittenberger. + +2001-01-24 Stefan Monnier <monnier@cs.yale.edu> + + * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not' + as if it was a `charset'. + +2001-01-21 Bruno Haible <haible@clisp.cons.org> + + * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration + has const. + +2001-01-21 Bruno Haible <haible@clisp.cons.org> + + * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg, + to avoid a warning. Add back 'const' to inptr. + +2001-01-20 Jim Meyering <meyering@lucent.com> + + Be sure that headers are checked before used in code compiled + for the type checks. + * m4/jm-macros.m4 (jm_MACROS): Remove all header checks. + In place of that, invoke jm_CHECK_ALL_TYPES. + (jm_CHECK_ALL_HEADERS): New functions with the above checks. + (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS. + Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES; + The check for ssize_t was mistakenly run before the test for unistd.h. + + The configure-time check for stdbool.h was missing. + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH. + (jm_PREREQ_HASH): New function. + +2001-01-17 Jim Meyering <meyering@lucent.com> + + * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE, + for autoconf-2.49c. + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise. + +2001-01-16 Jim Meyering <meyering@lucent.com> + + * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4. + From Bruno Haible. + +2001-01-14 Jim Meyering <meyering@lucent.com> + + * m4/rename.m4: Use temporary directories named conftestdir{,2}, not + foo and bar. Create conftestdir/ in the script, not in the C code. + Remove directories in the script, not in the C code. + Remove conftestdir{,2} before trying to create the directory. + Make the entire configure script fail if the mkdir fails. + +2001-01-14 Jim Meyering <meyering@lucent.com> + + * lib/rename.c: New file. From Volker Borchert. + Include stdlib.h, string.h or strings.h, and xalloc.h. + Use strip_trailing_slashes rather than open-coding it. + +2001-01-03 Paul Eggert <eggert@twinsun.com> + + * lib/strftime.c: Sync with glibc time/strftime.c 1.81. + +2001-01-03 Jim Meyering <meyering@lucent.com> + + * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration + of local `inptr' to avoid warning with some system declarations of + iconv. + +2001-01-02 Volker Borchert <bt@teknon.de> + + * m4/rename.m4: New file. + * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME. + +2001-01-01 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available), + even on systems with utmpx.h. It's necessary for the declaration of + utmp's ut_user member. Reported by Andreas Jaeger. + + * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if + available. They are required for the declarations of getgrgid and + getpwuid resp. + (_jm_DECL_HEADERS): Check for grp.h and pwd.h. + Reported by Andreas Jaeger. + +2001-01-01 Alexandre Duret-Lutz <duret_g@epita.fr> + + * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by + expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN, + so `make install' also works in VPATH builds. + +2000-12-31 Alexandre Duret-Lutz <duret_g@epita.fr> + + * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR, + prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it + can be used in subdirectories. + +2000-12-29 Paul Eggert <eggert@twinsun.com> + + * lib/modechange.c: Do not assume that mode_t uses the + traditional octal encoding. E.g. "chmod 1 FOO" should set + the other-execute bit of FOO even if S_IXOTH != 1. + + (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH, + WOTH, XOTH, ALLM): New macros. + (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR, + S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH): + Use them. + (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID. + (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above. + (mode_compile): + No need to use uintmax_t; unsigned long is long enough. + Don't bother to get suffix since we don't use it. + +2000-12-26 Jim Meyering <meyering@lucent.com> + + * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work + better with autoheader. + +2000-12-24 Jim Meyering <meyering@lucent.com> + + * lib/hash.c (is_prime): Return explicit boolean values. + (hash_get_first): Return NULL to appease Irix5.6's 89. + Reported by Nelson Beebe. + +2000-12-19 Bruno Haible <haible@clisp.cons.org> + + * lib/localcharset.c (locale_charset): Add support for Win32. + +2000-12-18 Paul Eggert <eggert@twinsun.com> + + * lib/physmem.h, lib/physmem.c: New files. + + * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c. + (noinst_HEADERS): Add physmem.h. + + * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and + 't' for compatibility with Solaris 8 sort. + +2000-12-18 Bruno Haible <haible@clisp.cons.org> + + * lib/config.charset: Add support for BeOS. + +2000-12-17 Jim Meyering <meyering@lucent.com> + + * m4/dos.m4 (jm_AC_DOS): New file and macro. + * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS. + +2000-12-16 Jim Meyering <meyering@lucent.com> + + This bug had a serious impact on chown: `chown N:M FILE' (for integer + N and M) would have treated it like `chown N:N FILE'. + + * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/. + +2000-12-16 Jim Meyering <meyering@lucent.com> + + * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define + SHELLS_FILE to a file name that's useful on djgpp systems. + Include stdlib.h. + (ADDITIONAL_DEFAULT_SHELLS): Define. + (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS. + Based mostly on a patch from Prashant TR. + +2000-12-16 Bruno Haible <haible@clisp.cons.org> + + * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB, + VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256, + CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312. + +2000-12-08 Andreas Schwab <schwab@suse.de> + + * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an + invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set. + +2000-12-07 Jim Meyering <meyering@lucent.com> + + * lib/stripslash.c (ISSLASH): Define. + (strip_trailing_slashes): Use ISSLASH rather than comparing against + `/'. + From Prashant TR. + + * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define. + (dir_name_r): Declare this function as static. + [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd + manifest itself on a name containing a mix of slashes and + backslashes. + Make this function work with names starting with a DOS-style + drive letter and colon prefix. + (dir_name): Append `.' if necessary. + Based mostly on patches from Prashant TR and Eli Zaretskii. + + * lib/dirname.h (dir_name_r): Remove prototype. + +2000-12-06 Paul Eggert <eggert@twinsun.com> + + * m4/off_t-format.m4: Remove this file. + * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT. + +2000-12-06 Jim Meyering <meyering@lucent.com> + + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the + replacement strtoull, we may well need the replacement strtoul, too. + Check for declarations of strtoul and strtoull. + Check for strtol. Mainly as a cue to cause automake to include + strtol.c -- that file is included by each of strtoul.c and strtoull.c. + Check for limits.h -- strtol.c needs it. + +2000-12-05 Jim Meyering <meyering@lucent.com> + + * lib/dirname.c (dir_name_r): Add `const' in a few local declarations. + +2000-12-04 Jim Meyering <meyering@lucent.com> + + * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc. + Also include memory.h, stdlib.h, unistd.h if appropriate. + Reported by Andreas Jaeger (conflicting declaration of malloc). + +2000-12-02 Jim Meyering <meyering@lucent.com> + + * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro. + * m4/jm-macros.m4 (jm_MACROS): require it. + +2000-12-02 Jim Meyering <meyering@lucent.com> + + * lib/closeout.h: Make idempotent, to avoid some obscure warnings. + +2000-12-01 Paul Eggert <eggert@twinsun.com> + + * lib/memrchr.c: Include <config.h> before any system include file. + +2000-11-30 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h. + +2000-11-30 Jim Meyering <meyering@lucent.com> + + * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf. + +2000-11-29 Paul Eggert <eggert@twinsun.com> + + * lib/dirname.c (dir_name_r): Fix typo: int -> size_t. + +2000-11-26 Jim Meyering <meyering@lucent.com> + + * lib/memcoll.c: Include sys/types.h. From Werner Almesberger. + +2000-11-22 Paul Eggert <eggert@twinsun.com> + + * lib/strftime.c (my_strftime): Do not invoke mbrlen with a + size of (size_t) -1; it's not portable. + +2000-11-17 Jim Meyering <meyering@lucent.com> + + * lib/strstr.c: Update from GNU libc. + +2000-11-17 Akim Demaille <akim@epita.fr> + + * lib/obstack.h: Formatting changes. + (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would + prevent type checking. + (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't + cast the value to (void *): assigning a `foo *' to a `void *' + variable is valid. + (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int. + +2000-11-16 Jim Meyering <meyering@lucent.com> + + * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc. + +2000-11-11 Jim Meyering <meyering@lucent.com> + + * lib/error.c: Add a couple #includes, merging from GNU libc version. + +2000-11-10 Jim Meyering <meyering@lucent.com> + + * lib/obstack.h: Update from GNU libc. + * lib/obstack.c: Likewise. + +2000-11-08 Bruno Haible <haible@clisp.cons.org> + + * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb. + +2000-11-06 Paul Eggert <eggert@twinsun.com> + + * lib/getusershell.c (setusershell): Use rewind rather than + fseek/fseeko, to avoid configuration hassles with fseeko. + Don't bother opening SHELLS_FILE if shellstream is NULL; + it's not necessary. + +2000-11-05 Jim Meyering <meyering@lucent.com> + + * lib/makepath.h (make_dir): Declare. + * lib/makepath.c (make_dir): Remove `static' attribute. + Tweak a comment. + +2000-11-04 Jim Meyering <meyering@lucent.com> + + * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'. + +2000-11-04 Alexandre Duret-Lutz <duret_g@epita.fr> + + * lib/hash.c (hash_get_next): Fix a thinko: when ENTRY is the + last one in a bucket, advance to the next bucket. + +2000-11-02 Vesselin Atanasov <vesselin@bgnet.bg> + + * lib/fnmatch.c: Do not comment out all the code if we are using + the GNU C library, because in some cases we are replacing buggy + code in the GNU C library itself. + +2000-10-30 Stefan Monnier <monnier@cs.yale.edu> + + * regex.c (re_iswctype, re_wctype_to_bit): Fix braino. + (regex_compile): Catch bogus \(\1\). + +2000-10-30 Paul Eggert <eggert@twinsun.com> + + * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned. + (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs, + e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero. + +2000-10-30 Paul Eggert <eggert@twinsun.com> + + * lib/error.h, getline.h, modechange.h: + Remove "2000" from Copyright line, as the file hasn't been + changed this year other than in the copyright notice. + + * lib/xalloc.h: Add "2000" to Copyright line, as this file + was changed this year. + +2000-10-29 Jim Meyering <meyering@lucent.com> + + * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf + renaming. + * m4/ls-mntd-fs.m4: Likewise + +2000-10-29 Jim Meyering <meyering@lucent.com> + + * lib/xstat.in: Fix grammar in comment. + +2000-10-29 Greg Louis <glouis@dynamicro.on.ca> + + * lib/regex.h (__restrict_arr): Move definition out of #ifndef block. + Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but + doesn't define __restrict_arr. + +2000-10-28 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR. + (jm_PREREQ_MEMCHR): New function. + +2000-10-28 Jim Meyering <meyering@lucent.com> + + * lib/memchr.c: Update from libc. + Adjust for portability: + [HAVE_STDLIB_H]: Include stdlib.h. + [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h. + Undef __memchr, too. + [!weak_alias]: Define __memchr to memchr. + + * lib/regex.c: Update from libc. + * lib/regex.h: Likewise. + * lib/getopt1.c: Likewise. + * lib/memcmp.c: Likewise. + + * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko. + Avoid using fseek, when possible -- it's broken by design. + Patch by Ulrich Drepper. + +2000-10-27 Stefan Monnier <monnier@cs.yale.edu> + + * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal) + (re_match_2_internal, re_match_2_internal, re_match_2_internal): + Giving in to popular pressure to shut up the compiler with casts. + +2000-10-26 Jim Meyering <meyering@lucent.com> + + * lib/strftime.c: Update from libc. + +2000-10-25 Stefan Monnier <monnier@cs.yale.edu> + + * regex.c: More `unsigned char' -> `re_char' changes. + Also change several `int' into `re_wchar_t'. + (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove. + (PUSH_FAILURE_POINTER): Don't cast any more. + (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'. + We want GCC to complain, since this piece of code makes + re_match non-reentrant, which *should* be fixed. + (GET_BUFFER_SPACE): Use size_t rather than unsigned long. + (EXTEND_BUFFER): Use RETALLOC. + (SET_LIST_BIT): Don't cast. + (re_wchar_t): New type. + (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC + that those two functions will always properly return. + (IMMEDIATE_QUIT_CHECK): Cast to void. + (analyse_first): Use recursion rather than an explicit stack. + (re_compile_fastmap): Can't fail anymore. + (re_search_2): Don't check re_compile_fastmap for failure. + (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT. + Now also sets the new value (passed in a new argument). + (re_match_2_internal): Use it. + Also, use a new var `reg' of type size_t when looping through regs + rather than reuse the inappropriate `mcnt'. + +2000-10-25 Jim Meyering <meyering@lucent.com> + + * lib/obstack.c: Update from libc. + +2000-10-24 Kenichi Handa <handa@etl.go.jp> + + * regex.c (regex_compile): Change the way of handling a range from + a char less than 256 to a char not less than 256. + +2000-10-24 Andrew Innes <andrewi@gnu.org> + + * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on + NT-Emacs only. + (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT, + so that re_search functions only quit when callers expect them to. + +2000-10-23 Jim Meyering <meyering@lucent.com> + + * lib/hard-locale.c (hard_locale): Revert last change -- it was simply + wrong. That set_locale call must not have any side effects. + From Paul Eggert. + +2000-10-22 Jim Meyering <meyering@lucent.com> + + * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC. + [CYCLIC]: Remove now-unused definition. + + * lib/save-cwd.c (O_DIRECTORY): Define, if needed. + (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".". + Suggestion from Ulrich Drepper. + +2000-10-21 Jim Meyering <meyering@lucent.com> + + * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr. + * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro. + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr. + +2000-10-21 Jim Meyering <meyering@lucent.com> + + * lib/dirname.c (memrchr): Declare if necessary. + (dir_name): Remove the restriction that there be no + trailing slashes. Now, this code skips past them, effectively + ignoring them. + [TEST_DIRNAME] (main): New unit tests. + + * lib/memrchr.c: New file from GNU libc. + Undef __memrchr, too. + [!weak_alias]: Define __memrchr to memrchr. + Guard weak_alias use with `#ifdef weak_alias'. + +2000-10-21 Jim Meyering <meyering@lucent.com> + + * lib/dirname.c (dir_name_r): New function, factored out of dir_name. + (dir_name): Use dir_name_r. + * lib/dirname.h (dir_name_r): Declare it. + +2000-10-17 Jim Meyering <meyering@lucent.com> + + * lib/quote.h (PARAMS): Define and use. + Reported by Akim Demaille. + + * lib/getopt.c: Update from libc. + +2000-10-16 Jim Meyering <meyering@lucent.com> + + * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to + setlocale. + From Jan Fedak. + +2000-10-15 Stefan Monnier <monnier@cs.yale.edu> + + * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well. + +2000-09-25 Jim Meyering <meyering@lucent.com> + + * lib/md5.h (rol): Define (from GnuPG). + + * lib/sha.c: Give credit (GnuPG) where due. + (M): Use rol rather than open-coding it. + Add a FIXME comment. + +2000-09-21 Jim Meyering <meyering@lucent.com> + + * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added. + Reported by Michael Stone. + +2000-09-20 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c. + (noinst_HEADERS): Add sha.h. + Based on code from Scott G. Miller and from GnuPG. + +2000-09-18 Jim Meyering <meyering@lucent.com> + + * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of + LIBS. Otherwise, everyone ends up linking with -lelf for some + configurations. + Reported by Mike Stone. + +2000-09-15 Jim Meyering <meyering@lucent.com> + + * lib/regex.c: Update from libc. + +2000-09-10 Jim Meyering <meyering@lucent.com> + + * lib/getopt.c (_getopt_internal): Update from glibc. + +2000-09-09 Jim Meyering <meyering@lucent.com> + + * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't + think it should be used as a general replacement for isascii. + * lib/fnmatch.c: Likewise. + * lib/mbswidth.c: Likewise + * lib/regex.c: Likewise. + + Don't use atoi. + * lib/userspec.c: Include sys/param.h and limits.h. + Include xstrtol.h. + (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define. + (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define. + (parse_user_spec): Use xstrtoul, not atoi when converting numeric + UID, GID. Check range. + +2000-09-06 Jim Meyering <meyering@lucent.com> + + * lib/getopt.c (_getopt_internal): Update from glibc. + +2000-08-30 Jim Meyering <meyering@lucent.com> + + * lib/strftime.c: Merge in changes from GNU libc. + +2000-08-26 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4: Use jm_FUNC_FPENDING. + * m4/fpending.m4: New file. + +2000-08-26 Jim Meyering <meyering@lucent.com> + + * lib/closeout.c: Include "__fpending.h". + (close_stdout_status): Return right away if there's nothing to flush. + + * lib/Makefile.am (noinst_HEADERS): Add __fpending.h. + * lib/__fpending.c: New file. + * lib/__fpending.h: New file. + +2000-08-20 Jim Meyering <meyering@lucent.com> + + * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than + `#if !HAVE_UTMPX_H'. The latter would lose on systems with neither + utmp.h nor utmpx.h. Reported by Eli Zaretskii. + +2000-08-11 J. David Anglin <dave@hiauly1.hia.nrc.ca> + + Improve fileutils installation on systems where running + programs (like install) can't be unlinked. + * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro. + * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT. + +2000-08-07 Paul Eggert <eggert@twinsun.com> + + Standardize on "memory exhausted" instead of "Memory exhausted" + or "virtual memory exhausted". + * lib/obstack.c (print_and_abort): Use "memory exhausted", not + "virtual memory exhausted". + * lib/same.c (same_name): Invoke xalloc_die instead of printing + our own message. + * lib/userspec.c (parse_user_spec): Likewise. + * lib/bumpalloc.h: comment fix + * lib/same.c, userspec.c: Include xalloc.h. + + * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[], + not char *const and pointing to a constant array. + * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise. + (xrealloc): Comment fix. + + * lib/userspec.c (parse_user_spec): + Don't translate a message until just before returning, + to avoid unnecessary translation. + +2000-08-07 Jim Meyering <meyering@lucent.com> + + * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h, + chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c, + fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h, + getgroups.c, gethostname.c, getopt.h, group-member.c, + hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c, + linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c, + memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h, + pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c, + stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c, + strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c, + utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c, + yesno.c: Back out Copyright date changes for each file with no change + this year. This eases coordination with other programs using the same + source code modules. From Paul Eggert. + +2000-08-06 Paul Eggert <eggert@twinsun.com> + + * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int, + not char, for compatibility with glibc 2.1.3 strftime.c. + +2000-08-03 Greg McGary <greg@mcgary.org> + + * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER, + ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros. + (EXTEND_BUFFER): Use them. + +2000-08-01 Jim Meyering <meyering@lucent.com> + + * lib/dirname.c (ISSLASH): Define. + (BACKSLASH_IS_PATH_SEPARATOR): Define. + (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which + both `\' and `/' may be use as path separators. + Based on a patch from Prashant TR. + +2000-07-31 Paul Eggert <eggert@twinsun.com> + + * lib/quotearg.c (quotearg_n_options): Don't make the initial + slot vector a constant, since it might get modified. + +2000-07-31 Jim Meyering <meyering@lucent.com> + + * lib/xmalloc.c: Use `virtual memory exhausted', not + `Memory exhausted'. + * lib/obstack.c (print_and_abort): Likewise. + +2000-07-30 Paul Eggert <eggert@twinsun.com> + + * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0 + buffer, so that the caller can always quote one small + component of a "memory exhausted" message in slot 0. + From a suggestion by Jim Meyering. + +2000-07-30 Jim Meyering <meyering@lucent.com> + + * lib/makepath.c (make_path): Quote the other instance, too. + + * lib/quotearg.c (N_STATIC_SLOTVECS): Define. + (STATIC_BUF_SIZE): Define. + (quotearg_n_options): Use only statically allocated storage when + N < N_STATIC_SLOTVECS and the length of the quoted result is smaller + than STATIC_BUF_SIZE. + +2000-07-29 Jim Meyering <meyering@lucent.com> + + * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS. + * lib/dirname.c (dir_name): Likewise. + + * lib/basename.c (base_name): Use ISSLASH rather than comparing against + `/'. + + * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const. + (dir_name): Assert that there are no trailing slashes. + +2000-07-29 Bruno Haible <haible@clisp.cons.org> + + * lib/mbswidth.h (mbswidth): Add a flags argument. + (mbswidth): New declaration. + (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros. + * lib/mbswidth.c (mbswidth): Add a flags argument. + (mbsnwidth): New function. + +2000-07-24 Jim Meyering <meyering@lucent.com> + + * lib/mbswidth.c: Remove useless #else. From Bruno Haible. + +2000-07-23 Paul Eggert <eggert@twinsun.com> + + * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration. + +2000-07-23 Paul Eggert <eggert@twinsun.com> + + * lib/quotearg.c: Streamline by invoking multibyte code only if needed. + <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX. + (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX). + (quotearg_buffer_restyled): If a unibyte locale, don't bother to + invoke multibyte primitives. + +2000-07-23 Paul Eggert <eggert@twinsun.com> + + * lib/quotearg.c: + Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX), + so that mbstate_t is always defined. + + Do not inspect MB_LEN_MAX, since it's incorrectly defined to + be 1 in at least one GCC installation, and this configuration + error is likely to be common. Ignoring MB_LEN_MAX hurts + performance on hosts that have mbrtowc but have only unibyte + locales, but I assume these hosts are rare. + +2000-07-23 Paul Eggert <eggert@twinsun.com> + + * lib/mbswidth.c (_XOPEN_SOURCE): + Don't define; this causes problems on Solaris 7. + (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare. + +2000-07-23 Jim Meyering <meyering@lucent.com> + + * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these, + too: getgrgid, getpwuid, getuid. + +2000-07-23 Jim Meyering <meyering@lucent.com> + + * lib/basename.c (base_name): Add an assertion. + +2000-07-23 Bruno Haible <haible@clisp.cons.org> + + * lib/quotearg.c: When the system forces us to redefine mbstate_t, + shadow its mbsinit function. + +2000-07-17 Bruno Haible <haible@clisp.cons.org> + + * lib/mbswidth.h: New file. + * lib/mbswidth.c: New file. + * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c. + (noinst_HEADERS): Add mbswidth.h. + +2000-07-17 Bruno Haible <haible@clisp.cons.org> + + * lib/config.charset: Add support for FreeBSD. Improve support for + HP-UX and IRIX 6. + +2000-07-16 Bruno Haible <haible@clisp.cons.org> + + * m4/mbswidth.m4: New file. + * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH. + +2000-07-15 Jim Meyering <meyering@lucent.com> + + * lib/makepath.c: Include quote.h. + (make_path): Convert "`%s'" in format strings to "%s", and wrap each + corresponding argument in a `quote (...)' call. + Give better diagnostics. + + * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c. + (noinst_HEADERS): Add quote.h. + + * lib/quote.c (quote, quote_n): New file. Two functions taken verbatim + from tar's src/misc.c. + * lib/quote.h: New file. Prototypes for same. + +2000-07-14 Paul Eggert <eggert@twinsun.com> + + From a suggestion by Bruno Haible. + * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition. + Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT, + to decide whether to define the BeOS workaround macro; + this adjusts to the change to AC_MBSTATE_T. + +2000-07-14 Jim Meyering <meyering@lucent.com> + + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require + jm_AC_TYPE_UINTMAX_T. + +2000-07-13 Paul Eggert <eggert@twinsun.com> + + * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style. + + * lib/quotearg.c (quoting_style_args, quoting_style_vals, + quotearg_buffer_restyled): Add support for + clocale_quoting_style. Undo previous change to + locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}" + and "{RIGHT QUOTATION MARK}" msgids. + +2000-07-10 Paul Eggert <eggert@twinsun.com> + + From a suggestion by Bruno Haible. + * m4/mbstate_t.m4 (AC_MBSTATE_T): + Renamed from AC_MBSTATE_T_OBJECT. All uses changed. + Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT + and mbstate_t, to a single-part test that simply defines mbstate_t. + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): + s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/. + +2000-07-10 Jim Meyering <meyering@lucent.com> + + * m4/strerror_r.m4: Mirror the correction made in autoconf. + + * m4/gnu-source.m4: Output to confdefs.h directly. + Suggestion from Akim Demaille. + +2000-07-09 Paul Eggert <eggert@twinsun.com> + + The old behavior of quoting `like this' doesn't look good with + newer, ISO-style fonts. See: + http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html + + Instead, quote "like this" by default. Let the translator + tailor the locale-specific quoting behavior by providing + translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}. + + * lib/quotearg.c (N_): New macro. + (gettext_default): New function. + (quotearg_buffer_restyled): Use + gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and + gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote. + +2000-07-09 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required + to link seq. If so, set SEQ_LIBM to -lm. From Bruno Haible. + + * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro. + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it. + +2000-07-09 Jim Meyering <meyering@lucent.com> + + * lib/Most files: Update copyright dates to include 2000. + +2000-07-08 Jim Meyering <meyering@lucent.com> + + * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value + if not defined. + (xgethostname): Remove now-unnecessary #ifdef. + Move declaration of `err' into loop where it's used. + +2000-07-05 Paul Eggert <eggert@twinsun.com> + and Bruno Haible <haible@clisp.cons.org> + + * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t + only if the test for an object-type mbstate_t fails. This + prevents us from mistakenly reporting that mbstate_t is a + system object type after we "#define mbstate_t int" to work + around its lack. + +2000-07-05 Paul Eggert <eggert@twinsun.com> + and Bruno Haible <haible@clisp.cons.org> + + * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't. + +2000-07-05 Bruno Haible <haible@clisp.cons.org> + + * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer + to strerror_r. + Include <ctype.h> for use of isalpha. + +2000-07-05 Bruno Haible <haible@clisp.cons.org> + + * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug + by allocating a larger buffer. Test the gethostname return value for + being >= 0, not == 0, for BeOS. Don't exhaust memory if gethostname + returns an error and ENAMETOOLONG isn't defined. + +2000-07-05 Bruno Haible <haible@clisp.cons.org> + + * lib/quotearg.c (struct quoting_options): Simplify quote_these_too + dimension. + +2000-07-04 Jim Meyering <meyering@lucent.com> + + * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead + of the deprecated AC_CHECKING. + +2000-07-04 Jim Meyering <meyering@lucent.com> + + * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen. + Reported by Bruno Haible. + +2000-07-04 Jim Meyering <meyering@lucent.com> + + * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether + HAVE_MBRTOWC is set. Required at least for irix-5.6, which + lacks mbrtowc. + +2000-07-03 Paul Eggert <eggert@twinsun.com> + + * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13. + Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H. + +2000-07-03 Paul Eggert <eggert@twinsun.com> + and Bruno Haible <haible@clisp.cons.org> + + * lib/quotearg.c (mbrtowc): + Assign to *pwc, and return 1 only if result is nonzero. + (iswprint): Use ISPRINT when substituting our own mbrtowc. + +2000-07-03 Jim Meyering <meyering@lucent.com> + + * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen. + +2000-07-03 Jim Meyering <meyering@lucent.com> + + * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H. + This is necessary to get a definition of e.g., UTMP_FILE on + HP-UX 10.20. + From Bob Proulx. + +2000-07-02 Jim Meyering <meyering@lucent.com> + + * m4/mbstate_t.m4: Also define mbstate_t, if necessary. + + * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with + AC_LIBOBJ(function_name). + * m4/chown.m4: Likewise. + * m4/fnmatch.m4: Likewise. + * m4/ftruncate.m4: Likewise. + * m4/getgroups.m4: Likewise. + * m4/getline.m4: Likewise. + * m4/group-member.m4: Likewise. + * m4/jm-macros.m4: Likewise. + * m4/lstat.m4: Likewise. + * m4/malloc.m4: Likewise. + * m4/memcmp.m4: Likewise. + * m4/nanosleep.m4: Likewise. + * m4/putenv.m4: Likewise. + * m4/realloc.m4: Likewise. + * m4/regex.m4: Likewise. + * m4/stat.m4: Likewise. + * m4/strftime.m4: Likewise. + +2000-07-02 Jim Meyering <meyering@lucent.com> + + * lib/quotearg.c (mbstate_t): Don't define here. + +2000-07-02 Jim Meyering <meyering@lucent.com> + + * lib/nanosleep.c (SIGCONT): Define if not already defined. + +2000-07-01 Jim Meyering <meyering@lucent.com> + + * m4/uptime.m4: Put double quotes around use of $cross_compiling. + +2000-07-01 Jim Meyering <meyering@lucent.com> + + * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated + problem. + +2000-07-01 Bruno Haible <haible@clisp.cons.org> + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific + macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV. + +2000-07-01 Bruno Haible <haible@clisp.cons.org> + + * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV, + per change in ../m4/ls-mntd-fs.m4. + (read_filesystem_list): Ignore symbolic links. + +2000-06-29 Jim Meyering <meyering@lucent.com> + + * lib/same.c: Include <string.h> or <strings.h>, as appropriate, + for declaration of strcmp. + + * lib/long-options.c: Include <stdlib.h>, for declaration of exit. + + * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]: + Avoid warning by casting result to `char *' to remove `const'. + +2000-06-28 Jim Meyering <meyering@lucent.com> + + * m4/mbstate_t.m4: Use stdlib.h, not stdio.h. The latter is not + included by quotearg.c, for which we perform this test. From + Bruno Haible. + +2000-06-27 Bruno Haible <haible@clisp.cons.org> + + * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well. + * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or + <utmpx.h> exists, put readutmp.o into LIBOBJS. + +2000-06-27 Bruno Haible <haible@clisp.cons.org> + + * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c. + +2000-06-26 Paul Eggert <eggert@twinsun.com> + + savedir now sets errno on failure and invokes xmalloc to get memory. + Fix a couple of other minor bugs while we're at it. + + * lib/savedir.c (<unistd.h>): Do not include; there's no need. + (NAMLEN): Remove macro. + (malloc, realloc): Remove decls. + (stpcpy): Likewise. + ("xalloc.h"): Include. + (NAME_SIZE_DEFAULT): New macro. + (savedir): Use xmalloc / xrealloc to allocate memory. + Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero. + Skip "" directory entries. + Use strlen to calculate directory entry length, since the old method + is rarely used these days and isn't worth supporting. + Don't use a pointer after freeing it. + Check for integer overflow when calculating allocation size. + Use memcpy to copy entries, instead of stpcpy. + Set errno properly when returning NULL. + Check for readdir error. + +2000-06-26 Jim Meyering <meyering@lucent.com> + + * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort. + +2000-06-25 Jim Meyering <meyering@lucent.com> + + * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around + Linux header bug when _XOPEN_SOURCE is defined to 500. + +2000-06-25 Bruno Haible <haible@clisp.cons.org> + + * lib/unicodeio.c (print_unicode_char): Work around ansi2knr + deficiency. + +2000-06-25 Bruno Haible <haible@clisp.cons.org> + + * lib/getusershell.c (xmalloc, xrealloc): Remove functions. + Include xalloc.h. + Don't include <stdlib.h>. Don't declare malloc, realloc. + +2000-06-24 Jim Meyering <meyering@lucent.com> + + * m4/strerror_r.m4: Revive this file -- to try out an experimental + version of AC_FUNC_STRERROR_R that may work even on BeOS, a system + for which strerror does return char*, but which lacks a conveniently + accessible declaration of the function. If the compile-test says + strerror_r doesn't work, then resort to a `run'-test that works on + BeOS and segfaults on DEC Unix. + +2000-06-24 Jim Meyering <meyering@lucent.com> + + * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r. + +2000-06-23 Paul Eggert <eggert@twinsun.com> + + * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT. + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it. Add check for iswprint. + +2000-06-23 Paul Eggert <eggert@twinsun.com> + + * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5. + (mbrtowc, mbstate_t): Define substitutes if + HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT. + (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT, + not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H). + +2000-06-23 Jim Meyering <meyering@lucent.com> + + * m4/afs.m4: Add missing AC_MSG_RESULT. + Reported by Bruno Haible. + + * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/. + Suggestion from Bruno Haible. + +2000-06-23 Jim Meyering <meyering@lucent.com> + + * lib/getpass.c: New file, from Bruno Haible. Required for BeOS. + +2000-06-21 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass. + +2000-06-21 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c. + (noinst_HEADERS): Add getstr.h. + + * lib/getline.c (getstr): Move into a separate file. + * lib/getstr.c (getstr): New file, extracted from getline.c, with + the following changes: new parameter, delim2; both delim[12] + parameters have type `int', not `char'. The latter would lose + with 8-bit delimiters. + * lib/getstr.h: New file. + +2000-06-21 Bruno Haible <haible@clisp.cons.org> + + * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller + than 1024, return a memory chunk of least possible size, instead + of size PATH_MAX + 2. In the loop, increment the size proportionally. + Use free/xmalloc instead of xrealloc to avoid copying for very long + paths. + +2000-06-21 Bruno Haible <haible@clisp.cons.org> + + * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is + the empty string. + +2000-06-21 Bruno Haible <haible@clisp.cons.org> + + * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an + address, not strdup. Include <stdlib.h> and don't declare free(). + +2000-06-19 Jim Meyering <meyering@lucent.com> + + * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define. + +2000-06-18 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir. + + * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the + `checking whether...' message to be consistent with that of the + lstat test. + +2000-06-18 Jim Meyering <meyering@lucent.com> + + * lib/mkdir.c: Remove file, due mainly to copyright incompatibility. + Besides, these days every porting target provides a mkdir function. + + * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as + needed. (this snippet comes from src/system.h). + +2000-06-16 Bruno Haible <haible@clisp.cons.org> + + * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C. + +2000-06-15 Paul Eggert <eggert@twinsun.com> + + * lib/human.c (adjust_value): New function. + (human_readable_inexact): Apply rounding style even when + printing approximate values. + +2000-06-14 Paul Eggert <eggert@twinsun.com> + + * lib/human.c (human_readable_inexact): Allow an input block + size that is not a multiple of the output block size, and vice versa. + Reported by Piergiorgio Sartor. + +2000-06-14 Paul Eggert <eggert@twinsun.com> + + * lib/getdate.y (get_date): Apply relative times after time + zone indicator, not before. Reported by Todd A. Jacobs. + +2000-06-13 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (all-local): Depend on lstat.c and stat.c. + + * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c. + +2000-06-12 Paul Eggert <eggert@twinsun.com> + + * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free". + +2000-06-12 Jim Meyering <meyering@lucent.com> + + * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with + AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an + optional argument. + * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply + the optional argument, `lib'. + +2000-06-08 Jim Meyering <meyering@lucent.com> + + * m4/largefile.m4: Remove file (now that it's part of autoconf). + +2000-06-04 Paul Eggert <eggert@twinsun.com> + + Rewrite largefile configuration so that we don't need to run + getconf and don't need AC_CANONICAL_HOST. [I'm leaving the use of + AC_CANONICAL_HOST in configure.in -- jmm] + + * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS, + AC_SYS_LARGEFILE_SPACE_APPEND): Remove. + (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro. + (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from + CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY. + All uses changed. + Instead of inspecting the output of getconf, try to compile the + test program without and with the macro definition. + (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check + for getconf. Instead, check for the needed flags by compiling + test programs. + +2000-06-04 Paul Eggert <eggert@twinsun.com> + + * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H. + +2000-06-04 Jim Meyering <meyering@lucent.com> + + * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like + SunOS 4.1.4 for which gid_t is an unsigned type. + +2000-06-03 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS, + now that autoconf requires that. + + * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required + #undefs. E.g., #undef HAVE_DECL_FERROR_UNLOCKED. + Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that. + +2000-06-03 Jim Meyering <meyering@lucent.com> + + * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr. + +2000-06-03 Bruno Haible <haible@clisp.cons.org> + + * m4/glibc21.m4: New file. + * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21. + +2000-06-03 Bruno Haible <haible@clisp.cons.org> + + * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or + newer, don't install charset.alias. + * lib/config.charset: Change the Linux/glibc rules so they become empty + on glibc-2.1 or newer. + +2000-06-02 Jim Meyering <meyering@lucent.com> + + * lib/mountlist.c: Back out last change. Instead, do this... + * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the + me_dummy member using the same `ignore'-testing code. + * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored + fs_type strings. + From Mark D. Roth. + +2000-05-29 Jim Meyering <meyering@lucent.com> + + * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore + mounts with the `ignore' attribute. Based on a patch from + Mark D. Roth. + +2000-05-28 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from + jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK. + * m4/stat.m4: Likewise. + * m4/lstat.m4: Likewise. + * m4/lstat-slash.m4: Remove file (absorbed into autoconf). + + * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R. + * m4/strerror_r.m4: Remove file (absorbed into autoconf). + +2000-05-26 Jim Meyering <meyering@lucent.com> + + * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'. + +2000-05-24 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that + autoconf requires that. + * m4/lib-check.m4: Likewise. + * m4/jm-macros.m4: Likewise. + * m4/strftime.m4: Likewise. + + * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in + AC_CHECK_DECLS, now that autoconf requires that. + +2000-05-22 Jim Meyering <meyering@lucent.com> + + * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK. + * m4/lstat.m4: Likewise. + +2000-05-22 Jim Meyering <meyering@lucent.com> + + * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block. + +2000-05-20 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro. + (jm_PREREQ): Use it. + +2000-05-18 Jim Meyering <meyering@lucent.com> + + * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list + back, too, since it may have been modified by allocate_entry. + (hash_delete): Rewrite to use neither the assignment operator + nor the comma operator in an if-expression. + +2000-05-15 Paul Eggert <eggert@twinsun.com> + + * lib/closeout.c: + <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO): + Remove; no longer needed. + "quotearg.h": Add include. + (file_name): Do not bother to explicitly initialize to NULL; it's less + efficient on some hosts. + (close_stdout_status): Remove test as to whether stdout was already + closed; it breaks for the case "echo x | sort >&-". + Quote file name colons. + Do not assume that _("write error") lacks format strings. + +2000-05-15 Jim Meyering <meyering@lucent.com> + + * lib/version-etc.c (version_etc_copyright): Update the copyright + string used in all --version output. + +2000-05-14 Jim Meyering <meyering@lucent.com> + + * lib/closeout.c (close_stdout_set_file_name): New function. + (close_stdout_status): Use new file-scoped global. + Return right away if fstat says the stdout file descriptor is invalid. + * lib/closeout.h (close_stdout_set_file_name): Declare. + +2000-05-10 Jim Meyering <meyering@lucent.com> + + * lib/closeout.c [default_exit_status]: New file-scoped variable. + (close_stdout_set_status): New function. + * lib/closeout.h (close_stdout_set_status): Declare. + +2000-05-09 Jim Meyering <meyering@lucent.com> + + * m4/gettext.m4: Rename this... + * m4/libintl.m4: ...to this. + +2000-05-08 Jim Meyering <meyering@lucent.com> + + * lib/long-options.c: Don't include closeout.h. + (parse_long_options): Don't call close_stdout for --version. + +2000-05-06 Paul Eggert <eggert@twinsun.com> + + * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to + be 500, instead of _GNU_SOURCE to be 1, to work around glibc + 2.1.3 bug. This avoids a clash when files like regex.c define + _GNU_SOURCE. + +2000-05-06 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit. + (AC_REPLACE_FUNCS): Add strnlen. + + * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file. + * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY. + + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around + AC_SEARCH_LIBS call for nanosleep. + (LIB_NANOSLEEP): Set and AC_SUBST. + +2000-05-06 Jim Meyering <meyering@lucent.com> + + * lib/strnlen.c: Undefine __strnlen and strnlen. + [!weak_alias]: Define __strnlen to strnlen. + + * lib/atexit.c: New file, from libiberty. + +2000-05-06 Jim Meyering <meyering@lucent.com> + + * lib/closeout.c (close_stdout_status): Also check for errors on the + stderr stream. + +2000-05-05 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around + AC_SEARCH_LIBS call for clock_gettime. + (LIB_CLOCK_GETTIME): Set and AC_SUBST. + + * m4/search-libs.m4: Update from autoconf. + + su doesn't work on Solaris 2.6. + * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include + <shadow.h>. Reported by Dragos Harabor. + +2000-05-05 Bruno Haible <haible@clisp.cons.org> + + * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and + memcpy instead of xmalloc, xrealloc, path_concat. + (locale_charset): Treat empty environment variables as absent. + (DIRECTORY_SEPARATOR, ISSLASH): New macros. + +2000-05-04 Jim Meyering <meyering@lucent.com> + + * lib/getopt.c: Update from glibc. + * lib/obstack.c: Likewise. + * lib/obstack.h: Likewise. + * lib/regex.c: Likewise. NB: K&R compiler support is dropped for this + file + + * lib/regex.h: Likewise. + * lib/strndup.c: Likewise. + * lib/strnlen.c: New file, from glibc. + +2000-05-03 Jim Meyering <meyering@lucent.com> + + * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup. + +2000-05-02 Paul Eggert <eggert@twinsun.com> + + * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if + this is needed to make ftello visible (e.g. glibc 2.1.3). Use + compile-time test, rather than inspecting host and OS, to + decide whether to define _LARGEFILE_SOURCE. + +2000-05-01 Jim Meyering <meyering@lucent.com> + + * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING. + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support. + Based on a patch from Bruno Haible. + +2000-05-01 Jim Meyering <meyering@lucent.com> + + * lib/full-write.c (full_write): Remove `FIXME' part of comment. + +2000-04-29 Jim Meyering <meyering@lucent.com> + + * lib/path-concat.c: Declare strdup only if it's not defined. + * lib/canon-host.c: Likewise. + +2000-04-28 Jim Meyering <meyering@lucent.com> + + * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to + avoid redefinition warning on some systems (HPUX). Otherwise, regex.h + is included first, then limits.h is included by locale.h by libintl.h. + From John David Anglin. + +2000-04-25 Jim Meyering <meyering@lucent.com> + + * lib/makepath.c (S_IRWXUGO): Define. + (make_path): Always perform explicit chmod if MODE specifies any + of the `special' permission bits. Prompted by a bug report against + install from Mate Wierdl and Joost van Baal. + +2000-04-18 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro. + (jm_PREREQ): Use it. + +2000-04-18 Jim Meyering <meyering@lucent.com> + + * lib/README: New file. + + * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define + getpagesize. For BeOS. Based on a patch from Bruno Haible. + +2000-04-17 Jim Meyering <meyering@lucent.com> + + Get it right :-) + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the + actual #define via AH_VERBATIM. Don't need separate AC_DEFINE. + Suggestion from Akim Demaille. + +2000-04-17 Jim Meyering <meyering@lucent.com> + + * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since + the definition of it to rpl_strftime also defined-away the system's + declaration. + +2000-04-15 Jim Meyering <meyering@lucent.com> + + Use `C' to denote so-called `contiguous' files, the same way + that tar does. + * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define. + (ftypelet): Use S_ISCTG. + From Michael Deutschmann. + +2000-04-14 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg + form of AC_DEFINE. Otherwise, the #ifndef in AH_VERBATIM gets + clobbered. + +2000-04-14 Jim Meyering <meyering@lucent.com> + + * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime. + +2000-04-13 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new + AH_VERBATIM to insert required #ifndef into config.h.in. + Suggestion from Akim Demaille. + +2000-04-12 Jim Meyering <meyering@lucent.com> + + * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not + `AC_CHECK_HEADER' to check for locale.h. Thanks to a report from + Christian Krackowizer. + + More code moved from ../configure.in into (jm_CHECK_ALL_TYPES). + * m4/jm-macros.m4 (_GNU_SOURCE): Define. + (AC_SYS_LARGEFILE): Require. + (AM_C_PROTOTYPES): Require. + +2000-04-08 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3 + names don't conflict. Reported by Eli Zaretskii. + +2000-04-07 Jim Meyering <meyering@lucent.com> + + * lib/putenv.c: Move inclusion of errno.h so it follows that of + sys/types.h, to work around system header problems on AIX 3.2.5. + From Bruno Haible. + +2000-04-07 Bruno Haible <haible@clisp.cons.org> + + * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv + bug. Deal with the different error behavior of Irix iconv. + +2000-04-05 Paul Eggert <eggert@twinsun.com> + + * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on + IRIX if the installer said otherwise. + +2000-04-05 Jim Meyering <meyering@lucent.com> + + Portability tweaks required for ultrix4.3. + * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>. + (jm_CHECK_DECLS): Add getutent to the list of functions. + (_jm_DECL_HEADERS): Add utmpx.h. + From John David Anglin. + + * m4/strftime.m4: Back out the 2000-04-02 change. + Instead of that change, simply undefine putenv in the test program. + +2000-04-05 Jim Meyering <meyering@lucent.com> + + Portability tweaks required for ultrix4.3. + * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare + getutent. + * lib/readutmp.c: Include sys/types.h before sys/stat.h. + * lib/canon-host.c: Declare strdup. + * lib/path-concat.c: Likewise. + From John David Anglin. + +2000-04-04 Jim Meyering <meyering@lucent.com> + + Be more DOS 8.3-friendly. + * lib/ref-add.sin: Renamed from ref-add.sed.in. + * lib/ref-del.sin: Renamed from ref-del.sed.in. + * lib/Makefile.am: Reflect renaming. + Reported by Eli Zaretskii. + + Use a temporary file name that won't clash with `charset.alias' + in the DOS 8.3 name space. + * lib/Makefile.am (charset_tmp): Define. + (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t. + (uninstall-local): Likewise. + Reported by Eli Zaretskii. + +2000-04-03 Jim Meyering <meyering@lucent.com> + + * m4/gettext.m4: Fix typo in comment. + + * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from + textutils/configure.in). Suggestion from Paul Eggert. + (AC_CHECK_FUNCS): Add nl_langinfo. (also from textutils/configure.in) + +2000-04-02 Paul Eggert <eggert@twinsun.com> + + * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment + variable in the shell rather than using putenv, which isn't + portable. This avoids the configure-time inter-test dependency + on the potentially-renamed putenv function. + +2000-03-30 Paul Eggert <eggert@twinsun.com> + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h> + before checking struct stat.st_blksize, so that + HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly. + +2000-03-29 Paul Eggert <eggert@twinsun.com> + + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime, + since strftime.c uses HAVE_STRFTIME to decide whether to use + the underlying strftime. + +2000-03-29 Paul Eggert <eggert@twinsun.com> + + * lib/time/strftime.c (my_strftime): Make sure we call the system + strftime, not ourselves, when invoking the underlying strftime. + +2000-03-24 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in. + (charset_alias): Define. + (install-exec-local): Factor out common code. + (uninstall-local): Split lines longer than 80. + (ref-add.sed, ref-del.sed): Remove rules... (do the following instead) + (SUFFIXES): Define. + (.sed.in.sed): New rule. Don't redirect directly to $@. + (CLEANFILES): Add ref-add.sed and ref-del.sed. + +2000-03-19 Bruno Haible <haible@clisp.cons.org> + + * lib/config.charset: Output a line containing "Packages using this + file". + * lib/ref-add.sed.in, lib/ref-del.sed.in: New files. + * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed, + ref-del.sed): New rules. + +2000-03-17 Jim Meyering <meyering@lucent.com> + + * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H. + Otherwise, include <strings.h> + +2000-03-17 Bruno Haible <haible@clisp.cons.org> + + * lib/unicodeio.c (utf8_wctomb): New function. + (print_unicode_char): Pass the Unicode character to iconv in UTF-8 + format instead of in UCS-4 with platform dependent endianness. + +2000-03-10 Jim Meyering <meyering@lucent.com> + + * m4/lib-check.m4: Look for getspnam in -lgen, too. + From Marco Franzen. + +2000-03-07 Paul Eggert <eggert@twinsun.com> + + * lib/savedir.c (savedir): Work even if directory size is + negative; this can happen with some screwy NFS configurations. + +2000-03-06 Jim Meyering <meyering@lucent.com> + + * lib/localcharset.c (get_charset_aliases): Don't try to free file_name + if it's NULL (because we ran out of memory). From Bruno Haible. + +2000-03-05 Jim Meyering <meyering@lucent.com> + + * lib/localcharset.c ("path-concat.h"): Include. + (get_charset_aliases): Use path_concat instead of ANSI string + concatenation. + + * lib/unicodeio.h (PARAMS): Define. + Use it to guard prototype. + +2000-03-04 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE, + for lib/localcharset.c. + +2000-03-04 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (install-exec-local): Create $(libdir) before + installing into it. + (uninstall-local): Uncomment this rule so `make distcheck' works + once again. + + * lib/unicodeio.c (<errno.h>): Include it. + (errno): Declare if not defined. + + * lib/localcharset.c: Add Bruno's comment justifying use of volatile. + + * lib/config.charset: New version, incorporating remarks from a linux + i18n mailing list. From Bruno Haible. + +2000-03-04 Bruno Haible <haible@clisp.cons.org> + + * m4/codeset.m4: New file. + * m4/iconv.m4: New file. + * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV. + +2000-03-03 Jim Meyering <meyering@lucent.com> + + * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'. + +2000-03-02 Jim Meyering <meyering@lucent.com> + + * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so + the messages come out on separate lines. + + * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS, + rather than jm_CHECK_DECLARATIONS. + * m4/decl.m4: Remove now-unused file. + + * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and + geteuid. + +2000-03-02 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (EXTRA_DIST): Add config.charset. + +2000-03-01 Jim Meyering <meyering@lucent.com> + + * lib/localcharset.c: Guard some #includes with `#if HAVE_...'. + * lib/unicodeio.c: Likewise. + +2000-03-01 Bruno Haible <haible@clisp.cons.org> + + * lib/config.charset: New file. + * lib/localcharset.c: New file. + * lib/unicodeio.h, lib/unicodeio.c: New files. + * lib/Makefile.am (DEFS): Add -DLIBDIR=... + (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c. + (noinst_HEADERS): Add unicodeio.h. + (all-local, install-exec-local, charset.alias): New targets. + +2000-02-28 Paul Eggert <eggert@twinsun.com> + + * lib/quotearg.c (ALERT_CHAR): New macro. + (quotearg_buffer_restyled): Use it. + +2000-02-27 Jim Meyering <meyering@lucent.com> + + * m4/check-decl.m4: Add getenv to the list. + +2000-02-27 Jim Meyering <meyering@lucent.com> + + * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/. + Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'. + + * lib/backupfile.c: Guard inclusion of stdlib.h with + `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'. + Declare malloc if needed. + + * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of + `#ifndef HAVE_DECL..' + now that autoconf always defines the HAVE_DECL_ symbols. + * lib/human.c: Likewise. + * lib/same.c: Likewise. + * lib/strtoumax.c: Likewise. + + * lib/backupfile.c: Arrange for cpp to fail if the configure-time + declaration check was not run. + * lib/hash.c: Likewise. + * lib/human.c: Likewise. + * lib/same.c: Likewise. + * lib/strtoumax.c: Likewise. + + * lib/userspec.c (parse_user_spec): If there is no `:' but there is a + `.', then first look up the entire `.'-containing string as a login + name. + +2000-02-23 Jim Meyering <meyering@lucent.com> + + * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it + in place of my hack. + +2000-02-18 Paul Eggert <eggert@twinsun.com> + + * lib/getdate.y: Handle two-digit years with leading zeros correctly. + (textint): New typedef. + (parser_control): Member year changed from int to textint. + All uses changed. + (YYSTYPE): Removed; replaced by %union with int and textint members. + (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN, + tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER, + tYEAR_UNIT, tZONE, o_merid): Now of type <intval>. + (tSNUMBER, tUNUMBER): Now of type <textintval>. + (date, number, to_year): Use width of number in digits, not its value, + to determine whether it's a 2-digit year, or a 2-digit time. + (yylex): Store number of digits of numeric tokens. + Reported by John Kendall. + + (parser_control): Changed from struct parser_control to typedef (for + consistency). All uses changed. + + (tID): Removed; not used. + (yylex): Return '?' for unknown identifiers, rather than (unused) tID. + +2000-02-14 Paul Eggert <eggert@twinsun.com> + + * lib/getpagesize.h (getpagesize): Port to VMS for Alpha; + adapted from changes to grep getpagesize.h by Martin P.J. Zinser. + +2000-02-12 Jim Meyering <meyering@lucent.com> + + * lib/userspec.c (ISDIGIT): Define it. + (isdigit): Remove definition. + (is_number): Use ISDIGIT, not isdigit. + <libintl.h>: Include. + (_ and N_): Define. + (parse_user_spec): Mark translatable strings. + +2000-02-10 Jim Meyering <meyering@lucent.com> + + With these changes, nanosleep.[ch] are finally enough like the other + lib/* replacement files to compile on a few more losing systems. + + * lib/nanosleep.h: Don't include config.h. + Remove prototype from declaration of nanosleep. + (PARAMS): Remove now-unneeded definition. + * lib/nanosleep.c: #undef nanosleep. + (rpl_nanosleep): Rename from nanosleep. + +2000-02-10 Jim Meyering <meyering@lucent.com> + + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from + gnu_nanosleep to rpl_nanosleep. + +2000-02-09 Jim Meyering <meyering@lucent.com> + + * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in + struct spwd, rather than in struct passwd. Reported by Gaël Quéri. + +2000-02-08 Akim Demaille <akim@epita.fr> + + * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with + `[' and `]' and remove uses of `changequote'. + (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise. + (AC_SYS_LARGEFILE): Likewise. + * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise. + * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use + of changequote. + * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise. + * m4/readdir.m4 (jm_FUNC_READDIR): Likewise + * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main. + * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise. + +2000-02-05 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros. + Remove explicit use of AC_HEADER_TIME. It is required by + jm_CHECK_TYPE_STRUCT_TIMESPEC. Using AC_HEADER_TIME and + `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but + in autoconf whereby the expansion of the latter ended up preceding + the expansion of its prerequisite, AC_HEADER_TIME. + Reported by Volker Borchert. + +2000-02-03 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname. + +2000-02-03 Jim Meyering <meyering@lucent.com> + + * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION', + rather than with `#if HAVE_UTMPNAME'. + +2000-02-02 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no + definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/. + Reported by Eli Zaretskii. + +2000-02-01 Jim Meyering <meyering@lucent.com> + + * lib/readutmp.h (UT_USER): Add parens. From Andreas Schwab. + +2000-01-31 Jim Meyering <meyering@lucent.com> + + * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of + functions. Add the time.h and sys/time.h headers along with the + AC_REQUIRE'ment of AC_HEADER_TIME. + +2000-01-31 Jim Meyering <meyering@lucent.com> + + * lib/nanosleep.h (nanosleep): Guard declaration with + `#if ! HAVE_DECL_NANOSLEEP'. + Without this, OFS gets a redeclaration error for rpl_nanosleep, due to + the declaration in that vendor's sys/timers.h. + Reported by Christian Krackowizer. + + * lib/quotearg.c (ISASCII): Add #undef and move definition to follow + inclusion of wctype.h to work around Solaris 2.6 namespace pollution. + (ISPRINT): Likewise. + Reported by Tom Tromey. + +2000-01-30 Jim Meyering <meyering@lucent.com> + + * m4/lib-check.m4: Clean up some kludgy old shadow password tests. + + * m4/prereq.m4 (utmp_includes): Define. + Check for ut_user and ut_name members in both struct utmpx + and struct utmp. + +2000-01-30 Jim Meyering <meyering@lucent.com> + + * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of + hard-coding uses of ->ut_name. The latter doesn't work with new Linux + header files where only utmpx.ut_user is declared. + + * lib/readutmp.h (UT_USER): Define. + +2000-01-29 Jim Meyering <meyering@lucent.com> + + * m4/lib-check.m4: New file containing library-related checks from + fileutils and sh-utils (textutils had none). + +2000-01-28 Jim Meyering <meyering@lucent.com> + + * m4/perl.m4: Change format of warning message to look more like that + from the missing script. Suggestion from François Pinard. + +2000-01-25 Jim Meyering <meyering@lucent.com> + + * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as + well as time.h in the compile check. + * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it. + Fix typo in cross-compiling case: s/yes/no/. + +2000-01-23 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4: Move df-related tests here from + fileutils/configure.in + + * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/ + (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters. + + * m4/fsusage.m4: New file. Extracted from fileutils/configure.in. + s/space/ac_fsusage_space/. + (jm_FILE_SYSTEM_USAGE): Take two parameters. + + * m4/ftruncate.m4: New file (derived from part of + fileutils/configure.in). + * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it. + (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT. + + * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN): + AC_SUBST these here, rather than just in sh-util/configure.in, so + that the now-shared-by-fileutils-and-textutils lib/Makefile.am are + all the same. + (AM_FUNC_OBSTACK): Add (from fileutils/configure.in). + (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils. + (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in). + (AC_SUBST(POW_LIBM)): Likewise. + (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in. + +2000-01-23 Jim Meyering <meyering@lucent.com> + + * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of + obstack.c. + +2000-01-22 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST. + + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h. + + * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils' + configure.in + (AC_CHECK_HEADERS): Likewise for sh-utils. + (AC_CHECK_HEADERS): Likewise for textutils. + Merge the three lists of headers. + + * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro. Parts moved here + from fileutils' configure.in. + + * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)' + code. Moved tests into their own function (_jm_DECL_HEADERS) in + check-decl.m4. + + * m4/check-decl.m4: Use #if rather than #ifdef. + Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL. + (jm_CHECK_DECLARATIONS): Add strtoul strtoull. + (_jm_DECL_HEADERS): Define new function. + (jm_CHECK_DECLARATIONS): Require it. + +2000-01-22 Jim Meyering <meyering@lucent.com> + + * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul. + [! HAVE_DECL_STRTOULL]: Declare strtoull. + Required for some AIX systems. Reported by Christian Krackowizer. + [TESTING] (main): New function. + + 1997-10-17 Eli Zaretskii <eliz@is.elta.co.il> + * lib/dirname.c (dir_name): Support for DOS-style file names with drive + letters. + + * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of + iswprint. + + * lib/strverscmp.c (ISDIGIT): Define. + (strverscmp): Use ISDIGIT, not isdigit. + +2000-01-19 Jim Meyering <meyering@lucent.com> + + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too. + Use AC_HEADER_TIME. Volker Borchert reported that OpenBSD-2.3/sparc + defines `struct timespec' in <sys/time.h> + + * m4/c-bs-a.m4: Remove uses of changequote altogether. + Thanks to Akim for explaining. + +2000-01-17 Paul Eggert <eggert@twinsun.com> + + * lib/nanosleep.c (nanosleep): + Don't use SA_INTERRUPT to decide whether to call sigaction, as + POSIX.1 doesn't require SA_INTERRUPT and some systems + (e.g. Solaris 7) don't define it. Use SA_NOCLDSTOP instead; + it's been part of POSIX.1 since day 1 (in 1988). + +2000-01-17 Jim Meyering <meyering@lucent.com> + + * lib/interlock: Remove unused file. Reported by François Pinard. + +2000-01-16 Paul Eggert <eggert@twinsun.com> + + * lib/quotearg.c (quotearg_buffer_restyled): Do not quote + alert, backslash, formfeed, and vertical tab unnecessarily in + shell quoting style. + +2000-01-16 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV, + AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME, + jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA, + AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME. + +2000-01-16 Jim Meyering <meyering@lucent.com> + + * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )' + because the latter didn't work. + +2000-01-15 Jim Meyering <meyering@lucent.com> + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell. + (AC_REPLACE_FUNCS): Add memcpy and memset. + Add these, too: stime strcspn stpcpy strstr strtol strtoul. + Add strpbrk. + Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp. + +2000-01-12 Jim Meyering <meyering@lucent.com> + + * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro. + (jm_PREREQ): Use it. + (jm_PREREQ_READUTMP): New macro. + (jm_PREREQ): Use it. + +2000-01-11 Paul Eggert <eggert@twinsun.com> + + Quote multibyte characters correctly. + * m4/c-bs-a.m4: New file. + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro. + (jm_PREREQ): Use it. + +2000-01-11 Paul Eggert <eggert@twinsun.com> + + * m4/uintmax_t.m4: Port to autoconf 2.13. + +2000-01-08 Jim Meyering <meyering@ascend.com> + + * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro. + * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it. + +2000-01-04 Jim Meyering <meyering@ascend.com> + + * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from + jm_STRUCT_DIRENT_D_TYPE. + * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from + jm_STRUCT_DIRENT_D_INO. + * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from + jm_STRUCT_UTIMBUF. + * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/ + renamings. + * m4/utime.m4: Likewise. + + * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro. + * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it. + +2000-01-03 Paul Eggert <eggert@twinsun.com> + + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt + (for Solaris 7) and in -lposix4 (for Solaris 2.5.1). + +2000-01-02 Jim Meyering <meyering@ascend.com> + + * m4/search-libs.m4: Escape `$' in $3 of dnl comment. I no longer + remember if this is necessary. + +1999-12-26 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: Use it here. + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro. + +1999-12-23 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: Check for clock_gettime (moved from + fileutils/configure.in) + Check for gettimeofday. + +1999-12-20 Jim Meyering <meyering@ascend.com> + + * m4/strftime.m4: Remove kludge, now that I'm using the fixed + autoconf-2.14a-1999-12-20. + +1999-12-19 Jim Meyering <meyering@ascend.com> + + * m4/lstat-slash.m4: New file. + * m4/jm-macros.m4: Use the new macro: + jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK. + +1999-12-07 Jim Meyering <meyering@ascend.com> + + * m4/perl.m4: Require that File::Compare be available, too. + Too many systems seem to lack it. + + * m4/strftime.m4: Add checks for most of the cpp macros tested in + GNU's strftime.c. Prompted by a patch from Paul Eggert. + +1999-11-18 Paul Eggert <eggert@twinsun.com> + + * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a + problem with the QNX 4.25 shell, which doesn't propagate exit + status of failed commands inside shell assignments. + +1999-11-17 Jim Meyering <meyering@ascend.com> + + * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES. + +1999-11-07 Jim Meyering <meyering@ascend.com> + + * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE. + +1999-11-06 Jim Meyering <meyering@ascend.com> + + * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro. + * m4/jm-macros.m4 (jm_MACROS): Use it here. + +1999-11-05 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from + configure.in of textutils, fileutils, and sh-utils into this one + (shared between those packages) file. + Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated + AC_STRUCT_ST_BLKSIZE. + +1999-11-03 Jim Meyering <meyering@ascend.com> + + * m4/ssize_t.m4: Remove file. No longer needed since the new version + of AC_CHECK_TYPE checks includes unistd.h. + * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'. + Suggestion from Akim Demaille. + +1999-10-30 Jim Meyering <meyering@ascend.com> + + * m4/uintmax_t.m4: Require 2.14a. Remove backslash before backtick in + m4-quoted string. + * m4/ls-mntd-fs.m4: Likewise. + * m4/jm-macros.m4: Likewise. Also, use AC_TYPE_SSIZE_T instead + * m4/jm-winsz1.m4: Likewise. + + * m4/const.m4: Remove file, since the fix made it into the experimental + version of autoconf. + * m4/mktime.m4: Likewise. + + * m4/check-type.m4: Remove file, now that the latest version of + AC_CHECK_TYPE takes a third arg to specify additional #includes. + + * m4/ssize_t.m4: New file, requires experimental version of autoconf. + * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked + AC_CHECK_TYPE. + +1999-10-04 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: Don't require autoconf-2.14.1. + +1999-09-22 Paul Eggert <eggert@twinsun.com> + + * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC + 2.95.1 bug with HP-UX 10.20. + +1999-09-17 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup. + Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3 + due to missing strdup (against sh-utils-2.0). + +1999-08-29 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: Require jm_BISON. + * m4/bison.m4: New file. + +1999-08-17 Paul Eggert <eggert@twinsun.com> + + * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma + in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20. + +1999-08-05 Jim Meyering <meyering@ascend.com> + + * m4/getline.m4: Rename test file from conftestdata to conftest.data + to avoid conflicts with `conftest' on 8+3 filesystems. + Suggestion from Eli Zaretskii. + +1999-08-04 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of + fileutils and sh-utils (textutils's getline test was inadequate). + (AM_FUNC_GETLINE): Run this test. + (AC_CHECK_FUNCS): Check for getdelim. + Reported by Bob Proulx. + +1999-08-02 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: Add a comment. + +1999-08-01 Paul Eggert <eggert@twinsun.com> + + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether + <inttypes.h> defines strtoumax as a macro (and not as a + function). + +1999-08-01 Paul Eggert <eggert@twinsun.com> + + * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure + that we can shift, multiply and divide unsigned long long + values; Ultrix cc can't do it. + +1999-08-01 Paul Eggert <eggert@twinsun.com> + + * m4/mktime.m4: New file, which is a preview of what should appear + in the next public autoconf release. + +1999-08-01 Paul Eggert <eggert@twinsun.com> + + * m4/lfs.m4: Remove this file. + * m4/largefile.m4: New file. It contains the old contents of + lfs.m4, except that all names with prefix AC_LFS have been + changed to use the prefix AC_SYS_LARGEFILE instead, to be + compatible with future autoconf versions. Also, some minor m4 + quoting problems have been fixed. + +1999-08-01 Paul Eggert <eggert@twinsun.com> + + * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines. + Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl. + (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting, + and simplify the shell code. + +1999-08-01 Jim Meyering <meyering@ascend.com> + + * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from + m4. + +1999-07-20 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove. + +1999-07-15 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize. + +1999-05-22 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr. + +1999-05-20 Jim Meyering <meyering@ascend.com> + + * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine. + Add a colon after each `then' in case $4 is empty. + +1999-05-16 Jim Meyering <meyering@ascend.com> + + * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS. + +1999-05-10 Jim Meyering <meyering@ascend.com> + + * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME. + + * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed + AC_FUNC_MKTIME. + +1999-05-10 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> + + * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments. + +1999-05-04 Paul Eggert <eggert@twinsun.com> + + * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS, + not CPPFLAGS, so that linking works correctly in IRIX. + +1999-04-30 Paul Eggert <eggert@twinsun.com> + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2. + +1999-04-20 Paul Eggert <eggert@twinsun.com> + + * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long + long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro. + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require + jm_AC_TYPE_UNSIGNED_LONG_LONG. + * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro. + + * m4/lfs.m4: Port to AIX and HP-UX. Support cross-compilation. + +1999-04-20 Jim Meyering <meyering@ascend.com> + + * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG. + AC_REPLACE xstroull if necessary. From Paul Eggert. + (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq. + +1999-04-18 Jim Meyering <meyering@ascend.com> + + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro. + * m4/jm-macros.m4: Use it. + +1999-04-06 Jim Meyering <meyering@ascend.com> + + * m4/strftime.m4: Remove test for %f. + +1999-03-29 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the + superset of the AC_TYPE_* checks in the textutils, fileutils, + and sh-utils, plus AC_TYPE_PID_T. Paul Eggert suggested adding + AC_TYPE_PID_T. + +1999-03-28 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: Define GNU_PACKAGE here. + Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is + replaced e.g., in the *.sh files of the sh-utils. + +1999-03-20 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/. + * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX. + Don't depend on AM_GLIBC. Suggestions from Alain Magloire. + +1999-03-19 Jim Meyering <meyering@ascend.com> + + * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro. + +1999-03-12 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED. + +1999-03-07 Jim Meyering <meyering@ascend.com> + + * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are + declared. + +1999-02-17 Jim Meyering <meyering@ascend.com> + + * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of + brackets in macro definition. From Eli Zaretskii and Alain Magloire. + +1999-02-07 Jim Meyering <meyering@ascend.com> + + * m4/group-member.m4: New file -- extracted from sh-utils' + configure.in. + + 1999-02-05 Eli Zaretskii <eliz@is.elta.co.il> + * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names. + +1999-02-06 Jim Meyering <meyering@ascend.com> + + * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS. + * m4/fnmatch.m4: Likewise. + * m4/getgroups.m4: Likewise. + * m4/lstat.m4: Likewise. + * m4/malloc.m4: Likewise. + * m4/putenv.m4: Likewise. + * m4/realloc.m4: Likewise. + * m4/regex.m4: Likewise. + * m4/stat.m4: Likewise. + * m4/strftime.m4: Likewise. + Suggestion from Alain Magloire. + + * m4/chown.m4: Use `.$ac_objext', not `.o'. + * m4/fnmatch.m4: Likewise. + * m4/getgroups.m4: Likewise. + * m4/getline.m4: Likewise. + * m4/lstat.m4: Likewise. + * m4/malloc.m4: Likewise. + * m4/memcmp.m4: Likewise. + * m4/putenv.m4: Likewise. + * m4/realloc.m4: Likewise. + * m4/regex.m4: Likewise. + * m4/stat.m4: Likewise. + * m4/strftime.m4: Likewise. + Suggestion from Alain Magloire. + + * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires + an argument. + + * m4/regex.m4: Add a run-time Test for proper operation of + re_compile_pattern. + +1999-01-31 Jim Meyering <meyering@ascend.com> + + * m4/getloadavg.m4: Check for locale.h and the function, setlocale. + +1999-01-30 Jim Meyering <meyering@ascend.com> + + * m4/check-type.m4: Use 3-arg form of AC_DEFINE. + + * m4/jm-mktime.m4: Make this a wrapper around the official + AM_FUNC_MKTIME rather than my private copy, now that the official one + is up to date. + * m4/mktime.m4: Remove file. + + * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE. + * m4/uptime.m4: Likewise. + * m4/uintmax_t.m4: Likewise. + +1999-01-28 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: Use jm_AFS. + * m4/afs.m4: New file (from fileutils' configure.in). + + * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros. + * m4/chown.m4: Likewise. + * m4/d-ino.m4: Likewise. + * m4/d-type.m4: Likewise. + * m4/fnmatch.m4: Likewise. + * m4/getgroups.m4: Likewise. + * m4/gettext.m4: Likewise. + * m4/jm-mktime.m4: Likewise. + * m4/jm-winsz2.m4: Likewise. + * m4/lcmessage.m4: Likewise. + * m4/ls-mntd-fs.m4: Likewise. + * m4/malloc.m4: Likewise. + * m4/memcmp.m4: Likewise. + * m4/putenv.m4: Likewise. + * m4/realloc.m4: Likewise. + * m4/st_mtim.m4: Likewise. + * m4/strftime.m4: Likewise. + +1999-01-16 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4 (ARGMATCH_DIE): Define. + (ARGMATCH_DIE_DECL): Define. + +1999-01-12 Jim Meyering <meyering@ascend.com> + + * m4/Makefile.am.in: Rewrite to avoid using fmt. + Reported by Lars Hecking. + +1999-01-10 Jim Meyering <meyering@ascend.com> + + * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my + gross kludge. + * m4/inttypes_h.m4: Likewise. + * m4/lstat.m4: Likewise. + * m4/malloc.m4: Likewise. + * m4/readdir.m4: Likewise. + * m4/realloc.m4: Likewise. + * m4/st_dm_mode.m4: Likewise. + * m4/stat.m4: Likewise. + * m4/utimbuf.m4: Likewise. + * m4/utimes.m4: Likewise. + + * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the + AC_CHECK_FUNCS hack. Now, it's still a hack, but at least the + comments in config.h.in are meaningful. + + * m4/jm-macros.m4: Require autoconf-2.13 here. + + * m4/regex.m4: By default, don't use the included regex.c on systems + with glibc 2. Suggestion from Uli Drepper. + +1999-01-02 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: Replace strcasecmp and strncasecmp. + +1998-12-18 Jim Meyering <meyering@ascend.com> + + * m4/Makefile.am.in (Makefile.am): Simplify rule. + Based on a suggestion from Lars Hecking. + +1998-11-16 Paul Eggert <eggert@twinsun.com> + + * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11. + +1998-11-16 Jim Meyering <meyering@ascend.com> + + * m4/lfs.m4: Double-quote the `uname...` expression. + +1998-11-14 Jim Meyering <meyering@ascend.com> + + * m4/lstat.m4: Correct comment. POSIX does not permit it to succeed. + * m4/stat.m4: Likewise. + +1998-11-03 Jim Meyering <meyering@ascend.com> + + * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG. + * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG. + +1998-10-18 Jim Meyering <meyering@ascend.com> + + * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro. + +1998-10-17 Jim Meyering <meyering@ascend.com> + + * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to + include, though we still hard-code the `require'-like AC_CHECK_HEADERS + calls for those previously hard-coded headers. Instead, take a new + parameter. + (jm_CHECK_DECLARATIONS): Reflect interface change. + * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise. + (jm_CHECK_DECL_LOCALTIME_R): New macro. + + * m4/mktime.m4: Test for spring-forward gap before long-running test. + +1998-10-14 Jim Meyering <meyering@ascend.com> + + * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0" + instead of "TZ=America/Vancouver". From Paul Eggert. + +1998-10-11 Jim Meyering <meyering@ascend.com> + + * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro. + This adds a test for a recently added compatibility fix for mktime.c. + * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME. + +1998-09-27 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH. + + * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro. Extracted from + ../configure.in, including a change from Gordon Matzigkeit to allow + cross-compiling for the Hurd. + + * m4/glibc.m4: New file/macro to test for the GNU C Library + versions 1 and 2. From Gordon Matzigkeit. + Indent. + +1998-09-21 Jim Meyering <meyering@ascend.com> + + * m4/chown.m4: Declare locals: before, after. From Andries Brouwer. + +1998-08-18 Paul Eggert <eggert@twinsun.com> + + Port nanosecond-resolution times to UnixWare 2.1.2 and + pedantic Solaris 2.6. + + * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from + AC_STRUCT_ST_MTIM. + * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): + Generate name of ns member, instead of just 1 or undef. + Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode. + +1998-08-15 Jim Meyering <meyering@ascend.com> + + * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file. + * m4/check-type.m4: New file. Replacement for AC_CHECK_TYPE. + * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int) + instead of jm_TYPE_SSIZE_T. + +1998-08-12 Jim Meyering <meyering@ascend.com> + + * m4/st_dm_mode.m4: New file. From Johan Danielsson. + +1998-08-02 Jim Meyering <meyering@ascend.com> + + * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM + in acconfig.h manually. + +1998-07-31 Paul Eggert <eggert@twinsun.com> + + * m4/st_mtim.m4: New file. + +1998-07-28 Jim Meyering <meyering@ascend.com> + + * m4/utimes.m4: Undef stat. + +1998-07-25 Jim Meyering <meyering@ascend.com> + + * m4/utime.m4 (jm_FUNC_UTIME): New file and macro. + * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro. + +1998-07-09 Manfred Hollstein <manfred@s-direktnet.de> + + * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the + uid and gid actually remain unchanged. + +1998-07-07 Jim Meyering <meyering@ascend.com> + + * m4/jm-glibc-io.m4: Remove fclose_unlocked. + +1998-07-04 Jim Meyering <meyering@ascend.com> + + * m4/regex.m4: Use syscmd, ifelse, and sysval. Mainly as an exercise + to prove that this macro can be used in packages without regex.c. + +1998-07-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> + + * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h> + is to be used. + +1998-07-03 Jim Meyering <meyering@ascend.com> + + * m4/gettext.m4: Add -lintl if it's found to be necessary. + + * m4/gettext.m4: New file -- from gettext-0.10.35. + * m4/lcmessage.m4: Likewise. + * m4/progtest.m4: Likewise. + + * m4/regex.m4 (jm_WITH_REGEX): New file and macro. + * m4/jm-macros.m4: Require the new macro. + +1998-06-29 Jim Meyering <meyering@ascend.com> + + * m4/fstypename.m4: Include sys/param.h. NetBSD 1.3.1 requires this + for the definition of NGROUPS (used in a system header included + by sys/mount.h). + +1998-06-28 Jim Meyering <meyering@ascend.com> + + * m4/ls-mntd-fs.m4: New file. + * m4/fstypename.m4: New file. + + * m4/jm-macros.m4: Require the new macro. + * m4/jm-glibc-io.m4: New file. + +1998-05-19 Jim Meyering <meyering@ascend.com> + + * m4/jm-macros.m4: Add jm_FUNC_LCHOWN. + * m4/lchown.m4: New file. + + * m4/Makefile.am.in: New file. + * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in. + +1998-05-14 Jim Meyering <meyering@ascend.com> + + * m4/Makefile.am (EXTRA_DIST): Add them. + * m4/jm-macros.m4: New file. + * m4/utimbuf.m4: New file. + +1998-05-12 Jim Meyering <meyering@ascend.com> + + * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4. + +1998-05-11 Jim Meyering <meyering@ascend.com> + + * m4/isc-posix.m4: New file. + +1998-05-10 Jim Meyering <meyering@ascend.com> + + * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date. + +1998-05-09 Jim Meyering <meyering@ascend.com> + + * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4. + (EXTRA_DIST): Remove mktime.m4, now that the new version is included + with automake. + + * m4/ssize_t.m4: New file. + * m4/mktime.m4: Remove file -- the new automake has this now. + +1998-04-26 Jim Meyering <meyering@ascend.com> + + * m4/assert.m4: New file. + * m4/Makefile.am (EXTRA_DIST): Add assert.m4. + +1998-04-05 Jim Meyering <meyering@ascend.com> + + * m4/prereq.m4 (jm_PREREQ_REGEX): New macro. + (jm_PREREQ): Use it here. + +1998-03-23 Jim Meyering <meyering@eng.ascend.com> + + * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H + in acconfig.h. + +1998-03-15 Jim Meyering <meyering@eng.ascend.com> + + * m4/prereq.m4: New file. + * m4/error.m4: New file. + * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4. + +1998-02-07 Jim Meyering <meyering@eng.ascend.com> + + * m4/getline.m4: Don't set am_cv_func_working_getline before the + cache-check for the same variable -- that defeated the purpose of + the test; the test program was never run. This was a problem only + on systems with losing getline functions -- HP-UX 10.20 is one. + Reported by Bjorn Helgaas. + +1998-02-06 Jim Meyering <meyering@eng.ascend.com> + + * m4/Makefile.am (EXTRA_DIST): Add perl.m4. + +1998-01-10 Jim Meyering <meyering@na-net.ornl.gov> + + * m4/Makefile.am (EXTRA_DIST): Add const.m4. + + * m4/const.m4: New file. Use an initializer in this declaration + typedef int charset[2]; const charset x; + Reported by Bob Glickstein. + +1997-12-21 Jim Meyering <meyering@na-net.ornl.gov> + + * m4/chown.m4: Fix reversed types on -1 args to chown. + From Kaveh Ghazi. + +1997-12-14 Jim Meyering <meyering@na-net.ornl.gov> + + * m4/check-decl.m4: s/DECLARATION_/DECL_/g. + Add lseek and memchr. + + * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g. + T.E.Dickey <dickey@clark.net> said that some older preprocessors + have a 20-character limit on names. + +1997-11-30 Jim Meyering <meyering@na-net.ornl.gov> + + * m4/inttypes_h.m4: New file. + * m4/uintmax_t.m4: New file. + * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4. + + + ----- + + Local Variables: + coding: utf-8 + End: + + 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.