New module xsetenv.
[gnulib.git] / lib / ChangeLog
index 4d446b0..0d41783 100644 (file)
@@ -1,3 +1,521 @@
+2003-01-27  Bruno Haible  <bruno@clisp.org>
+
+       * xsetenv.h: New file, from GNU gettext.
+       * xsetenv.c: New file, from GNU gettext.
+
+2003-01-23  Bruno Haible  <bruno@clisp.org>
+
+       * minmax.h: New file, from GNU gettext, with comments from Paul Eggert.
+
+2003-01-22  Bruno Haible  <bruno@clisp.org>
+
+       * exit.h: New file, from GNU gettext.
+
+2003-01-11  Bruno Haible  <bruno@clisp.org>
+
+       * stpcpy.h (stpcpy): Use ANSI C function declarations.
+       * strcase.h (strcasecmp, strncasecmp): Likewise.
+
+2003-01-14  Jim Meyering  <jim@meyering.net>
+
+       * same.c (same_name): Tweak a comment.
+
+2003-01-11  Bruno Haible  <bruno@clisp.org>
+
+       * same.c (same_name): Reorder tests so as to avoid calling stat()
+       when a string comparison is sufficient.
+
+2003-01-11  Bruno Haible  <bruno@clisp.org>
+
+       * readtokens.c (readtoken): Cast character to 'unsigned char', not
+       'unsigned int'.
+
+2003-01-11  Bruno Haible  <bruno@clisp.org>
+
+       * hash-pjw.c: Add comment about low quality of this function.
+
+2003-01-12  Paul Eggert  <eggert@twinsun.com>
+
+       Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
+       to avoid collisions with libcurses and libreadline.
+
+       * Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
+       * getstr.h, getstr.c: Remove.
+       * 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.
+
+       * linebuffer.c (readlinebuffer): Renamed from readline.
+       All uses changed.
+       * linebuffer.h: Likewise.
+       (readline): Remove backward-compatibility macro.
+
+2003-01-12  Jim Meyering  <jim@meyering.net>
+
+       * makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
+
+2003-01-10  Bruno Haible  <bruno@clisp.org>
+
+       * alloca_.h: New file.
+       * getdate.y: Unconditionally include alloca.h.
+       * makepath.c: Likewise.
+       * setenv.c: Likewise.
+       * userspec.c: Likewise.
+
+2003-01-09  Bruno Haible  <bruno@clisp.org>
+
+       * stdbool.h.in: New file.
+
+2003-01-08  Bruno Haible  <bruno@clisp.org>
+
+       * safe-read.c: Include specification header first, to ensure its
+       selfcontainedness.
+       * full-write.c: Likewise.
+
+2003-01-08  Jim Meyering  <jim@meyering.net>
+
+       * full-write.c: Undefine and define-away `const' after inclusion
+       of errno.h, not before.  Suggestion from Bruno Haible.
+
+2003-01-07  Jim Meyering  <jim@meyering.net>
+
+       * full-write.c: Rework so that it may serve to define full_read, too.
+       * full-read.c: Simply #define FULL_READ and include full-write.c.
+
+2003-01-06  Jim Meyering  <jim@meyering.net>
+
+       * version-etc.c: Update year in translatable copyright string.
+
+2002-12-25  Bruno Haible  <bruno@clisp.org>
+
+       * strtoimax.c: Include <stdint.h> as an alternative to <inttypes.h>.
+       * xstrtol.h: Likewise.
+       * xstrtoimax.c: Likewise.
+       * xstrtoumax.c: Likewise.
+       * human.h: Likewise.
+
+       * tempname.c: Include <inttypes.h> too. Avoids a compilation error
+       on systems that have <inttypes.h> but not <stdint.h>.
+
+2002-12-31  Paul Eggert  <eggert@twinsun.com>
+
+       * memcoll.c (memcoll): Fall back on a simple algorithm using
+       memcmp if strcoll doesn't work.
+
+2002-12-23  Bruno Haible  <bruno@clisp.org>
+
+       * localcharset.h: New file.
+       * localcharset.c: Include it.
+       * unicodeio.c: Likewise.
+
+2002-12-22  Bruno Haible  <bruno@clisp.org>
+
+       * utime.c (utime_null): No need to call ftruncate if the file was
+       nonempty.
+
+2002-12-23  Bruno Haible  <bruno@clisp.org>
+
+       * memcoll.c (STRCOLL): New macro.
+       (memcoll): Use it.
+
+2002-12-22  Bruno Haible  <bruno@clisp.org>
+
+       * getstr.h (getstr): Define, to avoid clash with libcurses.
+       * linebuffer.h (readline): Define, to avoid clash with libreadline.
+
+2002-12-22  Bruno Haible  <bruno@clisp.org>
+
+       * getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not HAVE_TM_ZONE.
+
+2002-12-23  Bruno Haible  <bruno@clisp.org>
+
+       * getline.h: Include <stddef.h>, for size_t.
+
+       * unicodeio.h: Include <stddef.h>, for size_t.
+       * unicodeio.c: Don't include <stddef.h>.
+
+2002-12-17  Bruno Haible  <bruno@clisp.org>
+
+       * canon-host.c (strdup): Remove unused declaration.
+
+       * fsusage.c: Include full_read.h.
+       (get_fs_usage): Use full_read instead of safe_read.
+
+       * utime.c (utime_null): Use SAFE_READ_ERROR.
+
+2002-12-11  Bruno Haible  <bruno@clisp.org>
+
+       * setenv.h: Rewritten to cope with systems that have setenv() but not
+       unsetenv().
+       * 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 SunOS4.
+
+       2001-12-11  Bruno Haible  <bruno@clisp.org>
+
+               * setenv.c: Declare alloca.
+               (compar_fn_t): New typedef.
+               (KNOWN_VALUE, STORE_VALUE): Use it.
+
+       * 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.
+       * exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
+       Choose values that are less likely to collide with system fnmatch
+       options.
+       * 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  Jim Meyering  <jim@meyering.net>
+
+       * 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.
+
+       * 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>
+
+       * 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.
+
+       * unlocked-io.h: New file, from GNU diffutils,
+       but with proper copyright notice and attribution.
+       * gen-uio: Remove.
+       * 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.
+       * 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.
+
+       * xstat.in: Remove file.  Contents moved into stat.c.
+       * stat.c: New file.  Contents mostly from xstat.in.
+       * stat.c: Rework so that it may serve to define rpl_lstat, too.
+       * lstat.c: New file. Simply #define LSTAT and include stat.c.
+
+       * safe-read.c: Rework so that it may serve to define safe_write, too.
+       * safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
+
+2002-12-03  Jim Meyering  <jim@meyering.net>
+
+       * 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.
+
+       * safe-read.c (IS_EINTR): Define.
+       (safe_read): Use IS_EINTR in place of in-function cpp directives.
+
+2002-12-02  Bruno Haible  <bruno@clisp.org>
+
+       * 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.
+       * safe-write.h (SAFE_WRITE_ERROR): Define.
+
+       * safe-read.c (EINTR): Remove definition.
+       (safe_read): Don't use EINTR if it is absent.
+
+2002-12-02  Jim Meyering  <jim@meyering.net>
+
+       * 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.
+
+       * safe-read.h (SAFE_READ_ERROR): Define.
+
+2002-12-01  Jim Meyering  <jim@meyering.net>
+
+       * 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>
+
+       * 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@gnu.org>
+
+       * strdup.c: copy from libc again, with jim's ok.
+       * .cppi-disable: re-add strdup.c
+
+2002-11-25    <karl@gnu.org>
+
+       * strtoll.c: copy from libc, meaning we now #include <strtol.c>
+       instead of "strtol.c".
+
+2002-11-25  Jim Meyering  <jim@meyering.net>
+
+       * mktime.c: Sync from libc, now that it has the latest fix.
+
+2002-11-24    <karl@gnu.org>
+
+       * 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:
+
+       * mktime.c: Merge in changes from libc.
+
+       Avoid a link-time failure on some Linux systems.
+       * 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>
+
+       * sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
+       Use `unsigned', not `int', as type of index.
+
+       * xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
+
+       * fsusage.c: Remove unneeded parentheses around operands of `defined'.
+
+2002-11-22  Paul Eggert  <eggert@twinsun.com>
+
+       * 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  Paul Eggert  <eggert@twinsun.com>
+
+       * 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.
+       * 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  Bruno Haible  <bruno@clisp.org>
+
+       * safe-read.h: Assume C89. Add comments.
+       (safe_read): Change return type to size_t.
+       * safe-read.c (safe_read): Change return type to size_t. Handle byte
+       counts > SSIZE_MAX correctly.
+       * safe-write.h: New file.
+       * safe-write.c: New file.
+       * full-read.h: New file.
+       * full-read.c: New file.
+       * full-write.h: Assume C89. Add comments.
+       * full-write.c: Include safe-write.h.
+       (full_write): Rewritten to use safe_write.
+       Suggested by Jim Meyering and Paul Eggert.
+
+2002-11-21  Bruno Haible  <bruno@clisp.org>
+
+       Remove case insensitive option matching.
+       * argmatch.h (argcasematch): Remove declaration.
+       (ARGCASEMATCH): Remove macro.
+       (__xargmatch_internal): Remove case_sensitive argument.
+       (XARGMATCH): Update.
+       (XARGCASEMATCH): Remove macro.
+       * 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.
+
+       * xmalloc.c: Change compile-time error message. Add comment about
+       required autoconf version.
+
+2002-11-21  Jim Meyering  <jim@meyering.net>
+
+       * strdup.c (strdup): Tweak comment and initial #if/#include.
+
+       Merge in changes from the coreutils.
+
+       2002-09-25  Paul Eggert  <eggert@twinsun.com>
+       * 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.
+
+       * mountlist.c: #undef MNT_IGNORE before defining it, to avoid warning
+       on FreeBSD.
+
+       * makepath.c (make_path): Restore umask *before* creating the final
+       component.
+       (make_path): Minor reformatting.
+
+       * xmalloc.c: Adjust to work with new autoconf macros, AC_FUNC_MALLOC
+       and AC_FUNC_REALLOC: test #ifndef HAVE_MALLOC/HAVE_REALLOC.
+
+       * 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-20  Paul Eggert  <eggert@twinsun.com>
+
+       Merge argmatch cleanups from Bison.  Assume C89.
+
+       * 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.
+       * 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>
+
+       * mbswidth.c: Include mbswidth.h right at the beginning.
+       * mbswidth.h: Include <stddef.h>, for size_t.
+
+       * mbswidth.h (PARAMS): Remove macro.
+       (mbswidth, mbsnwidth): Use ANSI C function declarations.
+       * mbswidth.c (mbswidth, mbsnwidth): Likewise.
+
+       * gcd.h (PARAMS): Remove macro.
+       (gcd): Use ANSI C function declarations.
+       * gcd.c (gcd): Likewise.
+
+2002-11-15  Bruno Haible  <bruno@clisp.org>
+
+       * strcspn.c: Include <stddef.h>.
+       (strcspn): Use ANSI C function declaration. Change return type to
+       size_t. Use NULL.
+       * strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
+       (strpbrk): Use NULL.
+       * strpbrk.h (PARAMS): Remove macro.
+       (strpbrk): Use ANSI C function declaration.
+       * strstr.c: Don't include <sys/types.h>.
+       * strstr.h (PARAMS): Remove macro.
+       (strstr): Use ANSI C function declarations.
+
+2002-11-06  Bruno Haible  <bruno@clisp.org>
+
+       * gcd.h (gcd): Change argument type to 'unsigned long'.
+       * gcd.c (gcd): Likewise.
+
+2002-11-05  Bruno Haible  <bruno@clisp.org>
+
+       * gcd.h: New file, from gettext-0.11.5.
+       * gcd.c: New file, from gettext-0.11.5.
+
+2002-11-05  Bruno Haible  <bruno@clisp.org>
+
+       * error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
+       * getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
+       * obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
+       * regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
+
+       * argmatch.c: Include gettext.h instead of <locale.h> and <libintl.h>.
+       * makepath.c: Include gettext.h instead of <locale.h> and <libintl.h>.
+
+       * closeout.c: Include gettext.h instead of <libintl.h>.
+       * human.c: Include gettext.h instead of <libintl.h>.
+       * quotearg.c: Include gettext.h instead of <libintl.h>.
+       * rpmatch.c: Include gettext.h instead of <libintl.h>.
+       * unicodeio.c: Include gettext.h instead of <libintl.h>.
+       * userspec.c: Include gettext.h instead of <libintl.h>.
+       * version-etc.c: Include gettext.h instead of <libintl.h>.
+       * xmalloc.c: Include gettext.h instead of <libintl.h>.
+       (textdomain): Remove definition.
+       * xmemcoll.c: Include gettext.h instead of <libintl.h>.
+
+       * long-options.c: Remove include of <libintl.h> and definition of _.
+       * same.c: Remove include of <libintl.h> and definition of _.
+
+2002-11-04  Bruno Haible  <bruno@clisp.org>
+
+       * stpcpy.h: New file, from GNU gettext-0.11.5.
+       * strcase.h: New file, from GNU gettext-0.11.5.
+       * strpbrk.h: New file, from GNU gettext-0.11.5.
+       * strstr.h: New file, from GNU gettext-0.11.5.
+       * xgetcwd.h: New file, from GNU gettext-0.11.5.
+
 2002-05-09  Bruno Haible  <bruno@clisp.org>
 
        * config.charset: Update for newest glibc. Add canonical names