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