1 2000-06-21 Jim Meyering <meyering@lucent.com>
3 * getpass.c: New file, from Bruno Haible. Required for BeOS.
5 2000-06-19 Paul Eggert <eggert@twinsun.com>
7 * quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
8 (mbrtowc, mbstate_t): Define substitutes if
9 HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
10 (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
11 not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
13 2000-06-17 Bruno Haible <haible@clisp.cons.org>
15 * xgetcwd.c (xgetcwd): If the required pathname length is smaller
16 than 1024, return a memory chunk of least possible size, instead
17 of size PATH_MAX + 2. In the loop, increment the size proportionally.
18 Use free/xmalloc instead of xrealloc to avoid copying for very long
21 2000-06-17 Bruno Haible <haible@clisp.cons.org>
23 * canon-host.c (canon_host): Use malloc and memcpy to copy an
24 address, not strdup. Include <stdlib.h> and don't declare free().
26 2000-06-17 Bruno Haible <haible@clisp.cons.org>
28 * path-concat.c (path_concat): Don't access dir[-1] if dir is
31 2000-06-21 Jim Meyering <meyering@lucent.com>
33 * Makefile.am (libfetish_a_SOURCES): Add getstr.c.
34 (noinst_HEADERS): Add getstr.h.
36 * getline.c (getstr): Move into a separate file.
37 * getstr.c (getstr): New file, extracted from getline.c, with
38 the following changes: new parameter, delim2; both delim[12]
39 parameters have type `int', not `char'. The latter would lose
40 with 8-bit delimiters.
43 2000-06-19 Jim Meyering <meyering@lucent.com>
45 * getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
47 2000-06-18 Jim Meyering <meyering@lucent.com>
49 * mkdir.c: Remove file, due mainly to copyright incompatibility.
50 Besides, these days every porting target provides a mkdir function.
52 * strnlen.c: Include memory.h, string.h, and/or strings.h as needed.
53 (this snippet comes from src/system.h).
55 2000-06-15 Paul Eggert <eggert@twinsun.com>
57 * human.c (adjust_value): New function.
58 (human_readable_inexact): Apply rounding style even when
59 printing approximate values.
61 2000-06-14 Paul Eggert <eggert@twinsun.com>
63 * human.c (human_readable_inexact): Allow an input block
64 size that is not a multiple of the output block size, and vice versa.
65 Reported by Piergiorgio Sartor.
67 2000-06-14 Paul Eggert <eggert@twinsun.com>
69 * getdate.y (get_date): Apply relative times after time
70 zone indicator, not before. Reported by Todd A. Jacobs.
72 2000-06-13 Jim Meyering <meyering@lucent.com>
74 * Makefile.am (all-local): Depend on lstat.c and stat.c.
76 * xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
78 2000-06-12 Paul Eggert <eggert@twinsun.com>
80 * xstat.in: Include <stdlib.h> in lstat, to declare "free".
82 2000-06-04 Paul Eggert <eggert@twinsun.com>
84 * strnlen.c: Include <config.h> if HAVE_CONFIG_H.
86 2000-06-04 Jim Meyering <meyering@lucent.com>
88 * getugroups.c (getugroups): Cast -1 to gid_t, for systems like
89 SunOS4.1.4 for which gid_t is an unsigned type.
91 2000-06-03 Jim Meyering <meyering@lucent.com>
93 * strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
95 2000-05-26 Bruno Haible <haible@clisp.cons.org>
97 * Makefile.am (install-exec-local): On systems with glibc-2.1 or
98 newer, don't install charset.alias.
99 * config.charset: Change the Linux/glibc rules so they become empty
100 on glibc-2.1 or newer.
102 2000-06-02 Jim Meyering <meyering@lucent.com>
104 * mountlist.c: Back out last change. Instead, do this...
105 * mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the me_dummy
106 member using the same `ignore'-testing code.
107 * mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
111 2000-05-29 Jim Meyering <meyering@lucent.com>
113 * mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore mounts
114 with the `ignore' attribute. Based on a patch from Mark D. Roth.
116 2000-05-22 Jim Meyering <meyering@lucent.com>
118 * makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
120 2000-05-18 Jim Meyering <meyering@lucent.com>
122 * hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
123 back, too, since it may have been modified by allocate_entry.
124 (hash_delete): Rewrite to use neither the assignment operator
125 nor the comma operator in an if-expression.
127 2000-05-15 Paul Eggert <eggert@twinsun.com>
130 <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
131 Remove; no longer needed.
132 "quotearg.h": Add include.
133 (file_name): Do not bother to explicitly initialize to NULL; it's less
134 efficient on some hosts.
135 (close_stdout_status): Remove test as to whether stdout was already
136 closed; it breaks for the case "echo x | sort >&-".
137 Quote file name colons.
138 Do not assume that _("write error") lacks format strings.
140 2000-05-15 Jim Meyering <meyering@lucent.com>
142 * version-etc.c (version_etc_copyright): Update the copyright string
143 used in all --version output.
145 2000-05-14 Jim Meyering <meyering@lucent.com>
147 * closeout.c (close_stdout_set_file_name): New function.
148 (close_stdout_status): Use new file-scoped global.
149 Return right away if fstat says the stdout file descriptor is invalid.
150 * closeout.h (close_stdout_set_file_name): Declare.
152 2000-05-10 Jim Meyering <meyering@lucent.com>
154 * closeout.c [default_exit_status]: New file-scoped variable.
155 (close_stdout_set_status): New function.
156 * closeout.h (close_stdout_set_status): Declare.
158 2000-05-08 Jim Meyering <meyering@lucent.com>
160 * long-options.c: Don't include closeout.h.
161 (parse_long_options): Don't call close_stdout for --version.
163 2000-05-06 Jim Meyering <meyering@lucent.com>
165 * strnlen.c: Undefine __strnlen and strnlen.
166 [!weak_alias]: Define __strnlen to strnlen.
168 * atexit.c: New file, from libiberty.
170 2000-05-06 Jim Meyering <meyering@lucent.com>
172 * closeout.c (close_stdout_status): Also check for errors on the
175 2000-05-05 Bruno Haible <haible@clisp.cons.org>
177 * localcharset.c (get_charset_aliases): Use malloc, realloc and memcpy
178 instead of xmalloc, xrealloc, path_concat.
179 (locale_charset): Treat empty environment variables as absent.
180 (DIRECTORY_SEPARATOR, ISSLASH): New macros.
182 2000-05-04 Jim Meyering <meyering@lucent.com>
184 * getopt.c: Update from glibc.
185 * obstack.c: Likewise.
186 * obstack.h: Likewise.
187 * regex.c: Likewise. NB: K&R compiler support is dropped for this file
190 * strndup.c: Likewise.
191 * strnlen.c: New file, from glibc.
193 2000-05-01 Jim Meyering <meyering@lucent.com>
195 * full-write.c (full_write): Remove `FIXME' part of comment.
197 2000-04-29 Jim Meyering <meyering@lucent.com>
199 * path-concat.c: Declare strdup only if it's not defined.
200 * canon-host.c: Likewise.
202 2000-04-28 Jim Meyering <meyering@lucent.com>
204 * rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to avoid
205 redefinition warning on some systems (HPUX). Otherwise, regex.h is
206 included first, then limits.h is included by locale.h by libintl.h.
207 From John David Anglin.
209 2000-04-25 Jim Meyering <meyering@lucent.com>
211 * makepath.c (S_IRWXUGO): Define.
212 (make_path): Always perform explicit chmod if MODE specifies any
213 of the `special' permission bits. Prompted by a bug report against
214 install from Mate Wierdl and Joost van Baal.
216 2000-04-18 Jim Meyering <meyering@lucent.com>
220 * getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
221 getpagesize. For BeOS. Based on a patch from Bruno Haible.
223 2000-04-17 Jim Meyering <meyering@lucent.com>
225 * strftime.c (my_strftime) [strftime]: Declare strftime here, since
226 the definition of it to rpl_strftime also defined-away the system's
229 2000-04-15 Jim Meyering <meyering@lucent.com>
231 Use `C' to denote so-called `contiguous' files, the same way
233 * filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
234 (ftypelet): Use S_ISCTG.
235 From Michael Deutschmann.
237 2000-04-14 Jim Meyering <meyering@lucent.com>
239 * strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
241 2000-04-08 Jim Meyering <meyering@lucent.com>
243 * Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
244 names don't conflict. Reported by Eli Zaretskii.
246 2000-03-28 Bruno Haible <haible@clisp.cons.org>
248 * unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
249 bug. Deal with the different error behavior of Irix iconv.
251 2000-04-07 Jim Meyering <meyering@lucent.com>
253 * putenv.c: Move inclusion of errno.h so it follows that of sys/types.h,
254 to work around system header problems on AIX 3.2.5. From Bruno Haible.
256 2000-04-05 Jim Meyering <meyering@lucent.com>
258 Portability tweaks required for ultrix4.3.
259 * readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare getutent.
260 * readutmp.c: Include sys/types.h before sys/stat.h.
261 * canon-host.c: Declare strdup.
262 * path-concat.c: Likewise.
263 From John David Anglin.
265 2000-04-04 Jim Meyering <meyering@lucent.com>
267 Be more DOS 8.3-friendly.
268 * ref-add.sin: Renamed from ref-add.sed.in.
269 * ref-del.sin: Renamed from ref-del.sed.in.
270 * Makefile.am: Reflect renaming.
271 Reported by Eli Zaretskii.
273 Use a temporary file name that won't clash with `charset.alias'
274 in the DOS 8.3 name space.
275 * Makefile.am (charset_tmp): Define.
276 (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
277 (uninstall-local): Likewise.
278 Reported by Eli Zaretskii.
280 2000-03-29 Paul Eggert <eggert@twinsun.com>
282 * time/strftime.c (my_strftime): Make sure we call the system
283 strftime, not ourselves, when invoking the underlying strftime.
285 2000-03-24 Jim Meyering <meyering@lucent.com>
287 * Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
288 (charset_alias): Define.
289 (install-exec-local): Factor out common code.
290 (uninstall-local): Split lines longer than 80.
291 (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
293 (.sed.in.sed): New rule. Don't redirect directly to $@.
294 (CLEANFILES): Add ref-add.sed and ref-del.sed.
296 2000-03-19 Bruno Haible <haible@clisp.cons.org>
298 * config.charset: Output a line containing "Packages using this file".
299 * ref-add.sed.in, ref-del.sed.in: New files.
300 * Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
301 ref-del.sed): New rules.
303 2000-03-17 Jim Meyering <meyering@lucent.com>
305 * unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
306 Otherwise, include <strings.h>
308 2000-03-17 Bruno Haible <haible@clisp.cons.org>
310 * unicodeio.c (utf8_wctomb): New function.
311 (print_unicode_char): Pass the Unicode character to iconv in UTF-8
312 format instead of in UCS-4 with platform dependent endianness.
314 2000-03-07 Paul Eggert <eggert@twinsun.com>
316 * savedir.c (savedir): Work even if directory size is
317 negative; this can happen with some screwy NFS configurations.
319 2000-03-06 Jim Meyering <meyering@lucent.com>
321 * localcharset.c (get_charset_aliases): Don't try to free file_name
322 if it's NULL (because we ran out of memory). From Bruno Haible.
324 2000-03-05 Jim Meyering <meyering@lucent.com>
326 * localcharset.c ("path-concat.h"): Include.
327 (get_charset_aliases): Use path_concat instead of ANSI string
330 * unicodeio.h (PARAMS): Define.
331 Use it to guard prototype.
333 2000-03-04 Jim Meyering <meyering@lucent.com>
335 * Makefile.am (install-exec-local): Create $(libdir) before installing
337 (uninstall-local): Uncomment this rule so `make distcheck' works
340 * unicodeio.c (<errno.h>): Include it.
341 (errno): Declare if not defined.
343 * localcharset.c: Add Bruno's comment justifying use of volatile.
345 * config.charset: New version, incorporating remarks from a linux
346 i18n mailing list. From Bruno Haible.
348 2000-03-02 Jim Meyering <meyering@lucent.com>
350 * Makefile.am (EXTRA_DIST): Add config.charset.
352 2000-03-01 Jim Meyering <meyering@lucent.com>
354 * localcharset.c: Guard some #includes with `#if HAVE_...'.
355 * unicodeio.c: Likewise.
357 2000-02-02 Bruno Haible <haible@clisp.cons.org>
359 * config.charset: New file.
360 * localcharset.c: New file.
361 * unicodeio.h, unicodeio.c: New files.
362 * Makefile.am (DEFS): Add -DLIBDIR=...
363 (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
364 (noinst_HEADERS): Add unicodeio.h.
365 (all-local, install-exec-local, charset.alias): New targets.
367 2000-02-28 Paul Eggert <eggert@twinsun.com>
369 * quotearg.c (ALERT_CHAR): New macro.
370 (quotearg_buffer_restyled): Use it.
372 2000-02-27 Jim Meyering <meyering@lucent.com>
374 * strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
375 Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
377 * backupfile.c: Guard inclusion of stdlib.h with `#if HAVE_STDLIB_H',
378 not `#if STDC_HEADERS'.
379 Declare malloc if needed.
381 * backupfile.c: Use `#if !HAVE_DECL...' instead of `#ifndef HAVE_DECL..'
382 now that autoconf always defines the HAVE_DECL_ symbols.
385 * strtoumax.c: Likewise.
387 * backupfile.c: Arrange for cpp to fail if the configure-time
388 declaration check was not run.
392 * strtoumax.c: Likewise.
394 * userspec.c (parse_user_spec): If there is no `:' but there is a `.',
395 then first look up the entire `.'-containing string as a login name.
397 2000-02-18 Paul Eggert <eggert@twinsun.com>
399 * getdate.y: Handle two-digit years with leading zeros correctly.
400 (textint): New typedef.
401 (parser_control): Member year changed from int to textint.
403 (YYSTYPE): Removed; replaced by %union with int and textint members.
404 (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
405 tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
406 tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
407 (tSNUMBER, tUNUMBER): Now of type <textintval>.
408 (date, number, to_year): Use width of number in digits, not its value,
409 to determine whether it's a 2-digit year, or a 2-digit time.
410 (yylex): Store number of digits of numeric tokens.
411 Reported by John Kendall.
413 (parser_control): Changed from struct parser_control to typedef (for
414 consistency). All uses changed.
416 (tID): Removed; not used.
417 (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
419 2000-02-14 Paul Eggert <eggert@twinsun.com>
421 * getpagesize.h (getpagesize): Port to VMS for Alpha;
422 adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
424 2000-02-12 Jim Meyering <meyering@lucent.com>
426 * userspec.c (ISDIGIT): Define it.
427 (isdigit): Remove definition.
428 (is_number): Use ISDIGIT, not isdigit.
429 <libintl.h>: Include.
431 (parse_user_spec): Mark translatable strings.
433 2000-02-10 Jim Meyering <meyering@lucent.com>
435 With these changes, nanosleep.[ch] are finally enough like the other
436 lib/* replacement files to compile on a few more losing systems.
438 * nanosleep.h: Don't include config.h.
439 Remove prototype from declaration of nanosleep.
440 (PARAMS): Remove now-unneeded definition.
441 * nanosleep.c: #undef nanosleep.
442 (rpl_nanosleep): Rename from nanosleep.
444 2000-02-03 Jim Meyering <meyering@lucent.com>
446 * readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
447 rather than with `#if HAVE_UTMPNAME'.
449 2000-02-01 Jim Meyering <meyering@lucent.com>
451 * readutmp.h (UT_USER): Add parens. From Andreas Schwab.
453 2000-01-31 Jim Meyering <meyering@lucent.com>
455 * nanosleep.h (nanosleep): Guard declaration with
456 `#if ! HAVE_DECL_NANOSLEEP'.
457 Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
458 the declaration in that vendor's sys/timers.h.
459 Reported by Christian Krackowizer.
461 * quotearg.c (ISASCII): Add #undef and move definition to follow
462 inclusion of wctype.h to work around solaris2.6 namespace pollution.
464 Reported by Tom Tromey.
466 2000-01-30 Jim Meyering <meyering@lucent.com>
468 * readutmp.c (extract_trimmed_name): Use UT_USER instead of hard-coding
469 uses of ->ut_name. The latter doesn't work with new Linux header files
470 where only utmpx.ut_user is declared.
472 * readutmp.h (UT_USER): Define.
474 2000-01-23 Jim Meyering <meyering@lucent.com>
476 * Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
479 2000-01-22 Jim Meyering <meyering@lucent.com>
481 * strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
482 [! HAVE_DECL_STRTOULL]: Declare strtoull.
483 Required for some AIX systems. Reported by Christian Krackowizer.
484 [TESTING] (main): New function.
486 1997-10-17 Eli Zaretskii <eliz@is.elta.co.il>
487 * dirname.c (dir_name): Support for DOS-style file names with drive
490 * quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of iswprint.
492 * strverscmp.c (ISDIGIT): Define.
493 (strverscmp): Use ISDIGIT, not isdigit.
495 2000-01-17 Paul Eggert <eggert@twinsun.com>
497 * nanosleep.c (nanosleep):
498 Don't use SA_INTERRUPT to decide whether to call sigaction, as
499 POSIX.1 doesn't require SA_INTERRUPT and some systems
500 (e.g. Solaris 7) don't define it. Use SA_NOCLDSTOP instead;
501 it's been part of POSIX.1 since day 1 (in 1988).
503 2000-01-17 Jim Meyering <meyering@lucent.com>
505 * interlock: Remove unused file. Reported by François Pinard.
507 2000-01-16 Paul Eggert <eggert@twinsun.com>
509 * quotearg.c (quotearg_buffer_restyled): Do not quote
510 alert, backslash, formfeed, and vertical tab unnecessarily in
514 version-control: never