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