9a34b6023bb490247297549012ab67e7cd0b16e1
[gnulib.git] / lib / ChangeLog
1 2000-10-28  Jim Meyering  <meyering@lucent.com>
2
3         * memchr.c: Update from libc.
4         Adjust for portability:
5         [HAVE_STDLIB_H]: Include stdlib.h.
6         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
7         Undef __memchr, too.
8         [!weak_alias]: Define __memchr to memchr.
9
10         * regex.c: Update from libc.
11         * regex.h: Likewise.
12         * getopt1.c: Likewise.
13         * memcmp.c: Likewise.
14
15         * getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseek0.
16         Patch by Ulrich Drepper.
17
18 2000-10-26  Jim Meyering  <meyering@lucent.com>
19
20         * strftime.c: Update from libc.
21
22 2000-10-25  Jim Meyering  <meyering@lucent.com>
23
24         * obstack.c: Update from libc.
25
26 2000-10-23  Jim Meyering  <meyering@lucent.com>
27
28         * hard-locale.c (hard_locale): Revert last change -- it was simply
29         wrong.  That set_locale call must not have any side effects.
30         From Paul Eggert.
31
32 2000-10-22  Jim Meyering  <meyering@lucent.com>
33
34         * md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
35         [CYCLIC]: Remove now-unused definition.
36
37         * save-cwd.c (O_DIRECTORY): Define, if needed.
38         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
39         Suggestion from Ulrich Drepper.
40
41 2000-10-21  Jim Meyering  <meyering@lucent.com>
42
43         * dirname.c (dir_name_r): New function, factored out of dir_name.
44         (dir_name): Use dir_name_r.
45         * dirname.h (dir_name_r): Declare it.
46
47 2000-10-21  Jim Meyering  <meyering@lucent.com>
48
49         * dirname.c (memrchr): Declare if necessary.
50         (dir_name): Remove the restriction that there be no
51         trailing slashes.  Now, this code skips past them, effectively
52         ignoring them.
53         [TEST_DIRNAME] (main): New unit tests.
54
55         * memrchr.c: New file from GNU libc.
56         Undef __memrchr, too.
57         [!weak_alias]: Define __memrchr to memrchr.
58         Guard weak_alias use with `#ifdef weak_alias'.
59
60 2000-10-17  Jim Meyering  <meyering@lucent.com>
61
62         * quote.h (PARAMS): Define and use.
63         Reported by Akim Demaille.
64
65         * getopt.c: Update from libc.
66
67 2000-10-16  Jim Meyering  <meyering@lucent.com>
68
69         * hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to setlocale.
70         From Jan Fedak.
71
72 2000-09-25  Jim Meyering  <meyering@lucent.com>
73
74         * md5.h (rol): Define (from GnuPG).
75
76         * sha.c: Give credit (GnuPG) where due.
77         (M): Use rol rather than open-coding it.
78         Add a FIXME comment.
79
80 2000-09-21  Jim Meyering  <meyering@lucent.com>
81
82         * userspec.c (parse_user_spec): Remove debugging printf I'd added.
83         Reported by Michael Stone.
84
85 2000-09-20  Jim Meyering  <meyering@lucent.com>
86
87         * Makefile.am (libfetish_a_SOURCES): Add sha.c.
88         (noinst_HEADERS): Add sha.h.
89         Based on code from Scott G. Miller and from GnuPG.
90
91 2000-09-15  Jim Meyering  <meyering@lucent.com>
92
93         * regex.c: Update from libc.
94
95 2000-09-10  Jim Meyering  <meyering@lucent.com>
96
97         * getopt.c (_getopt_internal): Update from glibc.
98
99 2000-09-09  Jim Meyering  <meyering@lucent.com>
100
101         * quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
102         think it should be used as a general replacement for isascii.
103         * fnmatch.c: Likewise.
104         * mbswidth.c: Likewise
105         * regex.c: Likewise.
106
107         Don't use atoi.
108         * userspec.c: Include sys/param.h and limits.h.
109         Include xstrtol.h.
110         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
111         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
112         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
113         UID, GID.  Check range.
114
115 2000-09-06  Jim Meyering  <meyering@lucent.com>
116
117         * getopt.c (_getopt_internal): Update from glibc.
118
119 2000-08-30  Jim Meyering  <meyering@lucent.com>
120
121         * strftime.c: Merge in changes from GNU libc.
122
123 2000-08-26  Jim Meyering  <meyering@lucent.com>
124
125         * closeout.c: Include "__fpending.h".
126         (close_stdout_status): Return right away if there's nothing to flush.
127
128         * Makefile.am (noinst_HEADERS): Add __fpending.h.
129         * __fpending.c: New file.
130         * __fpending.h: New file.
131
132 2000-08-07  Paul Eggert  <eggert@twinsun.com>
133
134         Standardize on "memory exhausted" instead of "Memory exhausted"
135         or "virtual memory exhausted".
136         * obstack.c (print_and_abort): Use "memory exhausted", not
137         "virtual memory exhausted".
138         * same.c (same_name): Invoke xalloc_die instead of printing
139         our own message.
140         * userspec.c (parse_user_spec): Likewise.
141         * bumpalloc.h: comment fix
142         * same.c, userspec.c: Include xalloc.h.
143
144         * xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
145         not char *const and pointing to a constant array.
146         * xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
147         (xrealloc): Comment fix.
148
149         * userspec.c (parse_user_spec):
150         Don't translate a message until just before returning,
151         to avoid unnecessary translation.
152
153 2000-08-07  Jim Meyering  <meyering@lucent.com>
154
155         * addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
156         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
157         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
158         getgroups.c, gethostname.c, getopt.h, group-member.c,
159         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
160         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
161         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
162         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
163         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
164         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
165         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
166         yesno.c: Back out Copyright date changes for each file with no change
167         this year.  This eases coordination with other programs using the same
168         source code modules.  From Paul Eggert.
169
170 2000-08-03  Greg McGary  <greg@mcgary.org>
171
172         * regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
173         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
174         (EXTEND_BUFFER): Use them.
175
176 2000-08-01  Jim Meyering  <meyering@lucent.com>
177
178         * dirname.c (ISSLASH): Define.
179         (BACKSLASH_IS_PATH_SEPARATOR): Define.
180         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
181         both `\' and `/' may be use as path separators.
182         Based on a patch from Prashant TR.
183
184 2000-07-31  Paul Eggert  <eggert@twinsun.com>
185
186         * quotearg.c (quotearg_n_options): Don't make the initial
187         slot vector a constant, since it might get modified.
188
189 2000-07-31  Jim Meyering  <meyering@lucent.com>
190
191         * xmalloc.c: Use `virtual memory exhausted', not `Memory exhausted'.
192         * obstack.c (print_and_abort): Likewise.
193
194 2000-07-30  Paul Eggert  <eggert@twinsun.com>
195
196         * quotearg.c (quotearg_n_options): Preallocate a slot 0
197         buffer, so that the caller can always quote one small
198         component of a "memory exhausted" message in slot 0.
199         From a suggestion by Jim Meyering.
200
201 2000-07-30  Jim Meyering  <meyering@lucent.com>
202
203         * makepath.c (make_path): Quote the other instance, too.
204
205         * quotearg.c (N_STATIC_SLOTVECS): Define.
206         (STATIC_BUF_SIZE): Define.
207         (quotearg_n_options): Use only statically allocated storage when
208         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
209         than STATIC_BUF_SIZE.
210
211 2000-07-29  Jim Meyering  <meyering@lucent.com>
212
213         * diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
214         * dirname.c (dir_name): Likewise.
215
216         * basename.c (base_name): Use ISSLASH rather than comparing against `/'.
217
218         * dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
219         (dir_name): Assert that there are no trailing slashes.
220
221 2000-07-18  Bruno Haible  <haible@clisp.cons.org>
222
223         * mbswidth.h (mbswidth): Add a flags argument.
224         (mbswidth): New declaration.
225         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
226         * mbswidth.c (mbswidth): Add a flags argument.
227         (mbsnwidth): New function.
228
229 2000-07-24  Jim Meyering  <meyering@lucent.com>
230
231         * mbswidth.c: Remove useless #else.  From Bruno Haible.
232
233 2000-07-23  Paul Eggert  <eggert@twinsun.com>
234
235         * mbswidth.c (_XOPEN_SOURCE):
236         Don't define; this causes problems on Solaris 7.
237         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
238
239 2000-07-23  Paul Eggert  <eggert@twinsun.com>
240
241         * quotearg.c:
242         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
243         so that mbstate_t is always defined.
244
245         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
246         be 1 in at least one GCC installation, and this configuration
247         error is likely to be common.  Ignoring MB_LEN_MAX hurts
248         performance on hosts that have mbrtowc but have only unibyte
249         locales, but I assume these hosts are rare.
250
251 2000-07-23  Paul Eggert  <eggert@twinsun.com>
252
253         * quotearg.c: Streamline by invoking multibyte code only if needed.
254         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
255         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
256         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
257         invoke multibyte primitives.
258
259 2000-07-23  Jim Meyering  <meyering@lucent.com>
260
261         * basename.c (base_name): Add an assertion.
262
263 2000-07-15  Bruno Haible  <clisp.cons.org>
264
265         * quotearg.c: When the system forces us to redefine mbstate_t,
266         shadow its mbsinit function.
267
268 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
269
270         * mbswidth.h: New file.
271         * mbswidth.c: New file.
272         * Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
273         (noinst_HEADERS): Add mbswidth.h.
274
275 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
276
277         * config.charset: Add support for FreeBSD. Improve support for HP-UX
278         and IRIX 6.
279
280 2000-07-15  Jim Meyering  <meyering@lucent.com>
281
282         * makepath.c: Include quote.h.
283         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
284         corresponding argument in a `quote (...)' call.
285         Give better diagnostics.
286
287         * Makefile.am (libfetish_a_SOURCES): Add quote.c.
288         (noinst_HEADERS): Add quote.h.
289
290         * quote.c (quote, quote_n): New file.  Two functions taken verbatim
291         from tar's src/misc.c.
292         * quote.h: New file.  Prototypes for same.
293
294 2000-07-10  Paul Eggert  <eggert@twinsun.com>
295
296         From a suggestion by Bruno Haible.
297         * quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
298         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
299         to decide whether to define the BeOS workaround macro;
300         this adjusts to the change to AC_MBSTATE_T.
301
302 2000-07-13  Paul Eggert  <eggert@twinsun.com>
303
304         * quotearg.h (enum quoting style): New enum clocale_quoting_style.
305
306         * quotearg.c: (quoting_style_args, quoting_style_vals,
307         quotearg_buffer_restyled): Add support for
308         clocale_quoting_style.  Undo previous change to
309         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
310         and "{RIGHT QUOTATION MARK}" msgids.
311
312 2000-07-05  Paul Eggert  <eggert@twinsun.com>
313
314         The old behavior of quoting `like this' doesn't look good with
315         newer, ISO-style fonts.  See:
316         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
317
318         Instead, quote "like this" by default.  Let the translator
319         tailor the locale-specific quoting behavior by providing
320         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
321
322         * quotearg.c (N_): New macro.
323         (gettext_default): New function.
324         (quotearg_buffer_restyled): Use
325         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
326         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
327
328 2000-07-09  Jim Meyering  <meyering@lucent.com>
329
330         * Most files: Update copyright dates to include 2000.
331
332 2000-07-08  Jim Meyering  <meyering@lucent.com>
333
334         * xgethostname.c (ENAMETOOLONG): Define to an unlikely value
335         if not defined.
336         (xgethostname): Remove now-unnecessary #ifdef.
337         Move declaration of `err' into loop where it's used.
338
339 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
340
341         * xgethostname.c (xgethostname): Protect against the SunOS5.5 bug
342         by allocating a larger buffer. Test the gethostname return value for
343         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
344         returns an error and ENAMETOOLONG isn't defined.
345
346 2000-07-05  Paul Eggert  <eggert@twinsun.com>
347         and Bruno Haible  <haible@clisp.cons.org>
348
349         * quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
350
351 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
352
353         * quotearg.c (struct quoting_options): Simplify quote_these_too
354         dimension.
355
356 2000-07-03  Jim Meyering  <meyering@lucent.com>
357
358         * strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
359         Reported by Bruno Haible.
360
361 2000-07-04  Jim Meyering  <meyering@lucent.com>
362
363         * quotearg.c: Make inclusion of <wchar.h> independent of whether
364         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
365         lacks mbrtowc.
366
367 2000-07-03  Paul Eggert  <eggert@twinsun.com>
368         and Bruno Haible  <haible@clisp.cons.org>
369
370         * quotearg.c (mbrtowc):
371         Assign to *pwc, and return 1 only if result is nonzero.
372         (iswprint): Use ISPRINT when substituting our own mbrtowc.
373
374 2000-07-03  Jim Meyering  <meyering@lucent.com>
375
376         * readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
377         This is necessary to get a definition of e.g., UTMP_FILE on HP-UX 10.20.
378         From Bob Proulx.
379
380 2000-07-02  Jim Meyering  <meyering@lucent.com>
381
382         * quotearg.c (mbstate_t): Don't define here.
383
384 2000-07-02  Jim Meyering  <meyering@lucent.com>
385
386         * nanosleep.c (SIGCONT): Define if not already defined.
387
388 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
389
390         * mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
391         per change in ../m4/ls-mntd-fs.m4.
392         (read_filesystem_list): Ignore symbolic links.
393
394 2000-06-29  Jim Meyering  <meyering@lucent.com>
395
396         * same.c: Include <string.h> or <strings.h>, as appropriate,
397         for declaration of strcmp.
398
399         * long-options.c: Include <stdlib.h>, for declaration of exit.
400
401         * mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
402         Avoid warning by casting result to `char *' to remove `const'.
403
404 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
405
406         * Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
407
408 2000-06-26  Paul Eggert  <eggert@twinsun.com>
409
410         savedir now sets errno on failure and invokes xmalloc to get memory.
411         Fix a couple of other minor bugs while we're at it.
412
413         * savedir.c (<unistd.h>): Do not include; there's no need.
414         (NAMLEN): Remove macro.
415         (malloc, realloc): Remove decls.
416         (stpcpy): Likewise.
417         ("xalloc.h"): Include.
418         (NAME_SIZE_DEFAULT): New macro.
419         (savedir): Use xmalloc / xrealloc to allocate memory.
420         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
421         Skip "" directory entries.
422         Use strlen to calculate directory entry length, since the old method
423         is rarely used these days and isn't worth supporting.
424         Don't use a pointer after freeing it.
425         Check for integer overflow when calculating allocation size.
426         Use memcpy to copy entries, instead of stpcpy.
427         Set errno properly when returning NULL.
428         Check for readdir error.
429
430 2000-06-26  Jim Meyering  <meyering@lucent.com>
431
432         * posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
433
434 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
435
436         * getusershell.c (xmalloc, xrealloc): Remove functions.
437         Include xalloc.h.
438         Don't include <stdlib.h>.  Don't declare malloc, realloc.
439
440 2000-06-23  Bruno Haible  <haible@clisp.cons.org>
441
442         * unicodeio.c (print_unicode_char): Work around ansi2knr deficiency.
443
444 2000-06-24  Jim Meyering  <meyering@lucent.com>
445
446         * error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
447
448 2000-06-21  Jim Meyering  <meyering@lucent.com>
449
450         * getpass.c: New file, from Bruno Haible.  Required for BeOS.
451
452 2000-06-19  Paul Eggert  <eggert@twinsun.com>
453
454         * quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
455         (mbrtowc, mbstate_t): Define substitutes if
456         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
457         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
458         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
459
460 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
461
462         * xgetcwd.c (xgetcwd): If the required pathname length is smaller
463         than 1024, return a memory chunk of least possible size, instead
464         of size PATH_MAX + 2. In the loop, increment the size proportionally.
465         Use free/xmalloc instead of xrealloc to avoid copying for very long
466         paths.
467
468 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
469
470         * canon-host.c (canon_host): Use malloc and memcpy to copy an
471         address, not strdup.  Include <stdlib.h> and don't declare free().
472
473 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
474
475         * path-concat.c (path_concat): Don't access dir[-1] if dir is
476         the empty string.
477
478 2000-06-21  Jim Meyering  <meyering@lucent.com>
479
480         * Makefile.am (libfetish_a_SOURCES): Add getstr.c.
481         (noinst_HEADERS): Add getstr.h.
482
483         * getline.c (getstr): Move into a separate file.
484         * getstr.c (getstr): New file, extracted from getline.c, with
485         the following changes: new parameter, delim2; both delim[12]
486         parameters have type `int', not `char'.  The latter would lose
487         with 8-bit delimiters.
488         * getstr.h: New file.
489
490 2000-06-19  Jim Meyering  <meyering@lucent.com>
491
492         * getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
493
494 2000-06-18  Jim Meyering  <meyering@lucent.com>
495
496         * mkdir.c: Remove file, due mainly to copyright incompatibility.
497         Besides, these days every porting target provides a mkdir function.
498
499         * strnlen.c: Include memory.h, string.h, and/or strings.h as needed.
500         (this snippet comes from src/system.h).
501
502 2000-06-15  Paul Eggert  <eggert@twinsun.com>
503
504         * human.c (adjust_value): New function.
505         (human_readable_inexact): Apply rounding style even when
506         printing approximate values.
507
508 2000-06-14  Paul Eggert  <eggert@twinsun.com>
509
510         * human.c (human_readable_inexact): Allow an input block
511         size that is not a multiple of the output block size, and vice versa.
512         Reported by Piergiorgio Sartor.
513
514 2000-06-14  Paul Eggert  <eggert@twinsun.com>
515
516         * getdate.y (get_date): Apply relative times after time
517         zone indicator, not before.  Reported by Todd A. Jacobs.
518
519 2000-06-13  Jim Meyering  <meyering@lucent.com>
520
521         * Makefile.am (all-local): Depend on lstat.c and stat.c.
522
523         * xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
524
525 2000-06-12  Paul Eggert  <eggert@twinsun.com>
526
527         * xstat.in: Include <stdlib.h> in lstat, to declare "free".
528
529 2000-06-04  Paul Eggert  <eggert@twinsun.com>
530
531         * strnlen.c: Include <config.h> if HAVE_CONFIG_H.
532
533 2000-06-04  Jim Meyering  <meyering@lucent.com>
534
535         * getugroups.c (getugroups): Cast -1 to gid_t, for systems like
536         SunOS4.1.4 for which gid_t is an unsigned type.
537
538 2000-06-03  Jim Meyering  <meyering@lucent.com>
539
540         * strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
541
542 2000-05-26  Bruno Haible  <haible@clisp.cons.org>
543
544         * Makefile.am (install-exec-local): On systems with glibc-2.1 or
545         newer, don't install charset.alias.
546         * config.charset: Change the Linux/glibc rules so they become empty
547         on glibc-2.1 or newer.
548
549 2000-06-02  Jim Meyering  <meyering@lucent.com>
550
551         * mountlist.c: Back out last change.  Instead, do this...
552         * mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the me_dummy
553         member using the same `ignore'-testing code.
554         * mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
555         fs_type strings.
556         From Mark D. Roth.
557
558 2000-05-29  Jim Meyering  <meyering@lucent.com>
559
560         * mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore mounts
561         with the `ignore' attribute.  Based on a patch from Mark D. Roth.
562
563 2000-05-22  Jim Meyering  <meyering@lucent.com>
564
565         * makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
566
567 2000-05-18  Jim Meyering  <meyering@lucent.com>
568
569         * hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
570         back, too, since it may have been modified by allocate_entry.
571         (hash_delete): Rewrite to use neither the assignment operator
572         nor the comma operator in an if-expression.
573
574 2000-05-15  Paul Eggert  <eggert@twinsun.com>
575
576         * closeout.c:
577         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
578         Remove; no longer needed.
579         "quotearg.h": Add include.
580         (file_name): Do not bother to explicitly initialize to NULL; it's less
581         efficient on some hosts.
582         (close_stdout_status): Remove test as to whether stdout was already
583         closed; it breaks for the case "echo x | sort >&-".
584         Quote file name colons.
585         Do not assume that _("write error") lacks format strings.
586
587 2000-05-15  Jim Meyering  <meyering@lucent.com>
588
589         * version-etc.c (version_etc_copyright): Update the copyright string
590         used in all --version output.
591
592 2000-05-14  Jim Meyering  <meyering@lucent.com>
593
594         * closeout.c (close_stdout_set_file_name): New function.
595         (close_stdout_status): Use new file-scoped global.
596         Return right away if fstat says the stdout file descriptor is invalid.
597         * closeout.h (close_stdout_set_file_name): Declare.
598
599 2000-05-10  Jim Meyering  <meyering@lucent.com>
600
601         * closeout.c [default_exit_status]: New file-scoped variable.
602         (close_stdout_set_status): New function.
603         * closeout.h (close_stdout_set_status): Declare.
604
605 2000-05-08  Jim Meyering  <meyering@lucent.com>
606
607         * long-options.c: Don't include closeout.h.
608         (parse_long_options): Don't call close_stdout for --version.
609
610 2000-05-06  Jim Meyering  <meyering@lucent.com>
611
612         * strnlen.c: Undefine __strnlen and strnlen.
613         [!weak_alias]: Define __strnlen to strnlen.
614
615         * atexit.c: New file, from libiberty.
616
617 2000-05-06  Jim Meyering  <meyering@lucent.com>
618
619         * closeout.c (close_stdout_status): Also check for errors on the
620         stderr stream.
621
622 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
623
624         * localcharset.c (get_charset_aliases): Use malloc, realloc and memcpy
625         instead of xmalloc, xrealloc, path_concat.
626         (locale_charset): Treat empty environment variables as absent.
627         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
628
629 2000-05-04  Jim Meyering  <meyering@lucent.com>
630
631         * getopt.c: Update from glibc.
632         * obstack.c: Likewise.
633         * obstack.h: Likewise.
634         * regex.c: Likewise.  NB: K&R compiler support is dropped for this file
635
636         * regex.h: Likewise.
637         * strndup.c: Likewise.
638         * strnlen.c: New file, from glibc.
639
640 2000-05-01  Jim Meyering  <meyering@lucent.com>
641
642         * full-write.c (full_write): Remove `FIXME' part of comment.
643
644 2000-04-29  Jim Meyering  <meyering@lucent.com>
645
646         * path-concat.c: Declare strdup only if it's not defined.
647         * canon-host.c: Likewise.
648
649 2000-04-28  Jim Meyering  <meyering@lucent.com>
650
651         * rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to avoid
652         redefinition warning on some systems (HPUX).  Otherwise, regex.h is
653         included first, then limits.h is included by locale.h by libintl.h.
654         From John David Anglin.
655
656 2000-04-25  Jim Meyering  <meyering@lucent.com>
657
658         * makepath.c (S_IRWXUGO): Define.
659         (make_path): Always perform explicit chmod if MODE specifies any
660         of the `special' permission bits.  Prompted by a bug report against
661         install from Mate Wierdl and Joost van Baal.
662
663 2000-04-18  Jim Meyering  <meyering@lucent.com>
664
665         * README: New file.
666
667         * getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
668         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
669
670 2000-04-17  Jim Meyering  <meyering@lucent.com>
671
672         * strftime.c (my_strftime) [strftime]: Declare strftime here, since
673         the definition of it to rpl_strftime also defined-away the system's
674         declaration.
675
676 2000-04-15  Jim Meyering  <meyering@lucent.com>
677
678         Use `C' to denote so-called `contiguous' files, the same way
679         that tar does.
680         * filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
681         (ftypelet): Use S_ISCTG.
682         From Michael Deutschmann.
683
684 2000-04-14  Jim Meyering  <meyering@lucent.com>
685
686         * strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
687
688 2000-04-08  Jim Meyering  <meyering@lucent.com>
689
690         * Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
691         names don't conflict.  Reported by Eli Zaretskii.
692
693 2000-03-28  Bruno Haible  <haible@clisp.cons.org>
694
695         * unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
696         bug.  Deal with the different error behavior of Irix iconv.
697
698 2000-04-07  Jim Meyering  <meyering@lucent.com>
699
700         * putenv.c: Move inclusion of errno.h so it follows that of sys/types.h,
701         to work around system header problems on AIX 3.2.5.  From Bruno Haible.
702
703 2000-04-05  Jim Meyering  <meyering@lucent.com>
704
705         Portability tweaks required for ultrix4.3.
706         * readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare getutent.
707         * readutmp.c: Include sys/types.h before sys/stat.h.
708         * canon-host.c: Declare strdup.
709         * path-concat.c: Likewise.
710         From John David Anglin.
711
712 2000-04-04  Jim Meyering  <meyering@lucent.com>
713
714         Be more DOS 8.3-friendly.
715         * ref-add.sin: Renamed from ref-add.sed.in.
716         * ref-del.sin: Renamed from ref-del.sed.in.
717         * Makefile.am: Reflect renaming.
718         Reported by Eli Zaretskii.
719
720         Use a temporary file name that won't clash with `charset.alias'
721         in the DOS 8.3 name space.
722         * Makefile.am (charset_tmp): Define.
723         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
724         (uninstall-local): Likewise.
725         Reported by Eli Zaretskii.
726
727 2000-03-29  Paul Eggert  <eggert@twinsun.com>
728
729         * time/strftime.c (my_strftime): Make sure we call the system
730         strftime, not ourselves, when invoking the underlying strftime.
731
732 2000-03-24  Jim Meyering  <meyering@lucent.com>
733
734         * Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
735         (charset_alias): Define.
736         (install-exec-local): Factor out common code.
737         (uninstall-local): Split lines longer than 80.
738         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
739         (SUFFIXES): Define.
740         (.sed.in.sed): New rule.  Don't redirect directly to $@.
741         (CLEANFILES): Add ref-add.sed and ref-del.sed.
742
743 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
744
745         * config.charset: Output a line containing "Packages using this file".
746         * ref-add.sed.in, ref-del.sed.in: New files.
747         * Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
748         ref-del.sed): New rules.
749
750 2000-03-17  Jim Meyering  <meyering@lucent.com>
751
752         * unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
753         Otherwise, include <strings.h>
754
755 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
756
757         * unicodeio.c (utf8_wctomb): New function.
758         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
759         format instead of in UCS-4 with platform dependent endianness.
760
761 2000-03-07  Paul Eggert  <eggert@twinsun.com>
762
763         * savedir.c (savedir): Work even if directory size is
764         negative; this can happen with some screwy NFS configurations.
765
766 2000-03-06  Jim Meyering  <meyering@lucent.com>
767
768         * localcharset.c (get_charset_aliases): Don't try to free file_name
769         if it's NULL (because we ran out of memory).  From Bruno Haible.
770
771 2000-03-05  Jim Meyering  <meyering@lucent.com>
772
773         * localcharset.c ("path-concat.h"): Include.
774         (get_charset_aliases): Use path_concat instead of ANSI string
775         concatenation.
776
777         * unicodeio.h (PARAMS): Define.
778         Use it to guard prototype.
779
780 2000-03-04  Jim Meyering  <meyering@lucent.com>
781
782         * Makefile.am (install-exec-local): Create $(libdir) before installing
783         into it.
784         (uninstall-local): Uncomment this rule so `make distcheck' works
785         once again.
786
787         * unicodeio.c (<errno.h>): Include it.
788         (errno): Declare if not defined.
789
790         * localcharset.c: Add Bruno's comment justifying use of volatile.
791
792         * config.charset: New version, incorporating remarks from a linux
793         i18n mailing list.  From Bruno Haible.
794
795 2000-03-02  Jim Meyering  <meyering@lucent.com>
796
797         * Makefile.am (EXTRA_DIST): Add config.charset.
798
799 2000-03-01  Jim Meyering  <meyering@lucent.com>
800
801         * localcharset.c: Guard some #includes with `#if HAVE_...'.
802         * unicodeio.c: Likewise.
803
804 2000-02-02  Bruno Haible  <haible@clisp.cons.org>
805
806         * config.charset: New file.
807         * localcharset.c: New file.
808         * unicodeio.h, unicodeio.c: New files.
809         * Makefile.am (DEFS): Add -DLIBDIR=...
810         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
811         (noinst_HEADERS): Add unicodeio.h.
812         (all-local, install-exec-local, charset.alias): New targets.
813
814 2000-02-28  Paul Eggert  <eggert@twinsun.com>
815
816         * quotearg.c (ALERT_CHAR): New macro.
817         (quotearg_buffer_restyled): Use it.
818
819 2000-02-27  Jim Meyering  <meyering@lucent.com>
820
821         * strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
822         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
823
824         * backupfile.c: Guard inclusion of stdlib.h with `#if HAVE_STDLIB_H',
825         not `#if STDC_HEADERS'.
826         Declare malloc if needed.
827
828         * backupfile.c: Use `#if !HAVE_DECL...' instead of `#ifndef HAVE_DECL..'
829         now that autoconf always defines the HAVE_DECL_ symbols.
830         * human.c: Likewise.
831         * same.c: Likewise.
832         * strtoumax.c: Likewise.
833
834         * backupfile.c: Arrange for cpp to fail if the configure-time
835         declaration check was not run.
836         * hash.c: Likewise.
837         * human.c: Likewise.
838         * same.c: Likewise.
839         * strtoumax.c: Likewise.
840
841         * userspec.c (parse_user_spec): If there is no `:' but there is a `.',
842         then first look up the entire `.'-containing string as a login name.
843
844 2000-02-18  Paul Eggert  <eggert@twinsun.com>
845
846         * getdate.y: Handle two-digit years with leading zeros correctly.
847         (textint): New typedef.
848         (parser_control): Member year changed from int to textint.
849         All uses changed.
850         (YYSTYPE): Removed; replaced by %union with int and textint members.
851         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
852         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
853         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
854         (tSNUMBER, tUNUMBER): Now of type <textintval>.
855         (date, number, to_year): Use width of number in digits, not its value,
856         to determine whether it's a 2-digit year, or a 2-digit time.
857         (yylex): Store number of digits of numeric tokens.
858         Reported by John Kendall.
859
860         (parser_control): Changed from struct parser_control to typedef (for
861         consistency).  All uses changed.
862
863         (tID): Removed; not used.
864         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
865
866 2000-02-14  Paul Eggert  <eggert@twinsun.com>
867
868         * getpagesize.h (getpagesize): Port to VMS for Alpha;
869         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
870
871 2000-02-12  Jim Meyering  <meyering@lucent.com>
872
873         * userspec.c (ISDIGIT): Define it.
874         (isdigit): Remove definition.
875         (is_number): Use ISDIGIT, not isdigit.
876         <libintl.h>: Include.
877         (_ and N_): Define.
878         (parse_user_spec): Mark translatable strings.
879
880 2000-02-10  Jim Meyering  <meyering@lucent.com>
881
882         With these changes, nanosleep.[ch] are finally enough like the other
883         lib/* replacement files to compile on a few more losing systems.
884
885         * nanosleep.h: Don't include config.h.
886         Remove prototype from declaration of nanosleep.
887         (PARAMS): Remove now-unneeded definition.
888         * nanosleep.c: #undef nanosleep.
889         (rpl_nanosleep): Rename from nanosleep.
890
891 2000-02-03  Jim Meyering  <meyering@lucent.com>
892
893         * readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
894         rather than with `#if HAVE_UTMPNAME'.
895
896 2000-02-01  Jim Meyering  <meyering@lucent.com>
897
898         * readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
899
900 2000-01-31  Jim Meyering  <meyering@lucent.com>
901
902         * nanosleep.h (nanosleep): Guard declaration with
903         `#if ! HAVE_DECL_NANOSLEEP'.
904         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
905         the declaration in that vendor's sys/timers.h.
906         Reported by Christian Krackowizer.
907
908         * quotearg.c (ISASCII): Add #undef and move definition to follow
909         inclusion of wctype.h to work around solaris2.6 namespace pollution.
910         (ISPRINT): Likewise.
911         Reported by Tom Tromey.
912
913 2000-01-30  Jim Meyering  <meyering@lucent.com>
914
915         * readutmp.c (extract_trimmed_name): Use UT_USER instead of hard-coding
916         uses of ->ut_name.  The latter doesn't work with new Linux header files
917         where only utmpx.ut_user is declared.
918
919         * readutmp.h (UT_USER): Define.
920
921 2000-01-23  Jim Meyering  <meyering@lucent.com>
922
923         * Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
924         obstack.c.
925
926 2000-01-22  Jim Meyering  <meyering@lucent.com>
927
928         * strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
929         [! HAVE_DECL_STRTOULL]: Declare strtoull.
930         Required for some AIX systems.  Reported by Christian Krackowizer.
931         [TESTING] (main): New function.
932
933         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
934         * dirname.c (dir_name): Support for DOS-style file names with drive
935         letters.
936
937         * quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of iswprint.
938
939         * strverscmp.c (ISDIGIT): Define.
940         (strverscmp): Use ISDIGIT, not isdigit.
941
942 2000-01-17  Paul Eggert  <eggert@twinsun.com>
943
944         * nanosleep.c (nanosleep):
945         Don't use SA_INTERRUPT to decide whether to call sigaction, as
946         POSIX.1 doesn't require SA_INTERRUPT and some systems
947         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
948         it's been part of POSIX.1 since day 1 (in 1988).
949
950 2000-01-17  Jim Meyering  <meyering@lucent.com>
951
952         * interlock: Remove unused file.  Reported by François Pinard.
953
954 2000-01-16  Paul Eggert  <eggert@twinsun.com>
955
956         * quotearg.c (quotearg_buffer_restyled): Do not quote
957         alert, backslash, formfeed, and vertical tab unnecessarily in
958         shell quoting style.
959
960 Local Variables:
961 version-control: never
962 End: