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