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