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