Compare commits

...

997 Commits

Author SHA1 Message Date
Jim Meyering
a5761a4adb . 2002-10-05 19:57:30 +00:00
Jim Meyering
017c2208e2 . 2002-10-05 19:56:44 +00:00
Jim Meyering
fb918bedbf (TESTS): Add i-no-r. 2002-10-05 19:56:34 +00:00
Jim Meyering
702a18d659 *** empty log message *** 2002-10-05 19:56:00 +00:00
Jim Meyering
0bd10f3b8b *** empty log message *** 2002-10-05 19:55:19 +00:00
Jim Meyering
d0d7266488 (remove_entry) [ROOT_CAN_UNLINK_DIRS]: With `rm -i DIR',
don't recurse into directory, DIR.
2002-10-05 19:54:25 +00:00
Jim Meyering
1f4be66913 *** empty log message *** 2002-10-05 19:21:33 +00:00
Jim Meyering
931e5aef07 *** empty log message *** 2002-10-05 19:17:57 +00:00
Jim Meyering
7a45935962 *** empty log message *** 2002-10-05 19:17:05 +00:00
Jim Meyering
c1a20dc27b *** empty log message *** 2002-10-05 19:16:00 +00:00
Jim Meyering
55c73b9516 . 2002-10-05 17:02:43 +00:00
Jim Meyering
f540cf3789 *** empty log message *** 2002-10-05 08:30:07 +00:00
Jim Meyering
e3d5348851 save dd's stderr, and output it if dd fails 2002-10-05 08:29:21 +00:00
Jim Meyering
ae48cdae26 redirect dd's stderr 2002-10-05 08:27:45 +00:00
Jim Meyering
6a9dc978f9 (TESTS): Add big-4gb. 2002-10-05 08:26:42 +00:00
Jim Meyering
c5549236da *** empty log message *** 2002-10-05 08:26:35 +00:00
Jim Meyering
215f635780 add a comment 2002-10-04 11:25:09 +00:00
Jim Meyering
314c0eaa97 Undo last change.
Instead, run du only on the symlinks that were successfully created.
2002-10-04 11:24:12 +00:00
Jim Meyering
4adcccbf48 Redirect errors (e.g. missing file) to /dev/null. 2002-10-04 11:19:22 +00:00
Jim Meyering
c19dbea39c *** empty log message *** 2002-10-03 09:32:14 +00:00
Jim Meyering
4a6814ada7 Mark translatable string with `N_ (...)'. 2002-10-03 09:31:12 +00:00
Jim Meyering
f91c0597b1 (AUTHORS): Mark translatable string with `N_ (...)'. 2002-10-03 09:28:02 +00:00
Jim Meyering
8ddf1353cc *** empty log message *** 2002-10-02 06:51:13 +00:00
Jim Meyering
b382c38eb1 (AC_CONFIG_FILES): Remove old/* names. 2002-10-02 06:50:57 +00:00
Jim Meyering
42a19757ae update from master 2002-10-02 06:50:19 +00:00
Jim Meyering
0c0586bb2e *** empty log message *** 2002-10-02 06:41:07 +00:00
Jim Meyering
dd356beb0a (SUBDIRS): Remove `old'.
(EXTRA_DIST): List the files in old/.
2002-10-02 06:40:46 +00:00
Jim Meyering
ba13d22e09 *** empty log message *** 2002-10-01 11:43:19 +00:00
Jim Meyering
1512315121 *** empty log message *** 2002-10-01 07:58:20 +00:00
Jim Meyering
ce221c2708 *** empty log message *** 2002-10-01 07:58:16 +00:00
Jim Meyering
6ee4cfca07 (SSIZE_MAX): Define. 2002-10-01 07:58:03 +00:00
Jim Meyering
c42deaae1a . 2002-09-30 22:03:45 +00:00
Jim Meyering
cc9e07b32f . 2002-09-30 22:02:48 +00:00
Jim Meyering
1ea1325068 Don't include stdlib.h here. It's already included via system.h. 2002-09-30 21:20:08 +00:00
Jim Meyering
43231af577 *** empty log message *** 2002-09-30 16:14:02 +00:00
Jim Meyering
be9d4e80a0 *** empty log message *** 2002-09-30 08:01:02 +00:00
Jim Meyering
98abcaa372 update from master 2002-09-30 06:35:44 +00:00
Jim Meyering
8adddf55c0 (find_bracketed_repeat): Rearrange pointer/integer
expression to avoid warning from gcc.
2002-09-29 21:31:29 +00:00
Jim Meyering
9df8af3675 *** empty log message *** 2002-09-29 21:25:11 +00:00
Jim Meyering
7e1ff0b4f8 (simple_cat): Use a temporary to avoid bogus warnings.
(cat): Declare insize and outsize to be of type size_t, not int.
Rearrange pointer/integer expressions to avoid bogus warnings.
(main): Declare insize and outsize to be of type size_t, not int.
2002-09-29 21:25:03 +00:00
Jim Meyering
ca9b1df44b *** empty log message *** 2002-09-29 18:06:06 +00:00
Jim Meyering
c791a382f8 (parse_options): Give a sensible diagnostic for
an invalid byte or line count.  Reported by Mikko Tuumanen.
2002-09-29 18:06:02 +00:00
Jim Meyering
d27ac3d82a *** empty log message *** 2002-09-29 18:05:40 +00:00
Jim Meyering
9d9dbdb922 *** empty log message *** 2002-09-29 18:01:37 +00:00
Jim Meyering
0863bbf447 (main): Split a long line. 2002-09-29 18:00:28 +00:00
Jim Meyering
e16b6e395b update from master 2002-09-29 17:26:38 +00:00
Jim Meyering
c1d185f01c . 2002-09-29 17:26:18 +00:00
Jim Meyering
d51cd50606 (TESTS): Add slink. 2002-09-29 17:26:09 +00:00
Jim Meyering
559a6d0f80 *** empty log message *** 2002-09-29 17:26:00 +00:00
Jim Meyering
dcb8cc65fa *** empty log message *** 2002-09-29 17:25:43 +00:00
Jim Meyering
92a2cc65cb *** empty log message *** 2002-09-29 17:23:03 +00:00
Jim Meyering
b7412e8bc0 *** empty log message *** 2002-09-29 17:17:28 +00:00
Jim Meyering
9e3fc21d11 . 2002-09-29 17:12:36 +00:00
Jim Meyering
a3b479c91f . 2002-09-29 08:44:36 +00:00
Jim Meyering
b928574bf6 *** empty log message *** 2002-09-29 08:43:24 +00:00
Jim Meyering
6daabb7578 In move mode, always first try to rename. Before, upon failure to
rename a directory, this code would never attempt to rename any
other file in that directory, but would thenceforth always copy.
On some systems (NetApp version ??), renaming a directory may fail
with EXDEV, yet renaming files within that directory to a newly-
created destination directory succeeds.

(copy_internal): Remove local, move_mode;
use x->move_mode instead.  Based on a patch from Tom Haynes.
2002-09-29 08:43:19 +00:00
Jim Meyering
d7e2b7fa84 *** empty log message *** 2002-09-29 08:35:05 +00:00
Jim Meyering
9265193dd2 *** empty log message *** 2002-09-29 08:33:41 +00:00
Jim Meyering
a20222cd22 . 2002-09-28 22:03:55 +00:00
Jim Meyering
d7098ccf98 *** empty log message *** 2002-09-28 22:03:31 +00:00
Jim Meyering
e5a2ac0f88 (AM_INTL_SUBDIR): Don't require gt_HEADER_INTTYPES_H.
It's not necessary with autoconf-2.54.
2002-09-28 22:03:26 +00:00
Jim Meyering
885b7147cc (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
2002-09-28 21:40:45 +00:00
Jim Meyering
9d78678c22 (jm_MACROS): Don't set GETGROUPS_LIB here; now it's
done via getgroups.m4's wrapper function.
2002-09-28 21:39:28 +00:00
Jim Meyering
30978dfadf update from master 2002-09-28 17:02:56 +00:00
Jim Meyering
d83e894316 *** empty log message *** 2002-09-28 16:53:57 +00:00
Jim Meyering
ccd5e413fb Remove file -- now it's part of autoconf-2.54 2002-09-28 16:53:25 +00:00
Jim Meyering
500ad9b9b1 *** empty log message *** 2002-09-28 16:50:43 +00:00
Jim Meyering
fd5bc32835 (FAIL_ONLY_ONE_WAY): New macro. Factor out some duplication.
(main): Use it.
[case 'a']: Use strtoul rather than strtol to avoid compiler warnings.
2002-09-28 16:50:34 +00:00
Jim Meyering
6fee4452d3 *** empty log message *** 2002-09-28 16:32:31 +00:00
Jim Meyering
16b4b4f861 (begfield, limfield): Rearrange comparisons to avoid compiler warnings.
(fillbuf, keycompare): Cast literal `-1' to size_t in comparisons,
to avoid compiler warnings.
2002-09-28 16:32:23 +00:00
Jim Meyering
1060257446 (dopass): Use a uintmax_t temporary to avoid bogus compiler warnings. 2002-09-28 16:29:25 +00:00
Jim Meyering
475574011d (tail_bytes): Change type of bytes_remaining to off_t
to avoid overflow.  Reported by Hans Lermen.
2002-09-28 09:21:17 +00:00
Jim Meyering
876ff10b0c *** empty log message *** 2002-09-28 07:55:25 +00:00
Jim Meyering
cd6ee8563b *** empty log message *** 2002-09-28 07:55:16 +00:00
Jim Meyering
ddb038c033 (make_path): Restore umask *before* creating the final component. 2002-09-28 07:55:08 +00:00
Jim Meyering
8c10d25fd0 Fix things so `mkdir -p' can create very deep directories, e.g.,
mkdir -p $(perl -e 'print "a/" x 40000') now works.

(main): For --parents (-p), call make_path with the
entire directory name, so we don't ever require that file operations
like stat or chmod be performed on the entire command line argument.
2002-09-28 07:51:17 +00:00
Jim Meyering
7c8156ca73 *** empty log message *** 2002-09-26 08:40:44 +00:00
Jim Meyering
0327689de0 (get_ids): Use strtoul, not strtol. Remove some casts. 2002-09-26 08:39:20 +00:00
Jim Meyering
d50e1a86b7 add a FIXME comment 2002-09-26 08:25:44 +00:00
Jim Meyering
2c6d700418 *** empty log message *** 2002-09-26 08:20:32 +00:00
Jim Meyering
4b0eb25d6d [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include <stdint.h>.
(UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
(PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
int.  Work more efficiently if X is the same width as uintmax_t.
Do not compare X to -1, to avoid bogus compiler warning.
(get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
Don't assume that f_frsize and f_bsize are the same type.
2002-09-26 08:18:33 +00:00
Jim Meyering
9cc87603b9 Upgrade to gettext-0.11.5. 2002-09-25 14:34:59 +00:00
Jim Meyering
d4add26938 Add be (Belarusian). 2002-09-25 14:23:49 +00:00
Jim Meyering
4fcf036cb3 . 2002-09-25 14:23:02 +00:00
Jim Meyering
ca2302ece5 . 2002-09-25 14:19:03 +00:00
Jim Meyering
59e6528c22 . 2002-09-25 12:52:56 +00:00
Jim Meyering
b79c9e46a9 (jm_MACROS): Require gt_INTTYPES_PRI. 2002-09-25 12:52:45 +00:00
Jim Meyering
0b797ed056 (gt_INTTYPES_PRI): New file, mostly from gettext. 2002-09-25 12:52:24 +00:00
Jim Meyering
619a52f976 *** empty log message *** 2002-09-25 11:45:42 +00:00
Jim Meyering
b5a4f7671a Remove unneeded parentheses around operands of `defined'. 2002-09-25 11:45:37 +00:00
Jim Meyering
d711a9e3be *** empty log message *** 2002-09-25 08:29:57 +00:00
Jim Meyering
029b8ea75d (safe_read): Make comment more precise: upon error, it returns -1. 2002-09-25 08:29:53 +00:00
Jim Meyering
34ba862f93 (eaccess): Change type of local `euid' from int to uid_t
and add a cast, to avoid a warning about `signed and unsigned type in
conditional expression'.
2002-09-25 08:23:54 +00:00
Jim Meyering
6b7e8621e2 *** empty log message *** 2002-09-24 08:50:24 +00:00
Jim Meyering
cc0a6e14fc fmt's -s, -t, -c options didn't work properly for long lines.
Since get_line may end up calling put_paragraph (for long lines),
be sure to set global, `other_indent', before it is used there.

(set_other_indent): New function, factored out of...
(get_paragraph): ... here.  Call it.
(get_line): Call set_other_indent before calling flush_paragraph,
which calls fmt_paragraph, which in turn calls put_paragraph,
which uses other_indent.
2002-09-24 08:50:20 +00:00
Jim Meyering
8683024a34 (make_path): Minor reformatting. 2002-09-22 07:40:28 +00:00
Jim Meyering
d8e1894335 *** empty log message *** 2002-09-22 06:59:21 +00:00
Jim Meyering
68527271a5 Include "dirname.h", for declaration of strip_trailing_slashes. 2002-09-22 06:59:13 +00:00
Jim Meyering
0f88878c11 *** empty log message *** 2002-09-22 06:48:35 +00:00
Jim Meyering
fab46cb466 (PRIdMAX, PRIuMAX): Remove definitions.
Now they're defined through system.h.
2002-09-22 06:48:28 +00:00
Jim Meyering
003ab9a58d Remove all inclusions of inttypes.h,
since it's already included from sys2.h via system.h.
2002-09-22 06:41:02 +00:00
Jim Meyering
709d79631a Remove all inclusions of inttypes.h,
since it's already included from sys2.h via system.h.
2002-09-22 06:40:14 +00:00
Jim Meyering
7b355ee476 upgrade to automake-1.6f 2002-09-22 06:34:18 +00:00
Jim Meyering
3be0542f6d *** empty log message *** 2002-09-22 06:33:27 +00:00
Jim Meyering
17e6ca3e89 *** empty log message *** 2002-09-21 22:40:45 +00:00
Jim Meyering
575cb67bb2 (PERL): Remove duplicate definition. 2002-09-21 22:40:35 +00:00
Jim Meyering
457ae040b7 *** empty log message *** 2002-09-21 22:34:30 +00:00
Jim Meyering
ddc4c1a8a9 (TESTS): Add long-line. 2002-09-21 22:12:40 +00:00
Jim Meyering
ef2c79217f *** empty log message *** 2002-09-21 14:24:28 +00:00
Jim Meyering
c5c97ee23a No longer include values.h.
It was required solely for now-removed reference to BITSPERBYTE.
2002-09-21 14:24:18 +00:00
Jim Meyering
ae1f13cd3c *** empty log message *** 2002-09-21 14:22:34 +00:00
Jim Meyering
d5d3e4a862 *** empty log message *** 2002-09-21 14:22:14 +00:00
Jim Meyering
7080cab46c No longer include values.h.
It was required solely for now-removed reference to BITSPERBYTE.
2002-09-21 14:21:53 +00:00
Jim Meyering
036ab5abda (UTILS_HOST_OS): Add a case for freebsd*-gnu*. 2002-09-20 09:04:43 +00:00
Jim Meyering
17170ddcb3 (TESTS): Add t-slash. 2002-09-20 08:59:17 +00:00
Jim Meyering
9fd07809b6 *** empty log message *** 2002-09-20 08:59:07 +00:00
Jim Meyering
350063fa65 add comment 2002-09-20 08:48:21 +00:00
Jim Meyering
9a8d898e60 *** empty log message *** 2002-09-20 08:46:48 +00:00
Jim Meyering
f0693e040c (remove_parents): Strip trailing slashes. 2002-09-20 08:41:02 +00:00
Jim Meyering
899a855343 Add need-ngettext to AM_GNU_GETTEXT invocation. 2002-09-20 08:18:39 +00:00
Jim Meyering
f026fc4b46 *** empty log message *** 2002-09-20 06:44:37 +00:00
Jim Meyering
eaa5777cc5 (announcement): Arrange to gpg-sign the message.
Add a URL for each detached signature file.
2002-09-20 06:44:31 +00:00
Jim Meyering
80b4ef8025 *** empty log message *** 2002-09-19 06:21:11 +00:00
Jim Meyering
f02d6eea14 *** empty log message *** 2002-09-18 08:31:16 +00:00
Jim Meyering
62718bc18d *** empty log message *** 2002-09-18 08:30:57 +00:00
Jim Meyering
0e71fdcb84 *** empty log message *** 2002-09-18 08:30:29 +00:00
Jim Meyering
78dfee94cb *** empty log message *** 2002-09-17 22:06:28 +00:00
Jim Meyering
b8da58cdac od -t x8' used the wrong (l'-prefixed) printf format.
Likewise for the o8 and u8 formats.

(ISPEC_TO_FORMAT): Define macro.
(decode_one_format): Use PRIdMAX, PRIoMAX, etc. for LONG_LONG.
Reported by Arun Sharma.
2002-09-17 22:06:21 +00:00
Jim Meyering
8837ed851e *** empty log message *** 2002-09-17 14:43:34 +00:00
Jim Meyering
32af38ad7f (PRIdMAX, PRIoMAX, PRIuMAX, PRIxMAX): Define if necessary.
From gettext's intl/loadmsgcat.c.
2002-09-17 14:41:43 +00:00
Jim Meyering
eb025632fc sort/check like this:
(export LC_COLLATE=fr_FR; sed -n '/^$/,$p' THANKS|sort -c -f -t' ' -k1,1 -k2,2)
2002-09-17 08:10:50 +00:00
Jim Meyering
96a4006030 sort 2002-09-17 08:07:07 +00:00
Jim Meyering
498e1e4f34 sort 2002-09-17 07:56:51 +00:00
Jim Meyering
0ba46f3211 *** empty log message *** 2002-09-17 07:50:32 +00:00
Jim Meyering
1c6add23a8 (TESTS): Add x8. 2002-09-17 07:34:04 +00:00
Jim Meyering
83ce802e59 test for bug fixed in coreutils-4.5.2 2002-09-17 07:33:54 +00:00
Jim Meyering
2e828f4304 *** empty log message *** 2002-09-16 10:27:05 +00:00
Jim Meyering
fd275f739b Forbid symbols matching ^jm_[A-Z].
(jm_PREREQ_QUOTEARG): Add jm_FUNC_MEMCMP.
2002-09-16 10:26:59 +00:00
Jim Meyering
29cf63f13e *** empty log message *** 2002-09-16 10:21:06 +00:00
Jim Meyering
bed74c5f2c (jm_PREREQ_ERROR): Check for libintl.h. 2002-09-16 10:20:54 +00:00
Jim Meyering
9679e3f156 *** empty log message *** 2002-09-16 05:51:14 +00:00
Jim Meyering
786254cbd5 version: 4.5.1 2002-09-16 05:49:58 +00:00
Jim Meyering
3888eed848 *** empty log message *** 2002-09-15 20:24:19 +00:00
Jim Meyering
68754e2a35 *** empty log message *** 2002-09-15 07:23:14 +00:00
Jim Meyering
f4c8df3d37 (get_format_width): Add cast to avoid
warning about `signed and unsigned type in conditional expression'.
2002-09-15 07:23:08 +00:00
Jim Meyering
165e561cf5 (generate_all_output): Likewise. 2002-09-15 07:12:05 +00:00
Jim Meyering
643087c9eb *** empty log message *** 2002-09-15 07:11:59 +00:00
Jim Meyering
e13f998e3d *** empty log message *** 2002-09-15 06:52:35 +00:00
Jim Meyering
ec317bd993 (xnanosleep): Return -1 on failure, not 1, for consistency with nanosleep.
Check errno after nanosleep returns -1.
2002-09-15 06:52:29 +00:00
Jim Meyering
466902bf34 *** empty log message *** 2002-09-14 09:12:20 +00:00
Jim Meyering
3935842cb3 (main, skip): Add casts to avoid warnings about
`comparison between signed and unsigned'.
2002-09-14 09:12:13 +00:00
Jim Meyering
12b5bb320c (print_user): Change type of local to size_t
to avoid warnings about `comparison between signed and unsigned'.
2002-09-14 07:47:38 +00:00
Jim Meyering
95631bcc4d *** empty log message *** 2002-09-14 07:45:59 +00:00
Jim Meyering
c81581d5c3 (print_full_info, print_group_list): Add casts to avoid
warnings about `signed and unsigned type in conditional expression'.
2002-09-14 07:45:53 +00:00
Jim Meyering
5ca2fe79d9 Change type of global, digest_hex_bytes, to size_t
to avoid warnings about `comparison between signed and unsigned'.
(split_3): Change parameter names to be readable and add comment.
Clean up the test for whether a line may be ignored.
2002-09-14 07:40:04 +00:00
Jim Meyering
fd73068711 *** empty log message *** 2002-09-13 21:17:26 +00:00
Jim Meyering
cea6b0e19a (jm_MACROS): Require autoconf-2.54. 2002-09-13 21:17:19 +00:00
Jim Meyering
6dfd1fe44a . 2002-09-13 14:23:26 +00:00
Jim Meyering
17b4cf8818 *** empty log message *** 2002-09-13 12:18:39 +00:00
Jim Meyering
5bd4fe2400 (main): Handle leading command line argument of `--'. 2002-09-13 09:50:23 +00:00
Jim Meyering
b4994d29a1 . 2002-09-13 09:49:55 +00:00
Jim Meyering
ef7c6ac69f *** empty log message *** 2002-09-13 09:49:26 +00:00
Jim Meyering
b9485873b6 Make sure printf handles a leading -- properly. 2002-09-13 09:49:19 +00:00
Jim Meyering
6b11de0aad (TESTS): Add printf. 2002-09-13 09:48:04 +00:00
Jim Meyering
41de1d5546 *** empty log message *** 2002-09-13 09:35:22 +00:00
Jim Meyering
0264deb7f0 *** empty log message *** 2002-09-13 09:31:32 +00:00
Jim Meyering
adaffb391b (Time directives) [%S]: Explain why the range is [0..60]. 2002-09-13 09:31:26 +00:00
Jim Meyering
dbe1e3529a (stat invocation): Remove references to now-removed %S and %C. 2002-09-13 09:19:20 +00:00
Jim Meyering
a59ff019de (usage): Explain that %S's range of [0..60] is required --
rather than 0..59 -- to accommodate the occasional positive leap second.
2002-09-13 09:18:18 +00:00
Jim Meyering
4de67de0af *** empty log message *** 2002-09-13 09:14:46 +00:00
Jim Meyering
510b33a541 *** empty log message *** 2002-09-13 08:51:27 +00:00
Jim Meyering
626d26baaa (tail invocation): In --sleep-interval=NUMBER,
NUMBER may now be a floating point number.
2002-09-13 08:51:15 +00:00
Jim Meyering
96a4360079 update from master 2002-09-13 07:46:30 +00:00
Jim Meyering
5ecd38d97e . 2002-09-12 13:16:43 +00:00
Jim Meyering
313f44f036 *** empty log message *** 2002-09-12 13:16:28 +00:00
Jim Meyering
3087631793 (nanosec_libs): Define.
(sleep_LDADD, tail_LDADD): Use it here.
2002-09-12 13:16:20 +00:00
Jim Meyering
96bd9415dc . 2002-09-12 13:15:07 +00:00
Jim Meyering
a4d28ef145 . 2002-09-12 12:14:58 +00:00
Jim Meyering
3a9de00dc7 *** empty log message *** 2002-09-12 12:12:31 +00:00
Jim Meyering
a6386ad90d *** empty log message *** 2002-09-12 12:11:59 +00:00
Jim Meyering
3bbdcee8c3 *** empty log message *** 2002-09-12 12:02:56 +00:00
Jim Meyering
1e8f677ed4 Factor nanosleep-related code into ../lib/xnanosleep.c.
Include xnanosleep.h.
Factor out fenv.h-related code.
(timespec_subtract): Remove function.
(main): Remove code that deals with computing start and stop times
as well as the loop around nanosleep.  Now that's in xnanosleep.c.
2002-09-12 12:01:02 +00:00
Jim Meyering
3a49e627de *** empty log message *** 2002-09-12 11:38:59 +00:00
Jim Meyering
7a79266014 Include xnanosleep.h and xstrtod.h.
Move declaration of global variable, sleep_interval, to ...
(main): ...here.
(usage): Update description of --sleep-interval option.
(tail_forever): New parameter, sleep_interval.  Update caller.
Use xnanosleep, rather than sleep.
(parse_options): New parameter, sleep_interval.  Update caller.
Use xstrtod, now that we accept floating point values.
2002-09-12 11:38:47 +00:00
Jim Meyering
d7a4a48c83 *** empty log message *** 2002-09-11 11:35:18 +00:00
Jim Meyering
aa6f330821 (libfetish_a_SOURCES): Add xnanosleep.c and xnanosleep.h. 2002-09-11 11:35:12 +00:00
Jim Meyering
079eb6b3d1 New files, factored out of sleep.c. 2002-09-11 11:34:20 +00:00
Jim Meyering
ae3d0303a0 . 2002-09-10 13:10:16 +00:00
Jim Meyering
867d0d0403 Remove file -- now it's part of autoconf-2.53c. 2002-09-10 13:10:02 +00:00
Jim Meyering
5d5cef3277 . 2002-09-10 13:09:17 +00:00
Jim Meyering
99583c1cae Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
AC_FUNC_GETLOADAVG where to find getloadavg.c.
2002-09-10 13:09:01 +00:00
Jim Meyering
3fb3949208 *** empty log message *** 2002-09-10 13:08:43 +00:00
Jim Meyering
0b49457e24 . 2002-09-10 13:08:00 +00:00
Jim Meyering
9e35801348 Add lg (Luganda). 2002-09-10 13:06:27 +00:00
Jim Meyering
afef4e7e86 . 2002-09-06 20:58:23 +00:00
Jim Meyering
0e1e6b5e56 *** empty log message *** 2002-09-06 08:00:43 +00:00
Jim Meyering
8706a066cf *** empty log message *** 2002-09-06 08:00:36 +00:00
Jim Meyering
37f7bae4f0 (prompt): Change comment to give a better note to translators. 2002-09-06 08:00:30 +00:00
Jim Meyering
fceb8c6f6d . 2002-09-05 11:38:21 +00:00
Jim Meyering
1a71d84326 *** empty log message *** 2002-09-04 07:53:56 +00:00
Jim Meyering
de68469582 (addext): Add a cast to avoid gcc's warning about
`comparison between signed and unsigned'.
2002-09-04 07:53:42 +00:00
Jim Meyering
8b4aebd031 *** empty log message *** 2002-09-04 07:41:34 +00:00
Jim Meyering
6c0a2cd041 (str2signum, sig2str): Declare loop index variables to be
of type size_t so that they match type of upper bound, thus avoiding
warning about `comparison between signed and unsigned'.
2002-09-04 07:41:11 +00:00
Jim Meyering
2eb1ba5109 *** empty log message *** 2002-09-03 14:10:17 +00:00
Jim Meyering
d3f25cc8bf . 2002-09-03 14:07:36 +00:00
Jim Meyering
a9e5e84ed7 *** empty log message *** 2002-09-02 09:07:13 +00:00
Jim Meyering
585d13437c A good problem report/patch includes diffs against
the most recent test release.
2002-09-02 07:53:13 +00:00
Jim Meyering
496f29fa8c (NEED_PATHCONF_WRAPPER): Define.
(pathconf_wrapper): Define only if NEED_PATHCONF_WRAPPER is set.
2002-09-02 07:43:38 +00:00
Jim Meyering
0ea01d21a3 (skip): Add casts to avoid warning about comparison
between signed and unsigned. Also rearrange range-checking
comparisons to make them more readable.
2002-09-02 07:38:53 +00:00
Jim Meyering
2ebfe2fc9c (print_table_row): Use an unsigned type for widths
to avoid warning about comparison between signed and unsigned.
(list_signals): Likewise.
2002-09-02 07:31:24 +00:00
Jim Meyering
680cd976cc (skip): Add a cast to avoid warning about comparison
between signed and unsigned.
2002-09-02 07:23:09 +00:00
Jim Meyering
c6fcfa23be *** empty log message *** 2002-09-02 06:36:12 +00:00
Jim Meyering
636b6d76f3 *** empty log message *** 2002-09-02 06:34:55 +00:00
Jim Meyering
951b87ccd5 Bump version to 4.5.2. 2002-09-02 06:30:16 +00:00
Jim Meyering
e6c8577825 . 2002-09-01 09:58:07 +00:00
Jim Meyering
55b9df1653 *** empty log message *** 2002-09-01 09:42:31 +00:00
Jim Meyering
b2523f82c5 . 2002-09-01 08:56:59 +00:00
Jim Meyering
f7e3d9b0f2 *** empty log message *** 2002-08-31 16:59:23 +00:00
Jim Meyering
b0231a2f03 Update from GNU libc. 2002-08-31 16:59:12 +00:00
Jim Meyering
a5f8422570 Update from GNU libc. 2002-08-31 16:54:45 +00:00
Jim Meyering
5bdb1226eb Update from GNU libc. 2002-08-31 16:52:18 +00:00
Jim Meyering
eb540d8e9b *** empty log message *** 2002-08-31 16:46:43 +00:00
Jim Meyering
174a1f057c Update from GNU libc. 2002-08-31 16:46:40 +00:00
Jim Meyering
6dcc1a7fc3 *** empty log message *** 2002-08-31 16:25:42 +00:00
Jim Meyering
08264fc838 *** empty log message *** 2002-08-31 16:23:08 +00:00
Jim Meyering
24272cc948 . 2002-08-31 16:11:27 +00:00
Jim Meyering
62808a7fb5 Symlinks were always reported as using 0 blocks.
(ST_NBLOCKS): Don't depend on file type.
This reverts the change of 2000-01-30.
Based on a report and patch from Neil Brown via Michael Stone.
2002-08-31 16:04:57 +00:00
Jim Meyering
03b25d2e46 *** empty log message *** 2002-08-31 16:04:09 +00:00
Jim Meyering
570446de4a *** empty log message *** 2002-08-31 16:02:41 +00:00
Jim Meyering
970a18999d *** empty log message *** 2002-08-31 09:03:39 +00:00
Jim Meyering
61fe93b0c0 *** empty log message *** 2002-08-31 09:02:31 +00:00
Jim Meyering
41766f78de *** empty log message *** 2002-08-31 09:02:09 +00:00
Jim Meyering
45615cb41f *** empty log message *** 2002-08-31 08:52:15 +00:00
Jim Meyering
4006f4e672 Change exit (0)' to exit (EXIT_SUCCESS)',
`exit (1)' to `exit (EXIT_FAILURE)', and
`usage (1)' to `usage (EXIT_FAILURE)'.
2002-08-31 08:52:10 +00:00
Jim Meyering
7488703199 Change error (1, ...' to error (EXIT_FAILURE, ...'. 2002-08-30 23:04:53 +00:00
Jim Meyering
6c80ecd8d5 *** empty log message *** 2002-08-30 06:59:44 +00:00
Jim Meyering
4bffc55254 [START-INFO-DIR-ENTRY]: Don't use sc{} on LHS.
Fix typo: s/permission/permissions/.  From Michail Litvak.
2002-08-30 06:59:39 +00:00
Jim Meyering
96a48abf78 *** empty log message *** 2002-08-30 06:58:41 +00:00
Jim Meyering
e5ccb59f97 *** empty log message *** 2002-08-29 10:46:04 +00:00
Jim Meyering
649a00e9b8 (is_empty_dir): Detect and diagnose readdir failures.
Always close directory handle.
2002-08-29 10:42:12 +00:00
Jim Meyering
515f184462 (print_dir): Detect and diagnose readdir failures.
On some systems (at least EMC Celerra and Solaris5.8),
this appears to be necessary.
(print_dir): Rename local variable: reading -> dirp.
2002-08-29 10:16:00 +00:00
Jim Meyering
609231e3fa *** empty log message *** 2002-08-29 10:15:20 +00:00
Jim Meyering
1f8ece552f (remove_cwd_entries): Use closedir (not CLOSEDIR) when ignoring any return value. 2002-08-29 10:13:57 +00:00
Jim Meyering
82c0b315bc (print_dir): Rename local variable: reading -> dirp. 2002-08-29 09:44:23 +00:00
Jim Meyering
9a9e0503a2 (remove_cwd_entries): Detect and diagnose readdir
failures.  On some systems (at least EMC Celerra and Solaris5.8),
this appears to be necessary.
2002-08-29 09:42:43 +00:00
Jim Meyering
cd79080f4a (remove_cwd_entries): Use CLOSEDIR, not closedir.
Give a diagnostic and fail if closedir fails.
2002-08-28 06:52:07 +00:00
Jim Meyering
3ee8ba25ba *** empty log message *** 2002-08-26 13:10:10 +00:00
Jim Meyering
c725204141 *** empty log message *** 2002-08-26 13:04:49 +00:00
Jim Meyering
4ab5b1b246 (THANKS-to-translators): New rule.
(EXTRA_DIST): Add both THANKS-to-translators and THANKStt.in.
2002-08-26 12:58:30 +00:00
Jim Meyering
b10e1c1a4a *** empty log message *** 2002-08-26 12:49:14 +00:00
Jim Meyering
69a590a469 *** empty log message *** 2002-08-26 10:05:07 +00:00
Jim Meyering
e5f8396b09 *** empty log message *** 2002-08-26 10:04:51 +00:00
Jim Meyering
efaf3a08de *** empty log message *** 2002-08-26 10:04:05 +00:00
Jim Meyering
6f6a8f0361 . 2002-08-26 10:01:57 +00:00
Jim Meyering
7dd8275506 . 2002-08-26 07:26:34 +00:00
Jim Meyering
234cd4e3fe (close_stdout_wrapper): New, kludgey, function and file-scoped global.
(main): Register it with atexit.
Close STDOUT_FILENO, to avoid a problem when writing to
/dev/audio on at least Solaris 2.7 and 2.8 systems.
2002-08-26 07:23:37 +00:00
Jim Meyering
6d1c743816 *** empty log message *** 2002-08-26 07:23:18 +00:00
Jim Meyering
5dff34cd8d *** empty log message *** 2002-08-26 07:22:09 +00:00
Jim Meyering
83f07a2ae3 *** empty log message *** 2002-08-25 14:32:21 +00:00
Jim Meyering
c7bfa321f9 *** empty log message *** 2002-08-25 14:32:10 +00:00
Jim Meyering
3124a4e393 (main): Close STDIN_FILENO rather than a literal `0'. 2002-08-25 14:32:02 +00:00
Jim Meyering
f7f7207a69 latest 2002-08-25 07:35:00 +00:00
Jim Meyering
dd11d9349e *** empty log message *** 2002-08-20 16:53:43 +00:00
Jim Meyering
17077cbcbf Rewrite not to use `: ${VAR=not_set}' paradigm. 2002-08-20 16:53:33 +00:00
Jim Meyering
9db4370c1a *** empty log message *** 2002-08-20 10:19:18 +00:00
Jim Meyering
91d008f619 . 2002-08-20 10:18:19 +00:00
Jim Meyering
ac9b8804eb . 2002-08-14 13:44:19 +00:00
Jim Meyering
78088e3400 *** empty log message *** 2002-08-10 09:58:02 +00:00
Jim Meyering
01ac2fda31 Don't use "exec --"; it's not portable and shouldn't be needed. 2002-08-10 09:57:57 +00:00
Jim Meyering
f12b040a86 . 2002-08-09 22:13:49 +00:00
Jim Meyering
b2ad2ca795 [col-last]: New test for the above. 2002-08-09 22:13:37 +00:00
Jim Meyering
13f19a6185 *** empty log message *** 2002-08-09 10:04:19 +00:00
Jim Meyering
b1113d0168 (main): Don't ignore -COLUMN if it's the last option.
(usage): Clarify help text for the -COLUMN option.
2002-08-09 10:03:58 +00:00
Jim Meyering
82e2664b87 Start with version 4.5.1, chosen so that it's larger than
the latest version numbers of the component packages.
2002-08-09 10:00:25 +00:00
Jim Meyering
6eb3ba11fb (check-x-vs-1): Set and export PATH so we use programs in ../src. 2002-08-09 06:12:29 +00:00
Jim Meyering
a4726a4c8d *** empty log message *** 2002-08-09 06:12:18 +00:00
Jim Meyering
11eaed5c9c . 2002-08-08 17:05:13 +00:00
Jim Meyering
fc0e70fe74 *** empty log message *** 2002-08-08 16:38:29 +00:00
Jim Meyering
596072d020 *** empty log message *** 2002-08-08 16:37:27 +00:00
Jim Meyering
23fd377567 *** empty log message *** 2002-08-08 16:36:52 +00:00
Jim Meyering
4cb69e11ad Guard inclusion of <langinfo.h> with
`#if HAVE_LANGINFO_CODESET', not `#if HAVE_LANGINFO_H'.
2002-08-08 16:36:33 +00:00
Jim Meyering
99ec0b1a38 *** empty log message *** 2002-08-08 09:08:09 +00:00
Jim Meyering
f900759505 *** empty log message *** 2002-08-08 09:07:45 +00:00
Jim Meyering
c762eef14f *** empty log message *** 2002-08-08 09:02:10 +00:00
Jim Meyering
8cfd57e318 *** empty log message *** 2002-08-07 22:04:42 +00:00
Jim Meyering
0a6e22bb95 (main): Adjust to posixtime signature change.
Remove unnecessary initialization.
Use localtime, not posixtm, to warn about obsolete "touch".
2002-08-07 22:04:37 +00:00
Jim Meyering
1f6174e466 (main): Adjust to posixtime signature change. 2002-08-07 22:04:01 +00:00
Jim Meyering
8f5baf053e *** empty log message *** 2002-08-07 22:03:24 +00:00
Jim Meyering
ea1d6448fb (posixtime): Return bool instead of time_t, so
that we can return (time_t) -1 successfully.
2002-08-07 22:02:52 +00:00
Jim Meyering
c66dd95e8e Fix some minor time-related bugs with POSIX time arguments.
Some valid time stamps were being rejected (notably -1, and
time stamps before 1900 on 64-bit hosts).  And some invalid
time stamps were being accepted, e.g. September 31.

* lib/posixtm.h (posixtime): Return bool instead of time_t, so
that we can return (time_t) -1 successfully.
* lib/posixtm.c: Likewise.
[HAVE_STDBOOL_H]: Include <stdbool.h>.
(bool, false, true) [!HAVE_STDBOOL_H]: New type.
(t): Remove static var.
(year, posix_time_parse): Now takes struct tm * arg to modify, instead
of static var.  All uses changed.
(year): Do not reject years before 1900; they can occur with
64-bit time_t.
(posix_time_parse): Do not check for out-of-range components;
that is now the caller's responsibility, since our checks were
only approximations.
(posixtime): Use mktime to check for out-of-range components,
since it knows them exactly.
If mktime returns (time_t) -1, check whether an error actually occurred
by invoking localtime on -1.
(main) [TEST_POSIXTIME]: Check for input data errors, and report
posixtime failures better.
Improve the test data (in comments only).
2002-08-07 22:02:23 +00:00
Jim Meyering
bdccb7c890 Change $am_cv_sys_posix_termios to $ac_cv_sys_posix_termios.
From Andreas Schwab.
2002-08-05 12:21:42 +00:00
Jim Meyering
643bb0f883 *** empty log message *** 2002-08-05 12:20:55 +00:00
Jim Meyering
5c1e3600c9 *** empty log message *** 2002-08-05 12:20:42 +00:00
Jim Meyering
ea64b210f7 *** empty log message *** 2002-08-05 11:51:50 +00:00
Jim Meyering
67b3ee9676 Also change use of $am_cv_sys_posix_termios
to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
2002-08-05 11:51:42 +00:00
Jim Meyering
46f67717fb . 2002-08-05 10:53:37 +00:00
Jim Meyering
4597dbd2a7 *** empty log message *** 2002-08-05 10:11:54 +00:00
Jim Meyering
78c7cfea3f (TESTS): Add nice and pathchk1. 2002-08-05 08:28:29 +00:00
Jim Meyering
4ab4543c2d . 2002-08-05 08:27:56 +00:00
Jim Meyering
c6827392b2 *** empty log message *** 2002-08-04 13:48:07 +00:00
Jim Meyering
28618d4dda . 2002-08-04 13:47:09 +00:00
Jim Meyering
27076dfd18 *** empty log message *** 2002-08-04 13:46:33 +00:00
Jim Meyering
04e21e6e53 . 2002-08-04 13:46:16 +00:00
Jim Meyering
92b12e12af *** empty log message *** 2002-08-04 13:41:29 +00:00
Jim Meyering
62ddac9d22 . 2002-08-04 13:40:26 +00:00
Jim Meyering
a3e653fea2 *** empty log message *** 2002-08-04 13:36:39 +00:00
Jim Meyering
54160b0b94 . 2002-08-04 11:04:56 +00:00
Jim Meyering
f09c1b54cf *** empty log message *** 2002-08-04 11:04:38 +00:00
Jim Meyering
0e727f4c59 *** empty log message *** 2002-08-04 11:03:20 +00:00
Jim Meyering
ca845879a4 (check-README): New target/rule.
(check): Depend on it.
2002-08-04 11:03:08 +00:00
Jim Meyering
9c24b11207 *** empty log message *** 2002-08-04 11:02:44 +00:00
Jim Meyering
c1f4d04c0f (AC_CONFIG_FILES): Add old/Makefile and old/*/Makefile. 2002-08-04 11:02:26 +00:00
Jim Meyering
2220d47e56 . 2002-08-04 11:01:30 +00:00
Jim Meyering
dbb5342c42 *** empty log message *** 2002-08-04 09:38:47 +00:00
Jim Meyering
b0c47ec127 *** empty log message *** 2002-08-04 06:15:41 +00:00
Jim Meyering
667d18259c *** empty log message *** 2002-08-03 17:42:53 +00:00
Jim Meyering
12107c3302 (SUBDIRS): Add old. 2002-08-03 16:49:20 +00:00
Jim Meyering
cd93525ee8 . 2002-08-03 16:48:17 +00:00
Jim Meyering
1c421df83b . 2002-08-03 16:47:21 +00:00
Jim Meyering
245b16635b *** empty log message *** 2002-08-03 16:44:43 +00:00
Jim Meyering
cefeb81dd5 (AM_INSTALLCHECK_STD_OPTIONS_EXEMPT): Set to false. 2002-08-03 16:44:33 +00:00
Jim Meyering
87ef26a750 *** empty log message *** 2002-08-03 14:57:15 +00:00
Jim Meyering
ccd890dc9f *** empty log message *** 2002-08-03 14:55:25 +00:00
Jim Meyering
9193e7e10a *** empty log message *** 2002-08-03 14:55:21 +00:00
Jim Meyering
9159586138 Require AC_SYS_POSIX_TERMIOS, not AM_SYS_POSIX_TERMIOS. 2002-08-03 14:54:21 +00:00
Jim Meyering
515fe7d138 *** empty log message *** 2002-08-03 14:01:20 +00:00
Jim Meyering
1a15d841b8 *** empty log message *** 2002-08-02 14:49:52 +00:00
Jim Meyering
be39dde5b1 uniq now obeys LC_COLLATE. 2002-08-02 14:49:29 +00:00
Jim Meyering
f74c790e4d *** empty log message *** 2002-08-02 14:42:45 +00:00
Jim Meyering
545c2323d4 Include hard-locale.h, xmemcoll.h.
(hard_LC_COLLATE): New var.
(different): Args are now char *, not const char *.
Use xmemcoll instead of memcmp to compare lines, so that
LC_COLLATE has effect.  However, use memcmp if it is an
easy locale.
(check_file): Do not include newline in comparison, so that
xmemcoll has a byte to stomp on temporarily.
(main): Set hard_LC_COLLATE.
2002-08-02 14:42:37 +00:00
Jim Meyering
69a27f2c3d *** empty log message *** 2002-08-01 21:37:04 +00:00
Jim Meyering
9a7a47422e *** empty log message *** 2002-08-01 09:19:30 +00:00
Jim Meyering
d2b62daff5 (run_shell): Exit with status 126 or 127 when execvp or
execv fails, for consistency with POSIX commands like env and nice.
2002-08-01 09:19:24 +00:00
Jim Meyering
a6005c2ba4 (main): Exit with status 126 or 127 when execvp or
execv fails, for consistency with POSIX commands like env and nice.
2002-08-01 08:50:19 +00:00
Jim Meyering
2a41097fd7 Change behavior to conform to POSIX 1003.1-2001:
- Do not adjust scheduling priority.
  - Redirects stderr to stdout, if stderr is not a terminal.
  - Exit status is now 126 if command was found but not invoked,
    127 if nohup failed or if command was not found.
  Fix bug: command was run if nohup.out wasn't writeable.
2002-08-01 08:47:33 +00:00
Jim Meyering
901688234a *** empty log message *** 2002-08-01 08:32:00 +00:00
Jim Meyering
8f065fba94 *** empty log message *** 2002-08-01 07:02:51 +00:00
Jim Meyering
12046ce90b (jm_PREREQ_TEMPNAME): lib/tempname.c may use uintmax_t,
so require require jm_AC_TYPE_UINTMAX_T.  Patch by Joe Orton.
2002-08-01 07:02:47 +00:00
Jim Meyering
cac2b2c8eb nohup changes 2002-07-29 12:19:12 +00:00
Jim Meyering
2394313610 *** empty log message *** 2002-07-29 12:18:35 +00:00
Jim Meyering
a022cf6329 Change behavior to conform to POSIX 1003.1-2001:
- Do not adjust scheduling priority.
- Redirects stderr to stdout, if stderr is not a terminal.
- Exit status is now 126 if command was found but not invoked,
  127 if nohup failed or if command was not found.
2002-07-29 12:17:42 +00:00
Jim Meyering
ac8cf8db56 . 2002-07-29 11:05:52 +00:00
Jim Meyering
2b1fd19a04 . 2002-07-29 11:04:59 +00:00
Jim Meyering
206dd4a985 require automake-1.6b 2002-07-29 10:57:12 +00:00
Jim Meyering
ef2c17c290 . 2002-07-29 10:55:22 +00:00
Jim Meyering
72c145938f . 2002-07-29 10:54:44 +00:00
Jim Meyering
0b903c36ca . 2002-07-29 10:37:33 +00:00
Jim Meyering
bc9509e015 *** empty log message *** 2002-07-29 10:35:22 +00:00
Jim Meyering
9d8a92eeb8 *** empty log message *** 2002-07-29 10:35:17 +00:00
Jim Meyering
95a4eb7b02 (SUBDIRS): Remove djgpp, for now. 2002-07-29 10:35:11 +00:00
Jim Meyering
c010271591 . 2002-07-29 10:34:32 +00:00
Jim Meyering
c017df37f1 Supply exit arg for both invocations of exit. 2002-07-29 09:54:40 +00:00
Jim Meyering
49f015c36b *** empty log message *** 2002-07-29 08:40:50 +00:00
Jim Meyering
c8729cad98 Adjust command examples in comments to use POSIX 1003.1-2001 option syntax.
From Paul Eggert.
2002-07-29 08:40:10 +00:00
Jim Meyering
14714daf41 *** empty log message *** 2002-07-28 21:48:41 +00:00
Jim Meyering
03089e39cb . 2002-07-28 21:45:04 +00:00
Jim Meyering
ff7b7797bb *** empty log message *** 2002-07-28 20:11:43 +00:00
Jim Meyering
e3d2d82194 *** empty log message *** 2002-07-28 20:10:56 +00:00
Jim Meyering
cafa875ac4 *** empty log message *** 2002-07-28 20:10:28 +00:00
Jim Meyering
aab1a6520d *** empty log message *** 2002-07-28 13:19:38 +00:00
Jim Meyering
3eb3c770fd Don't require jm_FUNC_READDIR. 2002-07-28 13:19:35 +00:00
Jim Meyering
af8dd6d427 (jm_FUNC_READDIR): Remove file/macro. No longer needed. 2002-07-28 13:15:48 +00:00
Jim Meyering
e1b511adc6 . 2002-07-27 21:39:33 +00:00
Jim Meyering
ad0b9f7dde *** empty log message *** 2002-07-27 21:39:16 +00:00
Jim Meyering
37a7d1433c (jm_PREREQ_READUTMP): Don't check just
`struct utmpx.ut_exit' and `struct utmp.ut_exit'.  Instead, check
all combinations of utmp/utmpx and ut_termination/e_termination
and ut_exit/e_exit.
2002-07-27 21:39:00 +00:00
Jim Meyering
598ed91d62 If we have both utmpx.h and utmp.h, and there exists
the utmp.ut_exit member, but not the utmpx.ut_exit member, then
undefine HAVE_UTMPX_H.  For AIX 4.3.3.  Doing all this in cpp is
a big kludge; someday we'll put the brains in an autoconf macro.
(UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
2002-07-27 21:35:39 +00:00
Jim Meyering
86af2dfa29 (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Remove definitions.
Now they're defined in readutmp.h.
(print_deadprocs): Remove obsolete FIXME comment.
2002-07-27 21:31:50 +00:00
Jim Meyering
ee16ef9929 *** empty log message *** 2002-07-27 08:45:53 +00:00
Jim Meyering
62c03f8fac Port to POSIX 1003.1-2001 "nice", which
requires the option "-n 5" rather than "-5".  This matters
with GNU "nice" if the user has set the _POSIX2_VERSION
environment variable.
2002-07-27 08:45:49 +00:00
Jim Meyering
5e8cbfdf8e *** empty log message *** 2002-07-27 07:08:03 +00:00
Jim Meyering
1d423f93c8 *** empty log message *** 2002-07-27 07:01:42 +00:00
Jim Meyering
aa2fb76aa1 *** empty log message *** 2002-07-27 07:01:03 +00:00
Jim Meyering
8c01127f70 *** empty log message *** 2002-07-26 07:38:41 +00:00
Jim Meyering
e4d4cea119 Don't include malloc.h -- it was unnecessary. 2002-07-26 07:38:35 +00:00
Jim Meyering
723e226532 update from master 2002-07-25 07:11:29 +00:00
Jim Meyering
2b4dff2063 *** empty log message *** 2002-07-24 08:33:27 +00:00
Jim Meyering
d1f42de115 (Time directives): Document %P, %R, %e, %F, %g, %G, and %V 2002-07-24 08:33:21 +00:00
Jim Meyering
ce7a9483a9 . 2002-07-24 08:27:35 +00:00
Jim Meyering
be7f1936bd undo last change 2002-07-24 08:24:12 +00:00
Jim Meyering
43343c2793 *** empty log message *** 2002-07-23 19:42:32 +00:00
Jim Meyering
68aff85110 *** empty log message *** 2002-07-23 19:42:04 +00:00
Jim Meyering
9bbd5af6e8 . 2002-07-23 08:16:11 +00:00
Jim Meyering
34598a09f5 *** empty log message *** 2002-07-23 08:14:34 +00:00
Jim Meyering
c6bb7f43ff (AC_C_BACKSLASH_A): Remove file, now that autoconf 2002-07-23 08:13:46 +00:00
Jim Meyering
2497b8e42f *** empty log message *** 2002-07-22 19:58:34 +00:00
Jim Meyering
8c55f0fbfa (Formatting the file names): Document
that -N/--literal are equivalent to --quoting-style=literal.
Reported by Oskar Liljeblad as Debian bug#103612.
2002-07-22 19:58:29 +00:00
Jim Meyering
a6d4483234 *** empty log message *** 2002-07-22 15:39:23 +00:00
Jim Meyering
33106990a6 (usage): The short form of --dereference is now -L, not -l. 2002-07-22 15:39:12 +00:00
Jim Meyering
63fb8bd5b6 *** empty log message *** 2002-07-22 12:24:48 +00:00
Jim Meyering
2bd28f0200 Add new option, --presume-input-tty, for testing only.
Not documented.
2002-07-22 12:24:41 +00:00
Jim Meyering
48a269db9c Add a test for this:
When not interactive, don't prompt for a symlink.
2002-07-22 12:22:59 +00:00
Jim Meyering
07fdea3ed9 . 2002-07-22 08:26:07 +00:00
Jim Meyering
14947f5b6c *** empty log message *** 2002-07-22 08:25:13 +00:00
Jim Meyering
786b4298a5 *** empty log message *** 2002-07-22 08:16:57 +00:00
Jim Meyering
a0ba130aea *** empty log message *** 2002-07-22 08:16:46 +00:00
Jim Meyering
ae1331b60a Handle the case in which rm produces no output. 2002-07-22 08:16:38 +00:00
Jim Meyering
2f17be04e3 This test might remove a file owned by the person running `make check'.
Hoist definition of $target_file, and use
that (not $f) in test for owner/dir/symlink.  Patch by Michael Stone.
2002-07-22 08:12:27 +00:00
Jim Meyering
db6dff2e6e rm would prompt for non-dangling symlinks
(prompt): When not interactive, don't prompt for a symlink.
2002-07-22 06:59:26 +00:00
Jim Meyering
fc1b595b19 *** empty log message *** 2002-07-22 06:55:17 +00:00
Jim Meyering
c206bac583 Fix typo in last change: add missing $ 2002-07-20 21:08:26 +00:00
Jim Meyering
64f41399ff *** empty log message *** 2002-07-20 20:06:49 +00:00
Jim Meyering
bcfbac9349 (copy_internal): Use file_name_lookup, not getdport.
Patch by Alfred M. Szmidt.
2002-07-20 20:06:41 +00:00
Jim Meyering
32ea988e8b *** empty log message *** 2002-07-20 15:48:25 +00:00
Jim Meyering
ad7b8c7978 . 2002-07-20 15:39:18 +00:00
Jim Meyering
b24b689963 . 2002-07-20 15:29:25 +00:00
Jim Meyering
334294f09d (main): Add an explicit `exit (EXIT_SUCCESS);'
for --version, rather than falling through.
2002-07-20 15:18:37 +00:00
Jim Meyering
3f6c422f1a (false.c): Convert only the final EXIT_SUCCESS
into EXIT_FAILURE.  Otherwise, false --help and false --version
would fail.
2002-07-20 15:18:20 +00:00
Jim Meyering
ad7e872471 *** empty log message *** 2002-07-20 14:24:34 +00:00
Jim Meyering
a82d360478 (news-r1, news-r2): Define. Better regexp.
(announcement): Use them here.  Also makes the line length < 80.
2002-07-20 14:24:29 +00:00
Jim Meyering
bfe17c403d *** empty log message *** 2002-07-20 14:12:31 +00:00
Jim Meyering
d234d4b968 *** empty log message *** 2002-07-20 14:10:21 +00:00
Jim Meyering
edc5d1e500 . 2002-07-20 14:06:47 +00:00
Jim Meyering
ce62cf1bd3 *** empty log message *** 2002-07-20 14:06:33 +00:00
Jim Meyering
eb7996a1df New file. From gettex-0.11.3. 2002-07-20 14:06:23 +00:00
Jim Meyering
4d84eaa764 do not use tail -1; use tail -n 1 instead 2002-07-20 11:17:27 +00:00
Jim Meyering
a5c943a9b4 . 2002-07-20 11:16:45 +00:00
Jim Meyering
6249feeba8 *** empty log message *** 2002-07-20 08:32:46 +00:00
Jim Meyering
74222f7619 *** empty log message *** 2002-07-20 08:28:24 +00:00
Jim Meyering
18d123ec85 *** empty log message *** 2002-07-20 08:24:31 +00:00
Jim Meyering
2b6249f98c . 2002-07-20 07:12:58 +00:00
Jim Meyering
6884ff795d . 2002-07-20 07:12:29 +00:00
Jim Meyering
e54c429349 *** empty log message *** 2002-07-20 07:12:13 +00:00
Jim Meyering
559555c77c Require autoconf-2.53b.
Use new macros AC_FUNC_MALLOC and AC_FUNC_REALLOC,
in place of jm_-prefixed ones.
2002-07-20 07:12:09 +00:00
Jim Meyering
b76525f29d Remove file, now that autoconf provides this macro. 2002-07-20 07:11:05 +00:00
Jim Meyering
a848d8b02b Adjust to work with new autoconf macros, AC_FUNC_MALLOC
and AC_FUNC_REALLOC: test #ifndef HAVE_MALLOC/HAVE_REALLOC.
2002-07-20 07:07:48 +00:00
Jim Meyering
6f382f7324 . 2002-07-20 06:52:12 +00:00
Jim Meyering
5e9dbfad55 Upgrade to gettext-0.11.3. 2002-07-20 06:41:26 +00:00
Jim Meyering
940ec37b9d *** empty log message *** 2002-07-20 06:38:38 +00:00
Jim Meyering
fd72bdc343 Upgrade to gettext-0.11.3. 2002-07-20 06:38:33 +00:00
Jim Meyering
5a75d400d9 Upgrade to gettext-0.11.3. 2002-07-20 06:37:36 +00:00
Jim Meyering
03229a474f Upgrade to gettext-0.11.3. 2002-07-20 06:36:49 +00:00
Jim Meyering
5b8a7240b0 Upgrade to gettext-0.11.3. 2002-07-20 06:35:12 +00:00
Jim Meyering
7e168001e9 Upgrade to gettext-0.11.3. 2002-07-20 06:34:16 +00:00
Jim Meyering
ca66dd1648 . 2002-07-20 06:31:28 +00:00
Jim Meyering
2200bd0564 Upgrade to gettext-0.11.3. 2002-07-20 06:31:12 +00:00
Jim Meyering
9befab3af8 fix typo in comment 2002-07-20 06:22:02 +00:00
Jim Meyering
39d971818e skip directories, too.
Otherwise, we'd have to account for the additional `directory ' part
of a diagnostic like this:

fail-eperm: unexpected dignostic from `rm -f /tmp/.pcmcia';
  got      rm: cannot remove directory `/tmp/.pcmcia': Is a directory
  expected rm: cannot remove `/tmp/.pcmcia': ...
2002-07-20 05:36:59 +00:00
Jim Meyering
e724268ea5 quotemeta 2002-07-19 22:01:43 +00:00
Jim Meyering
748de084cc *** empty log message *** 2002-07-19 21:36:56 +00:00
Jim Meyering
7ca9560caf Add .wav. 2002-07-19 21:36:46 +00:00
Jim Meyering
6c38ff8431 *** empty log message *** 2002-07-19 21:35:56 +00:00
Jim Meyering
b6389794e2 Don't expect `ARGV_0=$0 exec ...' to work.
It doesn't work with /bin/sh of Solaris5.6.
Use an explicit `export ARGV_0' instead.
[comparing actual and expected output]: Don't match the entire line,
but rather just the `rm: cannot remove `$dir/$f':' part.
2002-07-19 21:35:48 +00:00
Jim Meyering
29c8739e95 Use input-tty rather than testing for /dev/stdin. 2002-07-19 21:12:23 +00:00
Jim Meyering
767a8b968e *** empty log message *** 2002-07-19 20:26:28 +00:00
Jim Meyering
5db1ff6873 *** empty log message *** 2002-07-19 20:25:46 +00:00
Jim Meyering
164e61fbb9 tweak for better exit 2002-07-19 20:22:59 +00:00
Jim Meyering
4a8560e2a0 . 2002-07-19 19:42:31 +00:00
Jim Meyering
d4439bcbf4 update from master 2002-07-18 20:44:25 +00:00
Jim Meyering
af37865370 *** empty log message *** 2002-07-18 18:38:28 +00:00
Jim Meyering
3c26c805a7 *** empty log message *** 2002-07-18 18:35:47 +00:00
Jim Meyering
a19f9253c4 (main): Test sysctl(...) >= 0, not == 0, since
on NetBSD the return value may well be positive.
Use one-line aggregate initializations.
Use tightly scoped static buffers to avoid warnings about
unused variables on some systems.
2002-07-18 18:35:42 +00:00
Jim Meyering
510f7bfe87 (UNAME_HARDWARE_PLATFORM, UNAME_PROCESSOR): New macros.
(main): Use them, along with sysctl, to support uname -i and uname -p
on BSD hosts.
2002-07-18 18:28:53 +00:00
Jim Meyering
283c81ccdd . 2002-07-18 15:29:53 +00:00
Jim Meyering
80206d9811 (Makefile): Also depend on LINGUAS. 2002-07-18 09:46:38 +00:00
Jim Meyering
c696260961 *** empty log message *** 2002-07-18 09:34:52 +00:00
Jim Meyering
dadffbebca *** empty log message *** 2002-07-18 09:33:48 +00:00
Jim Meyering
2ea4083a64 *** empty log message *** 2002-07-18 09:28:45 +00:00
Jim Meyering
a536063677 Add the following to the list of colorizable
TERM names: dtterm xterm-color Eterm.
New archive suffix: .jar
New image suffixes: .jpeg .pbm .pgm .tiff .mpeg .xcf .xwd
Audio suffixes: .ogg .mp3
2002-07-18 09:28:41 +00:00
Jim Meyering
570e8c45fe *** empty log message *** 2002-07-17 15:35:22 +00:00
Jim Meyering
37bbc4c47f (print_uptime): Restore use of (equivalent, but
more readable) `>=' from Bruno's patch.
2002-07-17 10:59:54 +00:00
Jim Meyering
5486771381 . 2002-07-17 10:50:19 +00:00
Jim Meyering
9ee956a2f7 Use GNULIB_BOOT_TIME. 2002-07-17 10:49:46 +00:00
Jim Meyering
15b923a271 New file. Extracted from sh-utils' configure.ac
and extended to work also with *BSD systems.
2002-07-17 10:47:46 +00:00
Jim Meyering
6080be6701 *** empty log message *** 2002-07-16 09:49:43 +00:00
Jim Meyering
3474b1e642 *** empty log message *** 2002-07-16 09:42:43 +00:00
Jim Meyering
a96affa5e1 use $(PERL), not @PERL@ 2002-07-16 09:37:41 +00:00
Jim Meyering
d85c0c81fa *** empty log message *** 2002-07-16 09:29:56 +00:00
Jim Meyering
6978ba6736 (print_it): Use memcpy and a little pointer arithmetic, rather than stpncpy. 2002-07-16 09:29:52 +00:00
Jim Meyering
753bb04a60 . 2002-07-16 06:53:00 +00:00
Jim Meyering
99bf17613b *** empty log message *** 2002-07-16 06:51:20 +00:00
Jim Meyering
c7a1d7f58f help font-lock-mode 2002-07-16 06:49:50 +00:00
Jim Meyering
b23214fca0 *** empty log message *** 2002-07-16 06:46:19 +00:00
Jim Meyering
ce0f0e7e12 *** empty log message *** 2002-07-15 21:08:48 +00:00
Jim Meyering
52b40984a2 Include sys/sysctl.h.
(print_uptime): Add support for determining the boot time on FreeBSD.
2002-07-15 21:08:21 +00:00
Jim Meyering
eba70ec3a5 *** empty log message *** 2002-07-15 21:07:30 +00:00
Jim Meyering
9d348b20ef (jm_MACROS): Check for the sysctl function.
(jm_CHECK_ALL_HEADERS): Check for sys/sysctl.h.
2002-07-15 21:06:21 +00:00
Jim Meyering
34e8e6db03 *** empty log message *** 2002-07-15 20:43:48 +00:00
Jim Meyering
b918fce9a6 (print_uptime): Use STREQ in place of !strcmp. 2002-07-15 20:42:43 +00:00
Jim Meyering
02bdcf7646 Remove unnecessary uses of `defined' when
operating on `HAVE_...' symbols.  Remove unnecessary parentheses.
2002-07-15 13:15:07 +00:00
Jim Meyering
cdcc745b6b *** empty log message *** 2002-07-15 13:00:46 +00:00
Jim Meyering
33b79abe90 #undef MNT_IGNORE before defining it, to avoid warning on FreeBSD. 2002-07-15 13:00:40 +00:00
Jim Meyering
bac77ea3d9 Include <string.h>. 2002-07-15 12:59:47 +00:00
Jim Meyering
b65a2d1877 *** empty log message *** 2002-07-14 12:39:24 +00:00
Jim Meyering
6e5c26da04 *** empty log message *** 2002-07-14 11:46:50 +00:00
Jim Meyering
ab4c1d5532 Under some circumstances, rm would fail due to a lack of
permissions, but give a misleading diagnostic like this:
rm: cannot chdir from `.' to `foo': Not a directory

(remove_dir): Detect the case in which unlinking a
non-directory fails with EPERM, and give an appropriate diagnostic.
2002-07-14 11:46:41 +00:00
Jim Meyering
7678915a9e (TESTS): Add fail-eperm. 2002-07-13 09:24:13 +00:00
Jim Meyering
e5ee2e3aee (print_it): Use xstrdup, not strdup.
Use strspn to avoid an explicit loop.
Use fputc rather than printf "\n".

Include quote.h.
(print_stat): Use xreadlink, rather than using readlink directly.
Use the quote function rather than hard-coded double quotes.
Use error, not perror.
2002-07-13 08:05:04 +00:00
Jim Meyering
902453fc35 *** empty log message *** 2002-07-10 10:25:31 +00:00
Jim Meyering
545b6d7541 (show_dev): Make the `Use%' column align with
its heading, even when -P is used with -h or -H.
2002-07-10 10:22:10 +00:00
Jim Meyering
0fe8dc3290 update copyright 2002-07-10 10:09:10 +00:00
Jim Meyering
44ce3e4b3c *** empty log message *** 2002-07-10 10:08:33 +00:00
Jim Meyering
2aeeb5466e (du invocation): s/PAT/PATTERN/. 2002-07-10 10:08:22 +00:00
Jim Meyering
eb8c474088 Add a brief description of --exclude. 2002-07-10 10:06:39 +00:00
Jim Meyering
290867cc4a (usage) [--exclude]: Use PATTERN rather than PAT. 2002-07-10 10:05:32 +00:00
Jim Meyering
4e2a62ff5e *** empty log message *** 2002-07-10 10:05:13 +00:00
Jim Meyering
a1e22df67a update from master 2002-07-09 15:41:05 +00:00
Jim Meyering
703f6c0969 *** empty log message *** 2002-07-09 08:40:23 +00:00
Jim Meyering
00489c764a (ME_DUMMY): Don't count entries of type `auto' as dummy ones.
At least on GNU/Linux systems, `auto' means something else.
From Michael Stone.
2002-07-09 08:40:15 +00:00
Jim Meyering
6b33fa2fc6 (check-x-vs-1): cd to srcdir before running the ls.
Otherwise, it'd fail in the non-srcdir case.
2002-07-09 07:48:30 +00:00
Jim Meyering
01fb2d0ba8 . 2002-07-09 07:31:29 +00:00
Jim Meyering
d072c179a7 alphabetize the lists of programs 2002-07-09 07:30:44 +00:00
Jim Meyering
c77361418f add cat.1, once again 2002-07-09 07:27:27 +00:00
Jim Meyering
ca407c08fa *** empty log message *** 2002-07-09 07:26:49 +00:00
Jim Meyering
ffffb388a0 *** empty log message *** 2002-07-09 07:26:38 +00:00
Jim Meyering
744750ded3 (check-x-vs-1): New target.
(check-local): Depend on check-x-vs-1.
2002-07-09 07:25:40 +00:00
Jim Meyering
a879a0925f (dist_man_MANS): Add stat.
(stat.1): Add dependency.
2002-07-09 06:55:05 +00:00
Jim Meyering
56a4c59e60 (euidaccess): Remove declaration. It was unused. From Michael Stone.
(yesno): Remove declaration.  It too was unused.
2002-07-09 06:38:19 +00:00
Jim Meyering
a1d54b2837 *** empty log message *** 2002-07-08 17:15:28 +00:00
Jim Meyering
1882eec679 df now rounds all quantities up, as per POSIX.
This fixes a bug where df would report Size < Used.
2002-07-08 17:15:19 +00:00
Jim Meyering
67bf6815c4 df now rounds all quantities up, as per POSIX.
This fixes a bug where df would report Size < Used.

(df_readable): Omit last arg; we always round up now.
All callers changed.
2002-07-08 17:03:36 +00:00
Jim Meyering
dc0221e601 s/sh-utils/this package/ 2002-07-08 12:29:34 +00:00
Jim Meyering
ffceff850d (uninstall-local): Search for @GNU_PACKAGE@,
rather than the hard-coded `sh-utils'.
2002-07-08 12:26:59 +00:00
Jim Meyering
af75d641d4 *** empty log message *** 2002-07-08 09:13:33 +00:00
Jim Meyering
647eaf53a8 New ls time style: long-iso, which generates YYYY-MM-DD HH:MM.
Any time style can be preceded by "posix-".
The default time style is now posix-long-iso instead of posix-iso.
2002-07-08 09:13:12 +00:00
Jim Meyering
01eacf71cb (enum time_style): Remove posix_iso_time_style.
Add long_iso_time_style.
(time_style_args, time_style_types, decode_switches): Likewise.
(decode_switches): If a time style is prefixed by "posix-", ignore
it if in the POSIX locale.  Default style is now posix-long-iso.
(usage): Explain the above.
2002-07-08 09:12:48 +00:00
Jim Meyering
cebf7f7371 check only for $@" 2002-07-08 08:04:08 +00:00
Jim Meyering
a18abe21f7 *** empty log message *** 2002-07-08 08:01:23 +00:00
Jim Meyering
ce7f59f2ff *** empty log message *** 2002-07-08 07:09:21 +00:00
Jim Meyering
e289e5c881 (check-texinfo): Check for the above. 2002-07-08 07:08:59 +00:00
Jim Meyering
a72662ed6b (cp invocation): Remove unnecessary "$@" in example;
Texinfo would render the @" as an umlaut over the following character.
From Paul Eggert.
2002-07-08 07:07:52 +00:00
Jim Meyering
89eb405076 . 2002-07-06 15:37:12 +00:00
Jim Meyering
a6b74b8947 *** empty log message *** 2002-07-06 15:36:23 +00:00
Jim Meyering
5a6436bf38 *** empty log message *** 2002-07-06 15:35:29 +00:00
Jim Meyering
593a07614a (stat invocation): Remove description of --secure. 2002-07-06 15:35:24 +00:00
Jim Meyering
d815f6dbb7 Remove everything associated with --secure option. 2002-07-06 15:34:32 +00:00
Jim Meyering
512de3938e comments 2002-07-06 09:53:57 +00:00
Jim Meyering
66f8c36584 improve the test 2002-07-06 09:53:14 +00:00
Jim Meyering
49d3f4be1a *** empty log message *** 2002-07-06 09:16:56 +00:00
Jim Meyering
0dc6b951d8 *** empty log message *** 2002-07-04 12:07:29 +00:00
Jim Meyering
665089a167 *** empty log message *** 2002-07-04 12:07:23 +00:00
Jim Meyering
2afe4a1677 (prompt): Fix test for write-protectedness to also
check errno == EACCES.  Otherwise, `rm dangling-symlink' would
mistakenly prompt.
2002-07-04 12:06:49 +00:00
Jim Meyering
b645ebf086 *** empty log message *** 2002-07-04 12:06:18 +00:00
Jim Meyering
99c8e3f461 (TESTS): Add dangling-symlink. 2002-07-04 12:06:08 +00:00
Jim Meyering
81cae5ce24 *** empty log message *** 2002-07-04 12:05:00 +00:00
Jim Meyering
dd2496d71e *** empty log message *** 2002-07-04 12:04:37 +00:00
Jim Meyering
8a7ec6fa52 *** empty log message *** 2002-07-03 08:45:18 +00:00
Jim Meyering
973f88bd7d *** empty log message *** 2002-07-03 08:44:59 +00:00
Jim Meyering
27195acdb6 (usage): Rename --link/-l to --dereference/-L.
Describe --secure.
Describe --format.
(main): Support -L.  Deprecate -l.
2002-07-03 08:44:55 +00:00
Jim Meyering
421c142235 *** empty log message *** 2002-07-03 08:44:34 +00:00
Jim Meyering
8d7c1bb101 (stat invocation): Rename --link/-l to --dereference/-L.
Rewrite description of --dereference.
2002-07-03 08:44:27 +00:00
Jim Meyering
4afd8a87cd *** empty log message *** 2002-07-03 08:41:56 +00:00
Jim Meyering
41fe641773 add link and unlink 2002-07-02 16:20:54 +00:00
Jim Meyering
33c2d4da98 . 2002-07-02 16:20:10 +00:00
Jim Meyering
40d884ef95 *** empty log message *** 2002-07-02 16:19:46 +00:00
Jim Meyering
99e738219b *** empty log message *** 2002-07-02 14:56:32 +00:00
Jim Meyering
51e63eddf4 remove djgpp 2002-07-02 14:06:37 +00:00
Jim Meyering
3f1725cd4a . 2002-07-02 14:05:35 +00:00
Jim Meyering
bde17523a9 *** empty log message *** 2002-07-02 09:15:50 +00:00
Jim Meyering
fa6c1e3f51 . 2002-07-02 09:13:10 +00:00
Jim Meyering
b5e07cb9e8 *** empty log message *** 2002-07-02 09:12:42 +00:00
Jim Meyering
2ee11887cd (usage): Use the PACKAGE_BUGREPORT e-mail address, rather than hard-coding it. 2002-07-02 09:09:10 +00:00
Jim Meyering
6d0fe4dba5 *** empty log message *** 2002-07-02 09:08:30 +00:00
Jim Meyering
5a731510b2 (usage): Use the PACKAGE_BUGREPORT e-mail address, rather than hard-coding it. 2002-07-02 09:06:33 +00:00
Jim Meyering
d23970e52e (usage): Use the PACKAGE_BUGREPORT e-mail address, rather than hard-coding it. 2002-07-02 09:05:33 +00:00
Jim Meyering
4c7e003c1b . 2002-07-02 09:02:16 +00:00
Jim Meyering
4262ada1bd . 2002-07-02 09:01:53 +00:00
Jim Meyering
f4bb64378d (EXTRA_DIST): Merge. 2002-07-02 08:59:21 +00:00
Jim Meyering
d3ddaf1b29 *** empty log message *** 2002-07-02 08:47:01 +00:00
Jim Meyering
16cec7b66e (.sh): Also substitute @PACKAGE_BUGREPORT@. 2002-07-02 08:46:46 +00:00
Jim Meyering
9d6d0e452b (usage_help): Use @PACKAGE_BUGREPORT@, rather than hard-coding a
deprecated address.
2002-07-02 08:45:10 +00:00
Jim Meyering
c16552eee5 (usage): Use @PACKAGE_BUGREPORT@, rather than hard-coding a deprecated address. 2002-07-02 08:44:52 +00:00
Jim Meyering
e2003dea4b (usage): Mention that the expansions of %p and %P are
empty in many locales.  From matthew arnison.
2002-07-02 05:20:52 +00:00
Jim Meyering
7f412c940d merged 2002-07-01 21:26:55 +00:00
Jim Meyering
4b42154477 s/any/some/ 2002-07-01 21:15:13 +00:00
Jim Meyering
dc58af4acf remove redundant (exit $fail) 2002-07-01 19:15:49 +00:00
Jim Meyering
58c37faa5c Handle yet another different diagnostic. 2002-07-01 14:36:57 +00:00
Jim Meyering
bec7e2c432 *** empty log message *** 2002-07-01 14:23:28 +00:00
Jim Meyering
214d3ee739 Include sys/time.h.
From Volker Borchert.
2002-07-01 14:19:20 +00:00
Jim Meyering
a7d1d17be0 update to use prologue from sample-test 2002-07-01 09:41:20 +00:00
Jim Meyering
7039e40db2 whoops. 2002-07-01 09:25:02 +00:00
Jim Meyering
c69f2e06ce merge 2002-07-01 09:24:34 +00:00
Jim Meyering
48ed048feb *** empty log message *** 2002-07-01 09:09:06 +00:00
Jim Meyering
abb32bb0ae Merge the three files from fileutils, textutils, and sh-utils. 2002-07-01 08:13:49 +00:00
Jim Meyering
5ad73398f4 Merge the three files from fileutils, textutils, and sh-utils. 2002-07-01 08:08:43 +00:00
Jim Meyering
e6b4ef7f1d *** empty log message *** 2002-06-29 13:08:16 +00:00
Jim Meyering
a9a425d557 (print_statfs): Use `fputc ('*', stdout)'
instead of the combination of strcat and printf.
(print_statfs) [!FLASK_LINUX]: Print `*' for %S and %C, rather than `S' and `C'.
(print_stat) [!FLASK_LINUX]: Likewise.
2002-06-29 13:08:08 +00:00
Jim Meyering
83df3a8165 *** empty log message *** 2002-06-29 11:50:48 +00:00
Jim Meyering
9eea5b03dd (AD_mark_current_as_unremovable): Replace dead code with an assertion. 2002-06-29 11:50:38 +00:00
Jim Meyering
b31006ba99 *** empty log message *** 2002-06-26 07:38:23 +00:00
Jim Meyering
de19a1af57 (Putting the tools together): Don't mention egrep,
since it's not part of POSIX 1003.1-2001.
2002-06-26 07:38:18 +00:00
Jim Meyering
3ba3282be5 *** empty log message *** 2002-06-26 06:18:04 +00:00
Jim Meyering
0d051ba221 (WIDE_CHAR_SUPPORT): New macro. Use it uniformly instead of
(defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
reported by Vin Shelton.
2002-06-26 06:17:35 +00:00
Jim Meyering
8020e5b1e3 *** empty log message *** 2002-06-26 06:16:13 +00:00
Jim Meyering
074e29a651 (_AC_LIBOBJ_FNMATCH): Check for btowc. 2002-06-26 06:16:05 +00:00
Jim Meyering
5da70319a7 from libc 2002-06-26 06:13:24 +00:00
Jim Meyering
8ac1a9f278 *** empty log message *** 2002-06-25 08:21:13 +00:00
Jim Meyering
6e78c788f0 (prompt): Add a comment to help translators work
around the problem of making the translations of the adjective
`write-protected' and the corresponding run-time-variable noun
(e.g., file, directory, symlink, etc.) consistent.  From Paul Eggert.
2002-06-25 08:21:07 +00:00
Jim Meyering
35f99d5347 *** empty log message *** 2002-06-24 11:12:56 +00:00
Jim Meyering
de1abda345 *** empty log message *** 2002-06-24 10:56:55 +00:00
Jim Meyering
e6d1f21ea6 (usage): Add missing open-quote. 2002-06-24 10:56:50 +00:00
Jim Meyering
2223ca3c2d *** empty log message *** 2002-06-24 10:39:37 +00:00
Jim Meyering
4605ddcc95 *** empty log message *** 2002-06-22 18:08:52 +00:00
Jim Meyering
4dcdd8be06 *** empty log message *** 2002-06-22 18:08:10 +00:00
Jim Meyering
67e6f0f233 *** empty log message *** 2002-06-22 18:03:44 +00:00
Jim Meyering
8965df82d1 (ISASCII, ISPRINT): Undefine, to avoid warning about
redefinition due to Solaris5.6's definition in /usr/include/sys/euc.h.
2002-06-22 18:03:40 +00:00
Jim Meyering
453257fa71 *** empty log message *** 2002-06-22 16:20:19 +00:00
Jim Meyering
9e7746f4c0 (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
Do not assume SA_SIGINFO behavior.
Bug reported by Jim Meyering on NetBSD 1.5.2.
2002-06-22 16:20:15 +00:00
Jim Meyering
7721a2148a *** empty log message *** 2002-06-22 10:11:25 +00:00
Jim Meyering
64a1747ac5 Update from diffutils-2.8.2. 2002-06-22 10:11:14 +00:00
Jim Meyering
2e53304940 . 2002-06-22 10:09:47 +00:00
Jim Meyering
299741bf33 *** empty log message *** 2002-06-22 10:09:33 +00:00
Jim Meyering
a715ff5d80 (libfetish_a_SOURCES): Add exitfail.c and exitfail.h. 2002-06-22 09:26:57 +00:00
Jim Meyering
e3dbc8d753 New files, from diffutils-2.8.2. 2002-06-22 09:25:36 +00:00
Jim Meyering
d8cfcf1a19 *** empty log message *** 2002-06-22 09:23:32 +00:00
Jim Meyering
7fc37adff9 (libfetish_a_SOURCES): Add c-stack.c, too. 2002-06-22 09:23:17 +00:00
Jim Meyering
53ba358c4b New file, from diffutils-2.8.2. 2002-06-22 09:03:14 +00:00
Jim Meyering
f9114f866d from diffutils-2.8.2 2002-06-22 09:01:22 +00:00
Jim Meyering
846b65a50e (jm_PREREQ): Add jm_PREREQ_C_STACK. 2002-06-22 09:01:10 +00:00
Jim Meyering
6e8cd75ccf *** empty log message *** 2002-06-22 08:55:43 +00:00
Jim Meyering
3a88e9055b . 2002-06-22 08:54:28 +00:00
Jim Meyering
10ff1d4404 Update from diffutils-2.8.2. 2002-06-22 08:54:23 +00:00
Jim Meyering
fe02d6163d . 2002-06-22 08:53:17 +00:00
Jim Meyering
6088c6dba5 *** empty log message *** 2002-06-22 08:53:02 +00:00
Jim Meyering
04c5110e59 (jm_PREREQ_EXCLUDE): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU. 2002-06-22 08:52:56 +00:00
Jim Meyering
555d569125 * jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
now that configure.ac uses AC_GNU_SOURCE.
	(jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
2002-06-22 08:51:02 +00:00
Jim Meyering
ff6434052f (libfetish_a_SOURCES): Add fnmatch_.h in place of fnmatch.h.
(EXTRA_DIST): Add fnmatch_loop.c.
2002-06-22 08:47:57 +00:00
Jim Meyering
c230b93ee1 . 2002-06-22 08:34:59 +00:00
Jim Meyering
06f7295ae7 *** empty log message *** 2002-06-22 08:32:50 +00:00
Jim Meyering
f35ad592ca from diffutils-2.8.2. 2002-06-22 08:32:40 +00:00
Jim Meyering
8b213cb96f Change each use of AC_CHECK_HEADERS(stdbool.h) to AC_HEADER_STDBOOL 2002-06-22 08:29:29 +00:00
Jim Meyering
1cbf3518b8 New file, from diffutils-2.8.2. 2002-06-22 08:27:18 +00:00
Jim Meyering
7d04e0b63c Accommodate the slightly different diagnostic we
get on some systems, due to `unlink (dir)' failing with EACCES
rather than EPERM.  E.g. for ReiserFS on Linux-2.4.18.
2002-06-22 06:49:57 +00:00
Jim Meyering
fb10c254d8 *** empty log message *** 2002-06-22 06:49:43 +00:00
Jim Meyering
003d4e0cbe Update from gettext-0.11.2. 2002-06-21 21:23:01 +00:00
Jim Meyering
b3e0a2f188 *** empty log message *** 2002-06-21 17:42:12 +00:00
Jim Meyering
04bc254d7a bump serial# 2002-06-21 17:42:06 +00:00
Jim Meyering
6d9cf68838 (jm_PREREQ_QUOTEARG): Reflect name change: s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T. 2002-06-21 17:41:58 +00:00
Jim Meyering
442596279b Reflect name change: s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T. 2002-06-21 17:41:02 +00:00
Jim Meyering
04b4ee1245 Update from diffutils-2.8.2. 2002-06-21 17:38:30 +00:00
Jim Meyering
848d68e2c7 Add comment, from diffutils-2.8.2. 2002-06-21 15:39:12 +00:00
Jim Meyering
1e1836f7ca *** empty log message *** 2002-06-21 15:29:28 +00:00
Jim Meyering
4877e7ad84 . 2002-06-21 15:21:49 +00:00
Jim Meyering
15606fc8a9 tiny tweaks 2002-06-21 13:20:39 +00:00
Jim Meyering
fc3520c6fc (stat invocation): New section. From Michael Meskes. 2002-06-21 13:19:31 +00:00
Jim Meyering
0c788cabce . 2002-06-21 12:48:36 +00:00
Jim Meyering
a170c7e497 *** empty log message *** 2002-06-21 12:48:06 +00:00
Jim Meyering
fff4a08af1 (wget-update): Checkout into config/.
Warn when skipping a file.
2002-06-21 12:48:00 +00:00
Jim Meyering
047ab72566 *** empty log message *** 2002-06-21 12:34:49 +00:00
Jim Meyering
3ec40eb458 *** empty log message *** 2002-06-21 12:34:44 +00:00
Jim Meyering
e2a70948d4 Include sys/statvfs.h.
[!HAVE_SYS_STATVFS_H && !HAVE_SYS_VFS_H]: Include sys/param.h
and sys/mount.h, to get decl of struct statfs on NetBSD 1.5.2.
(NAMEMAX_FORMAT, STRUCT_STATVFS): Define.
(HAVE_STRUCT_STATXFS_F_TYPE, SB_F_NAMEMAX): Define.
Remove `static' attribute from decl of program_name.
(human_fstype): Use f_basetype or f_fstypename if available.
(print_human_time): Use nstrftime and an ISO format string, in
place of strftime with `%c'.  The latter is too locale-dependent.
(print_statfs): Deal with lots of portability issues: some fields
are available only with statfs, others only with statvfs, and
some are available in both, but with different types.
(do_statfs) [DEFAULT_FORMAT_TERSE]: Factor out.
[DEFAULT_FORMAT_VERBOSE]: Likewise.
2002-06-21 12:34:36 +00:00
Jim Meyering
a905df79ad . 2002-06-21 12:16:27 +00:00
Jim Meyering
0ab9ebc469 *** empty log message *** 2002-06-21 12:15:39 +00:00
Jim Meyering
807ad57ff1 *** empty log message *** 2002-06-21 12:13:51 +00:00
Jim Meyering
2b45b199f8 *** empty log message *** 2002-06-21 12:12:08 +00:00
Jim Meyering
ecbe7fb826 (jm_CHECK_ALL_HEADERS): Check for hurd.h. 2002-06-21 12:12:00 +00:00
Jim Meyering
071b36fd90 Change all `preserving ...' diagnostics to
`failed to preserve ...' to make the failure clearer.
2002-06-21 12:10:02 +00:00
Jim Meyering
d7313803f0 Include hurd.h.
(copy_internal): Preserve the stat.st_author field.
2002-06-21 12:06:17 +00:00
Jim Meyering
26ba37793c *** empty log message *** 2002-06-21 07:20:49 +00:00
Jim Meyering
2f223b443c (LOGIN_NAME_MAX): Define if not already defined.
(ID_LENGTH_MAX): Define.
(ST_DM_MODE): New macro.  Code moved from...
(print_long_format): ...here.
(print_long_format): Itemize and comment the individual parts
of init_bigbuf.  Use the above *_MAX macros.
2002-06-21 07:20:36 +00:00
Jim Meyering
7758b0efd3 Change defined(X)' syntax to defined X' in cpp directives. 2002-06-20 15:58:18 +00:00
Jim Meyering
343d7d4065 *** empty log message *** 2002-06-19 11:13:29 +00:00
Jim Meyering
f35cc0e4a0 Report an error if neither S_ISREG nor
S_IFREG is defined, instead of using a test specific to glibc
2.2.  This should be safe, since POSIX requires S_ISREG and
Unix Version 7 had S_IFREG.  We don't need to check for
<sys/types.h> since we don't use any symbols that it defines.
2002-06-19 11:12:59 +00:00
Jim Meyering
86adc7266e Interpret a permissions string of
drwxr-xr-x (DOS/Windows) as meaning the cwd is not setgid.
Reported by Rich Dawe.
2002-06-17 07:06:29 +00:00
Jim Meyering
57db2c8659 *** empty log message *** 2002-06-17 07:06:19 +00:00
Jim Meyering
6d797a5b97 use newer testing framework 2002-06-16 19:18:22 +00:00
Jim Meyering
3d16018d2e *** empty log message *** 2002-06-15 16:04:16 +00:00
Jim Meyering
6a4bcbb5d6 Include <sys/types.h> before system.h. 2002-06-15 16:03:57 +00:00
Jim Meyering
240330ca78 *** empty log message *** 2002-06-15 14:05:31 +00:00
Jim Meyering
719c68fe2e ls --author 2002-06-15 14:05:25 +00:00
Jim Meyering
34f5f485be *** empty log message *** 2002-06-15 13:43:20 +00:00
Jim Meyering
dc70d62988 *** empty log message *** 2002-06-15 13:42:54 +00:00
Jim Meyering
75dedb9944 (jm_CHECK_ALL_TYPES): Check for st_author. 2002-06-15 13:42:22 +00:00
Jim Meyering
45f4bb1290 (st_author) [! HAVE_STRUCT_STAT_ST_AUTHOR]: New macro.
(print_author): New var.
(AUTHOR_OPTION): New enum val.
(long_options, decode_switches, print_long_format, usage):
Support --author.
(format_user): New function.
(print_long_format): Use it.  Make print buffer a bit bigger.
2002-06-15 13:41:46 +00:00
Jim Meyering
dda6cbbb1c *** empty log message *** 2002-06-15 13:26:42 +00:00
Jim Meyering
4c52326d70 (ls invocation): Document new option: --author. 2002-06-15 13:26:38 +00:00
Jim Meyering
2fd73898d2 use trap stuff from sample-test 2002-06-15 10:19:36 +00:00
Jim Meyering
4726bde475 use trap stuff from sample-test 2002-06-15 10:17:35 +00:00
Jim Meyering
a44fd51a81 now that $tmp has two components, use mkdir's -p option to create it 2002-06-15 10:16:22 +00:00
Jim Meyering
35e9b38dd8 now that $tmp has two components, use mkdir's -p option to create it 2002-06-15 10:15:00 +00:00
Jim Meyering
a2e113a2db use trap stuff from sample-test 2002-06-15 10:04:30 +00:00
Jim Meyering
767aa7bf70 use trap stuff from sample-test 2002-06-15 09:58:37 +00:00
Jim Meyering
9234b6f7e0 *** empty log message *** 2002-06-15 09:54:28 +00:00
Jim Meyering
77bc22f77a (trap): in chmod, use u+rwx, not 700 2002-06-15 09:54:08 +00:00
Jim Meyering
646e37ff59 *** empty log message *** 2002-06-15 09:46:43 +00:00
Jim Meyering
bf7c8ba557 (trap): Make sure the temporary hierarchy is writable before removing it. 2002-06-15 09:46:32 +00:00
Jim Meyering
59f339c1f8 Use better trap.
trap 'status=$?; cd $pwd; chmod -R 700 $t0; rm -rf $t0 && exit $status' 0
2002-06-15 09:45:05 +00:00
Jim Meyering
2309be536f Use quoted here doc by default,
so e.g., backticks don't need to be escaped.
2002-06-15 09:41:47 +00:00
Jim Meyering
14c7cfea4c (TESTS): Add perm-1. 2002-06-15 09:40:25 +00:00
Jim Meyering
6f809229ef *** empty log message *** 2002-06-15 09:40:07 +00:00
Jim Meyering
f09cbdc4b4 *** empty log message *** 2002-06-15 08:47:55 +00:00
Jim Meyering
ef159d5cdb . 2002-06-15 08:47:25 +00:00
Jim Meyering
58e6f3d386 *** empty log message *** 2002-06-15 08:47:12 +00:00
Jim Meyering
39237a241f (lstat.c, stat.c, .sin.sed): Use t-$@, rather than $@-t,
so that each temporary file name is unique and valid in the first
8 characters, for operation under DOS.
2002-06-15 08:46:59 +00:00
Jim Meyering
8ba0cddae4 (FILE_TYPE_H): Guard entire contents with #ifndef.
For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
have been included before this file.
2002-06-15 08:43:45 +00:00
Jim Meyering
13221a5a13 For GNU libc 2.2 and newer, ensure that <sys/types.h>
has been included before this file.
2002-06-15 08:40:55 +00:00
Jim Meyering
3351c8aada . 2002-06-15 08:04:23 +00:00
Jim Meyering
19548deac9 Change temp file names to accommodate DOS 8.3 file name limitation. 2002-06-15 08:03:24 +00:00
Jim Meyering
ff43f6b441 Change temp. file name: s/\.err/_err/, for DOS. 2002-06-15 08:02:16 +00:00
Jim Meyering
1d51d96e1e Change temp file names to accommodate DOS 8.3 file name limitation. 2002-06-15 08:01:41 +00:00
Jim Meyering
140f272a56 Remove leading `.' from temp. names. 2002-06-15 08:01:20 +00:00
Jim Meyering
9da59fff0d Change temp file names to accommodate DOS 8.3 file name limitation. 2002-06-15 07:56:40 +00:00
Jim Meyering
06b1f74288 *** empty log message *** 2002-06-15 07:37:29 +00:00
Jim Meyering
dbb90872ee (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK is defined. 2002-06-15 07:37:21 +00:00
Jim Meyering
cb8155615a (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK is defined. 2002-06-15 07:36:57 +00:00
Jim Meyering
b29576f01f *** empty log message *** 2002-06-15 06:54:05 +00:00
Jim Meyering
d404816448 (S_ISNAM): Add to list of S_IS* macros.
Rearrange #if directives for each S_IS macro.
From diffutils-2.8.2.
2002-06-15 06:53:57 +00:00
Jim Meyering
02d8535f9e *** empty log message *** 2002-06-14 07:53:01 +00:00
Jim Meyering
dfe88896b5 Use the version from diffutils-2.8.2. 2002-06-14 07:52:32 +00:00
Jim Meyering
0f19d3650b update from master sources 2002-06-13 09:30:02 +00:00
Jim Meyering
10c95a54b5 tweak expected message 2002-06-12 08:02:12 +00:00
Jim Meyering
f849e0aaac (do_move): Give one diagnostic, not two, when unable to
unlink a destination file.  This bug was introduced in fileutils-3.16l.

$ /bin/mv /etc/passwd /tmp
/bin/mv: cannot unlink `/etc/passwd': Permission denied
/bin/mv: cannot remove `/etc/passwd': Permission denied
[Exit 1]
2002-06-12 08:01:48 +00:00
Jim Meyering
7e6aff288f (rm): Fix typo in assertion. 2002-06-12 08:00:50 +00:00
Jim Meyering
c5b3b8e2b6 tweak output: s/ directory// 2002-06-07 14:57:19 +00:00
Jim Meyering
e20a6cfb82 *** empty log message *** 2002-06-07 14:49:33 +00:00
Jim Meyering
bae1890d5b Also accept the permission-denied diagnostic
issued by some losing systems.  Reported by Volker Borchert.
2002-06-07 14:49:21 +00:00
Jim Meyering
b2816db207 . 2002-06-07 14:44:02 +00:00
Jim Meyering
2e6f8bf01e *** empty log message *** 2002-06-07 14:43:41 +00:00
Jim Meyering
a3eb51b0e2 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
They're needed at least for NetBSD 1.5.2.
($statxfs_includes): Include those same headers.
($statxfs_includes): Include sys/vfs.h if available.
($statxfs_includes): Likewise for sys/statvfs.h.
Check for the following members in both structs statfs and statvfs:
f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
2002-06-07 14:43:36 +00:00
Jim Meyering
6d3ea70cf7 *** empty log message *** 2002-06-07 14:39:21 +00:00
Jim Meyering
b965b62436 (remove_entry): Use DT_IS_DIR only if
HAVE_STRUCT_DIRENT_D_TYPE is defined.
2002-06-07 14:39:09 +00:00
Jim Meyering
8bd3e55a54 . 2002-06-06 07:48:26 +00:00
Jim Meyering
cb93da5115 *** empty log message *** 2002-06-03 11:07:02 +00:00
Jim Meyering
9897e1994c (rm invocation): Add the warning (also in the --help output)
that the contents of a removed file are often recoverable.
2002-06-03 11:06:58 +00:00
Jim Meyering
52fc0276d7 *** empty log message *** 2002-06-02 21:30:07 +00:00
Jim Meyering
ce73721712 (enum RM_status) [RM_NONEMPTY_DIR]: New member.
(UPDATE_STATUS): New macro.
Include save-cwd.h.
(struct File_spec): Remove declaration.
Update prototypes.
2002-06-02 21:28:41 +00:00
Jim Meyering
0f6d0c6016 (main): Adapt to new calling sequence for rm. 2002-06-02 20:50:33 +00:00
Jim Meyering
a4b18d8961 (do_move): Adapt to new calling sequence for rm. 2002-06-02 20:50:20 +00:00
Jim Meyering
fb205872c1 Merge in all changes from no-recursion branch.
* src/remove.c (enum Ternary): Define type.
(prompt): Add a parameter.  Adjust callers.
(remove_entry): Attempt rmdir here, only if a directory is
`known' to be empty.  Significant rework.
(remove_dir): Propagate failure `up' also when rmdir fails.

In interactive mode, prompt only once about an empty directory.
* src/remove.c (enum Prompt_action): Define.
(prompt): Two new parameters.  Adjust all callers.

Performance.
* src/remove.c (remove_entry) [!ROOT_CAN_UNLINK_DIRS]:
Don't call rmdir here.

* src/remove.c (AD_pop_and_chdir): Don't use errno (it's not valid)
in diagnostic for changed dev/ino.
(remove_entry): Tweak diagnostic.

* src/remove.c (ROOT_CAN_UNLINK_DIRS): Define.
(AD_pop_and_chdir): Propagate status as we traverse back `up' the tree.
(DO_UNLINK, DO_RMDIR): Define.
(remove_entry) [ROOT_CAN_UNLINK_DIRS]: Add code so this works also on
systems where root can use `unlink' to remove directories.

* src/remove.c: Include file-type.h.
Include file type in prompt when asking whether to remove file.
Based on a patch from Paul Eggert.

* src/remove.c (prompt): Add comment.

* src/remove.c (remove_dir): Fix another (known) leak.

* src/remove.c (hash_freer): New function.
(AD_mark_helper): Use it.
(AD_mark_as_unremovable): xstrdup the filename argument.
(remove_dir): Free directory name.

* src/remove.c (remove_entry): Fail also when trying to remove a
directory without the --recursive option.
Change a diagnostic, s/unlink/remove/, now that it can apply also
to a directory.

* src/remove.c (is_empty_dir): New function.
(prompt): New function, factored out of...
(remove_entry): ...here.  Call it.
(remove_dir): Call prompt before rmdir.

* src/remove.c (remove_entry): Add support for prompting (e.g., -i).

* src/remove.h (UPDATE_STATUS): New macro.
* src/remove.c [AD_ent] (status): New member.  This lets us propagate
the status from a subdirectory to its parent via AD_pop_and_chdir.
(AD_push_initial): Set it.
(AD_push): Likewise.
(remove_cwd_entries): Change return type to enum RM_status, and
adjust all callers.
(rm): Use UPDATE_STATUS rather than open-coding it.

* src/remove.c (remove_entry): New function, factored out of...
(remove_cwd_entries): ...here, and...
(rm_1): ...here.

* src/remove.c (remove_cwd_entries): Add support for --verbose.
(remove_dir): Likewise.
(rm_1): Likewise.

* src/remove.c (rm): Free cwd_state, if necessary.

* src/remove.c (rm_1): Remove now useless (always true)
user_specified_name parameter.  Adjust sole caller.

* src/remove.c (rm): New function.  This interface allows
one to remove multiple arguments at a time.  This is important in
that it allows us to hide the remove_init/remove_fini functions and
the cwd_state parameter.
(rm_1): Renamed from rm.
(remove_init, remove_fini): Remove functions.  Each body is now
part of `rm'.
2002-06-02 20:49:03 +00:00
Jim Meyering
a4ff1d036d *** empty log message *** 2002-06-02 20:45:46 +00:00
Jim Meyering
26693888de . 2002-06-02 20:39:20 +00:00
Jim Meyering
63a8743830 (TESTS): Add rm5. 2002-06-02 20:39:00 +00:00
Jim Meyering
2ef6aec8ce Adjust, now that we no longer report `removing all entries of directory ...'. 2002-06-02 20:37:43 +00:00
Jim Meyering
d38d008a1d adjust 2002-06-02 20:36:19 +00:00
Jim Meyering
09184490e9 don't give a diagnostic about each parent 2002-06-02 20:35:07 +00:00
Jim Meyering
c27d78e6e0 *** empty log message *** 2002-06-01 09:38:48 +00:00
Jim Meyering
3b96dac1d7 Remove use of D_TYPE_IN_DIRENT, now that that symbol has been renamed. 2002-06-01 09:38:41 +00:00
Jim Meyering
c96356eba9 *** empty log message *** 2002-06-01 09:37:58 +00:00
Jim Meyering
1d478cbd05 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
2002-06-01 09:37:53 +00:00
Jim Meyering
10d0bbfbc7 *** empty log message *** 2002-06-01 08:41:31 +00:00
Jim Meyering
76c7142a55 *** empty log message *** 2002-05-30 07:50:19 +00:00
Jim Meyering
e913eebe7c (copy_reg): Use a temporary to avoid a warning
from gcc -W about comparison between signed and unsigned.
(copy_internal): Likewise, but use a cast.
2002-05-30 07:49:56 +00:00
Jim Meyering
79278d0cad . 2002-05-29 13:16:40 +00:00
Jim Meyering
8af3bb0443 more acronyms 2002-05-28 10:03:56 +00:00
Jim Meyering
e8b70f2823 *** empty log message *** 2002-05-28 08:50:57 +00:00
Jim Meyering
79e4cbd57a (jm_FUNC_READDIR): Undefine mkdir', not rmdir'. 2002-05-28 08:50:53 +00:00
Jim Meyering
0057fa16a4 use a better test 2002-05-27 21:38:21 +00:00
Jim Meyering
924d623ac8 *** empty log message *** 2002-05-27 20:05:16 +00:00
Jim Meyering
636fceb22a Use @acronym in place of most uses of @sc. 2002-05-27 20:05:03 +00:00
Jim Meyering
ab0ab21b2e (check-texinfo): Adapt to reflect that now we use @acronym{POSIX}. 2002-05-27 20:01:03 +00:00
Jim Meyering
625d533476 *** empty log message *** 2002-05-27 16:44:12 +00:00
Jim Meyering
2eef2b57dd (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace localtime. 2002-05-27 16:44:07 +00:00
Jim Meyering
faa8bced59 *** empty log message *** 2002-05-27 16:43:00 +00:00
Jim Meyering
d2be1268c4 Fix a problem seen only on nonconforming systems whereby ls.c's
use of localtime, and then of gettimeofday would cause trouble:
the localtime call used to initialize rpl_gettimeofday's save
mechanism would clobber ls's current local time information so
that in any long listing the first file would always be listed
with date 1970-01-01.  Analysis by Volker Borchert.

(localtime): Undefine.
(rpl_localtime): New function.
2002-05-27 16:42:55 +00:00
Jim Meyering
c75c72a9fc *** empty log message *** 2002-05-27 15:09:34 +00:00
Jim Meyering
fc1018de0e (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
use the replacement function; it wouldn't resolve at link time.
Reported by Volker Borchert.
2002-05-27 15:09:29 +00:00
Jim Meyering
7ec9be427c *** empty log message *** 2002-05-26 15:29:17 +00:00
Jim Meyering
5e15547dad Use @acronym in place of most uses of @sc. 2002-05-26 15:29:10 +00:00
Jim Meyering
e9f9963e6b fix typo: s/S_TYPEISTMO/S_TYPEISMQ/ 2002-05-25 22:42:05 +00:00
Jim Meyering
ad9071c4ba fix typo 2002-05-25 22:39:13 +00:00
Jim Meyering
0ef5b0241e remove typo 2002-05-25 22:39:07 +00:00
Jim Meyering
ef71f8a52d Adapt for changed format of --verbose output. 2002-05-24 16:40:33 +00:00
Jim Meyering
4c9753bdf7 . 2002-05-24 14:09:45 +00:00
Jim Meyering
e8e002ad91 *** empty log message *** 2002-05-24 09:01:11 +00:00
Jim Meyering
36efe03850 *** empty log message *** 2002-05-24 08:59:17 +00:00
Jim Meyering
37877a3b9c renamed from nice 2002-05-24 08:37:05 +00:00
Jim Meyering
81c4b1fcff *** empty log message *** 2002-05-24 08:26:57 +00:00
Jim Meyering
516c58c84c *** empty log message *** 2002-05-24 08:24:37 +00:00
Jim Meyering
f930c9ca0e (validate_path): Compare the result of the function --
not its (constant) address -- against zero.
2002-05-24 08:24:29 +00:00
Jim Meyering
8e1915ff14 test for fix in 2.0.13 2002-05-24 08:23:19 +00:00
Jim Meyering
710a1bc347 *** empty log message *** 2002-05-24 07:41:19 +00:00
Jim Meyering
c55ed2c0a9 . 2002-05-23 07:02:11 +00:00
Jim Meyering
f08e272c8b tweak for new diagnostics
add a nonempty file
2002-05-22 09:49:14 +00:00
Jim Meyering
c2e4117240 Include "file-type.h", etc. 2002-05-22 08:39:30 +00:00
Jim Meyering
90e0ba933e *** empty log message *** 2002-05-22 08:38:33 +00:00
Jim Meyering
b2615f2b7f *** empty log message *** 2002-05-22 08:38:30 +00:00
Jim Meyering
ae6d164b7a . 2002-05-22 08:37:58 +00:00
Jim Meyering
0e7a38dbbe (libfetish_a_SOURCES): Add file-type.c and file-type.h. 2002-05-22 08:37:35 +00:00
Jim Meyering
1be69adaeb *** empty log message *** 2002-05-22 08:36:32 +00:00
Jim Meyering
925390f0bf (S_ISREG, S_ISDIR): Define if not already defined.
(S_TYPEISSEM, S_TYPEISSHM, S_TYPEISTMO): Likewise.
2002-05-22 08:35:31 +00:00
Jim Meyering
92255513cd (file_type): New file/function. Extracted from diffutils. 2002-05-22 07:49:35 +00:00
Jim Meyering
42e9ac45ff *** empty log message *** 2002-05-22 07:33:54 +00:00
Jim Meyering
eaa373aeb6 [struct dummy]: Renamed. Don't rely on portability of
zero-length arrays.  Instead, use sizes of -1 or +1.
2002-05-22 07:33:43 +00:00
Jim Meyering
cea518eba5 *** empty log message *** 2002-05-21 23:15:19 +00:00
Jim Meyering
fdadb32d0a (S_ISLNK, S_ISFIFO, S_ISSOCK, S_ISCHR, S_ISBLK, S_ISDOOR): Define here instead. 2002-05-21 23:15:05 +00:00
Jim Meyering
b2cb94b93c (S_ISLNK, S_ISFIFO S_ISSOCK S_ISCHR S_ISBLK S_ISDOOR): Remove definitions. 2002-05-21 23:14:42 +00:00
Jim Meyering
c09bf755a6 . 2002-05-21 23:08:27 +00:00
Jim Meyering
137f240e4a . 2002-05-21 23:02:51 +00:00
Jim Meyering
59d5765b0f (TESTS): Add rm1, rm2, rm3, rm4. 2002-05-21 22:59:16 +00:00
Jim Meyering
0ded127f4c . 2002-05-21 22:58:48 +00:00
Jim Meyering
205cfe4695 *** empty log message *** 2002-05-14 21:31:48 +00:00
Jim Meyering
24f18f089d This bug was introduced with my change of 2000-10-22 (textutils-2.0.8).
(ulonglong_t): Move declaration to precede new use.
[enum size_spec] (N_SIZE_SPECS): New member.
(width_bytes): Add initializer corresponding to ulonglong_t type.
(struct assert_width_bytes_matches_size_spec_decl): Declare.
Based on a patch from Tony Kocurko.
2002-05-14 21:31:42 +00:00
Jim Meyering
61dd314ba4 *** empty log message *** 2002-05-14 21:22:57 +00:00
Jim Meyering
24a893ff63 undo last delta -- it belongs on the no-recursion branch 2002-05-13 08:50:50 +00:00
Jim Meyering
ef0776dddd . 2002-05-13 08:50:15 +00:00
Jim Meyering
6095c9a3f8 *** empty log message *** 2002-05-12 21:47:24 +00:00
Jim Meyering
ebc0c4c72f Add FIXME comment. 2002-05-03 11:46:59 +00:00
Jim Meyering
65e6baf5a9 (print_uptime): Fix last change so that we use ngettext properly. 2002-05-03 11:17:01 +00:00
Jim Meyering
072ec8dc77 (print_uptime): Use ngettext for day/days and user/users.
Suggestion from Karl Eichwalder.
2002-05-03 09:58:37 +00:00
Jim Meyering
ef8e614b04 *** empty log message *** 2002-05-03 08:13:18 +00:00
Jim Meyering
d51a8422a2 *** empty log message *** 2002-05-03 08:13:09 +00:00
Jim Meyering
7b53d3d127 (usage): Add a little to the description of --list.
Uncapitalize first word and remove period at end of each one line
option description.
2002-05-03 08:12:25 +00:00
Jim Meyering
36d90a4f13 *** empty log message *** 2002-05-03 06:57:52 +00:00
Jim Meyering
09d4a8f165 (usage): Tweak description of --users.
From Karl Eichwalder.
2002-05-03 06:57:43 +00:00
Jim Meyering
c7475ee11e *** empty log message *** 2002-05-01 14:23:15 +00:00
Jim Meyering
2431a66944 . 2002-05-01 14:22:33 +00:00
Jim Meyering
b016bc2d4f . 2002-05-01 11:49:03 +00:00
Jim Meyering
bdd9db581f *** empty log message *** 2002-05-01 06:56:32 +00:00
Jim Meyering
29fbbc05c9 *** empty log message *** 2002-05-01 06:54:38 +00:00
Jim Meyering
2a061153f6 *** empty log message *** 2002-05-01 06:53:45 +00:00
Jim Meyering
8bbc4ca7ec *** empty log message *** 2002-05-01 06:51:55 +00:00
Jim Meyering
56130b3231 *** empty log message *** 2002-04-30 09:45:48 +00:00
Jim Meyering
5a40d9ead2 (jm_PREREQ): Add jm_PREREQ_STAT. 2002-04-30 09:37:26 +00:00
Jim Meyering
13d897efcf *** empty log message *** 2002-04-30 09:30:13 +00:00
Jim Meyering
0c4c742189 (keycompare, compare): Replace #ifdef ENABLE_NLS with if (HAVE_SETLOCALE).
(hard_LC_COLLATE): Define even if ! ENABLE_NLS.
(main): Always initialize hard_LC_COLLATE.
Put initialization next to other locale-related stuff.

Include <langinfo.h> even if ! ENABLE_NLS.
(decimal_point, th_sep): Depend on HAVE_SETLOCALE, not ENABLE_NLS.
(main): Likewise.
(MONTHTAB_CONST): Remove; all uses removed.
(struct_month_cmp, inittables): Do not depend on ENABLE_NLS.
(main): hard_LC_TIME locale does not depend on ENABLE_NLS.
2002-04-30 09:29:45 +00:00
Jim Meyering
9d64f63aaa (keycmp): Replace #ifdef ENABLE_NLS with if (HAVE_SETLOCALE).
(hard_LC_COLLATE): Define even if ! ENABLE_NLS.
(main): Always initialize hard_LC_COLLATE.
Put initialization next to other locale-related stuff.
2002-04-30 09:25:37 +00:00
Jim Meyering
d7984a3fdb (compare_files): Replace #ifdef ENABLE_NLS with if (HAVE_SETLOCALE).
(hard_LC_COLLATE): Define even if ! ENABLE_NLS.
(main): Always initialize hard_LC_COLLATE.
Put initialization next to other locale-related stuff.
2002-04-30 09:23:38 +00:00
Jim Meyering
17d3a3e28c (HAVE_SETLOCALE): Define to 0 if not defined. 2002-04-30 09:21:21 +00:00
Jim Meyering
20ee294371 *** empty log message *** 2002-04-30 09:20:32 +00:00
Jim Meyering
6e40a95415 *** empty log message *** 2002-04-30 09:20:26 +00:00
Jim Meyering
24ad720079 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
Do not check for alloca.h (no longer used) or stdbool.h (was never
used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
2002-04-30 09:20:19 +00:00
Jim Meyering
bb3842917c *** empty log message *** 2002-04-30 09:18:24 +00:00
Jim Meyering
9c46845348 Upgrade to version used in GNU Diffutils 2.8.1. 2002-04-30 09:17:50 +00:00
Jim Meyering
2cc5a65c0f *** empty log message *** 2002-04-29 08:23:14 +00:00
Jim Meyering
15bef4ddb6 (tail_forever): Do not treat
max_n_unchanged_stats_between_opens specially (as if it were
infinite) if it has its maximal value.  Similarly for
max_n_consecutive_size_changes_between_opens.
2002-04-29 08:23:06 +00:00
Jim Meyering
5ce88fe525 *** empty log message *** 2002-04-29 07:31:56 +00:00
Jim Meyering
676991e630 (parse_obsolescent_option): Do not limit the maximum
line/byte count to be less than ULONG_MAX on systems where
OFF_T_MAX is larger.
2002-04-29 07:30:57 +00:00
Jim Meyering
f3959d84d3 *** empty log message *** 2002-04-29 07:02:21 +00:00
Jim Meyering
86459445f9 *** empty log message *** 2002-04-29 07:01:34 +00:00
Jim Meyering
ad0f322065 (jm_PREREQ_SIG2STR): Remove; all callers changed. 2002-04-29 07:01:29 +00:00
Jim Meyering
735b546108 Do not include <sys/wait.h>; no longer needed. 2002-04-29 07:00:23 +00:00
Jim Meyering
94650aa4ba (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
of 127, since 64 is the largest conceivable number for ancient
nonstandard hosts.
2002-04-29 06:59:24 +00:00
Jim Meyering
786fcaf4a2 *** empty log message *** 2002-04-28 23:54:55 +00:00
Jim Meyering
eae0819e3d add comment for prev change 2002-04-28 23:54:47 +00:00
Jim Meyering
550a02c909 (make_id_equals_comment): Cast sizeof expression (used as field
width argument) to `int'.
2002-04-28 23:54:06 +00:00
Jim Meyering
1e2a59b68a (PIDSTR_DECL_AND_INIT): Cast ut_pid value to int. 2002-04-28 23:47:53 +00:00
Jim Meyering
7fb3529376 . 2002-04-28 23:14:28 +00:00
Jim Meyering
3a898d66ba *** empty log message *** 2002-04-28 23:14:20 +00:00
Jim Meyering
699c46f88b *** empty log message *** 2002-04-28 23:12:01 +00:00
Jim Meyering
5565903d7c (jm_MACROS): Remove use of AC_FUNC_STRNLEN. 2002-04-28 23:11:56 +00:00
Jim Meyering
c14da32ec4 Add jm_PREREQ_STRNLEN.
Use AC_FUNC_STRNLEN here instead.
2002-04-28 23:11:45 +00:00
Jim Meyering
db37e581bc Don't AC_REQUIRE([AC_PROG_CC_STDC]).
With autoconf-2.53a, it's part of AC_PROG_CC.
2002-04-28 22:36:42 +00:00
Jim Meyering
75bb9f0a2a *** empty log message *** 2002-04-28 21:59:47 +00:00
Jim Meyering
89e4bfabcd Don't include xalloc.h.
It's already included via system.h.
2002-04-28 21:59:40 +00:00
Jim Meyering
57b792bb8a . 2002-04-28 21:58:19 +00:00
Jim Meyering
625cb88756 *** empty log message *** 2002-04-28 21:57:52 +00:00
Jim Meyering
01084fbd8d Change @code{PROG}' to @command{PROG}'. 2002-04-28 21:57:40 +00:00
Jim Meyering
219be37b93 Change @code{PROG} to @command{PROG} for the fileutils. 2002-04-28 21:55:03 +00:00
Jim Meyering
3be197ed19 Begin changing @code{PROG} to @command{PROG}. 2002-04-28 21:46:20 +00:00
Jim Meyering
2bac14f45a Use @command{(un)?link}, not @code{...} where appropriate 2002-04-28 21:35:55 +00:00
Jim Meyering
ed05aed044 Rewrite from scratch. Support everything
required by POSIX 1003.1-2001; when this conflicts with Bash,
stick with POSIX.  The conflicts are kill -l output format,
and lower case signal names preceded by `-' (e.g., "kill -hup"
is no longer supported).  Remove -L or --long-list option.
Add -t or --table option.  Rename --sigspec to --signal;
remove --signum and do not advertise obsolescent option -n.
Use str2sig and str2sig to convert between signal names and
numbers.
2002-04-28 21:32:36 +00:00
Jim Meyering
02be728995 . 2002-04-28 21:31:21 +00:00
Jim Meyering
cb75a8c02d *** empty log message *** 2002-04-28 21:30:59 +00:00
Jim Meyering
f7978a042c (jm_PREREQ): Add jm_PREREQ_SIG2STR. 2002-04-28 21:30:50 +00:00
Jim Meyering
6980e29da9 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str). 2002-04-28 21:29:39 +00:00
Jim Meyering
79d4ae4bf8 *** empty log message *** 2002-04-28 21:28:56 +00:00
Jim Meyering
03d0ba4c06 Remove definition of unused WTERMSIG. 2002-04-28 21:20:49 +00:00
Jim Meyering
b41ca51fc6 New file: from Paul Eggert. 2002-04-28 21:17:45 +00:00
Jim Meyering
8e6c9373c1 *** empty log message *** 2002-04-28 21:16:24 +00:00
Jim Meyering
dbaf821f82 (libfetish_a_SOURCES): Add sig2str.h. 2002-04-28 21:16:19 +00:00
Jim Meyering
b8b5ed3d52 *** empty log message *** 2002-04-28 21:15:37 +00:00
Jim Meyering
8075fc59b5 *** empty log message *** 2002-04-28 21:15:05 +00:00
Jim Meyering
d22026207c (kill invocation): Document the above.
Document POSIX signals better.
2002-04-28 21:14:59 +00:00
Jim Meyering
b5d5f6fffd *** empty log message *** 2002-04-28 21:07:11 +00:00
Jim Meyering
e464e1da1c Avoid new warnings from gcc.
[struct COLUMN] <name>: Declare member to be const.
(init_fps): Declare local variable `firstname' to be const.
2002-04-28 21:07:01 +00:00
Jim Meyering
ec4ea625c9 . 2002-04-28 18:43:52 +00:00
Jim Meyering
38fa93be81 *** empty log message *** 2002-04-28 17:29:12 +00:00
Jim Meyering
a1319f687c (integer_expected_error): Add `const' to paramater
declarations to avoid new warning from gcc.
2002-04-28 17:12:53 +00:00
Jim Meyering
059c9672ff (test_syntax_error): Add `const' to paramater
declarations to avoid new warning from gcc.
2002-04-28 17:09:12 +00:00
Jim Meyering
8a2075ba7d (cycle_check): Add a comment. 2002-04-27 06:46:18 +00:00
Jim Meyering
a6050a7291 (cycle_check): New function containing code factored
out of remove_dir.  The sole difference is that upon detecting a
cycle, rm now dies unconditionally.  Before, in interactive mode,
it would ask the user whether to continue.
(remove_dir): Call cycle_check.
2002-04-27 06:33:08 +00:00
Jim Meyering
d1cf325739 *** empty log message *** 2002-04-25 20:38:20 +00:00
Jim Meyering
6cc8245afb (usage): Adjust ordering to match that of default output. 2002-04-25 20:38:16 +00:00
Jim Meyering
93066fab51 *** empty log message *** 2002-04-25 20:16:15 +00:00
Jim Meyering
daeef68961 remove comment for reverted change 2002-04-25 19:51:40 +00:00
Jim Meyering
c5e9725e5b . 2002-04-25 19:47:08 +00:00
Jim Meyering
e94bd40348 . 2002-04-25 18:58:39 +00:00
Jim Meyering
6576e27321 . 2002-04-25 18:58:07 +00:00
Jim Meyering
d29bfd529e *** empty log message *** 2002-04-25 18:03:30 +00:00
Jim Meyering
e758541f7e *** empty log message *** 2002-04-25 18:03:07 +00:00
Jim Meyering
0cf2e85eda *** empty log message *** 2002-04-25 18:02:59 +00:00
Jim Meyering
de9a50b611 Avoid warnings from gcc.
Declare input_file and output_file to be `const'.
(skip): Declare `file' parameter to be `const', too.
2002-04-25 18:02:52 +00:00
Jim Meyering
b6dd48b361 *** empty log message *** 2002-04-25 17:14:28 +00:00
Jim Meyering
184edc32ab *** empty log message *** 2002-04-25 16:40:18 +00:00
Jim Meyering
0199003cf9 Remove hash table, active_dir_map, used to detect directory cycles.
Instead, detect them lazily with just O(1) memory.
Suggestion from Andi Kleen.

(is_power_of_two): New function.
(print_nth_dir, make_active_dir_ent): Remove functions.
(hash_active_dir_ent, hash_compare_active_dir_ents): Likewise.
(remove_dir): Check for cycles here, ...
(rm): ... and don't check for cycles here.

(rm): Call fspec_get_full_mode here, rather than
fspec_get_filetype_mode.  We want to get the dev/ino earlier, and
at the same time as when we get the file type, to avoid the risk
that an attacker would change e.g. a directory to a symlink before
we record its dev/ino.
2002-04-25 16:40:04 +00:00
Jim Meyering
bbd396f52f Revert last change. 2002-04-25 16:32:32 +00:00
Jim Meyering
2a15b5cbc4 Revert last change. 2002-04-25 16:31:41 +00:00
Jim Meyering
2dbf41d0d0 *** empty log message *** 2002-04-25 16:01:32 +00:00
Jim Meyering
c80374e8e8 . 2002-04-25 15:40:12 +00:00
Jim Meyering
e53320438b *** empty log message *** 2002-04-25 15:39:39 +00:00
Jim Meyering
1bb22e3075 Remove ENABLE_NLS-related code.
(_, N_) Remove definitions.
Include "gettext.h" instead.
2002-04-25 15:38:17 +00:00
Jim Meyering
fc7d0fef5f *** empty log message *** 2002-04-24 07:54:51 +00:00
Jim Meyering
b2861672f1 filtered through cppi 2002-04-24 07:54:40 +00:00
Jim Meyering
9cd1ed4307 *** empty log message *** 2002-04-24 07:52:49 +00:00
Jim Meyering
8a054458d4 (INCLUDES): Remove -I../intl.
(libfetish_a_SOURCES): Add gettext.h.
2002-04-24 07:52:39 +00:00
Jim Meyering
570703fb5e *** empty log message *** 2002-04-24 07:50:53 +00:00
Jim Meyering
0b79c81d9d (jm_PREREQ_HARD_LOCALE): New macro.
(jm_PREREQ): Use it.
2002-04-24 07:50:48 +00:00
Jim Meyering
6acdf37888 bump serial # to 9 2002-04-24 07:49:39 +00:00
Jim Meyering
1391eaea5d Check for these headers: locale.h unistd.h mach/mach.h fcntl.h.
Check for this function: setlocale.
2002-04-24 07:49:00 +00:00
Jim Meyering
d3de1d0186 (rm): Call exit with EXIT_FAILURE, not `1'. 2002-04-22 09:42:00 +00:00
Jim Meyering
a15c26266f *** empty log message *** 2002-04-22 07:36:00 +00:00
Jim Meyering
c32c344dd6 (main): Adjust caller of remove_init. 2002-04-22 07:35:54 +00:00
Jim Meyering
e305ef0fa8 (do_move): Adjust caller of remove_init. 2002-04-22 07:35:41 +00:00
Jim Meyering
f1014ac7cc (remove_init): Adjust prototype. 2002-04-22 07:35:32 +00:00
Jim Meyering
8fd6feded9 (rm, remove_init, remove_fini): Don't use or even
initialize the active_dir_map unless --recursive (-r) is specified.
2002-04-22 07:35:20 +00:00
Jim Meyering
c175e3f6c8 update framework 2002-04-20 14:49:46 +00:00
Jim Meyering
73f2d11007 update framework 2002-04-19 22:57:04 +00:00
Jim Meyering
f2bb69ebb0 Use this:
(exit $fail); exit
not this:
  exit $fail
2002-04-19 22:50:36 +00:00
Jim Meyering
0129239343 upgrade to use better framework 2002-04-19 22:41:59 +00:00
Jim Meyering
92d76e1e92 upgrade to use better framework 2002-04-19 22:39:05 +00:00
Jim Meyering
dc2f3bc5e4 *** empty log message *** 2002-04-19 22:36:11 +00:00
Jim Meyering
1a35394a57 upgrade to use better framework 2002-04-19 22:36:03 +00:00
Jim Meyering
2b5e6e4835 clean-up 2002-04-19 21:59:57 +00:00
Jim Meyering
306c8e8b4f Lots of clean-up:
E.g.,

    (exit $fail); exit

    t0=`echo "$0"|sed 's,.*/,,'`.tmp; tmp=$t0/$$
    trap 'status=$?; cd $pwd; rm -rf $t0 && exit $status' 0
2002-04-19 21:55:30 +00:00
Jim Meyering
3cc80a4390 *** empty log message *** 2002-04-19 21:54:27 +00:00
Jim Meyering
ff015c529a *** empty log message *** 2002-04-19 21:53:42 +00:00
Jim Meyering
ebf16be3ea Use tmpdir named $0.tmp/$$. Create with mkdir -p. 2002-04-19 21:53:01 +00:00
Jim Meyering
4061c49579 Use better trap, etc. 2002-04-19 21:38:32 +00:00
Jim Meyering
d01146b817 *** empty log message *** 2002-04-19 21:18:28 +00:00
Jim Meyering
d0ae660607 Use better trap. 2002-04-19 21:17:45 +00:00
Jim Meyering
5aaccdf6a7 use better trap 2002-04-19 21:17:08 +00:00
Jim Meyering
dc3a2321e0 Set $tmp the new way. 2002-04-19 20:50:43 +00:00
Jim Meyering
3f094fd26b Use `rm', not $RM. Use better trap. 2002-04-19 19:55:21 +00:00
Jim Meyering
e86cf7f5e6 Use `rm', not $RM. Use better trap. 2002-04-19 19:54:15 +00:00
Jim Meyering
ad9fd82850 Use `rm', not $RM. Use better trap. 2002-04-19 19:53:03 +00:00
Jim Meyering
da5debc995 don't fiddle with TMPDIR 2002-04-19 19:51:29 +00:00
Jim Meyering
9f79f8d7e0 don't bother with TMPDIR 2002-04-19 19:47:16 +00:00
Jim Meyering
56931437e3 Use automatically-derived name for temporary
directory.  This is more 8.3-friendly.  Based on a suggestion from Richard Dawe.
2002-04-19 19:39:45 +00:00
Jim Meyering
5051a33ba6 *** empty log message *** 2002-04-17 08:55:39 +00:00
Jim Meyering
8d851e17c0 . 2002-04-17 08:54:38 +00:00
Jim Meyering
1df5e317dc (TESTS): Add no-create-missing. 2002-04-17 08:54:32 +00:00
Jim Meyering
950d7008ea *** empty log message *** 2002-04-17 08:54:21 +00:00
Jim Meyering
8a2d561e45 *** empty log message *** 2002-04-17 08:53:50 +00:00
Jim Meyering
ccf99a6d4c (touch): Don't report errors for nonexistent files
when --no-create is in effect.  Based on a patch from TAKAI Kousuke.
2002-04-17 08:49:27 +00:00
Jim Meyering
78ec76159b *** empty log message *** 2002-04-17 08:47:33 +00:00
Jim Meyering
28ea23054e s/POSIX/@sc{posix}/ 2002-04-16 11:26:32 +00:00
Jim Meyering
cea6ca618e *** empty log message *** 2002-04-16 10:43:04 +00:00
Jim Meyering
a9ecff59e4 (jm_PREREQ_READUTMP): Also check for these members: ut_pid, ut_id, ut_exit. 2002-04-16 10:43:00 +00:00
Jim Meyering
b1f44ffb39 (UT_TYPE): Remove definition (now in who.c).
(HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
(HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
2002-04-16 10:41:33 +00:00
Jim Meyering
2e0e925d3b *** empty log message *** 2002-04-16 10:39:42 +00:00
Jim Meyering
6f0db0ac6e (UT_TYPE_UNDEF, UT_TYPE, IS_USER_PROCESS): Define.
(print_line): Use "%-8.8s" for the format: the user name is not
always NUL terminated.
(scan_entries) [need_users]: Use IS_USER_PROCESS, so that this works
even on systems without ut_type.
2002-04-16 10:39:29 +00:00
Jim Meyering
aef17cff0f (BOOT_TIME): Define.
(NEW_TIME): Define to 0, not INT_MAX.
(UT_PID, UT_ID, UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
Replace literal uses of ut_pid, ut_id, and ut_exit members with
uses through macros.
(make_id_equals_comment): New function, factored out of three others.
2002-04-16 09:49:28 +00:00
Jim Meyering
92cad6a4e5 *** empty log message *** 2002-04-16 06:51:00 +00:00
Jim Meyering
5bd81eab0f (human_fstype): Rename from print_human_fstype, and rework accordingly.
(print_statfs): Use human_fstype to honor format width on %T.
2002-04-16 06:50:54 +00:00
Jim Meyering
598064934e Add copyright comment. 2002-04-16 06:27:39 +00:00
Jim Meyering
c75c37dc2b *** empty log message *** 2002-04-15 19:05:33 +00:00
Jim Meyering
67492390d4 *** empty log message *** 2002-04-15 19:04:32 +00:00
Jim Meyering
480aa4b7c1 *** empty log message *** 2002-04-15 19:03:52 +00:00
Jim Meyering
9a9958dafc Document kill. 2002-04-15 19:03:47 +00:00
Jim Meyering
2262fbb298 add FIXME comments 2002-04-15 10:46:45 +00:00
Jim Meyering
a36a4fdedc *** empty log message *** 2002-04-15 10:37:45 +00:00
Jim Meyering
57d75ea4d8 Include xalloc.h.
Use xmalloc everywhere, not malloc.
2002-04-15 10:37:35 +00:00
Jim Meyering
7880914895 *** empty log message *** 2002-04-15 08:52:52 +00:00
Jim Meyering
b214c8214c Handle "lld" vs "ld" printf formats the same way Bash does.
Include inttypes.h.
(PRIdMAX, PRIuMAX): Define, if not already defined.
(print_statfs): Use those macros, not the literal strings.
(print_stat): Likewise.
2002-04-15 08:50:57 +00:00
Jim Meyering
68f054be8f *** empty log message *** 2002-04-15 08:41:34 +00:00
Jim Meyering
d9feb76a02 (usage): Give a verbose description of --squeeze-repeats,
including the mention of SET1.
2002-04-15 08:41:23 +00:00
Jim Meyering
872325a656 *** empty log message *** 2002-04-15 07:21:49 +00:00
Jim Meyering
d133be1fc3 (print_human_fstype): Add missing break;' for case S_MAGIC_MINIX:'. 2002-04-15 07:21:42 +00:00
Jim Meyering
ad02a0f47d remove parens in #if directives 2002-04-15 07:20:15 +00:00
Jim Meyering
f7d204bce4 *** empty log message *** 2002-04-14 12:53:10 +00:00
Jim Meyering
2b38bcb26a *** empty log message *** 2002-04-14 12:53:00 +00:00
Jim Meyering
6d89182e28 (statfs_secure): Define.
(print_stat): Remove another #ifdef.
(do_statfs): Likewise.
(print_statfs): Prefer/use fputs over printf.
(print_stat): Likewise.
2002-04-14 12:52:48 +00:00
Jim Meyering
30215a98cc filter through GNU indent 2002-04-14 08:20:15 +00:00
Jim Meyering
c8088a6184 Split some long lines.
(verbose_usage): Remove function.
2002-04-14 08:18:49 +00:00
Jim Meyering
82395d065e *** empty log message *** 2002-04-14 08:15:22 +00:00
Jim Meyering
5120cb1bc9 remove parens in #if directives 2002-04-14 08:14:37 +00:00
Jim Meyering
e407204f28 fix TABs 2002-04-14 08:14:15 +00:00
Jim Meyering
af3fa53348 *** empty log message *** 2002-04-14 08:13:50 +00:00
Jim Meyering
4fc8280fa6 *** empty log message *** 2002-04-14 07:50:19 +00:00
Jim Meyering
9e92d099ce *** empty log message *** 2002-04-14 07:49:20 +00:00
Jim Meyering
7c3982f666 (verbose_usage): Remove function. Move contents into usage.
Remove lots of #if directives involving FLASK_LINUX
[!FLASK_LINUX] (is_flask_enabled): Define.
(stat_secure, lstat_secure): Define.
(print_statfs): Remove lots of nested #if directives.
Instead, rely on support fo %llu and %lld printf formats --
but that is only temporary, since it's not porable enough.
(main): Hoist is_flask_enabled test to be done here, rather
than in each of do_stat and do_statfs for every argument.
2002-04-14 07:47:44 +00:00
Jim Meyering
b6e520d478 [HAVE_SYS_VFS_H]: Guard incluion of sys/vfs.h.
Constify many parameters.
(print_statfs): Fix typo: Use %u (to match %lu) for namelen, not %d.
2002-04-14 06:55:13 +00:00
Jim Meyering
2c41df8b40 alphabetize entries in a menu
In xref, use libc instead of library.
2002-04-14 06:27:10 +00:00
Jim Meyering
86168539c7 . 2002-04-13 17:10:57 +00:00
Jim Meyering
d849f68245 add a couple `const' 2002-04-13 14:35:46 +00:00
Jim Meyering
91990a324b (print_human_fstype): Revamp in a similar fashion. Don't use strdup. 2002-04-13 14:34:58 +00:00
Jim Meyering
ac829d6935 (print_human_type): Call fputs once rather than calling printf many times.
Declare most functions to be `static'.
2002-04-13 14:23:00 +00:00
Jim Meyering
d1a60cddfe Include system.h, error.h, and many other headers.
[HAVE_SYS_SYSMACROS_H]: Guard inclusion of sys/sysmacros.h.
(PROGRAM_NAME, AUTHORS): Define.
(long_options): Declare/define.
(print_human_access): Rewrite to use mode_string.
(usage): Rewrite.
(main): Use getopt_long.
2002-04-13 14:11:44 +00:00
Jim Meyering
8d8acf4b3c Direct from Debian's stat_3.3-1, modulo trailing blanks (removed)
and cpp directive (indented via cppi).
2002-04-13 13:47:14 +00:00
Jim Meyering
fadc4d4786 *** empty log message *** 2002-04-13 12:40:43 +00:00
Jim Meyering
9eb27b5fad Document link and unlink. 2002-04-13 12:40:36 +00:00
Jim Meyering
b1e1f83089 *** empty log message *** 2002-04-12 21:03:34 +00:00
Jim Meyering
ad935391c2 (dirfd): Elide prototype if dirfd is a macro. 2002-04-12 21:03:28 +00:00
Jim Meyering
5f057a69d6 *** empty log message *** 2002-04-12 20:51:01 +00:00
Jim Meyering
d635ea46cb (checking for getmntinfo function...): Remove now-bogus
check for f_type in sys/mount.h.  Instead, just test for the existence
of the getmntinfo function.  Needed for Darwin 5.3.
2002-04-12 20:50:53 +00:00
Jim Meyering
51816f9adb *** empty log message *** 2002-04-12 20:48:36 +00:00
Jim Meyering
50bc2a4286 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
This is necessary at least on Darwin 5.3.
2002-04-12 20:48:29 +00:00
Jim Meyering
7f01432879 *** empty log message *** 2002-04-12 11:04:02 +00:00
Jim Meyering
d11a1de3ed *** empty log message *** 2002-04-12 11:03:13 +00:00
Jim Meyering
c6590a2f61 Don't AC_REPLACE(strnlen), now that we use
AC_FUNC_STRNLEN.  That would end up putting two copies of strnlen.o
in the library, and that makes some versions of ranlib object.
2002-04-12 11:02:59 +00:00
Jim Meyering
f5da3f584b *** empty log message *** 2002-04-12 10:47:18 +00:00
Jim Meyering
5771d0193b . 2002-04-12 10:46:55 +00:00
Jim Meyering
f52a204a4e Include long-options.h.
[long_opts]: Remove.
(usage): Tweak --help output; use *_OPTION_DESCRIPTION macros.
(main): Don't use getopt directly.  Use parse_long_options instead.
Tweak a diagnostic.
Use EXIT_FAILURE rather than a literal `1'.
(main): If POSIXLY_CORRECT is set, don't recognize --help or --version,
so the program can operate on a file with one of those names.
2002-04-12 10:41:54 +00:00
Jim Meyering
21126e288b Include long-options.h.
[long_opts]: Remove.
(usage): Tweak --help output; use *_OPTION_DESCRIPTION macros.
(main): Don't use getopt directly.  Use parse_long_options instead.
Tweak a diagnostic.
Use EXIT_FAILURE rather than a literal `1'.
2002-04-12 10:41:22 +00:00
Jim Meyering
d1aa15101c *** empty log message *** 2002-04-12 10:41:00 +00:00
Jim Meyering
92c4ad70ea *** empty log message *** 2002-04-12 10:40:09 +00:00
Jim Meyering
1247f879f9 *** empty log message *** 2002-04-12 10:39:43 +00:00
Jim Meyering
b46ec3cd33 from Debian's fileutils_4.1-10 2002-04-12 10:07:17 +00:00
Jim Meyering
f0ea374271 *** empty log message *** 2002-04-09 17:55:48 +00:00
Jim Meyering
72af85a647 (jm_FUNC_REALLOC): Change the `checking ...' message
to be more precise.  Rather than saying we're checking whether the
function `works', say what we're testing.
2002-04-09 17:55:36 +00:00
Jim Meyering
aa77b79b4b (jm_FUNC_MALLOC): Change the `checking ...' message
to be more precise.  Rather than saying we're checking whether the
function `works', say what we're testing.
2002-04-09 17:55:23 +00:00
Jim Meyering
f36cf8b4d8 *** empty log message *** 2002-04-08 09:39:19 +00:00
Jim Meyering
a8a0842148 Use new directives, @copying and @insertcopying,
thus now requiring texinfo-4.2 to create the .info file.
2002-04-08 09:38:58 +00:00
Jim Meyering
8c3b497f01 *** empty log message *** 2002-04-07 21:46:15 +00:00
Jim Meyering
61d6d975af Tweak comments to reflect reality. 2002-04-07 21:46:11 +00:00
Jim Meyering
b5422e71f7 *** empty log message *** 2002-04-07 15:57:10 +00:00
Jim Meyering
c20f3cd330 Add VERBOSE=yes support. 2002-04-07 15:52:14 +00:00
Jim Meyering
a88ba0dd94 Fix typo in VERBOSE=yes handling. 2002-04-07 15:51:12 +00:00
378 changed files with 325634 additions and 7809 deletions

6
.cvsignore Normal file
View File

@@ -0,0 +1,6 @@
Makefile
config.h
config.log
config.status
stamp-h1
autom4te.cache

1
.prev-version Normal file
View File

@@ -0,0 +1 @@
4.5.1

346
ABOUT-NLS
View File

@@ -171,190 +171,232 @@ Available Packages
==================
Languages are not equally supported in all packages. The following
matrix shows the current state of internationalization, as of January
matrix shows the current state of internationalization, as of August
2002. The matrix shows, in regard of each package, for which languages
PO files have been submitted to translation coordination, with a
translation percentage of at least 50%.
Ready PO files bg ca cs da de el en eo es et fi fr
+-------------------------------------+
a2ps | [] [] [] [] |
bash | [] [] [] [] |
bfd | [] [] |
binutils | [] [] |
bison | [] [] [] |
clisp | [] [] [] [] |
cpio | [] [] [] [] |
diffutils | [] [] [] [] [] [] |
enscript | [] [] |
error | [] [] |
fetchmail | () [] [] [] () |
fileutils | [] [] [] [] [] |
findutils | [] [] [] [] [] |
flex | [] [] [] |
gas | [] |
gawk | [] [] |
gcal | [] [] |
gcc | [] [] |
gettext | [] [] [] [] [] |
gnupg | [] [] [] [] [] [] |
gprof | [] [] |
grep | [] [] [] [] [] [] |
hello | [] [] [] [] [] [] [] [] |
id-utils | [] [] [] |
indent | [] [] [] [] |
jpilot | () [] [] [] |
jwhois | [] [] |
kbd | [] |
ld | [] [] |
libc | [] [] [] [] [] [] [] |
lilypond | [] [] |
lynx | [] [] [] [] |
m4 | [] [] [] [] [] |
make | [] [] [] [] |
mysecretdiary | [] [] |
nano | [] () [] [] [] [] |
nano_1_0 | [] () [] [] [] [] |
opcodes | [] [] [] |
parted | [] [] [] [] |
ptx | [] [] [] [] [] |
python | |
recode | [] [] [] [] [] [] |
sed | [] [] [] [] [] [] [] [] |
sh-utils | [] [] [] [] [] [] [] [] |
sharutils | [] [] [] [] [] [] |
sketch | () [] () |
soundtracker | [] [] [] |
sp | |
tar | [] [] [] [] [] [] |
texinfo | [] [] [] [] [] |
textutils | [] [] [] [] |
util-linux | [] [] [] [] |
wdiff | [] [] [] [] [] |
wget | [] [] [] [] [] [] [] [] |
+-------------------------------------+
bg ca cs da de el en eo es et fi fr
0 8 12 31 36 9 1 9 37 15 1 49
Ready PO files be bg ca cs da de el en eo es et fi fr
+----------------------------------------+
a2ps | [] [] [] [] |
ap-utils | |
bash | [] [] [] [] |
bfd | [] [] |
binutils | [] [] |
bison | [] [] [] [] |
clisp | |
clisp | [] [] [] [] |
clisplow | |
cpio | [] [] [] [] |
darkstat | () |
diffutils | [] [] [] [] [] [] |
enscript | [] [] |
error | [] [] [] |
fetchmail | [] () [] [] [] () |
fileutils | [] [] [] [] [] |
findutils | [] [] [] [] [] [] |
flex | [] [] [] [] [] |
gas | [] [] |
gawk | [] [] [] |
gcal | [] [] |
gcc | [] [] |
gettext | [] [] [] [] [] |
gnupg | [] [] [] [] [] [] [] |
gprof | [] [] |
gpsdrive | () () () () () |
grep | [] [] [] [] [] [] [] [] |
gretl | [] |
gthumb | () () () |
hello | [] [] [] [] [] [] [] [] [] |
id-utils | [] [] [] |
indent | [] [] [] [] [] |
jpilot | () [] [] [] |
jwhois | [] [] |
kbd | [] [] [] |
ld | [] [] |
libc | [] [] [] [] [] [] [] [] |
libiconv | [] [] [] [] |
lifelines | () () |
lilypond | [] [] |
lingoteach | [] [] |
lingoteach_lessons| () () |
lynx | [] [] [] [] [] |
m4 | [] [] [] [] [] |
make | [] [] [] [] |
man-db | [] () () [] () () |
mysecretdiary | [] [] [] |
nano | [] () [] [] [] [] |
nano_1_0 | [] () [] [] [] [] |
opcodes | [] [] [] |
parted | [] [] [] [] [] |
ptx | [] [] [] [] [] [] [] |
python | |
recode | [] [] [] [] [] [] |
sed | [] [] [] [] [] [] [] [] [] [] |
sh-utils | [] [] [] [] |
sharutils | [] [] [] [] [] [] [] |
sketch | () [] () |
soundtracker | [] [] [] |
sp | [] |
tar | [] [] [] [] [] [] |
texinfo | [] [] [] [] [] |
textutils | [] [] [] [] [] |
util-linux | [] [] [] [] [] [] |
vorbis-tools | [] |
wastesedge | |
wdiff | [] [] [] [] [] [] |
wget | [] [] [] [] [] [] [] [] [] [] |
+----------------------------------------+
be bg ca cs da de el en eo es et fi fr
0 2 19 10 30 44 9 1 12 44 17 6 53
gl he hr hu id it ja ko lv nb nl nn
+-------------------------------------+
a2ps | () () [] |
bash | |
ap-utils | |
bash | [] |
bfd | [] |
binutils | [] |
bison | [] |
bison | [] [] [] [] |
clisp | |
clisp | [] |
cpio | [] [] [] |
diffutils | [] [] |
enscript | [] |
clisplow | |
cpio | [] [] [] [] |
darkstat | |
diffutils | [] [] [] [] [] |
enscript | [] [] |
error | [] |
fetchmail | |
fileutils | [] [] |
findutils | [] [] [] [] [] [] |
fetchmail | [] |
fileutils | [] [] [] |
findutils | [] [] [] [] [] [] [] [] |
flex | [] |
gas | |
gawk | [] |
gcal | |
gcc | [] |
gettext | [] |
gnupg | [] [] [] |
gprof | |
grep | [] [] |
hello | [] [] [] [] [] [] [] [] [] |
id-utils | [] |
indent | [] [] [] |
gettext | [] [] |
gnupg | [] [] [] [] |
gprof | [] |
gpsdrive | [] () () |
grep | [] [] [] [] [] [] [] |
gretl | |
gthumb | () () |
hello | [] [] [] [] [] [] [] [] [] [] [] [] |
id-utils | [] [] |
indent | [] [] [] [] |
jpilot | () () |
jwhois | |
jwhois | [] [] |
kbd | |
ld | |
libc | [] [] [] [] |
lilypond | [] [] |
lynx | [] [] |
libiconv | [] [] [] |
lifelines | |
lilypond | [] |
lingoteach | [] |
lingoteach_lessons| |
lynx | [] [] [] [] |
m4 | [] [] [] [] |
make | [] [] [] [] |
mysecretdiary | |
nano | [] [] [] () () [] |
nano_1_0 | [] [] [] () () [] |
opcodes | |
make | [] [] [] [] [] [] |
man-db | () () |
mysecretdiary | [] |
nano | [] [] [] [] |
nano_1_0 | [] [] [] [] [] |
opcodes | [] [] |
parted | [] [] [] |
ptx | [] [] [] [] |
ptx | [] [] [] [] [] |
python | |
recode | [] [] [] |
sed | [] [] [] [] [] [] [] |
sh-utils | [] [] [] [] [] |
sed | [] [] [] [] [] [] [] [] |
sh-utils | [] [] [] |
sharutils | [] [] [] |
sketch | () |
soundtracker | [] |
soundtracker | [] [] |
sp | |
tar | [] [] [] |
tar | [] [] [] [] [] [] |
texinfo | [] [] [] |
textutils | [] [] |
textutils | [] [] [] [] |
util-linux | () [] |
wdiff | |
wget | [] [] [] [] [] |
vorbis-tools | [] |
wastesedge | |
wdiff | [] [] [] |
wget | [] [] [] [] [] [] |
+-------------------------------------+
gl he hr hu id it ja ko lv nb nl nn
20 6 1 3 6 11 22 9 1 6 17 4
23 9 12 19 16 13 26 9 1 7 19 3
no pl pt pt_BR ru sk sl sv tr uk zh
+-------------------------------------+
a2ps | () () () [] [] [] () | 8
bash | | 4
bfd | [] [] | 5
binutils | [] | 4
bison | [] [] [] | 7
clisp | | 5
cpio | [] [] [] [] | 11
diffutils | [] [] [] | 11
enscript | [] [] [] | 6
error | [] [] | 5
fetchmail | () () | 3
fileutils | [] [] [] [] | 11
findutils | [] [] [] [] [] [] | 17
flex | [] [] | 6
gas | [] | 2
gawk | [] [] | 5
gcal | [] | 3
gcc | [] | 4
gettext | [] [] [] [] | 10
gnupg | [] [] [] | 12
gprof | [] [] | 4
grep | [] [] [] [] [] | 13
hello | [] [] [] [] [] [] [] | 24
id-utils | [] [] | 6
indent | [] [] [] [] | 11
jpilot | () () | 3
jwhois | () () | 2
kbd | [] [] | 3
ld | [] [] | 4
libc | [] [] [] [] [] [] | 17
lilypond | [] | 5
lynx | [] [] [] | 9
m4 | [] [] [] | 12
make | [] [] [] [] | 12
mysecretdiary | [] | 3
nano | () [] [] [] | 12
nano_1_0 | () [] [] [] | 12
opcodes | [] [] | 5
parted | [] [] [] | 10
ptx | [] [] [] [] [] [] | 15
python | | 0
recode | [] [] [] [] | 13
sed | [] [] [] [] [] [] | 21
sh-utils | [] [] [] [] [] [] [] [] [] | 22
sharutils | [] [] | 11
sketch | () | 1
soundtracker | | 4
sp | | 0
tar | [] [] [] [] [] [] [] | 16
texinfo | [] [] | 10
textutils | [] [] | 8
util-linux | [] [] [] | 8
wdiff | [] [] [] [] | 9
wget | [] [] [] [] [] [] | 19
+-------------------------------------+
35 teams no pl pt pt_BR ru sk sl sv tr uk zh
54 domains 5 12 2 11 25 10 11 39 29 4 1 463
no pl pt pt_BR ru sk sl sv tr uk zh_CN zh_TW
+----------------------------------------------+
a2ps | () () () [] [] [] [] [] | 10
ap-utils | () | 0
bash | [] | 6
bfd | [] [] | 5
binutils | [] [] | 5
bison | [] [] [] [] | 12
clisp | | 0
clisp | | 5
clisplow | | 0
cpio | [] [] [] [] | 12
darkstat | [] [] () () | 2
diffutils | [] [] [] [] [] [] | 17
enscript | [] [] [] [] | 8
error | [] [] [] | 7
fetchmail | () () [] | 6
fileutils | [] [] [] [] [] [] | 14
findutils | [] [] [] [] [] [] [] | 21
flex | [] [] [] | 9
gas | [] | 3
gawk | [] [] | 6
gcal | [] [] | 4
gcc | [] | 4
gettext | [] [] [] [] [] [] | 13
gnupg | [] [] [] | 14
gprof | [] [] | 5
gpsdrive | [] [] | 3
grep | [] [] [] [] [] | 20
gretl | | 1
gthumb | () () [] | 1
hello | [] [] [] [] [] [] [] | 28
id-utils | [] [] [] [] | 9
indent | [] [] [] [] [] | 14
jpilot | () () [] [] | 5
jwhois | [] () () [] [] | 7
kbd | [] [] | 5
ld | [] [] | 4
libc | [] [] [] [] [] [] | 18
libiconv | [] [] [] [] [] | 12
lifelines | [] | 1
lilypond | [] | 4
lingoteach | [] [] | 5
lingoteach_lessons| () | 0
lynx | [] [] [] [] | 13
m4 | [] [] [] [] | 13
make | [] [] [] [] [] | 15
man-db | | 3
mysecretdiary | [] [] [] | 7
nano | [] [] [] [] | 13
nano_1_0 | [] [] [] [] | 14
opcodes | [] [] [] | 8
parted | [] [] [] [] | 12
ptx | [] [] [] [] [] [] [] | 19
python | | 0
recode | [] [] [] [] [] [] | 15
sed | [] [] [] [] [] [] | 24
sh-utils | [] [] | 9
sharutils | [] [] [] [] | 14
sketch | [] () [] | 4
soundtracker | [] | 6
sp | | 1
tar | [] [] [] [] [] [] [] | 19
texinfo | [] [] | 10
textutils | [] [] [] [] [] | 14
util-linux | [] [] [] | 10
vorbis-tools | [] | 3
wastesedge | | 0
wdiff | [] [] [] [] [] | 14
wget | [] [] [] [] [] [] [] [] | 24
+----------------------------------------------+
37 teams no pl pt pt_BR ru sk sl sv tr uk zh_CN zh_TW
68 domains 4 15 2 28 28 12 10 49 43 4 1 9 609
Some counters in the preceding matrix are higher than the number of
visible blocks let us expect. This is because a few extra PO files are
@@ -367,7 +409,7 @@ distributed as such by its maintainer. There might be an observable
lag between the mere existence a PO file and its wide availability in a
distribution.
If January 2002 seems to be old, you may fetch a more recent copy of
If August 2002 seems to be old, you may fetch a more recent copy of
this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date
matrix with full percentage details can be found at
`http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'.

2
AUTHORS Normal file
View File

@@ -0,0 +1,2 @@
See the --version output of each program for the authors
of that program.

408
ChangeLog Normal file
View File

@@ -0,0 +1,408 @@
2002-10-05 Jim Meyering <meyering@lucent.com>
* Version 4.5.2.
* src/remove.c (remove_entry) [ROOT_CAN_UNLINK_DIRS]: With `rm -i DIR',
don't recurse into directory, DIR. Prompted by a report from
Leonardo Milano.
* tests/rm/i-no-r: New file/test, for the above fix.
* tests/rm/Makefile.am (TESTS): Add i-no-r.
* tests/tail-2/big-4gb: New file/test, for the fix of 2002-09-27.
* tests/tail-2/Makefile.am (TESTS): Add big-4gb.
2002-10-03 Jim Meyering <meyering@lucent.com>
* src/rm.c (AUTHORS): Mark translatable string with `N_ (...)'.
* src/df.c (AUTHORS): Likewise.
* src/du.c (AUTHORS): Likewise.
* src/tail.c (AUTHORS): Likewise.
* src/touch.c (AUTHORS): Likewise.
2002-10-02 Jim Meyering <meyering@lucent.com>
* Makefile.am (SUBDIRS): Remove `old'.
(EXTRA_DIST): List the files in old/.
* configure.ac (AC_CONFIG_FILES): Remove old/* names.
Suggestion from Akim Demaille.
2002-10-01 Jim Meyering <meyering@lucent.com>
* src/sys2.h (SSIZE_MAX): Define.
2002-09-30 Jim Meyering <meyering@lucent.com>
* src/csplit.c: Don't include stdlib.h here. It's already included
via system.h.
2002-09-29 Jim Meyering <meyering@lucent.com>
* src/tr.c (find_bracketed_repeat): Rearrange pointer/integer
expression to avoid bogus warning from gcc.
* src/cat.c (simple_cat): Use a temporary to avoid bogus warnings.
(cat): Declare insize and outsize to be of type size_t, not int.
Rearrange pointer/integer expressions to avoid bogus warnings.
(main): Declare insize and outsize to be of type size_t, not int.
* src/tail.c (parse_options): Give a sensible diagnostic for
an invalid byte or line count. Reported by Mikko Tuumanen.
* src/touch.c (main): Split a long line.
* tests/du/Makefile.am (TESTS): Add slink.
* tests/du/slink: New test for system.h change of 2002-08-31.
In move mode, always first try to rename. Before, upon failure to
rename a directory, this code would never attempt to rename any
other file in that directory, but would thenceforth always copy.
On some systems (e.g., NetApp's OnTap-6.4), renaming a directory
may fail with EXDEV, yet renaming files within that directory to
a newly-created destination directory succeeds.
* src/copy.c (copy_internal): Remove local, move_mode;
use x->move_mode instead. Based on a patch from Tom Haynes.
2002-09-28 Jim Meyering <meyering@lucent.com>
* src/split.c (FAIL_ONLY_ONE_WAY): New macro.
Factor out some duplication.
(main): Use it.
[case 'a']: Use strtoul rather than strtol to avoid compiler warnings.
* src/sort.c (begfield, limfield): Rearrange comparisons to avoid
compiler warnings.
(fillbuf, keycompare): Cast literal `-1' to size_t in comparisons,
to avoid compiler warnings.
* src/shred.c (dopass): Use a uintmax_t temporary to avoid bogus
compiler warnings.
Fix things so `mkdir -p' can create very deep directories, e.g.,
mkdir -p $(perl -e 'print "a/" x 40000') now works.
* src/mkdir.c (main): For --parents (-p), call make_path with the
entire directory name, so we don't ever require that file operations
like stat or chmod be performed on the entire command line argument.
* makepath.c (make_path): Restore umask *before* creating the final
component.
2002-09-27 Andreas Schwab <schwab@suse.de>
* src/tail.c (tail_bytes): Change type of bytes_remaining to off_t
to avoid overflow. Reported by Hans Lermen.
2002-09-26 Jim Meyering <meyering@lucent.com>
* src/install.c (get_ids): Use strtoul, not strtol. Remove some casts.
2002-09-25 Jim Meyering <meyering@lucent.com>
* src/test.c (eaccess): Change type of local `euid' from int to uid_t
and add a cast, to avoid a warning about `signed and unsigned type in
conditional expression'.
2002-09-22 Jim Meyering <meyering@lucent.com>
* src/rmdir.c: Include "dirname.h", for declaration of
strip_trailing_slashes.
* src/stat.c (PRIdMAX, PRIuMAX): Remove definitions.
Now they're defined through system.h.
* src/cp-hash.c, src/dd.c, src/df.c, src/du.c, src/ls.c,
* src/stat.c, src/wc.c: Remove all inclusions of inttypes.h,
since it's already included from sys2.h via system.h.
* Use automake-1.6f. Regenerate dependent files.
* src/Makefile.am (PERL): Remove duplicate definition.
fmt's -s, -t, -c options didn't work properly for long lines.
Since get_line may end up calling put_paragraph (for long lines),
be sure to set global, `other_indent', before it is used there.
* src/fmt.c (set_other_indent): New function, factored out of...
(get_paragraph): ... here. Call it.
(get_line): Call set_other_indent before calling flush_paragraph,
which calls fmt_paragraph, which in turn calls put_paragraph,
which uses other_indent.
* tests/fmt/Makefile.am (TESTS): Add long-line.
* tests/fmt/long-line: New file/test, for the above fix.
2002-09-21 Jim Meyering <meyering@lucent.com>
* src/od.c: No longer include deprecated <values.h>.
It was required solely for now-removed reference to BITSPERBYTE.
* src/install.c: Likewise.
Suggestion from Bruno Haible.
2002-09-06 Andreas Schwab <schwab@suse.de>
`rmdir -p dir-specified-with-trailing-slash/' would fail.
* src/rmdir.c (remove_parents): Strip trailing slashes.
2002-09-20 Jim Meyering <meyering@lucent.com>
* tests/rmdir/t-slash: New file/test, for the above fix.
* tests/rmdir/Makefile.am (TESTS): Add t-slash.
* Makefile.maint (announcement): Arrange to gpg-sign the message.
Add a URL for each detached signature file.
2002-09-07 Bruno Haible <bruno@clisp.org>
* configure.ac: Add need-ngettext to AM_GNU_GETTEXT invocation.
2002-09-18 Jim Meyering <meyering@lucent.com>
`od -t x8' used the wrong (`l'-prefixed) printf format.
Likewise for the o8 and u8 formats.
* src/od.c (ISPEC_TO_FORMAT): Define macro.
(decode_one_format): Use PRIdMAX, PRIoMAX, etc. for LONG_LONG.
Reported by Arun Sharma.
2002-09-17 Jim Meyering <meyering@lucent.com>
* src/sys2.h (PRIdMAX, PRIoMAX, PRIuMAX, PRIxMAX): Define if necessary.
From gettext's intl/loadmsgcat.c.
* tests/od/x8: New file/test, for the above fix.
* tests/od/Makefile.am (TESTS): Add x8.
2002-09-15 Jim Meyering <meyering@lucent.com>
* Use autoconf-2.54. Regenerate dependent files.
* src/csplit.c (get_format_width): Add cast to avoid
warning about `signed and unsigned type in conditional expression'.
2002-09-14 Jim Meyering <meyering@lucent.com>
* src/who.c (print_user): Change type of local to size_t
to avoid warnings about `comparison between signed and unsigned'.
* src/ptx.c (generate_all_output): Likewise.
* src/dd.c (main, skip): Add casts to avoid warnings about
`comparison between signed and unsigned'.
* src/id.c (print_full_info, print_group_list): Add casts to avoid
warnings about `signed and unsigned type in conditional expression'.
* src/md5sum.c: Change type of global, digest_hex_bytes, to size_t
to avoid warnings about `comparison between signed and unsigned'.
(split_3): Change parameter names to be readable and add comment.
Clean up the test for whether a line may be ignored.
2002-09-13 Jim Meyering <meyering@lucent.com>
* src/printf.c (main): Handle leading command line argument of `--'.
Reported by Raul: DervishD <raul@pleyades.net>
* tests/misc/printf: New file: test for the above.
* tests/misc/Makefile.am (TESTS): Add printf.
* src/date.c (usage): Explain that %S's range of [0..60] is required --
rather than 0..59 -- to accommodate the occasional positive leap second.
Reported by Richard Neill.
2002-09-12 Jim Meyering <meyering@lucent.com>
* src/Makefile.am (nanosec_libs): Define.
(sleep_LDADD, tail_LDADD): Use it here.
Factor nanosleep-related code into ../lib/xnanosleep.c.
* src/sleep.c: Include xnanosleep.h.
Factor out fenv.h-related code.
(timespec_subtract): Remove function.
(main): Remove code that deals with computing start and stop times
as well as the loop around nanosleep. Now that's in xnanosleep.c.
Allow S (in --sleep-interval=S) to be a floating point value.
* src/tail.c: Include xnanosleep.h and xstrtod.h.
Move declaration of global variable, sleep_interval, to ...
(main): ...here.
(usage): Update description of --sleep-interval option.
(tail_forever): New parameter, sleep_interval. Update caller.
Use xnanosleep, rather than sleep.
(parse_options): New parameter, sleep_interval. Update caller.
Use xstrtod, now that we accept floating point values.
Prompted by a patch from Augey Mikus.
2002-09-06 Jim Meyering <meyering@lucent.com>
* src/remove.c (prompt): Change comment to give a better note to
translators. From Michael Piefel.
2002-09-02 Jim Meyering <meyering@lucent.com>
* README: A good problem report/patch includes diffs against
the most recent test release.
* src/pathchk.c (NEED_PATHCONF_WRAPPER): Define.
(pathconf_wrapper): Define only if NEED_PATHCONF_WRAPPER is set.
* src/kill.c (print_table_row): Use an unsigned type for widths
to avoid warning about comparison between signed and unsigned.
(list_signals): Likewise.
* src/od.c (skip): Add a cast to avoid warning about comparison
between signed and unsigned.
* src/install.c (get_ids): Likewise. Also rearrange range-checking
comparisons to make them more readable.
2002-09-01 Jim Meyering <meyering@lucent.com>
* Version 4.5.1.
2002-08-31 Jim Meyering <meyering@lucent.com>
Symlinks were always reported as using 0 blocks.
* src/system.h (ST_NBLOCKS): Don't depend on file type.
This reverts the change of 2000-01-30.
Based on a report and patch from Neil Brown via Michael Stone.
This fixes Debian Bug#156358.
* Most files: Change `exit (0)' to `exit (EXIT_SUCCESS)',
`exit (1)' to `exit (EXIT_FAILURE)', and
`usage (1)' to `usage (EXIT_FAILURE)'.
* chgrp.c, chmod.c, chown.c, chroot.c, cp.c, date.c, dd.c, du.c,
* hostname.c, id.c, install.c, ln.c, mkdir.c, mkfifo.c, mknod.c,
* nice.c, pinky.c, printf.c, pwd.c, shred.c, sleep.c, stty.c,
* su.c, tac-pipe.c, tail.c, tee.c, touch.c, uname.c, uptime.c,
* users.c, who.c: Change `error (1, ...' to `error (EXIT_FAILURE, ...'.
But don't change `error (0, ...' to `error (EXIT_SUCCESS, ...', since
error never exits successfully.
2002-08-29 Jim Meyering <meyering@lucent.com>
* src/remove.c (remove_cwd_entries): Use closedir (not CLOSEDIR)
when ignoring any return value.
* src/remove.c (remove_cwd_entries): Detect and diagnose readdir
failures. On some systems (at least EMC Celerra and Solaris5.8),
this appears to be necessary.
(is_empty_dir): Likewise. Also, always close directory handle.
* src/ls.c (print_dir): Likewise.
(print_dir): Rename local variable: reading -> dirp.
Reported by Mike Coleman.
2002-08-28 Jim Meyering <meyering@lucent.com>
* src/remove.c (remove_cwd_entries): Use CLOSEDIR, not closedir.
Give a diagnostic and fail if closedir fails.
2002-08-26 Jim Meyering <meyering@lucent.com>
* Makefile.am (THANKS-to-translators): New rule.
(EXTRA_DIST): Add both THANKS-to-translators and THANKStt.in.
* THANKStt.in: New file.
* src/cat.c (close_stdout_wrapper): New, kludgey, function and
file-scoped global.
(main): Register it with atexit.
Close STDOUT_FILENO, to avoid a problem when writing to
/dev/audio on at least Solaris 2.7 and 2.8 systems.
Reported by Shing-Shong Shei.
2002-08-25 Jim Meyering <meyering@lucent.com>
* src/cat.c (main): Close STDIN_FILENO rather than a literal `0'.
* src/tac.c (main): Likewise.
* src/tail.c (main): Likewise.
* src/tee.c (main): Likewise.
* src/tr.c (main): Likewise.
* src/wc.c (main): Likewise.
2002-08-20 Jim Meyering <meyering@lucent.com>
* tests/mv/setup: Rewrite not to use `: ${VAR=not_set}' paradigm.
2002-08-10 Paul Eggert <eggert@twinsun.com>
* src/nohup.sh: Don't use "exec --"; it's not portable and
shouldn't be needed.
2002-08-09 Jim Meyering <meyering@lucent.com>
* src/pr.c (main): Don't ignore -COLUMN if it's the last option.
(usage): Clarify help text for the -COLUMN option.
Patch by Padraig Brady.
* tests/pr/Test.pm [col-last]: New test for the above.
* configure.ac: Start with version 4.5.1, chosen so that it's larger
than the latest version numbers of the component packages.
* man/Makefile.am (check-x-vs-1): Set and export PATH so we use
programs in ../src.
2002-08-08 Jim Meyering <meyering@lucent.com>
* src/date.c: Guard inclusion of <langinfo.h> with
`#if HAVE_LANGINFO_CODESET', not `#if HAVE_LANGINFO_H'.
* src/sort.c: Likewise.
Patch by GOTO Masanori.
2002-08-05 Paul Eggert <eggert@twinsun.com>
Fix some minor time-related bugs with POSIX time arguments.
Some valid time stamps were being rejected (notably -1, and
time stamps before 1900 on 64-bit hosts). And some invalid
time stamps were being accepted, e.g. September 31.
* src/date.c (main): Adjust to posixtime signature change.
* src/touch.c (main): Likewise. Remove unnecessary initialization.
Use localtime, not posixtm, to warn about obsolete "touch".
2002-08-05 Jim Meyering <meyering@lucent.com>
* tests/misc/Makefile.am (TESTS): Add nice and pathchk1.
2002-08-04 Jim Meyering <meyering@lucent.com>
* src/Makefile.am (check-README): New target/rule.
(check): Depend on it.
* configure.ac (AC_CONFIG_FILES): Add old/Makefile and old/*/Makefile.
2002-08-03 Jim Meyering <meyering@lucent.com>
* Makefile.am (SUBDIRS): Add old.
* old/: New directory, containing legacy ChangeLog* and NEWS files
from the fileutils, sh-utils, and textutils packages.
* src/Makefile.am (AM_INSTALLCHECK_STD_OPTIONS_EXEMPT): Set to false.
2002-08-02 Paul Eggert <eggert@twinsun.com>
* NEWS, doc/coreutils.texi: uniq now obeys LC_COLLATE.
* src/uniq.c: Include hard-locale.h, xmemcoll.h.
(hard_LC_COLLATE): New var.
(different): Args are now char *, not const char *.
Use xmemcoll instead of memcmp to compare lines, so that
LC_COLLATE has effect. However, use memcmp if it is an
easy locale.
(check_file): Do not include newline in comparison, so that
xmemcoll has a byte to stomp on temporarily.
(main): Set hard_LC_COLLATE.
2002-07-29 Jim Meyering <meyering@lucent.com>
* Makefile.am (SUBDIRS): Remove djgpp, for now.
2002-07-08 Jim Meyering <meyering@lucent.com>
* src/Makefile.am (uninstall-local): Search for @GNU_PACKAGE@,
rather than the hard-coded `sh-utils'.
2002-07-01 Jim Meyering <meyering@lucent.com>
* configure.ac: Merge the three files from fileutils,
textutils, and sh-utils.
* Makefile.am: Likewise.
* src/Makefile.am: Likewise.
Local Variables:
version-control: never
End:

47
Makefile.am Normal file
View File

@@ -0,0 +1,47 @@
## Process this file with automake to produce Makefile.in -*-Makefile-*-
SUBDIRS = lib src doc man m4 po tests
EXTRA_DIST = Makefile.cfg Makefile.maint GNUmakefile \
.kludge-stamp .prev-version THANKS-to-translators THANKStt.in \
old/fileutils/ChangeLog \
old/fileutils/ChangeLog-1997 \
old/sh-utils/ChangeLog \
old/sh-utils/ChangeLog.0 \
old/textutils/ChangeLog \
old/fileutils/NEWS \
old/sh-utils/NEWS \
old/textutils/NEWS
install-root:
cd src && $(MAKE) $@
ACLOCAL_AMFLAGS = -I m4
# Some tests always need root privileges, others need them only sometimes.
check-root:
cd tests && $(MAKE) $@
distcheck-hook:
$(MAKE) my-distcheck
# Just prior to distribution, ...
# transform the automake-generated rule that runs `rm -f rm'.
# On some systems, that command would fail with a diagnostic like
# `rm: cannot unlink `rm': Text file busy' when `.' appears so early
# in the shell's search path that running `rm' would run the `rm'
# executable in the current directory.
# Similarly, adjust the clean-binPROGRAMS rule.
rm_subst = \
s!(rm -f (rm|\$$\(bin_PROGRAMS\)))$$!$$1 > /dev/null 2>&1 || /bin/$$1!
.kludge-stamp: $(srcdir)/src/Makefile.in
perl -pi -e '$(rm_subst)' $(srcdir)/src/Makefile.in
touch $@
THANKS-to-translators: po/LINGUAS THANKStt.in
( \
cat $(srcdir)/THANKStt.in; \
for lang in `cat po/LINGUAS`; do \
echo http://www.iro.umontreal.ca/contrib/po/HTML/team-$$lang.html; \
done; \
) > $@-tmp && mv $@-tmp $@

603
Makefile.in Normal file
View File

@@ -0,0 +1,603 @@
# Makefile.in generated by automake 1.7 from Makefile.am.
# @configure_input@
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
# Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = .
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
host_triplet = @host@
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DF_PROG = @DF_PROG@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FESETROUND_LIBM = @FESETROUND_LIBM@
GETLOADAVG_LIBS = @GETLOADAVG_LIBS@
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GNU_PACKAGE = @GNU_PACKAGE@
HELP2MAN = @HELP2MAN@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INTLLIBS = @INTLLIBS@
KMEM_GROUP = @KMEM_GROUP@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBS = @LIBS@
LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
LIB_CRYPT = @LIB_CRYPT@
LIB_NANOSLEEP = @LIB_NANOSLEEP@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MAN = @MAN@
MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@
MSGMERGE = @MSGMERGE@
NEED_SETGID = @NEED_SETGID@
OBJEXT = @OBJEXT@
OPTIONAL_BIN_PROGS = @OPTIONAL_BIN_PROGS@
OPTIONAL_BIN_ZCRIPTS = @OPTIONAL_BIN_ZCRIPTS@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
POSUB = @POSUB@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SEQ_LIBM = @SEQ_LIBM@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SQRT_LIBM = @SQRT_LIBM@
STRIP = @STRIP@
U = @U@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
YACC = @YACC@
ac_ct_CC = @ac_ct_CC@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__include = @am__include@
am__quote = @am__quote@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localstatedir = @localstatedir@
mandir = @mandir@
oldincludedir = @oldincludedir@
prefix = @prefix@
program_transform_name = @program_transform_name@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
SUBDIRS = lib src doc man m4 po tests
EXTRA_DIST = Makefile.cfg Makefile.maint GNUmakefile \
.kludge-stamp .prev-version THANKS-to-translators THANKStt.in \
old/fileutils/ChangeLog \
old/fileutils/ChangeLog-1997 \
old/sh-utils/ChangeLog \
old/sh-utils/ChangeLog.0 \
old/textutils/ChangeLog \
old/fileutils/NEWS \
old/sh-utils/NEWS \
old/textutils/NEWS
ACLOCAL_AMFLAGS = -I m4
# Just prior to distribution, ...
# transform the automake-generated rule that runs `rm -f rm'.
# On some systems, that command would fail with a diagnostic like
# `rm: cannot unlink `rm': Text file busy' when `.' appears so early
# in the shell's search path that running `rm' would run the `rm'
# executable in the current directory.
# Similarly, adjust the clean-binPROGRAMS rule.
rm_subst = \
s!(rm -f (rm|\$$\(bin_PROGRAMS\)))$$!$$1 > /dev/null 2>&1 || /bin/$$1!
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES =
DIST_SOURCES =
RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
ps-recursive install-info-recursive uninstall-info-recursive \
all-recursive install-data-recursive install-exec-recursive \
installdirs-recursive install-recursive uninstall-recursive \
check-recursive installcheck-recursive
DIST_COMMON = README ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL \
Makefile.am Makefile.in NEWS THANKS TODO aclocal.m4 config.hin \
config/ChangeLog config/config.guess config/config.rpath \
config/config.sub config/depcomp config/install-sh \
config/mdate-sh config/missing config/mkinstalldirs \
config/texinfo.tex configure configure.ac
DIST_SUBDIRS = $(SUBDIRS)
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
.SUFFIXES:
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.ac $(ACLOCAL_M4)
cd $(top_srcdir) && \
$(AUTOMAKE) --gnits Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)
$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
$(srcdir)/configure: $(srcdir)/configure.ac $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
cd $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): configure.ac m4/acl.m4 m4/afs.m4 m4/assert.m4 m4/bison.m4 m4/boottime.m4 m4/c-stack.m4 m4/check-decl.m4 m4/chown.m4 m4/codeset.m4 m4/d-ino.m4 m4/d-type.m4 m4/dirfd.m4 m4/dos.m4 m4/error.m4 m4/fpending.m4 m4/fstypename.m4 m4/fsusage.m4 m4/ftruncate.m4 m4/getcwd.m4 m4/getgroups.m4 m4/getline.m4 m4/gettext.m4 m4/gettimeofday.m4 m4/glibc.m4 m4/glibc21.m4 m4/group-member.m4 m4/host-os.m4 m4/iconv.m4 m4/intdiv0.m4 m4/inttypes-pri.m4 m4/inttypes.m4 m4/isc-posix.m4 m4/jm-glibc-io.m4 m4/jm-macros.m4 m4/jm-mktime.m4 m4/jm-winsz1.m4 m4/jm-winsz2.m4 m4/lchown.m4 m4/lcmessage.m4 m4/lib-check.m4 m4/lib-ld.m4 m4/lib-link.m4 m4/lib-prefix.m4 m4/link-follow.m4 m4/longlong.m4 m4/ls-mntd-fs.m4 m4/lstat.m4 m4/mbrtowc.m4 m4/mbswidth.m4 m4/memcmp.m4 m4/mkdir-slash.m4 m4/mkstemp.m4 m4/nanosleep.m4 m4/perl.m4 m4/prereq.m4 m4/progtest.m4 m4/putenv.m4 m4/regex.m4 m4/rename.m4 m4/rmdir-errno.m4 m4/search-libs.m4 m4/st_dm_mode.m4 m4/st_mtim.m4 m4/stat.m4 m4/stdbool.m4 m4/strftime.m4 m4/timespec.m4 m4/unlink-busy.m4 m4/uptime.m4 m4/utimbuf.m4 m4/utime.m4 m4/utimes.m4 m4/xstrtoimax.m4 m4/xstrtoumax.m4
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
config.h: stamp-h1
@if test ! -f $@; then \
rm -f stamp-h1; \
$(MAKE) stamp-h1; \
else :; fi
stamp-h1: $(srcdir)/config.hin $(top_builddir)/config.status
@rm -f stamp-h1
cd $(top_builddir) && $(SHELL) ./config.status config.h
$(srcdir)/config.hin: $(top_srcdir)/configure.ac $(ACLOCAL_M4)
cd $(top_srcdir) && $(AUTOHEADER)
touch $(srcdir)/config.hin
distclean-hdr:
-rm -f config.h stamp-h1
uninstall-info-am:
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@set fnord $$MAKEFLAGS; amf=$$2; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
@set fnord $$MAKEFLAGS; amf=$$2; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ETAGS = etags
ETAGSFLAGS =
CTAGS = ctags
CTAGSFLAGS =
tags: TAGS
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
TAGS: tags-recursive $(HEADERS) $(SOURCES) config.hin $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) config.hin $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(ETAGS_ARGS)$$tags$$unique" \
|| $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.hin $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) config.hin $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
top_distdir = .
distdir = $(PACKAGE)-$(VERSION)
am__remove_distdir = \
{ test ! -d $(distdir) \
|| { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -fr $(distdir); }; }
GZIP_ENV = --best
distuninstallcheck_listfiles = find . -type f -print
distcleancheck_listfiles = find . -type f -print
distdir: $(DISTFILES)
@case `sed 15q $(srcdir)/NEWS` in \
*"$(VERSION)"*) : ;; \
*) \
echo "NEWS not updated; not releasing" 1>&2; \
exit 1;; \
esac
$(am__remove_distdir)
mkdir $(distdir)
$(mkinstalldirs) $(distdir)/config $(distdir)/old/fileutils $(distdir)/old/sh-utils $(distdir)/old/textutils $(distdir)/po
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \
case $$file in \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
esac; \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkinstalldirs) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
|| exit 1; \
fi; \
done
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d $(distdir)/$$subdir \
|| mkdir $(distdir)/$$subdir \
|| exit 1; \
(cd $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$(top_distdir)" \
distdir=../$(distdir)/$$subdir \
distdir) \
|| exit 1; \
fi; \
done
-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r $(distdir)
dist-gzip: distdir
$(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
dist-bzip2: distdir
$(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir)
dist dist-all: distdir
$(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
$(am__remove_distdir)
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf -
chmod -R a-w $(distdir); chmod a+w $(distdir)
mkdir $(distdir)/=build
mkdir $(distdir)/=inst
chmod a-w $(distdir)
dc_install_base=`$(am__cd) $(distdir)/=inst && pwd` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& $(mkinstalldirs) $$dc_destdir \
&& $(MAKE) $(AM_MAKEFLAGS) distcheck-hook \
&& cd $(distdir)/=build \
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
--with-included-gettext \
$(DISTCHECK_CONFIGURE_FLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
distuninstallcheck \
&& chmod -R a-w "$$dc_install_base" \
&& ({ $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
} || { rm -rf "$$dc_destdir"; exit 1; }) \
&& rm -rf "$$dc_destdir" \
&& $(MAKE) $(AM_MAKEFLAGS) dist-gzip \
&& rm -f $(distdir).tar.gz \
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck
$(am__remove_distdir)
@echo "$(distdir).tar.gz is ready for distribution" | \
sed 'h;s/./=/g;p;x;p;x'
distuninstallcheck:
cd $(distuninstallcheck_dir) \
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
echo " (check DESTDIR support)"; \
fi ; \
$(distuninstallcheck_listfiles) ; \
exit 1; } >&2
distcleancheck: distclean
if test '$(srcdir)' = . ; then \
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
exit 1 ; \
fi
test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left in build directory after distclean:" ; \
$(distcleancheck_listfiles) ; \
exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile config.h
installdirs: installdirs-recursive
installdirs-am:
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f Makefile $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean-am: clean-generic mostlyclean-am
distclean: distclean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
distclean-am: clean-am distclean-generic distclean-hdr distclean-tags
dvi: dvi-recursive
dvi-am:
info: info-recursive
info-am:
install-data-am:
install-exec-am:
install-info: install-info-recursive
install-man:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf autom4te.cache
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic
pdf: pdf-recursive
pdf-am:
ps: ps-recursive
ps-am:
uninstall-am: uninstall-info-am
uninstall-info: uninstall-info-recursive
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
clean-generic clean-recursive ctags ctags-recursive dist \
dist-all dist-bzip2 dist-gzip distcheck distclean \
distclean-generic distclean-hdr distclean-recursive \
distclean-tags distcleancheck distdir distuninstallcheck dvi \
dvi-am dvi-recursive info info-am info-recursive install \
install-am install-data install-data-am install-data-recursive \
install-exec install-exec-am install-exec-recursive \
install-info install-info-am install-info-recursive install-man \
install-recursive install-strip installcheck installcheck-am \
installdirs installdirs-am installdirs-recursive \
maintainer-clean maintainer-clean-generic \
maintainer-clean-recursive mostlyclean mostlyclean-generic \
mostlyclean-recursive pdf pdf-am pdf-recursive ps ps-am \
ps-recursive tags tags-recursive uninstall uninstall-am \
uninstall-info-am uninstall-info-recursive uninstall-recursive
install-root:
cd src && $(MAKE) $@
# Some tests always need root privileges, others need them only sometimes.
check-root:
cd tests && $(MAKE) $@
distcheck-hook:
$(MAKE) my-distcheck
.kludge-stamp: $(srcdir)/src/Makefile.in
perl -pi -e '$(rm_subst)' $(srcdir)/src/Makefile.in
touch $@
THANKS-to-translators: po/LINGUAS THANKStt.in
( \
cat $(srcdir)/THANKStt.in; \
for lang in `cat po/LINGUAS`; do \
echo http://www.iro.umontreal.ca/contrib/po/HTML/team-$$lang.html; \
done; \
) > $@-tmp && mv $@-tmp $@
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@@ -225,11 +225,15 @@ rel-check:
prev-tgz = $(PACKAGE)-$(PREV_VERSION).tar.gz
xd-delta = $(PACKAGE)-$(PREV_VERSION)-$(VERSION).xdelta
news-r1 = /^[^ ].*$(THIS_VERSION_REGEXP)[]:]/
news-r2 = /^[^ ].*$(PREV_VERSION_REGEXP)[]:]/
rel-files = $(xd-delta) $(distdir).tar.bz2 $(distdir).tar.gz
announcement: NEWS ChangeLog $(rel-files)
@( \
echo Subject: $(my_distdir) released; \
echo; \
echo '<#secure method=pgpmime mode=sign>'; \
echo FIXME: put comments here; \
echo; \
for url in $(url_dir_list); do \
@@ -243,6 +247,10 @@ announcement: NEWS ChangeLog $(rel-files)
echo " $$url/$(xd-delta) ($(xd-size))"; \
done; \
echo; \
echo "Here are GPG detached signatures:"; \
echo " $$url/$(my_distdir).tar.gz.sig"; \
echo " $$url/$(my_distdir).tar.bz2.sig"; \
echo; \
echo "Here are the MD5 and SHA1 signatures:"; \
echo; \
echo "$(tgz-md5) $(my_distdir).tar.gz"; \
@@ -253,7 +261,7 @@ announcement: NEWS ChangeLog $(rel-files)
echo "$(xdelta-sha1) $(xd-delta)"; \
echo; \
echo NEWS:; \
sed -n "/$(THIS_VERSION_REGEXP)[]:]/,/$(PREV_VERSION_REGEXP)[]:]/p" NEWS \
sed -n "$(news-r1),$(news-r2)p" NEWS \
| grep -v '^\['; \
echo; \
echo ChangeLog entries:; \
@@ -273,9 +281,10 @@ move_if_change ?= move-if-change
# The following pseudo table associates a local directory and a URL
# with each of the files that belongs to some other package and is
# regularly updated from the specified URL.
wget_files ?= $(srcdir)/config.guess $(srcdir)/config.sub \
wget_files ?= $(srcdir)/config/config.guess \
$(srcdir)/config/config.sub \
$(srcdir)/src/ansi2knr.c \
$(srcdir)/doc/texinfo.tex
$(srcdir)/config/texinfo.tex
get-targets = $(patsubst %, get-%, $(wget_files))
config.guess-url_prefix = $(ftp-gnu)/config/
@@ -299,11 +308,12 @@ $(get-targets):
automake_repo=:pserver:anoncvs@anoncvs.cygnus.com:/cvs/automake
.PHONY: wget-update
wget-update: $(get-targets)
for f in depcomp missing mkinstalldirs; do \
test -f $$f || continue; \
echo checking out $$f...; \
$(CVS) -d $(automake_repo) co -p automake/lib/$$f > $$f.t \
&& $(move_if_change) $$f.t $$f; \
cd config && \
for f in depcomp missing mkinstalldirs; do \
test -f $$f || { echo "*** skipping $$f" 1>&2; continue; }; \
echo checking out $$f...; \
$(CVS) -d $(automake_repo) co -p automake/lib/$$f > $$f.t \
&& $(move_if_change) $$f.t $$f; \
done
define emit-upload-commands

14
NEWS Normal file
View File

@@ -0,0 +1,14 @@
[4.5.2]
* `rm -i dir' (without --recursive (-r)) no longer recurses into dir
* `tail -c N FILE' now works with files of size >= 4GB
* `mkdir -p' can now create very deep (e.g. 40,000-component) directories
* rmdir -p dir-with-trailing-slash/ no longer fails
* printf now honors the `--' command line delimiter
* od's 8-byte formats x8, o8, and u8 now work
* tail now accepts fractional seconds for its --sleep-interval=S (-s) option
[4.5.1]
* du and ls now report sizes of symbolic links (before they'd always report 0)
* uniq now obeys the LC_COLLATE locale, as per POSIX 1003.1-2001 TC1.
This package is the union of the following:
textutils-2.1, fileutils-4.1.11, sh-utils-2.0.15.

96
README Normal file
View File

@@ -0,0 +1,96 @@
These are the GNU core utilities. This package is the union of
the GNU fileutils, sh-utils, and textutils packages.
Most of these programs have significant advantages over their Unix
counterparts, such as greater speed, additional options, and fewer
arbitrary limits.
The programs that can be built with this package are:
basename cat chgrp chmod chown chroot cksum comm cp csplit cut date dd
df dir dircolors dirname du echo env expand expr factor false fmt fold
ginstall groups head hostid hostname id join kill link ln logname ls
md5sum mkdir mkfifo mknod mv nice nl nohup od paste pathchk pinky pr
printenv printf ptx pwd rm rmdir seq sha1sum shred sleep sort split
stat stty su sum sync tac tail tee test touch tr true tsort tty uname
unexpand uniq unlink uptime users vdir wc who whoami yes
See the file NEWS for a list of major changes in the current release.
See the file INSTALL for compilation and installation instructions.
These programs are intended to be POSIX.2 compliant (with BSD and other
extensions), like the rest of the GNU system.
The ls, dir, and vdir commands are all separate executables instead of
one program that checks argv[0] because people often rename these
programs to things like gls, gnuls, l, etc. Renaming a program
file shouldn't affect how it operates, so that people can get the
behavior they want with whatever name they want.
Special thanks to Paul Eggert, Brian Matthews, Bruce Evans, Karl Berry,
Kaveh Ghazi, and François Pinard for help with debugging and porting
these programs. Many thanks to all of the people who have taken the
time to submit problem reports and fixes. All contributed changes are
attributed in the ChangeLog file.
And thanks to the following people who have provided accounts for
portability testing on many different types of systems: Bob Proulx,
Christian Robert, François Pinard, Greg McGary, Harlan Stenn,
Joel N. Weber, Mark D. Roth, Matt Schalit, Nelson H. F. Beebe,
Réjean Payette, Sam Tardieu.
Thanks to Michael Stone for inflicting test releases of the fileutils
on Debian's unstable distribution, and to all the kind folks who used
that distribution and found and reported bugs.
Note that each man page is now automatically generated from a template
and from the corresponding --help usage message. Patches to the template
files (man/*.x) are welcome. However, the authoritative documentation
is in texinfo form in the doc directory.
If you run the tests on a SunOS4.1.4 system, expect the ctime-part of
the ls `time-1' test to fail. I believe that is due to a bug in the
way Sun implemented link(2) and chmod(2).
There are pretty many tests, but nowhere near as many as we need.
Additions and corrections are very welcome.
If you see a problem that you've already reported, feel free to re-report
it -- it won't bother me to get a reminder. Besides, the more messages I
get regarding a particular problem the sooner it'll be fixed -- usually.
If you sent a complete patch and, after a couple weeks you haven't
received any acknowledgement please ping us. A complete patch includes
a well-written ChangeLog entry, unified (diff -u format) diffs relative
to the most recent test release, an explanation for why the patch is
necessary or useful, and if at all possible, enough information to
reproduce whatever problem prompted it.
If your patch adds a new feature, please try to get some sort of consensus
that it is a worthwhile change. One way to do that is to send mail to
bug-gnu-utils@gnu.org (aka the gnu.utils.bug news group) including as
much description and justification as you can. Based on the feedback
that generates, you may be able to convince us that it's worth adding.
WARNING: If you modify files like configure.in, m4/*.m4, aclocal.m4,
or any Makefile.am, then don't be surprised if what gets regenerated no
longer works. To make things work, you'll have to be using appropriate
versions of automake and autoconf. As for what versions are `appropriate',
use the versions of
* autoconf specified via AC_PREREQ in m4/jm-macros.m4
* automake specified via AM_INIT_AUTOMAKE in configure.ac
Usually it's fine to use versions that are newer than those specified.
These programs all recognize the `--version' option. When reporting
bugs, please include in the subject line both the package name/version
and the name of the program for which you found a problem.
For general documentation on the coding and usage standards
this distribution follows, see the GNU Coding Standards,
http://www.gnu.org/prep/standards_toc.html.
Mail suggestions and bug reports for these programs to
the address on the last line of --help output.

53
THANKS
View File

@@ -1,11 +1,11 @@
These people have contributed to the GNU fileutils, textutils,
and/or sh-utils packages. Some have reported problems, others have
contributed improvements to the documentation, actual code, and even
These people have contributed to the GNU coreutils (formerly, the fileutils,
textutils, and/or sh-utils packages). Some have reported problems, others
have contributed improvements to the documentation, actual code, and even
complete programs. Those contributions are described in the ChangeLog
files. If your name has been left out, if you'd rather not be listed,
or if you'd prefer a different address be used, please let me know.
Some old names and addresses are still in the ChangeLog.
??? kytek@cybercomm.net
Achim Blumensath blume@corona.oche.de
Adam Klein aklein@debian.org
Akim Demaille demaille@inf.enst.fr
@@ -18,6 +18,8 @@ aldomel aldomel@ix.netcom.com
Alen Muzinic zveki@fly.cc.fer.hr
Alexandre Duret-Lutz duret_g@epita.fr
Alexey Solovyov alekso@math.uu.se
Alfred M. Szmidt ams@kemisten.nu
Andi Kleen freitag@alancoxonachip.com
Andre Novaes Cunha Andre.Cunha@br.global-one.net
Andreas Gruenbacher ag@bestbits.at
Andreas Jaeger jaeger@gnu.org
@@ -36,6 +38,8 @@ Ariel Faigon ariel@cthulhu.engr.sgi.com
Arne H. Juul arnej@solan.unit.no
Arne Henrik Juul arnej@imf.unit.no
Arthur Pool pool@commerce.uq.edu.au
Arun Sharma arun.sharma@intel.com
Augey Mikus mikus@dqc.org
Austin Donnelly Austin.Donnelly@cl.cam.ac.uk
Axel Kittenberger Anshil@gmx.net
Bauke Jan Douma bjdouma@xs4all.nl
@@ -74,9 +78,11 @@ Colin Watson cjw44@riva.ucam.org
Collin Rogowski collin@rogowski.de
Dale Scheetz dwarf@polaris.net
Dan Hagerty hag@gnu.ai.it.edu
Dan Jacobson http://www.geocities.com/jidani
Dan Pascu dan@services.iiruc.ro
Daniel Bergstrom noa@melody.se
Darren Salt ds@youmustbejoking.demon.co.uk
Dave Beckett dajobe@dajobe.org
David Dyck dcd@tc.fluke.COM
David Godfrey dave@delta.demon.co.uk
David Luyer david_luyer@pacific.net.au
@@ -85,7 +91,6 @@ Derek Clegg dclegg@next.com
Dick Streefland dick_streefland@tasking.com
Dirk Lattermann dlatt@t-online.de
Dirk-Jan Faber djfaber@snow.nl
Dan Jacobson http://www.geocities.com/jidani
Don Parsons dparsons@synapse.kent.edu
Donni Erpel donald@appc11.gsi.de
Doug McLaren dougmc@comco.com
@@ -105,29 +110,31 @@ Erik Corry erik@kroete2.freinet.de
Felix Lee flee@teleport.com
Fletcher Mattox fletcher@cs.utexas.edu
Florin Iucha fiucha@hsys.mic.ro
François Pinard pinard@iro.umontreal.ca
Frank Adler fadler@allesklar.de
Frank T Lofaro ftlofaro@snooks.Egr.UNLV.EDU
François Pinard pinard@iro.umontreal.ca
Fred Fish fnf@ninemoons.com
Frederik Eaton frederik@caltech.edu
Frédéric L. W. Meunier 0@pervalidus.net
Frederik Eaton frederik@caltech.edu
Gabor Z. Papp gzp@gzp.org.hu
Gaël Quéri gqueri@mail.dotcom.fr
Galen Hazelwood galenh@micron.net
Gary Anderson ganderson@clark.net
Gaël Quéri gqueri@mail.dotcom.fr
Gaute Hvoslef Kvalnes gaute@verdsveven.com
Geoff Kuenning geoff@cs.hmc.edu
Geoff Odhner geoff@franklin.com
Geoff Whale geoffw@cse.unsw.EDU.AU
Gerhard Poul gpoul@gnu.org
Germano Leichsenring germano@jedi.cs.kobe-u.ac.jp
Göran Uddeborg goeran@uddeborg.pp.se
GOTO Masanori gotom@debian.or.jp
Greg Louis glouis@dynamicro.on.ca
Greg McGary gkm@gnu.org
Greg Troxel gdt@bbn.com
Greg Wooledge gawooledge@sherwin.com
Gregory Leblanc gleblanc@cu-portland.edu
Göran Uddeborg goeran@uddeborg.pp.se
H. J. Lu hjl@valinux.com
Hans Lermen ???
Hans Verkuil hans@wyst.hobby.nl
Harry Liu rliu@lek.ugcs.caltech.edu
Herbert Xu herbert@gondor.apana.org.au
@@ -159,7 +166,7 @@ Jim Blandy jimb@cyclic.com
Jim Dennis jimd@starshine.org
Joakim Rosqvist dvljrt@cs.umu.se
Jochen Hein jochen@jochen.org
Joe Orton joe@orton.demon.co.uk
Joe Orton joe@manyfish.co.uk
Johan Danielsson joda@pdc.kth.se
John Bley jbb6@acpub.duke.edu
John David Anglin dave.anglin@nrc.ca
@@ -178,8 +185,8 @@ Juan F. Codagnone juam@arnet.com.ar
Jungshik Shin jshin@pantheon.yale.edu
Jürgen Fluk louis@dachau.marco.de
jvogel jvogel@linkny.com
Kai-Uwe Rommel rommel@informatik.tu-muenchen.de
Kai Henningsen kai@debian.org
Kai-Uwe Rommel rommel@informatik.tu-muenchen.de
Kalle Olavi Niemitalo tosi@stekt.oulu.fi
Kamal Paul Nigam Kamal_Paul_Nigam@gs35.sp.cs.cmu.edu
Karl Eichwalder keichwa@gmx.net
@@ -192,11 +199,11 @@ Keith Thompson kst@sdsc.edu
Ken Pizzini kenp@halcyon.com
Kjetil Torgrim Homme kjetilho@ifi.uio.no
Kristoffer Rose kris@diku.dk
??? kytek@cybercomm.net
Larry McVoy lm@sgi.com
Lars Hecking lhecking@nmrc.ucc.ie
Lehti Rami rammer@cs.tut.fi
Leonard N. Zubkoff lnz@dandelion.com
Leonardo Milano lmilano@udel.edu
Lorne Baker lbaker@nitro.avint.net
M. P. Suzuki mpsuzuki@hiroshima-u.ac.jp
Maciej Kwapulinski pikpok@univ.gda.pl
@@ -205,6 +212,7 @@ Manfred Hollstein manfred@s-direktnet.de
Marc Boucher marc@mbsi.ca
Marc Olzheim marcolz@stack.nl
Marco Franzen Marco.Franzen@Thyron.com
Marcus Brinkmann http://www.marcus-brinkmann.de
Marcus Daniels marcus@ee.pdx.edu
Mark A. Thomas thommark@access.digex.net
Mark D. Roth roth@uiuc.edu
@@ -218,6 +226,7 @@ Markus Demleitner msdemlei@auriga.ari.uni-heidelberg.de
Martin martin@dresden.nacamar.de
Martin Gallant martyg@goodbit.net
Martin Hippe martin.hippe@schlund.de
Martin Michlmayr tbm@cyrius.com
Martin Mitchell martin@debian.org
Martin P.J. Zinser zinser@decus.de
Marty Leisner leisner@sdsp.mc.xerox.com
@@ -226,13 +235,14 @@ Mate Wierdl mw@moni.msci.memphis.edu
Matej Vela mvela@public.srce.hr
Matt Perry matt@primefactor.com
Matt Schalit mschalit@pacbell.net
Matthew Arnison maffew@cat.org.au
Matthew Braun matthew@ans.net
Matthew Clarke Matthew_Clarke@mindlink.bc.ca
Matthew S. Levine mslevine@theory.lcs.mit.edu
Matthew Smith matts@bluesguitar.org
Matthew Swift swift@alum.mit.edu
Mattias Wadenstein maswan@acc.umu.se
Matthias Urlichs smurf@noris.de
Mattias Wadenstein maswan@acc.umu.se
Meelis Roos mroos@tartu.cyber.ee
Michael ??? michael@roka.net
Michael Deutschmann michael@talamasca.ocis.net
@@ -240,16 +250,22 @@ Michael Gaughen mgaughen@polyserve.com
Michael Hasselberg mikelh@zonta.ping.de
Michael Hohn hohn@math.utah.edu
Michael J. Croghan mcroghan@usatoday.com
Michael Piefel piefel@informatik.hu-berlin.de
Michael Steffens michael.steffens@s.netic.de
Michael Stone mstone@debian.org
Michael Stutz stutz@dsl.org
Michael Veksler mveksler@techunix.technion.ac.il
Michail Litvak mci@owl.openwall.com
Michel Robitaille robitail@IRO.UMontreal.CA
Michiel Bacchiani bacchian@raven.bu.edu
Mike Castle dalgoda@ix.netcom.com
Mike Coleman mkc@mathdogs.com
Mikko Tuumanen m@sorvankyla.yok.utu.fi
Miles Bader miles@gnu.ai.mit.edu
Minh Tran-Le tranle@intellicorp.com
Morten Welinder terra@diku.dk
Neal H Walfield neal@cs.uml.edu
Neil Brown neilb@cse.unsw.edu.au
Nelson H. F. Beebe beebe@math.utah.edu
Nick Lawes nlawes@silverplatter.com
Niklas Edmundsson nikke@acc.umu.se
@@ -257,8 +273,8 @@ Noah Friedman friedman@splode.com
Noel Cragg noel@red-bean.com
Olav Morkrid olav@funcom.com
Ole Laursen olau@hardworking.dk
Oskar Liljeblad osk@hem.passagen.se
Ørn E. Hansen oehansen@daimi.aau.dk
Oskar Liljeblad osk@hem.passagen.se
Paul Eggert eggert@twinsun.com
Paul Nevai nevai@ops.mps.ohio-state.edu
Paul Sauer paul@alexa.com
@@ -282,9 +298,11 @@ Rainer Orth ro@TechFak.Uni-Bielefeld.DE
Ralf W. Stephan stephan@tmt.de
Ralph Loader loader@maths.ox.ac.uk
Raul Miller moth@magenta.com
Raúl Núñez de Arenas Coronado raul@pleyades.net
Richard Braakman dark@xs4all.nl
Richard Dawe richdawe@bigfoot.com
Richard J. Rauenzahn rrauenza@hairball.cup.hp.com
Richard Neill rn214@hermes.cam.ac.uk
Richard Sharman rsharman@magmacom.com
Rick Sladkey jrs@world.std.com
Rik Faith faith@cs.unc.edu
@@ -302,22 +320,27 @@ Sander van Malssen svm@kozmix.ow.nl
Santiago Vila Doncel sanvila@unex.es
Savochkin Andrey Vladimirovich saw@msu.ru
Scott Lurndal slurn@griffin.engr.sgi.com
Shing-Shong Shei shei@cs.indiana.edu
Soeren Sonnenburg sonnenburg@informatik.hu-berlin.de
Stéphane Chazelas Stephane_CHAZELAS@yahoo.fr
Stephen Eglen eglen@pcg.wustl.edu
Stephen Gildea gildea@stop.mail-abuse.org
Stephen Smoogen ??????????
Stephen Smoogen smooge@mindspring.com
Steve McConnel steve@acadcomp.sil.org
Stuart Kemp skemp@peter.bmc.com
Tadayoshi Funaba tadf@kt.rim.or.jp
TAKAI Kousuke takai@vlsi.kuee.kyoto-u.ac.jp
Theodore Ts'o tytso@rsts-11.mit.edu
Thomas Bushnell thomas@gnu.ai.mit.edu
Thomas Quinot thomas@Cuivre.FR.EU.ORG
Tim J. Robbins tjr@FreeBSD.org
Tim Smithers mouse@dmouse.com.au
Tim Waugh twaugh@redhat
Todd A. Jacobs tjacobs@codegnome.org
Tom Haynes thomas@netapp.com
Tom Quinn trq@dionysos.thphys.ox.ac.uk
Ton Hospel thospel@mail.dma.be
Tony Kocurko akocurko@mun.ca
Tony Leneis tony@plaza.ds.adp.com
Tony Robinson ajr@eng.cam.ac.uk
Torbjorn Granlund tege@nada.kth.se

4
THANKStt.in Normal file
View File

@@ -0,0 +1,4 @@
The following teams have translated the many diagnostics of this
package into many different languages. Thank you!
---

6
TODO Normal file
View File

@@ -0,0 +1,6 @@
restore djgpp, eventually
merge TODO lists
add unit tests for lib/*.c
strip: add an option to specify the program used to strip binaries.
suggestion from Karl Berry

32
TODO-private Normal file
View File

@@ -0,0 +1,32 @@
Move things so there are no symlinks from repository to
any directory other than common
******************
LINGUAS:
sort -u ../[fst]u/po/LINGUAS > po/LINGUAS
go cu
cd po
for i in f s t; do
echo $i:
xu=${i}u
for j in $(cat ../../$xu/po/LINGUAS); do
echo " $j"
msgmerge -o k ../../$xu/po/$j.po $j.po && mv k $j.po
done
done
go cu; cd po; export xu=tu j=zh_TW
go cu; cd po; export xu=su j=ru
go cu; cd po; export xu=fu j=zh_TW
go cu; cd po; export xu=tu j=fr
go cu; cd po; export xu=su j=tr
go cu; cd po; export xu=fu j=ca
go cu; cd po; export xu=su j=sl
go cu; cd po; export xu=tu j=el
go cu; cd po; export xu=su j=da
go cu; cd po; export xu=fu j=lg
k=$xu-$j
msgmerge -o $k ../../$xu/po/$j.po $j.po && mv $k $j.po
cvs ci -m 'merge from fileutils-4.1.11' $j.po

6148
aclocal.m4 vendored Normal file

File diff suppressed because it is too large Load Diff

1450
config.hin Normal file

File diff suppressed because it is too large Load Diff

112
config/config.guess vendored
View File

@@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002 Free Software Foundation, Inc.
timestamp='2002-03-20'
timestamp='2002-09-03'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -88,30 +88,40 @@ if test $# != 0; then
exit 1
fi
trap 'exit 1' 1 2 15
dummy=dummy-$$
trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
# compiler to aid in system detection is discouraged as it requires
# temporary files to be created and, as you can see below, it is a
# headache to deal with in a portable fashion.
# CC_FOR_BUILD -- compiler used by this script.
# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
# use `HOST_CC' if defined, but it is deprecated.
set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in
,,) echo "int dummy(){}" > $dummy.c ;
# This shell variable is my proudest work .. or something. --bje
set_cc_for_build='tmpdir=${TMPDIR-/tmp}/config-guess-$$ ;
(old=`umask` && umask 077 && mkdir $tmpdir && umask $old && unset old)
|| (echo "$me: cannot create $tmpdir" >&2 && exit 1) ;
dummy=$tmpdir/dummy ;
files="$dummy.c $dummy.o $dummy.rel $dummy" ;
trap '"'"'rm -f $files; rmdir $tmpdir; exit 1'"'"' 1 2 15 ;
case $CC_FOR_BUILD,$HOST_CC,$CC in
,,) echo "int x;" > $dummy.c ;
for c in cc gcc c89 c99 ; do
($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ;
if test $? = 0 ; then
if ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ; then
CC_FOR_BUILD="$c"; break ;
fi ;
done ;
rm -f $dummy.c $dummy.o $dummy.rel ;
rm -f $files ;
if test x"$CC_FOR_BUILD" = x ; then
CC_FOR_BUILD=no_compiler_found ;
fi
;;
,,*) CC_FOR_BUILD=$CC ;;
,*,*) CC_FOR_BUILD=$HOST_CC ;;
esac'
esac ;
unset files'
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 1994-08-24)
@@ -142,6 +152,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
/usr/sbin/$sysctl 2>/dev/null || echo unknown)`
case "${UNAME_MACHINE_ARCH}" in
armeb) machine=armeb-unknown ;;
arm*) machine=arm-unknown ;;
sh3el) machine=shl-unknown ;;
sh3eb) machine=sh-unknown ;;
@@ -220,6 +231,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
eval $set_cc_for_build
cat <<EOF >$dummy.s
.data
\$Lformat:
@@ -245,10 +257,9 @@ main:
jsr \$26,exit
.end main
EOF
eval $set_cc_for_build
$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
if test "$?" = 0 ; then
case `./$dummy` in
case `$dummy` in
0-0)
UNAME_MACHINE="alpha"
;;
@@ -270,9 +281,12 @@ EOF
2-1307)
UNAME_MACHINE="alphaev68"
;;
3-1307)
UNAME_MACHINE="alphaev7"
;;
esac
fi
rm -f $dummy.s $dummy
rm -f $dummy.s $dummy && rmdir $tmpdir
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
exit 0 ;;
Alpha\ *:Windows_NT*:*)
@@ -313,6 +327,10 @@ EOF
NILE*:*:*:dcosx)
echo pyramid-pyramid-svr4
exit 0 ;;
DRS?6000:UNIX_SV:4.2*:7*)
case `/usr/bin/uname -p` in
sparc) echo sparc-icl-nx7 && exit 0 ;;
esac ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
@@ -420,14 +438,20 @@ EOF
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy \
&& ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
&& rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
&& $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
&& rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
rm -f $dummy.c $dummy && rmdir $tmpdir
echo mips-mips-riscos${UNAME_RELEASE}
exit 0 ;;
Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax
exit 0 ;;
Motorola:*:4.3:PL8-*)
echo powerpc-harris-powermax
exit 0 ;;
Night_Hawk:*:*:PowerMAX_OS)
echo powerpc-harris-powermax
exit 0 ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
exit 0 ;;
@@ -500,8 +524,8 @@ EOF
exit(0);
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
$CC_FOR_BUILD $dummy.c -o $dummy && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
rm -f $dummy.c $dummy && rmdir $tmpdir
echo rs6000-ibm-aix3.2.5
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
@@ -599,9 +623,9 @@ EOF
exit (0);
}
EOF
(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null) && HP_ARCH=`./$dummy`
(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null) && HP_ARCH=`$dummy`
if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
rm -f $dummy.c $dummy
rm -f $dummy.c $dummy && rmdir $tmpdir
fi ;;
esac
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
@@ -637,8 +661,8 @@ EOF
exit (0);
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
$CC_FOR_BUILD $dummy.c -o $dummy && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
rm -f $dummy.c $dummy && rmdir $tmpdir
echo unknown-hitachi-hiuxwe2
exit 0 ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
@@ -721,7 +745,19 @@ EOF
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
exit 0 ;;
*:FreeBSD:*:*)
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
# Determine whether the default compiler uses glibc.
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#include <features.h>
#if __GLIBC__ >= 2
LIBC=gnu
#else
LIBC=
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
rm -f $dummy.c && rmdir $tmpdir
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
exit 0 ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
@@ -782,7 +818,7 @@ EOF
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
rm -f $dummy.c
rm -f $dummy.c && rmdir $tmpdir
test x"${CPU}" != x && echo "${CPU}-pc-linux-gnu" && exit 0
;;
ppc:Linux:*:*)
@@ -845,7 +881,7 @@ EOF
;;
a.out-i386-linux)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
exit 0 ;;
exit 0 ;;
coff-i386)
echo "${UNAME_MACHINE}-pc-linux-gnucoff"
exit 0 ;;
@@ -878,7 +914,7 @@ EOF
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
rm -f $dummy.c
rm -f $dummy.c && rmdir $tmpdir
test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
;;
@@ -917,13 +953,13 @@ EOF
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then
UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
(/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
&& UNAME_MACHINE=i686
(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
else
@@ -956,9 +992,12 @@ EOF
# "miniframe"
echo m68010-convergent-sysv
exit 0 ;;
mc68k:UNIX:SYSTEM5:3.51m)
echo m68k-convergent-sysv
exit 0 ;;
M68*:*:R3V[567]*:*)
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0)
3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
@@ -1049,6 +1088,9 @@ EOF
SX-5:SUPER-UX:*:*)
echo sx5-nec-superux${UNAME_RELEASE}
exit 0 ;;
SX-6:SUPER-UX:*:*)
echo sx6-nec-superux${UNAME_RELEASE}
exit 0 ;;
Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody${UNAME_RELEASE}
exit 0 ;;
@@ -1069,7 +1111,7 @@ EOF
*:QNX:*:4*)
echo i386-pc-qnx
exit 0 ;;
NSR-[GKLNPTVW]:NONSTOP_KERNEL:*:*)
NSR-[DGKLNPTVW]:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
exit 0 ;;
*:NonStop-UX:*:*)
@@ -1241,8 +1283,8 @@ main ()
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
rm -f $dummy.c $dummy && rmdir $tmpdir
# Apollos put the system type in the environment.

View File

@@ -50,9 +50,7 @@ if test "$GCC" = yes; then
else
case "$host_os" in
aix3* | aix4* | aix5*)
if test "$host_cpu" = ia64; then
wl='-Wl,'
fi
wl='-Wl,'
;;
hpux9* | hpux10* | hpux11*)
wl='-Wl,'
@@ -95,7 +93,7 @@ hardcode_direct=no
hardcode_minus_L=no
case "$host_os" in
cygwin* | mingw* | pw32* )
cygwin* | mingw* | pw32*)
# FIXME: the MSVC++ port hasn't been tested in a loooong time
# When not using gcc, we currently assume that we are using
# Microsoft Visual C++.
@@ -103,6 +101,9 @@ case "$host_os" in
with_gnu_ld=no
fi
;;
openbsd*)
with_gnu_ld=no
;;
esac
ld_shlibs=yes
@@ -171,38 +172,42 @@ else
fi
;;
aix4* | aix5*)
hardcode_libdir_separator=':'
if test "$GCC" = yes; then
collect2name=`${CC} -print-prog-name=collect2`
if test -f "$collect2name" && \
strings "$collect2name" | grep resolve_lib_name >/dev/null
then
# We have reworked collect2
hardcode_direct=yes
else
# We have old collect2
hardcode_direct=unsupported
hardcode_minus_L=yes
hardcode_libdir_flag_spec='-L$libdir'
hardcode_libdir_separator=
fi
else
hardcode_direct=yes
fi
if test "$host_cpu" = ia64; then
# On IA64, the linker does run time linking by default, so we don't
# have to do anything special.
aix_use_runtimelinking=no
else
# Test if we are trying to use run time linking, or normal AIX style linking.
# If -brtl is somewhere in LDFLAGS, we need to do run time linking.
aix_use_runtimelinking=no
for ld_flag in $LDFLAGS; do
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl" ); then
aix_use_runtimelinking=yes
break
# Test if we are trying to use run time linking or normal
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
# need to do runtime linking.
case $host_os in aix4.[23]|aix4.[23].*|aix5*)
for ld_flag in $LDFLAGS; do
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
aix_use_runtimelinking=yes
break
fi
done
esac
fi
hardcode_direct=yes
hardcode_libdir_separator=':'
if test "$GCC" = yes; then
case $host_os in aix4.[012]|aix4.[012].*)
collect2name=`${CC} -print-prog-name=collect2`
if test -f "$collect2name" && \
strings "$collect2name" | grep resolve_lib_name >/dev/null
then
# We have reworked collect2
hardcode_direct=yes
else
# We have old collect2
hardcode_direct=unsupported
hardcode_minus_L=yes
hardcode_libdir_flag_spec='-L$libdir'
hardcode_libdir_separator=
fi
done
esac
fi
if test "$aix_use_runtimelinking" = yes; then
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
@@ -267,8 +272,19 @@ else
hardcode_libdir_separator=:
;;
openbsd*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
else
case "$host_os" in
openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
hardcode_libdir_flag_spec='-R$libdir'
;;
*)
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
esac
fi
;;
os2*)
hardcode_libdir_flag_spec='-L$libdir'

121
config/config.sub vendored
View File

@@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002 Free Software Foundation, Inc.
timestamp='2002-03-07'
timestamp='2002-09-05'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@@ -118,7 +118,7 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-* | rtmk-nova*)
nto-qnx* | linux-gnu* | freebsd*-gnu* | storm-chaos* | os2-emx* | windows32-* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
@@ -229,24 +229,34 @@ case $basic_machine in
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
| c4x | clipper \
| d10v | d30v | dsp16xx \
| fr30 \
| clipper \
| d10v | d30v | dlx | dsp16xx \
| fr30 | frv \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \
| ip2k \
| m32r | m68000 | m68k | m88k | mcore \
| mips | mips16 | mips64 | mips64el | mips64orion | mips64orionel \
| mips64vr4100 | mips64vr4100el | mips64vr4300 \
| mips64vr4300el | mips64vr5000 | mips64vr5000el \
| mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \
| mipsisa32 | mipsisa64 \
| mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \
| mips64 | mips64el \
| mips64vr | mips64vrel \
| mips64orion | mips64orionel \
| mips64vr4100 | mips64vr4100el \
| mips64vr4300 | mips64vr4300el \
| mips64vr5000 | mips64vr5000el \
| mipsisa32 | mipsisa32el \
| mipsisa64 | mipsisa64el \
| mipsisa64sb1 | mipsisa64sb1el \
| mipsisa64sr71k | mipsisa64sr71kel \
| mipstx39 | mipstx39el \
| mn10200 | mn10300 \
| ns16k | ns32k \
| openrisc | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
| sh | sh[34] | sh[34]eb | shbe | shle | sh64 \
| sh | sh[1234] | sh3e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
| strongarm \
| tahoe | thumb | tic80 | tron \
@@ -281,34 +291,45 @@ case $basic_machine in
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
| arm-* | armbe-* | armle-* | armv*-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* \
| bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c54x-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* \
| clipper-* | cydra-* \
| d10v-* | d30v-* \
| d10v-* | d30v-* | dlx-* \
| elxsi-* \
| f30[01]-* | f700-* | fr30-* | fx80-* \
| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* \
| m32r-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | mcore-* \
| mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \
| mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \
| mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \
| mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
| mips16-* \
| mips64-* | mips64el-* \
| mips64vr-* | mips64vrel-* \
| mips64orion-* | mips64orionel-* \
| mips64vr4100-* | mips64vr4100el-* \
| mips64vr4300-* | mips64vr4300el-* \
| mips64vr5000-* | mips64vr5000el-* \
| mipsisa32-* | mipsisa32el-* \
| mipsisa64-* | mipsisa64el-* \
| mipsisa64sb1-* | mipsisa64sb1el-* \
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
| mipstx39 | mipstx39el \
| none-* | np1-* | ns16k-* | ns32k-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* \
| sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* | sh64-* \
| sh-* | sh[1234]-* | sh3e-* | sh[34]eb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
| tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
| tahoe-* | thumb-* | tic30-* | tic4x-* | tic54x-* | tic80-* | tron-* \
| v850-* | v850e-* | vax-* \
| we32k-* \
| x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
@@ -728,13 +749,13 @@ case $basic_machine in
pbb)
basic_machine=m68k-tti
;;
pc532 | pc532-*)
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
pentium | p5 | k5 | k6 | nexgen | viac3)
basic_machine=i586-pc
;;
pentiumpro | p6 | 6x86 | athlon)
pentiumpro | p6 | 6x86 | athlon | athlon_*)
basic_machine=i686-pc
;;
pentiumii | pentium2)
@@ -755,22 +776,22 @@ case $basic_machine in
power) basic_machine=power-ibm
;;
ppc) basic_machine=powerpc-unknown
;;
;;
ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppcle | powerpclittle | ppc-le | powerpc-little)
basic_machine=powerpcle-unknown
;;
;;
ppcle-* | powerpclittle-*)
basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64) basic_machine=powerpc64-unknown
;;
;;
ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64le | powerpc64little | ppc64-le | powerpc64-little)
basic_machine=powerpc64le-unknown
;;
;;
ppc64le-* | powerpc64little-*)
basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
@@ -801,6 +822,12 @@ case $basic_machine in
basic_machine=a29k-amd
os=-udi
;;
sb1)
basic_machine=mipsisa64sb1-unknown
;;
sb1el)
basic_machine=mipsisa64sb1el-unknown
;;
sequent)
basic_machine=i386-sequent
;;
@@ -866,7 +893,7 @@ case $basic_machine in
sun386 | sun386i | roadrunner)
basic_machine=i386-sun
;;
sv1)
sv1)
basic_machine=sv1-cray
os=-unicos
;;
@@ -886,6 +913,10 @@ case $basic_machine in
basic_machine=t90-cray
os=-unicos
;;
tic4x | c4x*)
basic_machine=tic4x-unknown
os=-coff
;;
tic54x | c54x*)
basic_machine=tic54x-unknown
os=-coff
@@ -924,8 +955,8 @@ case $basic_machine in
os=-vms
;;
vpp*|vx|vx-*)
basic_machine=f301-fujitsu
;;
basic_machine=f301-fujitsu
;;
vxworks960)
basic_machine=i960-wrs
os=-vxworks
@@ -950,7 +981,7 @@ case $basic_machine in
basic_machine=i386-pc
os=-windows32-msvcrt
;;
xps | xps100)
xps | xps100)
basic_machine=xps100-honeywell
;;
ymp)
@@ -996,7 +1027,7 @@ case $basic_machine in
we32k)
basic_machine=we32k-att
;;
sh3 | sh4 | sh3eb | sh4eb)
sh3 | sh4 | sh3eb | sh4eb | sh[1234]le | sh3ele)
basic_machine=sh-unknown
;;
sh64)
@@ -1005,7 +1036,7 @@ case $basic_machine in
sparc | sparcv9 | sparcv9b)
basic_machine=sparc-sun
;;
cydra)
cydra)
basic_machine=cydra-cydrome
;;
orion)
@@ -1020,10 +1051,6 @@ case $basic_machine in
pmac | pmac-mpw)
basic_machine=powerpc-apple
;;
c4x*)
basic_machine=c4x-none
os=-coff
;;
*-unknown)
# Make sure to match an already-canonicalized machine name.
;;
@@ -1090,7 +1117,7 @@ case $os in
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova*)
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* | -powermax*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1155,7 +1182,7 @@ case $os in
os=-rtmk-nova
;;
-ns2 )
os=-nextstep2
os=-nextstep2
;;
-nsk*)
os=-nsk
@@ -1194,8 +1221,8 @@ case $os in
-xenix)
os=-xenix
;;
-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
os=-mint
-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
os=-mint
;;
-none)
;;
@@ -1232,7 +1259,7 @@ case $basic_machine in
pdp10-*)
os=-tops20
;;
pdp11-*)
pdp11-*)
os=-none
;;
*-dec | vax-*)
@@ -1325,19 +1352,19 @@ case $basic_machine in
*-next)
os=-nextstep3
;;
*-gould)
*-gould)
os=-sysv
;;
*-highlevel)
*-highlevel)
os=-bsd
;;
*-encore)
os=-bsd
;;
*-sgi)
*-sgi)
os=-irix
;;
*-siemens)
*-siemens)
os=-sysv4
;;
*-masscomp)
@@ -1409,7 +1436,7 @@ case $basic_machine in
-ptx*)
vendor=sequent
;;
-vxsim* | -vxworks*)
-vxsim* | -vxworks* | -windiss*)
vendor=wrs
;;
-aux*)

View File

@@ -207,18 +207,22 @@ aix)
;;
tru64)
# The Tru64 AIX compiler uses -MD to generate dependencies as a side
# The Tru64 compiler uses -MD to generate dependencies as a side
# effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
# dependencies in `foo.d' instead, so we check for that too.
# Subdirectories are respected.
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
test "x$dir" = "x$object" && dir=
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
base=`echo "$object" | sed -e 's/\.o$/.d/' -e 's/\.lo$/.d/'`
tmpdepfile1="$base.o.d"
tmpdepfile2="$base.d"
if test "$libtool" = yes; then
tmpdepfile1="$dir.libs/$base.lo.d"
tmpdepfile2="$dir.libs/$base.d"
"$@" -Wc,-MD
else
tmpdepfile1="$dir$base.o.d"
tmpdepfile2="$dir$base.d"
"$@" -MD
fi
@@ -250,34 +254,40 @@ tru64)
dashmstdout)
# Important note: in order to support this mode, a compiler *must*
# always write the proprocessed file to stdout, regardless of -o,
# because we must use -o when running libtool.
test -z "$dashmflag" && dashmflag=-M
( IFS=" "
case " $* " in
*" --mode=compile "*) # this is libtool, let us make it quiet
for arg
do # cycle over the arguments
case "$arg" in
"--mode=compile")
# insert --quiet before "--mode=compile"
set fnord "$@" --quiet
shift # fnord
;;
esac
set fnord "$@" "$arg"
shift # fnord
shift # "$arg"
done
# always write the proprocessed file to stdout, regardless of -o.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test $1 != '--mode=compile'; do
shift
done
shift
fi
# Remove `-o $object'. We will use -o /dev/null later,
# however we can't do the remplacement now because
# `-o $object' might simply not be used
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
"$@" $dashmflag | sed 's:^[^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
) &
proc=$!
"$@"
stat=$?
wait "$proc"
if test "$stat" != 0; then exit $stat; fi
done
test -z "$dashmflag" && dashmflag=-M
"$@" -o /dev/null $dashmflag | sed 's:^[^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
tr ' ' '
@@ -295,36 +305,31 @@ dashXmstdout)
;;
makedepend)
"$@" || exit $?
# X makedepend
(
shift
cleared=no
for arg in "$@"; do
case $cleared in no)
set ""; shift
cleared=yes
esac
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift;;
-*)
;;
*)
set fnord "$@" "$arg"; shift;;
esac
done
obj_suffix="`echo $object | sed 's/^.*\././'`"
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} 2>/dev/null -o"$obj_suffix" -f"$tmpdepfile" "$@"
) &
proc=$!
"$@"
stat=$?
wait "$proc"
if test "$stat" != 0; then exit $stat; fi
shift
cleared=no
for arg in "$@"; do
case $cleared in
no)
set ""; shift
cleared=yes ;;
esac
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift ;;
-*)
;;
*)
set fnord "$@" "$arg"; shift ;;
esac
done
obj_suffix="`echo $object | sed 's/^.*\././'`"
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
tail +3 "$tmpdepfile" | tr ' ' '
sed '1,2d' "$tmpdepfile" | tr ' ' '
' | \
## Some versions of the HPUX 10.20 sed can't process this invocation
## correctly. Breaking it into two sed invocations is a workaround.
@@ -334,35 +339,39 @@ makedepend)
cpp)
# Important note: in order to support this mode, a compiler *must*
# always write the proprocessed file to stdout, regardless of -o,
# because we must use -o when running libtool.
( IFS=" "
case " $* " in
*" --mode=compile "*)
for arg
do # cycle over the arguments
case $arg in
"--mode=compile")
# insert --quiet before "--mode=compile"
set fnord "$@" --quiet
shift # fnord
;;
esac
set fnord "$@" "$arg"
shift # fnord
shift # "$arg"
done
# always write the proprocessed file to stdout.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test $1 != '--mode=compile'; do
shift
done
shift
fi
# Remove `-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
"$@" -E |
done
"$@" -E |
sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
sed '$ s: \\$::' > "$tmpdepfile"
) &
proc=$!
"$@"
stat=$?
wait "$proc"
if test "$stat" != 0; then exit $stat; fi
rm -f "$depfile"
echo "$object : \\" > "$depfile"
cat < "$tmpdepfile" >> "$depfile"
@@ -374,47 +383,25 @@ msvisualcpp)
# Important note: in order to support this mode, a compiler *must*
# always write the proprocessed file to stdout, regardless of -o,
# because we must use -o when running libtool.
( IFS=" "
case " $* " in
*" --mode=compile "*)
for arg
do # cycle over the arguments
case $arg in
"--mode=compile")
# insert --quiet before "--mode=compile"
set fnord "$@" --quiet
shift # fnord
;;
esac
set fnord "$@" "$arg"
shift # fnord
shift # "$arg"
done
;;
esac
for arg
do
case "$arg" in
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
"$@" || exit $?
IFS=" "
for arg
do
case "$arg" in
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
set fnord "$@"
shift
shift
;;
*)
*)
set fnord "$@" "$arg"
shift
shift
;;
esac
done
"$@" -E |
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
) &
proc=$!
"$@"
stat=$?
wait "$proc"
if test "$stat" != 0; then exit $stat; fi
esac
done
"$@" -E |
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
. "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"

View File

@@ -1,6 +1,6 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
# Copyright 1996, 1997, 1999, 2000 Free Software Foundation, Inc.
# Copyright (C) 1996, 1997, 1999, 2000, 2002 Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
@@ -293,23 +293,23 @@ WARNING: \`$1' is missing on your system. You should only need it if
# Look for gnutar/gtar before invocation to avoid ugly error
# messages.
if (gnutar --version > /dev/null 2>&1); then
gnutar ${1+"$@"} && exit 0
gnutar "$@" && exit 0
fi
if (gtar --version > /dev/null 2>&1); then
gtar ${1+"$@"} && exit 0
gtar "$@" && exit 0
fi
firstarg="$1"
if shift; then
case "$firstarg" in
*o*)
firstarg=`echo "$firstarg" | sed s/o//`
tar "$firstarg" ${1+"$@"} && exit 0
tar "$firstarg" "$@" && exit 0
;;
esac
case "$firstarg" in
*h*)
firstarg=`echo "$firstarg" | sed s/h//`
tar "$firstarg" ${1+"$@"} && exit 0
tar "$firstarg" "$@" && exit 0
;;
esac
fi

View File

@@ -4,8 +4,6 @@
# Created: 1993-05-16
# Public domain
# $Id: mkinstalldirs,v 1.1 2002/02/16 14:23:56 meyering Exp $
errstatus=0
dirmode=""
@@ -14,18 +12,29 @@ Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
# process command line arguments
while test $# -gt 0 ; do
case "${1}" in
-h | --help | --h* ) # -h for help
echo "${usage}" 1>&2; exit 0 ;;
-m ) # -m PERM arg
shift
test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
dirmode="${1}"
shift ;;
-- ) shift; break ;; # stop option processing
-* ) echo "${usage}" 1>&2; exit 1 ;; # unknown option
* ) break ;; # first non-opt arg
esac
case $1 in
-h | --help | --h*) # -h for help
echo "$usage" 1>&2
exit 0
;;
-m) # -m PERM arg
shift
test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
dirmode=$1
shift
;;
--) # stop option processing
shift
break
;;
-*) # unknown option
echo "$usage" 1>&2
exit 1
;;
*) # first non-opt arg
break
;;
esac
done
for file
@@ -38,64 +47,65 @@ do
done
case $# in
0) exit 0 ;;
0) exit 0 ;;
esac
case $dirmode in
'')
if mkdir -p -- . 2>/dev/null; then
echo "mkdir -p -- $*"
exec mkdir -p -- "$@"
fi ;;
*)
if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
echo "mkdir -m $dirmode -p -- $*"
exec mkdir -m "$dirmode" -p -- "$@"
fi ;;
'')
if mkdir -p -- . 2>/dev/null; then
echo "mkdir -p -- $*"
exec mkdir -p -- "$@"
fi
;;
*)
if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
echo "mkdir -m $dirmode -p -- $*"
exec mkdir -m "$dirmode" -p -- "$@"
fi
;;
esac
for file
do
set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
shift
set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
shift
pathcomp=
for d
do
pathcomp="$pathcomp$d"
case "$pathcomp" in
-* ) pathcomp=./$pathcomp ;;
esac
pathcomp=
for d
do
pathcomp="$pathcomp$d"
case $pathcomp in
-*) pathcomp=./$pathcomp ;;
esac
if test ! -d "$pathcomp"; then
echo "mkdir $pathcomp"
if test ! -d "$pathcomp"; then
echo "mkdir $pathcomp"
mkdir "$pathcomp" || lasterr=$?
mkdir "$pathcomp" || lasterr=$?
if test ! -d "$pathcomp"; then
errstatus=$lasterr
else
if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp"
if test ! -d "$pathcomp"; then
errstatus=$lasterr
else
if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp"
lasterr=""
chmod "$dirmode" "$pathcomp" || lasterr=$?
lasterr=""
chmod "$dirmode" "$pathcomp" || lasterr=$?
if test ! -z "$lasterr"; then
errstatus=$lasterr
fi
fi
fi
fi
if test ! -z "$lasterr"; then
errstatus=$lasterr
fi
fi
fi
fi
pathcomp="$pathcomp/"
done
pathcomp="$pathcomp/"
done
done
exit $errstatus
# Local Variables:
# mode: shell-script
# sh-indentation: 3
# sh-indentation: 2
# End:
# mkinstalldirs ends here

View File

@@ -3,10 +3,10 @@
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
\def\texinfoversion{2002-03-26.08}
\def\texinfoversion{2002-10-01.17}
%
% Copyright (C) 1985, 86, 88, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
% 2000, 01, 02 Free Software Foundation, Inc.
% Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
% 1996, 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
%
% This texinfo.tex file is free software; you can redistribute it and/or
% modify it under the terms of the GNU General Public License as
@@ -36,12 +36,11 @@
% (and all CTAN mirrors, see http://www.ctan.org),
% and /home/gd/gnu/doc/texinfo.tex on the GNU machines.
%
% The GNU Texinfo home page is http://www.gnu.org/software/texinfo.
%
% The texinfo.tex in any given Texinfo distribution could well be out
% of date, so if that's what you're using, please check.
%
% Texinfo has a small home page at http://texinfo.org/ and also
% http://www.gnu.org/software/texinfo.
%
% Send bug reports to bug-texinfo@gnu.org. Please include including a
% complete document in each bug report with which we can reproduce the
% problem. Patches are, of course, greatly appreciated.
@@ -987,40 +986,39 @@ where each line of input produces a line of output.}
\openin 1 \jobname.toc
\ifeof 1\else\begingroup
\closein 1
\indexnofonts
\def\tt{}
\let\_ = \normalunderscore
% Thanh's hack / proper braces in bookmarks
\edef\mylbrace{\iftrue \string{\else}\fi}\let\{=\mylbrace
\edef\myrbrace{\iffalse{\else\string}\fi}\let\}=\myrbrace
%
\def\chapentry ##1##2##3{}
\let\appendixentry = \chapentry
\def\unnumbchapentry ##1##2{}
\def\secentry ##1##2##3##4{\advancenumber{chap##2}}
\def\unnumbsecentry ##1##2##3{\advancenumber{chap##2}}
\def\subsecentry ##1##2##3##4##5{\advancenumber{sec##2.##3}}
\def\unnumbsubsecentry ##1##2##3##4{\advancenumber{sec##2.##3}}
\def\subsubsecentry ##1##2##3##4##5##6{\advancenumber{subsec##2.##3.##4}}
\def\unnumbsubsubsecentry ##1##2##3##4##5{\advancenumber{subsec##2.##3.##4}}
\let\appendixentry = \chapentry
\let\unnumbchapentry = \chapentry
\let\unnumbsecentry = \secentry
\let\unnumbsubsecentry = \subsecentry
\let\unnumbsubsubsecentry = \subsubsecentry
\input \jobname.toc
\def\chapentry ##1##2##3{%
\pdfoutline goto name{\pdfmkpgn{##3}}count-\expnumber{chap##2}{##1}}
\let\appendixentry = \chapentry
\def\unnumbchapentry ##1##2{%
\pdfoutline goto name{\pdfmkpgn{##2}}{##1}}
\def\secentry ##1##2##3##4{%
\pdfoutline goto name{\pdfmkpgn{##4}}count-\expnumber{sec##2.##3}{##1}}
\def\unnumbsecentry ##1##2##3{%
\pdfoutline goto name{\pdfmkpgn{##3}}{##1}}
\def\subsecentry ##1##2##3##4##5{%
\pdfoutline goto name{\pdfmkpgn{##5}}count-\expnumber{subsec##2.##3.##4}{##1}}
\def\unnumbsubsecentry ##1##2##3##4{%
\pdfoutline goto name{\pdfmkpgn{##4}}{##1}}
\def\subsubsecentry ##1##2##3##4##5##6{%
\pdfoutline goto name{\pdfmkpgn{##6}}{##1}}
\def\unnumbsubsubsecentry ##1##2##3##4##5{%
\pdfoutline goto name{\pdfmkpgn{##5}}{##1}}
\let\appendixentry = \chapentry
\let\unnumbchapentry = \chapentry
\let\unnumbsecentry = \secentry
\let\unnumbsubsecentry = \subsecentry
\let\unnumbsubsubsecentry = \subsubsecentry
%
% Make special characters normal for writing to the pdf file.
%
\indexnofonts
\let\tt=\relax
\turnoffactive
\input \jobname.toc
\endgroup\fi
}}
@@ -1170,7 +1168,7 @@ where each line of input produces a line of output.}
\newcount\mainmagstep
\ifx\bigger\relax
% not really supported.
\let\mainmagstep=\magstep1
\mainmagstep=\magstep1
\setfont\textrm\rmshape{12}{1000}
\setfont\texttt\ttshape{12}{1000}
\else
@@ -2413,19 +2411,20 @@ width0pt\relax} \fi
\let\item = \relax
}
% Ignore @ignore, @ifhtml, @ifinfo, @ifplaintext, @ifnottex, @html, @menu,
% @direntry, and @documentdescription.
% Ignore @ignore, @ifhtml, @ifinfo, and the like.
%
\def\ignore{\doignore{ignore}}
\def\direntry{\doignore{direntry}}
\def\documentdescriptionword{documentdescription}
\def\documentdescription{\doignore{documentdescription}}
\def\html{\doignore{html}}
\def\ifhtml{\doignore{ifhtml}}
\def\ifinfo{\doignore{ifinfo}}
\def\ifplaintext{\doignore{ifplaintext}}
\def\ifnottex{\doignore{ifnottex}}
\def\html{\doignore{html}}
\def\ifplaintext{\doignore{ifplaintext}}
\def\ifxml{\doignore{ifxml}}
\def\ignore{\doignore{ignore}}
\def\menu{\doignore{menu}}
\def\direntry{\doignore{direntry}}
\def\documentdescription{\doignore{documentdescription}}
\def\documentdescriptionword{documentdescription}
\def\xml{\doignore{xml}}
% @dircategory CATEGORY -- specify a category of the dir file
% which this file should belong to. Ignore this in TeX.
@@ -2507,7 +2506,7 @@ width0pt\relax} \fi
% We must actually expand the ignored text to look for the @end
% command, so that nested ignore constructs work. Thus, we put the
% text into a \vbox and then do nothing with the result. To minimize
% the change of memory overflow, we follow the approach outlined on
% the chance of memory overflow, we follow the approach outlined on
% page 401 of the TeXbook: make the current font be a dummy font.
%
\setbox0 = \vbox\bgroup
@@ -2559,7 +2558,7 @@ width0pt\relax} \fi
% Do minimal line-breaking.
\pretolerance = 10000
%
% Do not execute instructions in @tex
% Do not execute instructions in @tex.
\def\tex{\doignore{tex}}%
% Do not execute macro definitions.
% `c' is a comment character, so the word `macro' will get cut off.
@@ -3597,7 +3596,7 @@ width0pt\relax} \fi
\unnumbchapmacro {#1}%
\gdef\thischapter{#1}\gdef\thissection{#1}%
\toks0 = {#1}%
\edef\temp{\noexpand\writetocentry{\realbackslash unnumbchapentry{\the\toks0}}}%
\edef\temp{\noexpand\writetocentry{\realbackslash unnumbchapentry{\the\toks0}{\the\chapno}}}%
\temp
\unnumbnoderef
\global\let\section = \unnumberedsec
@@ -3639,7 +3638,7 @@ width0pt\relax} \fi
\plainsecheading {#1}\gdef\thissection{#1}%
\toks0 = {#1}%
\edef\temp{\noexpand\writetocentry{\realbackslash unnumbsecentry%
{\the\toks0}{\the\chapno}}}%
{\the\toks0}{\the\chapno}{\the\secno}}}%
\temp
\unnumbnoderef
\nobreak
@@ -3678,7 +3677,7 @@ width0pt\relax} \fi
\plainsubsecheading {#1}\gdef\thissection{#1}%
\toks0 = {#1}%
\edef\temp{\noexpand\writetocentry{\realbackslash unnumbsubsecentry%
{\the\toks0}{\the\chapno}{\the\secno}}}%
{\the\toks0}{\the\chapno}{\the\secno}{\the\subsecno}}}%
\temp
\unnumbnoderef
\nobreak
@@ -3719,7 +3718,7 @@ width0pt\relax} \fi
\plainsubsubsecheading {#1}\gdef\thissection{#1}%
\toks0 = {#1}%
\edef\temp{\noexpand\writetocentry{\realbackslash unnumbsubsubsecentry%
{\the\toks0}{\the\chapno}{\the\secno}{\the\subsecno}}}%
{\the\toks0}{\the\chapno}{\the\secno}{\the\subsecno}{\the\subsubsecno}}}%
\temp
\unnumbnoderef
\nobreak
@@ -4012,11 +4011,11 @@ width0pt\relax} \fi
\hyphenpenalty = 10000
\advance\baselineskip by 1pt % Open it up a little.
\def\secentry ##1##2##3##4{}
\def\unnumbsecentry ##1##2##3{}
\def\subsecentry ##1##2##3##4##5{}
\def\unnumbsubsecentry ##1##2##3##4{}
\def\subsubsecentry ##1##2##3##4##5##6{}
\def\unnumbsubsubsecentry ##1##2##3##4##5{}
\let\unnumbsecentry = \secentry
\let\unnumbsubsecentry = \subsecentry
\let\unnumbsubsubsecentry = \subsubsecentry
\openin 1 \jobname.toc
\ifeof 1 \else
\closein 1
@@ -4073,21 +4072,21 @@ width0pt\relax} \fi
}
% Unnumbered chapters.
\def\unnumbchapentry#1#2{\dochapentry{#1}{#2}}
\def\shortunnumberedentry#1#2{\tocentry{#1}{\doshortpageno\bgroup#2\egroup}}
\def\unnumbchapentry#1#2#3{\dochapentry{#1}{#3}}
\def\shortunnumberedentry#1#2#3{\tocentry{#1}{\doshortpageno\bgroup#3\egroup}}
% Sections.
\def\secentry#1#2#3#4{\dosecentry{#2.#3\labelspace#1}{#4}}
\def\unnumbsecentry#1#2#3{\dosecentry{#1}{#3}}
\def\unnumbsecentry#1#2#3#4{\dosecentry{#1}{#4}}
% Subsections.
\def\subsecentry#1#2#3#4#5{\dosubsecentry{#2.#3.#4\labelspace#1}{#5}}
\def\unnumbsubsecentry#1#2#3#4{\dosubsecentry{#1}{#4}}
\def\unnumbsubsecentry#1#2#3#4#5{\dosubsecentry{#1}{#5}}
% And subsubsections.
\def\subsubsecentry#1#2#3#4#5#6{%
\dosubsubsecentry{#2.#3.#4.#5\labelspace#1}{#6}}
\def\unnumbsubsubsecentry#1#2#3#4#5{\dosubsubsecentry{#1}{#5}}
\def\unnumbsubsubsecentry#1#2#3#4#5#6{\dosubsubsecentry{#1}{#6}}
% This parameter controls the indentation of the various levels.
\newdimen\tocindent \tocindent = 3pc
@@ -4620,26 +4619,65 @@ width0pt\relax} \fi
}
% @copying ... @end copying.
% Save the text away for @insertcopying later.
% Save the text away for @insertcopying later. Many commands won't be
% allowed in this context, but that's ok.
%
% We save the uninterpreted tokens, rather than creating a box.
% Saving the text in a box would be much easier, but then all the
% typesetting commands (@smallbook, font changes, etc.) have to be done
% beforehand -- and a) we want @copying to be done first in the source
% file; b) letting users define the frontmatter in as flexible order as
% possible is very desirable.
%
\newbox\copyingbox
%
\def\copying{\begingroup
\parindent = 0pt % looks wrong on title page
\def\Ecopying{\egroup\endgroup}%
\global\setbox\copyingbox = \vbox\bgroup
% Define a command to swallow text until we reach `@end copying'.
% \ is the escape char in this texinfo.tex file, so it is the
% delimiter for the command; @ will be the escape char when we read
% it, but that doesn't matter.
\long\def\docopying##1\end copying{\gdef\copyingtext{##1}\enddocopying}%
%
% We must preserve ^^M's in the input file; see \insertcopying below.
\catcode`\^^M = \active
\docopying
}
% @insertcopying.
%
\def\insertcopying{\unvcopy\copyingbox}
% What we do to finish off the copying text.
%
\def\enddocopying{\endgroup\ignorespaces}
% @insertcopying. Here we must play games with ^^M's. On the one hand,
% we need them to delimit commands such as `@end quotation', so they
% must be active. On the other hand, we certainly don't want every
% end-of-line to be a \par, as would happen with the normal active
% definition of ^^M. On the third hand, two ^^M's in a row should still
% generate a \par.
%
% Our approach is to make ^^M insert a space and a penalty1 normally;
% then it can also check if \lastpenalty=1. If it does, then manually
% do \par.
%
% Seems pretty fragile, but for the limited use of getting the copying
% text (which should be quite simple) inserted, we can hope it's ok.
% %
{\catcode`\^^M=\active %
\gdef\insertcopying{\begingroup %
\parindent = 0pt % looks wrong on title page
\def^^M{%
\ifnum \lastpenalty=1 %
\par %
\else %
\space \penalty 1 %
\fi %
}%
\copyingtext %
\endgroup}%
}
\message{defuns,}
% @defun etc.
% Allow user to change definition object font (\df) internally
\def\setdeffont #1 {\csname DEF#1\endcsname}
\def\setdeffont#1 {\csname DEF#1\endcsname}
\newskip\defbodyindent \defbodyindent=.4in
\newskip\defargsindent \defargsindent=50pt
@@ -4730,56 +4768,60 @@ width0pt\relax} \fi
{\df #1}\enskip % Generate function name
}
% Actually process the body of a definition
% #1 should be the terminating control sequence, such as \Edefun.
% #2 should be the "another name" control sequence, such as \defunx.
% #3 should be the control sequence that actually processes the header,
% such as \defunheader.
\def\defparsebody #1#2#3{\begingroup\inENV% Environment for definitionbody
\medbreak %
% Define the end token that this defining construct specifies
% so that it will exit this group.
\def#1{\endgraf\endgroup\medbreak}%
\def#2{\begingroup\obeylines\activeparens\spacesplit#3}%
\parindent=0in
\advance\leftskip by \defbodyindent
\exdentamount=\defbodyindent
\begingroup %
\catcode 61=\active % 61 is `='
\obeylines\activeparens\spacesplit#3}
% Common pieces to start any @def...
% #1 is the \E... control sequence to end the definition (which we define).
% #2 is the \...x control sequence for consecutive fns (which we define).
% #3 is the control sequence to call to resume processing.
% #4, delimited by the space, is the class name.
%
\def\defmethparsebody#1#2#3#4 {\begingroup\inENV %
\medbreak %
% Define the end token that this defining construct specifies
% so that it will exit this group.
\def#1{\endgraf\endgroup\medbreak}%
\def#2##1 {\begingroup\obeylines\activeparens\spacesplit{#3{##1}}}%
\parindent=0in
\advance\leftskip by \defbodyindent
\exdentamount=\defbodyindent
\begingroup\obeylines\activeparens\spacesplit{#3{#4}}}
% Used for @deftypemethod and @deftypeivar.
% #1 is the \E... control sequence to end the definition (which we define).
% #2 is the \...x control sequence for consecutive fns (which we define).
% #3 is the control sequence to call to resume processing.
% #4, delimited by a space, is the class name.
% #5 is the method's return type.
%
\def\deftypemethparsebody#1#2#3#4 #5 {\begingroup\inENV
% #2 is the \...x control sequence (which our caller defines).
% #3 is the control sequence to process the header, such as \defunheader.
%
\def\parsebodycommon#1#2#3{%
\begingroup\inENV
% If there are two @def commands in a row, we'll have a \nobreak,
% which is there to keep the function description together with its
% header. But if there's nothing but headers, we want to allow a
% break after all.
\ifnum\lastpenalty = 10000 \penalty0 \fi
\medbreak
%
% Define the \E... end token that this defining construct specifies
% so that it will exit this group.
\def#1{\endgraf\endgroup\medbreak}%
\def#2##1 ##2 {\begingroup\obeylines\activeparens\spacesplit{#3{##1}{##2}}}%
%
\parindent=0in
\advance\leftskip by \defbodyindent
\exdentamount=\defbodyindent
\begingroup\obeylines\activeparens\spacesplit{#3{#4}{#5}}}
}
% Process body of @defun, @deffn, @defmac, etc.
%
\def\defparsebody#1#2#3{%
\parsebodycommon{#1}{#2}{#3}%
\def#2{\begingroup\obeylines\activeparens\spacesplit#3}%
\catcode61=\active % 61 is `='
\begingroup\obeylines\activeparens
\spacesplit#3%
}
% #1, #2, #3 are the common arguments (see \defparsebody).
% #4, delimited by the space, is the class name.
%
\def\defmethparsebody#1#2#3#4 {%
\parsebodycommon{#1}{#2}{#3}%
\def#2##1 {\begingroup\obeylines\activeparens\spacesplit{#3{##1}}}%
\begingroup\obeylines\activeparens
\spacesplit{#3{#4}}%
}
% Used for @deftypemethod and @deftypeivar.
% #1, #2, #3 are the common arguments (see \defparsebody).
% #4, delimited by a space, is the class name.
% #5 is the method's return type.
%
\def\deftypemethparsebody#1#2#3#4 #5 {%
\parsebodycommon{#1}{#2}{#3}%
\def#2##1 ##2 {\begingroup\obeylines\activeparens\spacesplit{#3{##1}{##2}}}%
\begingroup\obeylines\activeparens
\spacesplit{#3{#4}{#5}}%
}
% Used for @deftypeop. The change from \deftypemethparsebody is an
% extra argument at the beginning which is the `category', instead of it
@@ -4788,64 +4830,49 @@ width0pt\relax} \fi
% input at hand. Thus also need a control sequence (passed as #5) for
% the \E... definition to assign the category name to.
%
\def\deftypeopparsebody#1#2#3#4#5 #6 {\begingroup\inENV
\medbreak
\def#1{\endgraf\endgroup\medbreak}%
\def\deftypeopparsebody#1#2#3#4#5 #6 {%
\parsebodycommon{#1}{#2}{#3}%
\def#2##1 ##2 ##3 {%
\def#4{##1}%
\begingroup\obeylines\activeparens\spacesplit{#3{##2}{##3}}}%
\parindent=0in
\advance\leftskip by \defbodyindent
\exdentamount=\defbodyindent
\begingroup\obeylines\activeparens\spacesplit{#3{#5}{#6}}}
\begingroup\obeylines\activeparens
\spacesplit{#3{#5}{#6}}%
}
\def\defopparsebody #1#2#3#4#5 {\begingroup\inENV %
\medbreak %
% Define the end token that this defining construct specifies
% so that it will exit this group.
\def#1{\endgraf\endgroup\medbreak}%
\def#2##1 ##2 {\def#4{##1}%
\begingroup\obeylines\activeparens\spacesplit{#3{##2}}}%
\parindent=0in
\advance\leftskip by \defbodyindent
\exdentamount=\defbodyindent
\begingroup\obeylines\activeparens\spacesplit{#3{#5}}}
% For @defop.
\def\defopparsebody #1#2#3#4#5 {%
\parsebodycommon{#1}{#2}{#3}%
\def#2##1 ##2 {\def#4{##1}%
\begingroup\obeylines\activeparens\spacesplit{#3{##2}}}%
\begingroup\obeylines\activeparens
\spacesplit{#3{#5}}%
}
% These parsing functions are similar to the preceding ones
% except that they do not make parens into active characters.
% These are used for "variables" since they have no arguments.
\def\defvarparsebody #1#2#3{\begingroup\inENV% Environment for definitionbody
\medbreak %
% Define the end token that this defining construct specifies
% so that it will exit this group.
\def#1{\endgraf\endgroup\medbreak}%
\def#2{\begingroup\obeylines\spacesplit#3}%
\parindent=0in
\advance\leftskip by \defbodyindent
\exdentamount=\defbodyindent
\begingroup %
\catcode 61=\active %
\obeylines\spacesplit#3}
% This is used for \def{tp,vr}parsebody. It could probably be used for
% some of the others, too, with some judicious conditionals.
%
\def\parsebodycommon#1#2#3{%
\begingroup\inENV %
\medbreak %
% Define the end token that this defining construct specifies
% so that it will exit this group.
\def#1{\endgraf\endgroup\medbreak}%
\def#2##1 {\begingroup\obeylines\spacesplit{#3{##1}}}%
\parindent=0in
\advance\leftskip by \defbodyindent
\exdentamount=\defbodyindent
\def\defvarparsebody #1#2#3{%
\parsebodycommon{#1}{#2}{#3}%
\def#2{\begingroup\obeylines\spacesplit#3}%
\catcode61=\active %
\begingroup\obeylines
\spacesplit#3%
}
% @defopvar.
\def\defopvarparsebody #1#2#3#4#5 {%
\parsebodycommon{#1}{#2}{#3}%
\def#2##1 ##2 {\def#4{##1}%
\begingroup\obeylines\spacesplit{#3{##2}}}%
\begingroup\obeylines
\spacesplit{#3{#5}}%
}
\def\defvrparsebody#1#2#3#4 {%
\parsebodycommon{#1}{#2}{#3}%
\def#2##1 {\begingroup\obeylines\spacesplit{#3{##1}}}%
\begingroup\obeylines
\spacesplit{#3{#4}}%
}
@@ -4860,6 +4887,8 @@ width0pt\relax} \fi
%
\def\deftpparsebody #1#2#3#4 {%
\parsebodycommon{#1}{#2}{#3}%
\def#2##1 {\begingroup\obeylines\spacesplit{#3{##1}}}%
\begingroup\obeylines
\spacesplit{\parsetpheaderline{#3{#4}}}\empty
}
@@ -4876,33 +4905,19 @@ width0pt\relax} \fi
#1{\removeemptybraces#2\relax}{#3}%
}%
\def\defopvarparsebody #1#2#3#4#5 {\begingroup\inENV %
\medbreak %
% Define the end token that this defining construct specifies
% so that it will exit this group.
\def#1{\endgraf\endgroup\medbreak}%
\def#2##1 ##2 {\def#4{##1}%
\begingroup\obeylines\spacesplit{#3{##2}}}%
\parindent=0in
\advance\leftskip by \defbodyindent
\exdentamount=\defbodyindent
\begingroup\obeylines\spacesplit{#3{#5}}}
% Split up #2 at the first space token.
% call #1 with two arguments:
% the first is all of #2 before the space token,
% the second is all of #2 after that space token.
% If #2 contains no space token, all of it is passed as the first arg
% and the second is passed as empty.
%
{\obeylines
\gdef\spacesplit#1#2^^M{\endgroup\spacesplitfoo{#1}#2 \relax\spacesplitfoo}%
\long\gdef\spacesplitfoo#1#2 #3#4\spacesplitfoo{%
\ifx\relax #3%
#1{#2}{}\else #1{#2}{#3#4}\fi}}
% So much for the things common to all kinds of definitions.
% Define @defun.
% First, define the processing that is wanted for arguments of \defun
@@ -6058,11 +6073,13 @@ should work if nowhere else does.}
}
% Parameters in order: 1) textheight; 2) textwidth; 3) voffset;
% 4) hoffset; 5) binding offset; 6) topskip. We also call
% \setleading{\textleading}, so the caller should define \textleading.
% The caller should also set \parskip.
% 4) hoffset; 5) binding offset; 6) topskip; 7) physical page height; 8)
% physical page width.
%
% We also call \setleading{\textleading}, so the caller should define
% \textleading. The caller should also set \parskip.
%
\def\internalpagesizes#1#2#3#4#5#6{%
\def\internalpagesizes#1#2#3#4#5#6#7#8{%
\voffset = #3\relax
\topskip = #6\relax
\splittopskip = \topskip
@@ -6081,6 +6098,11 @@ should work if nowhere else does.}
\normaloffset = #4\relax
\bindingoffset = #5\relax
%
\ifpdf
\pdfpageheight #7\relax
\pdfpagewidth #8\relax
\fi
%
\setleading{\textleading}
%
\parindent = \defaultparindent
@@ -6102,7 +6124,10 @@ should work if nowhere else does.}
\textleading = 13.2pt
%
% If page is nothing but text, make it come out even.
\internalpagesizes{46\baselineskip}{6in}{\voffset}{.25in}{\bindingoffset}{36pt}%
\internalpagesizes{46\baselineskip}{6in}%
{\voffset}{.25in}%
{\bindingoffset}{36pt}%
{11in}{8.5in}%
}}
% Use @smallbook to reset parameters for 7x9.5 (or so) format.
@@ -6110,7 +6135,10 @@ should work if nowhere else does.}
\parskip = 2pt plus 1pt
\textleading = 12pt
%
\internalpagesizes{7.5in}{5.in}{\voffset}{.25in}{\bindingoffset}{16pt}%
\internalpagesizes{7.5in}{5in}%
{\voffset}{.25in}%
{\bindingoffset}{16pt}%
{9.25in}{7in}%
%
\lispnarrowing = 0.3in
\tolerance = 700
@@ -6124,12 +6152,28 @@ should work if nowhere else does.}
% Use @afourpaper to print on European A4 paper.
\def\afourpaper{{\globaldefs = 1
\parskip = 3pt plus 2pt minus 1pt
\textleading = 12pt
\textleading = 13.2pt
%
\internalpagesizes{53\baselineskip}{160mm}{\voffset}{4mm}{\bindingoffset}{44pt}%
% Double-side printing via postscript on Laserjet 4050
% prints double-sided nicely when \bindingoffset=10mm and \hoffset=-6mm.
% To change the settings for a different printer or situation, adjust
% \normaloffset until the front-side and back-side texts align. Then
% do the same for \bindingoffset. You can set these for testing in
% your texinfo source file like this:
% @tex
% \global\normaloffset = -6mm
% \global\bindingoffset = 10mm
% @end tex
\internalpagesizes{51\baselineskip}{160mm}
{\voffset}{\hoffset}%
{\bindingoffset}{44pt}%
{297mm}{210mm}%
%
\tolerance = 700
\hfuzz = 1pt
\contentsrightmargin = 0pt
\deftypemargin = 0pt
\defbodyindent = 5mm
}}
% Use @afivepaper to print on European A5 paper.
@@ -6139,12 +6183,15 @@ should work if nowhere else does.}
\parskip = 2pt plus 1pt minus 0.1pt
\textleading = 12.5pt
%
\internalpagesizes{166mm}{120mm}{\voffset}{-8mm}{\bindingoffset}{8pt}%
\internalpagesizes{160mm}{120mm}%
{\voffset}{\hoffset}%
{\bindingoffset}{8pt}%
{210mm}{148mm}%
%
\lispnarrowing = 0.2in
\tolerance = 800
\hfuzz = 1.2pt
\contentsrightmargin = 0mm
\contentsrightmargin = 0pt
\deftypemargin = 0pt
\defbodyindent = 2mm
\tableindent = 12mm
@@ -6152,24 +6199,27 @@ should work if nowhere else does.}
\smallenvironments
}}
% A specific text layout, 24x15cm overall, intended for A4 paper. Top margin
% 29mm, hence bottom margin 28mm, nominal side margin 3cm.
% A specific text layout, 24x15cm overall, intended for A4 paper.
\def\afourlatex{{\globaldefs = 1
\textleading = 13.6pt
%
\afourpaper
\internalpagesizes{237mm}{150mm}{3.6mm}{3.6mm}{3mm}{7mm}%
\internalpagesizes{237mm}{150mm}%
{\voffset}{4.6mm}%
{\bindingoffset}{7mm}%
{297mm}{210mm}%
%
% Must explicitly reset to 0 because we call \afourpaper, apparently,
% although this does not entirely make sense.
% Must explicitly reset to 0 because we call \afourpaper.
\globaldefs = 0
}}
% Use @afourwide to print on European A4 paper in wide format.
\def\afourwide{%
% Use @afourwide to print on A4 paper in landscape format.
\def\afourwide{{\globaldefs = 1
\afourpaper
\internalpagesizes{6.5in}{9.5in}{\hoffset}{\normaloffset}{\bindingoffset}{7mm}%
}
\internalpagesizes{241mm}{165mm}%
{\voffset}{-2.95mm}%
{\bindingoffset}{7mm}%
{297mm}{210mm}%
\globaldefs = 0
}}
% @pagesizes TEXTHEIGHT[,TEXTWIDTH]
% Perhaps we should allow setting the margins, \topskip, \parskip,
@@ -6184,7 +6234,16 @@ should work if nowhere else does.}
\parskip = 3pt plus 2pt minus 1pt
\setleading{\textleading}%
%
\internalpagesizes{#1}{\hsize}{\voffset}{\normaloffset}{\bindingoffset}{44pt}%
\dimen0 = #1
\advance\dimen0 by \voffset
%
\dimen2 = \hsize
\advance\dimen2 by \normaloffset
%
\internalpagesizes{#1}{\hsize}%
{\voffset}{\normaloffset}%
{\bindingoffset}{44pt}%
{\dimen0}{\dimen2}%
}}
% Set default to letter.
@@ -6308,16 +6367,8 @@ should work if nowhere else does.}
@let+=@normalplus
@let$=@normaldollar}%$ font-lock fix
@def@normalturnoffactive{@let"=@normaldoublequote
@let\=@normalbackslash
@let~=@normaltilde
@let^=@normalcaret
@let_=@normalunderscore
@let|=@normalverticalbar
@let<=@normalless
@let>=@normalgreater
@let+=@normalplus
@let$=@normaldollar}%$ font-lock fix
% Same as @turnoffactive except for \.
@def@normalturnoffactive{@turnoffactive @let\=@normalbackslash}
% Make _ and + \other characters, temporarily.
% This is canceled by @fixbackslash.

38846
configure vendored Executable file

File diff suppressed because it is too large Load Diff

302
configure.ac Normal file
View File

@@ -0,0 +1,302 @@
dnl Process this file with autoconf to produce a configure script. -*-m4-*-
AC_INIT(GNU coreutils, 4.5.2, bug-coreutils@gnu.org)
AC_CONFIG_SRCDIR(src/ls.c)
AC_CONFIG_AUX_DIR(config)
AM_CONFIG_HEADER(config.h:config.hin)
AC_CANONICAL_HOST
AM_INIT_AUTOMAKE([1.6b gnits dist-bzip2])
AC_GNU_SOURCE
jm_PERL
AC_PROG_CC
AC_PROG_CPP
AC_PROG_GCC_TRADITIONAL
AC_PROG_RANLIB
AC_AIX
AC_MINIX
AC_CHECK_FUNCS(uname,
OPTIONAL_BIN_PROGS="$OPTIONAL_BIN_PROGS uname" MAN="$MAN uname.1")
AC_CHECK_FUNCS(chroot,
OPTIONAL_BIN_PROGS="$OPTIONAL_BIN_PROGS chroot" MAN="$MAN chroot.1")
AC_CHECK_FUNCS(gethostid,
OPTIONAL_BIN_PROGS="$OPTIONAL_BIN_PROGS hostid" MAN="$MAN hostid.1")
jm_MACROS
AM_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL
jm_WINSIZE_IN_PTEM
# Check for SunOS statfs brokenness wrt partitions 2GB and larger.
# If <sys/vfs.h> exists and struct statfs has a member named f_spare,
# enable the work-around code in fsusage.c.
AC_MSG_CHECKING([for statfs that truncates block counts])
AC_CACHE_VAL(fu_cv_sys_truncating_statfs,
[AC_TRY_COMPILE([
#if !defined(sun) && !defined(__sun)
choke -- this is a workaround for a Sun-specific problem
#endif
#include <sys/types.h>
#include <sys/vfs.h>],
[struct statfs t; long c = *(t.f_spare);],
fu_cv_sys_truncating_statfs=yes,
fu_cv_sys_truncating_statfs=no,
)])
if test $fu_cv_sys_truncating_statfs = yes; then
AC_DEFINE(STATFS_TRUNCATES_BLOCK_COUNTS, 1,
[ Define if the block counts reported by statfs may be truncated to 2GB
and the correct values may be stored in the f_spare array.
(SunOS 4.1.2, 4.1.3, and 4.1.3_U1 are reported to have this problem.
SunOS 4.1.1 seems not to be affected.)])
fi
AC_MSG_RESULT($fu_cv_sys_truncating_statfs)
AC_MSG_CHECKING(whether localtime caches TZ)
AC_CACHE_VAL(utils_cv_localtime_cache,
[if test x$ac_cv_func_tzset = xyes; then
AC_TRY_RUN([#include <time.h>
#if STDC_HEADERS
# include <stdlib.h>
#endif
extern char **environ;
unset_TZ ()
{
char **from, **to;
for (to = from = environ; (*to = *from); from++)
if (! (to[0][0] == 'T' && to[0][1] == 'Z' && to[0][2] == '='))
to++;
}
main()
{
time_t now = time ((time_t *) 0);
int hour_GMT0, hour_unset;
if (putenv ("TZ=GMT0") != 0)
exit (1);
hour_GMT0 = localtime (&now)->tm_hour;
unset_TZ ();
hour_unset = localtime (&now)->tm_hour;
if (putenv ("TZ=PST8") != 0)
exit (1);
if (localtime (&now)->tm_hour == hour_GMT0)
exit (1);
unset_TZ ();
if (localtime (&now)->tm_hour != hour_unset)
exit (1);
exit (0);
}], utils_cv_localtime_cache=no, utils_cv_localtime_cache=yes,
[# If we have tzset, assume the worst when cross-compiling.
utils_cv_localtime_cache=yes])
else
# If we lack tzset, report that localtime does not cache TZ,
# since we can't invalidate the cache if we don't have tzset.
utils_cv_localtime_cache=no
fi])dnl
AC_MSG_RESULT($utils_cv_localtime_cache)
if test $utils_cv_localtime_cache = yes; then
AC_DEFINE(LOCALTIME_CACHE, 1, [FIXME])
fi
# SCO-ODT-3.0 is reported to need -los to link programs using initgroups
AC_CHECK_FUNCS(initgroups)
if test $ac_cv_func_initgroups = no; then
AC_CHECK_LIB(os, initgroups)
fi
AC_CHECK_FUNCS(syslog)
if test $ac_cv_func_syslog = no; then
# syslog is not in the default libraries. See if it's in some other.
for lib in bsd socket inet; do
AC_CHECK_LIB($lib, syslog, [AC_DEFINE(HAVE_SYSLOG, 1, [FIXME])
LIBS="$LIBS -l$lib"; break])
done
fi
AC_MSG_CHECKING(for 3-argument setpriority function)
AC_CACHE_VAL(utils_cv_func_setpriority,
[AC_TRY_LINK([#include <sys/time.h>
#include <sys/resource.h>],
[setpriority(0, 0, 0);],
utils_cv_func_setpriority=yes, utils_cv_func_setpriority=no)])
AC_MSG_RESULT($utils_cv_func_setpriority)
if test $utils_cv_func_setpriority = yes; then
OPTIONAL_BIN_PROGS="$OPTIONAL_BIN_PROGS nice"
OPTIONAL_BIN_ZCRIPTS="$OPTIONAL_BIN_ZCRIPTS nohup"
MAN="$MAN nice.1 nohup.1"
else
AC_MSG_CHECKING(for nice function)
AC_CACHE_VAL(utils_cv_func_nice,
[AC_TRY_LINK([], nice();,
utils_cv_func_nice=yes, utils_cv_func_nice=no)])
AC_MSG_RESULT($utils_cv_func_nice)
if test $utils_cv_func_nice = yes; then
AC_DEFINE(NICE_PRIORITY, 1, [FIXME])
OPTIONAL_BIN_PROGS="$OPTIONAL_BIN_PROGS nice"
OPTIONAL_BIN_ZCRIPTS="$OPTIONAL_BIN_ZCRIPTS nohup"
MAN="$MAN nice.1 nohup.1"
fi
fi
AC_DEFUN(jm_DUMMY_1,
[
AC_REQUIRE([jm_PREREQ_READUTMP])
if test $ac_cv_header_utmp_h = yes || test $ac_cv_header_utmpx_h = yes; then
OPTIONAL_BIN_PROGS="$OPTIONAL_BIN_PROGS pinky users who"
MAN="$MAN pinky.1 users.1 who.1"
fi
])
jm_DUMMY_1
AC_MSG_CHECKING(ut_host in struct utmp)
AC_CACHE_VAL(su_cv_func_ut_host_in_utmp,
[AC_TRY_LINK([#include <sys/types.h>
#include <utmp.h>], [struct utmp ut; ut.ut_host;],
su_cv_func_ut_host_in_utmp=yes, su_cv_func_ut_host_in_utmp=no)])
AC_MSG_RESULT($su_cv_func_ut_host_in_utmp)
if test $su_cv_func_ut_host_in_utmp = yes; then
have_ut_host=1
AC_DEFINE(HAVE_UT_HOST, 1, [FIXME])
fi
if test -z "$have_ut_host"; then
AC_MSG_CHECKING(ut_host in struct utmpx)
AC_CACHE_VAL(su_cv_func_ut_host_in_utmpx,
[AC_TRY_LINK([#include <sys/types.h>
#include <utmpx.h>], [struct utmpx ut; ut.ut_host;],
su_cv_func_ut_host_in_utmpx=yes, su_cv_func_ut_host_in_utmpx=no)])
AC_MSG_RESULT($su_cv_func_ut_host_in_utmpx)
if test $su_cv_func_ut_host_in_utmpx = yes; then
AC_DEFINE(HAVE_UTMPX_H, 1, [FIXME])
AC_DEFINE(HAVE_UT_HOST, 1, [FIXME])
fi
fi
GNULIB_BOOT_TIME(
[OPTIONAL_BIN_PROGS="$OPTIONAL_BIN_PROGS uptime" MAN="$MAN uptime.1"])
AM_SYS_POSIX_TERMIOS
jm_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL
if test $ac_cv_sys_posix_termios = yes; then
OPTIONAL_BIN_PROGS="$OPTIONAL_BIN_PROGS stty" MAN="$MAN stty.1"
AC_MSG_CHECKING(whether termios.h needs _XOPEN_SOURCE)
AC_CACHE_VAL(su_cv_sys_termios_needs_xopen_source,
[AC_EGREP_CPP(yes, [#include <termios.h>
#ifdef IUCLC
yes
#endif], su_cv_sys_termios_needs_xopen_source=no,
AC_EGREP_CPP(yes, [#define _XOPEN_SOURCE
#include <termios.h>
#ifdef IUCLC
yes
#endif], su_cv_sys_termios_needs_xopen_source=yes,
su_cv_sys_termios_needs_xopen_source=no))])
AC_MSG_RESULT($su_cv_sys_termios_needs_xopen_source)
test $su_cv_sys_termios_needs_xopen_source = yes &&
AC_DEFINE(TERMIOS_NEEDS_XOPEN_SOURCE, 1, [FIXME])
AC_MSG_CHECKING(c_line in struct termios)
AC_CACHE_VAL(su_cv_sys_c_line_in_termios,
[AC_TRY_LINK([#if TERMIOS_NEEDS_XOPEN_SOURCE
#define _XOPEN_SOURCE
#endif
#include <sys/types.h>
#include <termios.h>],
[struct termios t; t.c_line;],
su_cv_sys_c_line_in_termios=yes,
su_cv_sys_c_line_in_termios=no)])
AC_MSG_RESULT($su_cv_sys_c_line_in_termios)
test $su_cv_sys_c_line_in_termios = yes && AC_DEFINE(HAVE_C_LINE, 1, [FIXME])
fi
# FIXME: note that this macro appears above, too.
# I'm leaving it here for now. This whole thing needs to be modernized...
jm_WINSIZE_IN_PTEM
jm_HEADER_TIOCGWINSZ_IN_TERMIOS_H
if test $jm_cv_sys_tiocgwinsz_needs_termios_h = no && \
test $jm_cv_sys_tiocgwinsz_needs_sys_ioctl_h = no; then
AC_MSG_CHECKING(TIOCGWINSZ in sys/pty.h)
AC_CACHE_VAL(su_cv_sys_tiocgwinsz_in_sys_pty_h,
[AC_TRY_LINK([#include <sys/types.h>
#ifdef WINSIZE_IN_PTEM
# include <sys/stream.h>
# include <sys/ptem.h>
#endif
#include <sys/ioctl.h>
#include <sys/tty.h>
#include <sys/pty.h>],
[int x = TIOCGWINSZ;],
su_cv_sys_tiocgwinsz_in_sys_pty_h=yes,
su_cv_sys_tiocgwinsz_in_sys_pty_h=no)])
AC_MSG_RESULT($su_cv_sys_tiocgwinsz_in_sys_pty_h)
test $su_cv_sys_tiocgwinsz_in_sys_pty_h = yes \
&& AC_DEFINE(GWINSZ_IN_SYS_PTY, 1,
[Define if your system defines TIOCGWINSZ in sys/pty.h.])
fi
# For src/kill.c.
AC_CHECK_DECLS([strsignal, strtoimax, sys_siglist, _sys_siglist])
jm_LIB_CHECK
AM_GNU_GETTEXT([external], [need-ngettext])
AC_CONFIG_FILES(
Makefile
doc/Makefile
lib/Makefile
man/Makefile
m4/Makefile
po/Makefile.in
src/Makefile
tests/Makefile
tests/basename/Makefile
tests/chgrp/Makefile
tests/chmod/Makefile
tests/chown/Makefile
tests/cp/Makefile
tests/cut/Makefile
tests/date/Makefile
tests/dd/Makefile
tests/dircolors/Makefile
tests/du/Makefile
tests/expr/Makefile
tests/factor/Makefile
tests/fmt/Makefile
tests/head/Makefile
tests/install/Makefile
tests/join/Makefile
tests/ln/Makefile
tests/ls-2/Makefile
tests/ls/Makefile
tests/md5sum/Makefile
tests/misc/Makefile
tests/mkdir/Makefile
tests/mv/Makefile
tests/od/Makefile
tests/pr/Makefile
tests/rm/Makefile
tests/rmdir/Makefile
tests/seq/Makefile
tests/sha1sum/Makefile
tests/shred/Makefile
tests/sort/Makefile
tests/stty/Makefile
tests/sum/Makefile
tests/tac/Makefile
tests/tail-2/Makefile
tests/tail/Makefile
tests/test/Makefile
tests/touch/Makefile
tests/tr/Makefile
tests/tsort/Makefile
tests/unexpand/Makefile
tests/uniq/Makefile
tests/wc/Makefile
)
AC_OUTPUT

View File

@@ -1,3 +1,111 @@
2002-09-13 Jim Meyering <meyering@lucent.com>
* coreutils.texi (tail invocation): In --sleep-interval=NUMBER,
NUMBER may now be a floating point number.
(stat invocation): Remove references to now-removed %S and %C.
(Time directives) [%S]: Explain why the range is [0..60].
2002-08-30 Jim Meyering <meyering@lucent.com>
* coreutils.texi [START-INFO-DIR-ENTRY]: Don't use sc{} on LHS.
Fix typo: s/permission/permissions/. From Michail Litvak.
2002-08-02 Paul Eggert <eggert@twinsun.com>
* coreutils.texi (uniq invocation): uniq now obeys LC_COLLATE.
2002-07-29 Paul Eggert <eggert@twinsun.com>
* coreutils.texi (nohup invocation): Change behavior to conform to
POSIX 1003.1-2001:
- Do not adjust scheduling priority.
- Redirects stderr to stdout, if stderr is not a terminal.
- Exit status is now 126 if command was found but not invoked,
127 if nohup failed or if command was not found.
2002-07-24 Jim Meyering <meyering@lucent.com>
* coreutils.texi (Time directives): Document %P, %R, %e, %F,
%g, %G, and %V
2002-07-22 Martin Michlmayr <tbm@cyrius.com>
* coreutils.texi (Formatting the file names): Document
that -N/--literal are equivalent to --quoting-style=literal.
Reported by Oskar Liljeblad as Debian bug#103612.
2002-07-10 Jim Meyering <meyering@lucent.com>
* coreutils.texi (du invocation): s/PAT/PATTERN/.
From Martin Michlmayr.
2002-07-08 Jim Meyering <meyering@lucent.com>
* coreutils.texi (cp invocation): Remove unnecessary "$@" in example;
Texinfo would render the @" as an umlaut over the following character.
From Paul Eggert.
* Makefile.am (check-texinfo): Check for the above.
2002-07-06 Jim Meyering <meyering@lucent.com>
* coreutils.texi (stat invocation): Remove description of --secure.
2002-07-03 Jim Meyering <meyering@lucent.com>
* coreutils.texi (stat invocation): Rename --link/-l
to --dereference/-L. Rewrite description of --dereference.
2002-06-26 Paul Eggert <eggert@twinsun.com>
* coreutils.texi (Putting the tools together): Don't mention egrep,
since it's not part of POSIX 1003.1-2001.
2002-06-21 Jim Meyering <meyering@lucent.com>
* coreutils.texi (stat invocation): New section. From Michael Meskes.
2002-05-19 Paul Eggert <eggert@twinsun.com>
* coreutils.texi (ls invocation): Document new option: --author.
2002-06-03 Jim Meyering <meyering@lucent.com>
* coreutils.texi (rm invocation): Add the warning (also in the --help
output) that the contents of a removed file are often recoverable.
2002-05-27 Jim Meyering <meyering@lucent.com>
* Makefile.am (check-texinfo): Adapt to reflect that now we use
@acronym{POSIX}.
2002-05-26 Jim Meyering <meyering@lucent.com>
* coreutils.texi: Use @acronym in place of most uses of @sc.
* getdate.texi (Date input formats): Likewise.
2002-04-28 Jim Meyering <meyering@lucent.com>
* coreutils.texi: Change `@code{PROG}' to `@command{PROG}'.
2002-04-28 Paul Eggert <eggert@twinsun.com>
* coreutils.texi (kill invocation): Document the above.
Document POSIX signals better.
2002-04-15 Jim Meyering <meyering@lucent.com>
* coreutils.texi: Document kill.
Written by Marcus Brinkmann.
2002-04-13 Jim Meyering <meyering@lucent.com>
* coreutils.texi: Document link and unlink.
2002-04-08 Jim Meyering <meyering@lucent.com>
* coreutils.texi: Use new directives, @copying and @insertcopying,
thus now requiring texinfo-4.2 to create the .info file.
2002-02-26 Paul Eggert <eggert@twinsun.com>
* coreutils.texi (File characteristic tests): Document the

View File

@@ -31,6 +31,9 @@ $(INFO_DEPS): $(EXTRA_DIST)
# List words/regexps here that should not appear in the texinfo documentation.
check-texinfo:
grep timezone $(srcdir)/*.texi && exit 1 || :
grep -w POSIX $(srcdir)/*.texi 2> /dev/null && exit 1 || :
grep '\$$@"' $(srcdir)/*.texi && exit 1 || :
$(PERL) -ne \
'/\bPOSIX\b/ && !/\@acronym{POSIX}/ || /{posix}/ and print,exit 1' \
$(srcdir)/*.texi 2> /dev/null && : || exit 1
check: check-texinfo

View File

@@ -1,4 +1,4 @@
# Makefile.in generated by automake 1.6 from Makefile.am.
# Makefile.in generated by automake 1.7 from Makefile.am.
# @configure_input@
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
@@ -13,113 +13,74 @@
# PARTICULAR PURPOSE.
@SET_MAKE@
SHELL = @SHELL@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
INSTALL_SCRIPT = @INSTALL_SCRIPT@
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = @program_transform_name@
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
host_alias = @host_alias@
host_triplet = @host@
EXEEXT = @EXEEXT@
OBJEXT = @OBJEXT@
PATH_SEPARATOR = @PATH_SEPARATOR@
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
CATOBJEXT = @CATOBJEXT@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
DATADIRNAME = @DATADIRNAME@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DF_PROG = @DF_PROG@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FESETROUND_LIBM = @FESETROUND_LIBM@
GENCAT = @GENCAT@
GETLOADAVG_LIBS = @GETLOADAVG_LIBS@
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GNU_PACKAGE = @GNU_PACKAGE@
HAVE_LIB = @HAVE_LIB@
HELP2MAN = @HELP2MAN@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTOBJEXT = @INSTOBJEXT@
INTLBISON = @INTLBISON@
INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@
INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
KMEM_GROUP = @KMEM_GROUP@
LIB = @LIB@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBS = @LIBS@
LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
LIB_CRYPT = @LIB_CRYPT@
LIB_NANOSLEEP = @LIB_NANOSLEEP@
LTLIB = @LTLIB@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
MAN = @MAN@
MKINSTALLDIRS = @MKINSTALLDIRS@
NEED_SETGID = @NEED_SETGID@
OPTIONAL_BIN_PROGS = @OPTIONAL_BIN_PROGS@
OPTIONAL_BIN_ZCRIPTS = @OPTIONAL_BIN_ZCRIPTS@
PACKAGE = @PACKAGE@
PERL = @PERL@
POSUB = @POSUB@
RANLIB = @RANLIB@
SEQ_LIBM = @SEQ_LIBM@
SQRT_LIBM = @SQRT_LIBM@
STRIP = @STRIP@
U = @U@
USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
YACC = @YACC@
am__include = @am__include@
am__quote = @am__quote@
install_sh = @install_sh@
info_TEXINFOS = coreutils.texi
EXTRA_DIST = perm.texi getdate.texi constants.texi doclicense.texi
LTLIBOBJS = @LTLIBOBJS@
# The following is necessary if the package name is 8 characters or longer.
# If the info documentation would be split into 10 or more separate files,
@@ -130,66 +91,134 @@ EXTRA_DIST = perm.texi getdate.texi constants.texi doclicense.texi
# and those names all map to one 14-byte name (<package>.info-) on some crufty
# old systems.
MAKEINFO = makeinfo --no-split
MAN = @MAN@
MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@
MSGMERGE = @MSGMERGE@
NEED_SETGID = @NEED_SETGID@
OBJEXT = @OBJEXT@
OPTIONAL_BIN_PROGS = @OPTIONAL_BIN_PROGS@
OPTIONAL_BIN_ZCRIPTS = @OPTIONAL_BIN_ZCRIPTS@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
POSUB = @POSUB@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SEQ_LIBM = @SEQ_LIBM@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SQRT_LIBM = @SQRT_LIBM@
STRIP = @STRIP@
U = @U@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
YACC = @YACC@
ac_ct_CC = @ac_ct_CC@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__include = @am__include@
am__quote = @am__quote@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localstatedir = @localstatedir@
mandir = @mandir@
oldincludedir = @oldincludedir@
prefix = @prefix@
program_transform_name = @program_transform_name@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
info_TEXINFOS = coreutils.texi
EXTRA_DIST = perm.texi getdate.texi constants.texi doclicense.texi
subdir = doc
mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
DIST_SOURCES =
TEXINFO_TEX = $(top_srcdir)/config/texinfo.tex
am__TEXINFO_TEX_DIR = $(top_srcdir)/config
INFO_DEPS = coreutils.info
DVIS = coreutils.dvi
PDFS = coreutils.pdf
PSS = coreutils.ps
TEXINFOS = coreutils.texi
DIST_COMMON = ChangeLog Makefile.am Makefile.in stamp-vti version.texi
all: all-am
.SUFFIXES:
.SUFFIXES: .dvi .info .ps .texi
.SUFFIXES: .dvi .info .pdf .ps .texi
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.ac $(ACLOCAL_M4)
cd $(top_srcdir) && \
$(AUTOMAKE) --gnits doc/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
$(srcdir)/version.texi: $(srcdir)/stamp-vti
@:
$(srcdir)/stamp-vti: coreutils.texi $(top_srcdir)/configure.ac
@(set `$(SHELL) $(top_srcdir)/config/mdate-sh $(srcdir)/coreutils.texi`; \
.texi.info:
@rm -f $@ $@-[0-9] $@-[0-9][0-9]
$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
`test -f '$<' || echo '$(srcdir)/'`$< -o $@
.texi.dvi:
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
$(TEXI2DVI) `test -f '$<' || echo '$(srcdir)/'`$<
.texi.pdf:
TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
$(TEXI2PDF) `test -f '$<' || echo '$(srcdir)/'`$<
coreutils.info: coreutils.texi version.texi
coreutils.dvi: coreutils.texi version.texi
coreutils.pdf: coreutils.texi version.texi
version.texi: stamp-vti
stamp-vti: coreutils.texi $(top_srcdir)/configure.ac
@(dir=.; test -f ./coreutils.texi || dir=$(srcdir); \
set `$(SHELL) $(top_srcdir)/config/mdate-sh $$dir/coreutils.texi`; \
echo "@set UPDATED $$1 $$2 $$3"; \
echo "@set UPDATED-MONTH $$2 $$3"; \
echo "@set EDITION $(VERSION)"; \
echo "@set VERSION $(VERSION)") > vti.tmp
@cmp -s vti.tmp $(srcdir)/version.texi \
|| (echo "Updating $(srcdir)/version.texi"; \
cp vti.tmp $(srcdir)/version.texi)
@cmp -s vti.tmp version.texi \
|| (echo "Updating version.texi"; \
cp vti.tmp version.texi)
-@rm -f vti.tmp
@cp $(srcdir)/version.texi $@
@cp version.texi $@
mostlyclean-vti:
-rm -f vti.tmp
maintainer-clean-vti:
-rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi
coreutils.info: coreutils.texi $(srcdir)/version.texi
coreutils.dvi: coreutils.texi $(srcdir)/version.texi
.texi.info:
@cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9]
cd $(srcdir) \
&& $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) \
`echo $< | sed 's,.*/,,'`
.texi.dvi:
TEXINPUTS="$(top_srcdir)/config$(PATH_SEPARATOR)$$TEXINPUTS" \
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
$(TEXI2DVI) $<
.texi:
@cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9]
cd $(srcdir) \
&& $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) \
`echo $< | sed 's,.*/,,'`
-rm -f stamp-vti version.texi
TEXI2DVI = texi2dvi
TEXI2PDF = $(TEXI2DVI) --pdf --batch
DVIPS = dvips
.dvi.ps:
$(DVIPS) $< -o $@
@@ -197,7 +226,7 @@ DVIPS = dvips
uninstall-info-am:
$(PRE_UNINSTALL)
@if (install-info --version && \
install-info --version | fgrep -i -v debian) >/dev/null 2>&1; then \
install-info --version | grep -i -v debian) >/dev/null 2>&1; then \
list='$(INFO_DEPS)'; \
for file in $$list; do \
echo " install-info --info-dir=$(DESTDIR)$(infodir) --remove $(DESTDIR)$(infodir)/$$file"; \
@@ -216,7 +245,7 @@ uninstall-info-am:
dist-info: $(INFO_DEPS)
list='$(INFO_DEPS)'; \
for base in $$list; do \
d=$(srcdir); \
if test -f $$base; then d=.; else d=$(srcdir); fi; \
for file in $$d/$$base*; do \
relfile=`expr "$$file" : "$$d/\(.*\)"`; \
test -f $(distdir)/$$relfile || \
@@ -225,14 +254,13 @@ dist-info: $(INFO_DEPS)
done
mostlyclean-aminfo:
-rm -f coreutils.aux coreutils.cp coreutils.cps coreutils.dvi coreutils.fl \
coreutils.fn coreutils.ky coreutils.log coreutils.op \
coreutils.pg coreutils.ps coreutils.toc coreutils.tp \
coreutils.vr
-rm -f coreutils.aux coreutils.cp coreutils.cps coreutils.fl coreutils.fn \
coreutils.ky coreutils.log coreutils.op coreutils.pg \
coreutils.tmp coreutils.toc coreutils.tp coreutils.vr \
coreutils.dvi coreutils.pdf coreutils.ps
maintainer-clean-aminfo:
cd $(srcdir) && \
for i in $(INFO_DEPS); do \
list='$(INFO_DEPS)'; for i in $$list; do \
rm -f $$i; \
if test "`echo $$i-[0-9]*`" != "$$i-[0-9]*"; then \
rm -f $$i-[0-9]*; \
@@ -241,13 +269,20 @@ maintainer-clean-aminfo:
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
top_distdir = ..
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
distdir: $(DISTFILES)
@for file in $(DISTFILES); do \
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \
case $$file in \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
esac; \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
@@ -257,8 +292,10 @@ distdir: $(DISTFILES)
dir=''; \
fi; \
if test -d $$d/$$file; then \
cp -pR $$d/$$file $(distdir)$$dir \
|| exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
@@ -266,7 +303,7 @@ distdir: $(DISTFILES)
fi; \
done
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="${top_distdir}" distdir="$(distdir)" \
top_distdir="$(top_distdir)" distdir="$(distdir)" \
dist-info
check-am: all-am
check: check-am
@@ -294,7 +331,7 @@ mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
-rm -f Makefile $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -326,7 +363,7 @@ install-info-am: $(INFO_DEPS)
$(mkinstalldirs) $(DESTDIR)$(infodir)
@list='$(INFO_DEPS)'; \
for file in $$list; do \
d=$(srcdir); \
if test -f $$file; then d=.; else d=$(srcdir); fi; \
for ifile in echo $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9]; do \
if test -f $$ifile; then \
relfile=`expr "$$ifile" : "$$d/\(.*\)"`; \
@@ -337,7 +374,7 @@ install-info-am: $(INFO_DEPS)
done
@$(POST_INSTALL)
@if (install-info --version && \
install-info --version | fgrep -i -v debian) >/dev/null 2>&1; then \
install-info --version | grep -i -v debian) >/dev/null 2>&1; then \
list='$(INFO_DEPS)'; \
for file in $$list; do \
echo " install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$file";\
@@ -357,6 +394,14 @@ mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-aminfo mostlyclean-generic mostlyclean-vti
pdf: pdf-am
pdf-am: $(PDFS)
ps: ps-am
ps-am: $(PSS)
uninstall-am: uninstall-info-am
.PHONY: all all-am check check-am clean clean-generic dist-info \
@@ -366,8 +411,8 @@ uninstall-am: uninstall-info-am
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-aminfo \
maintainer-clean-generic maintainer-clean-vti mostlyclean \
mostlyclean-aminfo mostlyclean-generic mostlyclean-vti \
uninstall uninstall-am uninstall-info-am
mostlyclean-aminfo mostlyclean-generic mostlyclean-vti pdf \
pdf-am ps ps-am uninstall uninstall-am uninstall-info-am
# Remove `DISABLED_' when fileutils, textutils, and sh-utils have
@@ -388,7 +433,10 @@ $(INFO_DEPS): $(EXTRA_DIST)
# List words/regexps here that should not appear in the texinfo documentation.
check-texinfo:
grep timezone $(srcdir)/*.texi && exit 1 || :
grep -w POSIX $(srcdir)/*.texi 2> /dev/null && exit 1 || :
grep '\$$@"' $(srcdir)/*.texi && exit 1 || :
$(PERL) -ne \
'/\bPOSIX\b/ && !/\@acronym{POSIX}/ || /{posix}/ and print,exit 1' \
$(srcdir)/*.texi 2> /dev/null && : || exit 1
check: check-texinfo
# Tell versions [3.59,3.63) of GNU make to not export all variables.

8
doc/code-vs-command Normal file
View File

@@ -0,0 +1,8 @@
perl -pi -e \
's/\@code\{('"$(echo cp dd df dir dircolors du install ln ls mkdir mkfifo mknod mv shred touch vdir|tr ' ' '|')"')\}/\@command{$1}/' coreutils.texi
perl -pi -e \
's/\@code\{('"$(echo cp dd df dir dircolors du install ln ls mkdir mkfifo mknod mv shred touch vdir|tr ' ' '|')"')\}/\@command{$1}/' coreutils.texi
regex=$((textutils; shellutils) | tr -s ' ' '|')
perl -pi -e 's/\@code\{('"$regex"')\}/\@command{$1}/' coreutils.texi

File diff suppressed because it is too large Load Diff

View File

@@ -35,13 +35,13 @@ programs accept. These are the strings you, as a user, can supply as
arguments to the various programs. The C interface (via the
@code{getdate} function) is not described here.
@cindex beginning of time, for @sc{posix}
@cindex epoch, for @sc{posix}
@cindex beginning of time, for @acronym{POSIX}
@cindex epoch, for @acronym{POSIX}
Although the date syntax here can represent any possible time since the
year zero, computer integers often cannot represent such a wide range of
time. On @sc{posix} systems, the clock starts at 1970-01-01 00:00:00
@sc{utc}: @sc{posix} does not require support for times before the
@sc{posix} Epoch and times far in the future. Traditional Unix systems
time. On @acronym{POSIX} systems, the clock starts at 1970-01-01 00:00:00
@sc{utc}: @acronym{POSIX} does not require support for times before the
@acronym{POSIX} Epoch and times far in the future. Traditional Unix systems
have 32-bit signed @code{time_t} and can represent times from 1901-12-13
20:45:52 through 2038-01-19 03:14:07 @sc{utc}. Systems with 64-bit
signed @code{time_t} can represent all the times in the known

View File

@@ -1,3 +1,240 @@
2002-09-28 Jim Meyering <meyering@lucent.com>
* makepath.c (make_path): Restore umask *before* creating the final
component.
2002-09-25 Paul Eggert <eggert@twinsun.com>
* fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include <stdint.h>.
(UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
(PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
int. Work more efficiently if X is the same width as uintmax_t.
Do not compare X to -1, to avoid bogus compiler warning.
(get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
Don't assume that f_frsize and f_bsize are the same type.
2002-09-25 Jim Meyering <meyering@lucent.com>
* fsusage.c: Remove unneeded parentheses around operands of `defined'.
* safe-read.c (safe_read): Make comment more precise:
upon error, it returns -1.
2002-09-22 Jim Meyering <meyering@lucent.com>
* makepath.c (make_path): Minor reformatting.
2002-09-14 Paul Eggert <eggert@twinsun.com>
* lib/xnanosleep (xnanosleep): Return -1 on failure, not 1,
for consistency with nanosleep. Check errno after nanosleep
returns -1.
2002-09-11 Jim Meyering <meyering@lucent.com>
* xnanosleep.c, xnanosleep.h: New files, factored out of sleep.c.
* Makefile.am (libfetish_a_SOURCES): Add them.
2002-09-04 Jim Meyering <meyering@lucent.com>
* addext.c (addext): Add a cast to avoid gcc's warning about
`comparison between signed and unsigned'.
* sig2str.c (str2signum, sig2str): Declare loop index variables to be
of type size_t so that they match type of upper bound, thus avoiding
warning about `comparison between signed and unsigned'.
2002-08-31 Jim Meyering <meyering@lucent.com>
* mktime.c: Update from GNU libc.
* obstack.c: Likewise.
* getopt.c: Likewise.
* getopt1.c: Likewise.
2002-08-05 Paul Eggert <eggert@twinsun.com>
Fix some minor time-related bugs with POSIX time arguments.
Some valid time stamps were being rejected (notably -1, and
time stamps before 1900 on 64-bit hosts). And some invalid
time stamps were being accepted, e.g. September 31.
* lib/posixtm.h (posixtime): Return bool instead of time_t, so
that we can return (time_t) -1 successfully.
* lib/posixtm.c: Likewise.
[HAVE_STDBOOL_H]: Include <stdbool.h>.
(bool, false, true) [!HAVE_STDBOOL_H]: New type.
(t): Remove static var.
(year, posix_time_parse): Now takes struct tm * arg to modify, instead
of static var. All uses changed.
(year): Do not reject years before 1900; they can occur with
64-bit time_t.
(posix_time_parse): Do not check for out-of-range components;
that is now the caller's responsibility, since our checks were
only approximations.
(posixtime): Use mktime to check for out-of-range components,
since it knows them exactly.
If mktime returns (time_t) -1, check whether an error actually occurred
by invoking localtime on -1.
(main) [TEST_POSIXTIME]: Check for input data errors, and report
posixtime failures better.
Improve the test data (in comments only).
2002-07-27 Jim Meyering <meyering@lucent.com>
* readutmp.h: If we have both utmpx.h and utmp.h, and there exists
the utmp.ut_exit member, but not the utmpx.ut_exit member, then
undefine HAVE_UTMPX_H. For AIX 4.3.3. Doing all this in cpp is
a big kludge; someday we'll put the brains in an autoconf macro.
(UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
2002-07-20 Jim Meyering <meyering@lucent.com>
* xmalloc.c: Adjust to work with new autoconf macros, AC_FUNC_MALLOC
and AC_FUNC_REALLOC: test #ifndef HAVE_MALLOC/HAVE_REALLOC.
* gettext.h: Upgrade to gettext-0.11.3.
2002-07-13 Bruno Haible <bruno@clisp.org>
* xstat.in: Include <string.h>.
* mountlist.c: #undef MNT_IGNORE before defining it, to avoid warning
on FreeBSD.
2002-07-09 Jim Meyering <meyering@lucent.com>
* mountlist.h (ME_DUMMY): Don't count entries of type `auto' as dummy
ones. At least on GNU/Linux systems, `auto' means something else.
From Michael Stone.
2002-07-01 Jim Meyering <meyering@lucent.com>
* c-stack.c: Include sys/time.h.
From Volker Borchert.
2002-06-11 Paul Eggert <eggert@twinsun.com>
* fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
New macro. Use it uniformly instead of
(defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
reported by Vin Shelton.
2002-06-22 Jim Meyering <meyering@lucent.com>
* fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
redefinition due to Solaris5.6's definition in /usr/include/sys/euc.h.
2002-06-22 Paul Eggert <eggert@twinsun.com>
* c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
Do not assume SA_SIGINFO behavior.
Bug reported by Jim Meyering on NetBSD 1.5.2.
2002-06-22 Jim Meyering <meyering@lucent.com>
* c-stack.c, c-stack.h: New files, from diffutils-2.8.2.
* exitfail.c, exitfail.h: Likewise.
* Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
* Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
of fnmatch.h.
(EXTRA_DIST): Add fnmatch_loop.c.
(libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
* fnmatch_loop.c: New file, from diffutils-2.8.2.
* fnmatch.c: Update from diffutils-2.8.2.
* fnmatch_.h: New file. From diffutils-2.8.2.
* fnmatch.h: Remove file.
2002-06-18 Paul Eggert <eggert@twinsun.com>
* file-type.h: Report an error if neither S_ISREG nor
S_IFREG is defined, instead of using a test specific to glibc
2.2. This should be safe, since POSIX requires S_ISREG and
Unix Version 7 had S_IFREG. We don't need to check for
<sys/types.h> since we don't use any symbols that it defines.
2002-06-15 Jim Meyering <meyering@lucent.com>
* file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
have been included before this file.
2002-06-13 Richard Dawe <richdawe@bigfoot.com>
* Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than $@-t,
so that each temporary file name is unique and valid in the first
8 characters, for operation under DOS.
2002-06-15 Jim Meyering <meyering@lucent.com>
Work even with DJGPP 2.03, which lacks support for symlinks.
From Richard Dawe.
* xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
is defined.
* lchown.c (S_ISLNK): Likewise.
2002-06-14 Jim Meyering <meyering@lucent.com>
* file-type.h: Use the version from diffutils-2.8.2.
* file-type.c: Likewise.
2002-05-27 Jim Meyering <meyering@lucent.com>
Fix a problem seen only on nonconforming systems whereby ls.c's
use of localtime, and then of gettimeofday would cause trouble:
the localtime call used to initialize rpl_gettimeofday's save
mechanism would clobber ls's current local time information so
that in any long listing the first file would always be listed
with date 1970-01-01. Analysis by Volker Borchert.
* gettimeofday.c (localtime): Undefine.
(rpl_localtime): New function.
2002-05-22 Jim Meyering <meyering@lucent.com>
* Makefile.am (libfetish_a_SOURCES): Add file-type.c and file-type.h.
* file-type.h: New file.
* file-type.c (file_type): New file/function. Extracted from diffutils.
2002-04-29 Paul Eggert <eggert@twinsun.com>
* hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
2002-04-28 Paul Eggert <eggert@twinsun.com>
* sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
depending on <sys/wait.h> and WTERMSIG. Default to 64 instead
of 127, since 64 is the largest conceivable number for ancient
nonstandard hosts.
* sig2str.c: Do not include <sys/wait.h>; no longer needed.
2002-04-28 Jim Meyering <meyering@lucent.com>
* sig2str.c (WTERMSIG): Remove definition (unused).
2002-04-28 Paul Eggert <eggert@twinsun.com>
* sig2str.h, sig2str.c: New files.
* Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
2002-04-24 Jim Meyering <meyering@lucent.com>
* gettext.h: New file, from Gettext.
* Makefile.am (INCLUDES): Remove -I../intl.
(libfetish_a_SOURCES): Add gettext.h.
2002-04-16 Jim Meyering <meyering@lucent.com>
* readutmp.h (UT_TYPE): Remove definition (now in who.c).
(HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
(HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
2002-04-12 Jim Meyering <meyering@lucent.com>
* dirfd.h (dirfd): Elide prototype if dirfd is a macro.
2002-03-10 Jim Meyering <meyering@lucent.com>
* makepath.c (make_path): Remove a comma from a diagnostic.

View File

@@ -4,7 +4,7 @@ AUTOMAKE_OPTIONS = ../src/ansi2knr
noinst_LIBRARIES = libfetish.a
INCLUDES = -I.. -I$(srcdir) -I../intl
INCLUDES = -I.. -I$(srcdir)
DEFS = -DLIBDIR=\"$(libdir)\" @DEFS@
## Put relatively complex files at the beginning of the list so
@@ -28,14 +28,17 @@ libfetish_a_SOURCES = \
basename.c \
bumpalloc.h \
canon-host.c \
c-stack.c c-stack.h \
closeout.c closeout.h \
diacrit.c diacrit.h \
dirname.c dirname.h \
dirfd.h \
dup-safer.c \
exclude.c exclude.h \
exitfail.c exitfail.h \
filemode.c filemode.h \
fnmatch.h \
file-type.c file-type.h \
fnmatch_.h \
fopen-safer.c \
fsusage.h \
full-write.c full-write.h \
@@ -43,6 +46,7 @@ libfetish_a_SOURCES = \
getpagesize.h \
getstr.c getstr.h \
gettime.c \
gettext.h \
getugroups.c \
group-member.h \
hard-locale.c hard-locale.h \
@@ -74,6 +78,7 @@ libfetish_a_SOURCES = \
savedir.c savedir.h \
settime.c \
sha.c sha.h \
sig2str.h \
stdio-safer.h \
stripslash.c \
strverscmp.h \
@@ -87,6 +92,7 @@ libfetish_a_SOURCES = \
xgethostname.c \
xmalloc.c \
xmemcoll.c xmemcoll.h \
xnanosleep.c xnanosleep.h \
xreadlink.c xreadlink.h \
xstrdup.c \
xstrtod.c xstrtod.h \
@@ -104,15 +110,17 @@ BUILT_SOURCES = getdate.c lstat.c stat.c unlocked-io.h
MAINTAINERCLEANFILES = $(BUILT_SOURCES)
DISTCLEANFILES = lstat.c stat.c unlocked-io.h
EXTRA_DIST = xstat.in config.charset ref-add.sin ref-del.sin gen-uio
EXTRA_DIST = xstat.in config.charset ref-add.sin ref-del.sin gen-uio \
fnmatch_loop.c
lstat.c: xstat.in
sed \
-e '/@IGNORE@/d' \
-e 's/@xstat@/lstat/g' \
-e '/_LSTAT_ONLY@/d' \
-e '/@BEGIN_STAT_ONLY@/,/@END_STAT_ONLY@/d' \
$(srcdir)/xstat.in > $@-t
mv $@-t $@
$(srcdir)/xstat.in > t-$@
mv t-$@ $@
stat.c: xstat.in
sed \
@@ -120,8 +128,8 @@ stat.c: xstat.in
-e 's/@xstat@/stat/g' \
-e '/_STAT_ONLY@/d' \
-e '/@BEGIN_LSTAT_ONLY@/,/@END_LSTAT_ONLY@/d' \
$(srcdir)/xstat.in > $@-t
mv $@-t $@
$(srcdir)/xstat.in > t-$@
mv t-$@ $@
# The following is needed in order to install a simple file in $(libdir)
# which is shared with other installed packages. We use a list of referencing
@@ -166,8 +174,8 @@ charset.alias: config.charset
SUFFIXES = .sed .sin
.sin.sed:
sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $< > $@-t
mv $@-t $@
sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $< > t-$@
mv t-$@ $@
CLEANFILES = charset.alias ref-add.sed ref-del.sed

View File

@@ -1,4 +1,4 @@
# Makefile.in generated by automake 1.6 from Makefile.am.
# Makefile.in generated by automake 1.7 from Makefile.am.
# @configure_input@
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
@@ -13,117 +13,144 @@
# PARTICULAR PURPOSE.
@SET_MAKE@
SHELL = @SHELL@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
INSTALL_SCRIPT = @INSTALL_SCRIPT@
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = @program_transform_name@
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
host_alias = @host_alias@
host_triplet = @host@
EXEEXT = @EXEEXT@
OBJEXT = @OBJEXT@
PATH_SEPARATOR = @PATH_SEPARATOR@
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
CATOBJEXT = @CATOBJEXT@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
DATADIRNAME = @DATADIRNAME@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = -DLIBDIR=\"$(libdir)\" @DEFS@
DEPDIR = @DEPDIR@
DF_PROG = @DF_PROG@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FESETROUND_LIBM = @FESETROUND_LIBM@
GENCAT = @GENCAT@
GETLOADAVG_LIBS = @GETLOADAVG_LIBS@
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GNU_PACKAGE = @GNU_PACKAGE@
HAVE_LIB = @HAVE_LIB@
HELP2MAN = @HELP2MAN@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTOBJEXT = @INSTOBJEXT@
INTLBISON = @INTLBISON@
INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@
INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
KMEM_GROUP = @KMEM_GROUP@
LIB = @LIB@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBS = @LIBS@
LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
LIB_CRYPT = @LIB_CRYPT@
LIB_NANOSLEEP = @LIB_NANOSLEEP@
LTLIB = @LTLIB@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MAN = @MAN@
MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@
MSGMERGE = @MSGMERGE@
NEED_SETGID = @NEED_SETGID@
OBJEXT = @OBJEXT@
OPTIONAL_BIN_PROGS = @OPTIONAL_BIN_PROGS@
OPTIONAL_BIN_ZCRIPTS = @OPTIONAL_BIN_ZCRIPTS@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
POSUB = @POSUB@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SEQ_LIBM = @SEQ_LIBM@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SQRT_LIBM = @SQRT_LIBM@
STRIP = @STRIP@
U = @U@
USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
YACC = @YACC@
ac_ct_CC = @ac_ct_CC@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__include = @am__include@
am__quote = @am__quote@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localstatedir = @localstatedir@
mandir = @mandir@
oldincludedir = @oldincludedir@
prefix = @prefix@
program_transform_name = @program_transform_name@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
AUTOMAKE_OPTIONS = ../src/ansi2knr
noinst_LIBRARIES = libfetish.a
INCLUDES = -I.. -I$(srcdir) -I../intl
DEFS = -DLIBDIR=\"$(libdir)\" @DEFS@
INCLUDES = -I.. -I$(srcdir)
libfetish_a_SOURCES = \
acl.h acl.c \
@@ -141,14 +168,17 @@ libfetish_a_SOURCES = \
basename.c \
bumpalloc.h \
canon-host.c \
c-stack.c c-stack.h \
closeout.c closeout.h \
diacrit.c diacrit.h \
dirname.c dirname.h \
dirfd.h \
dup-safer.c \
exclude.c exclude.h \
exitfail.c exitfail.h \
filemode.c filemode.h \
fnmatch.h \
file-type.c file-type.h \
fnmatch_.h \
fopen-safer.c \
fsusage.h \
full-write.c full-write.h \
@@ -156,6 +186,7 @@ libfetish_a_SOURCES = \
getpagesize.h \
getstr.c getstr.h \
gettime.c \
gettext.h \
getugroups.c \
group-member.h \
hard-locale.c hard-locale.h \
@@ -187,6 +218,7 @@ libfetish_a_SOURCES = \
savedir.c savedir.h \
settime.c \
sha.c sha.h \
sig2str.h \
stdio-safer.h \
stripslash.c \
strverscmp.h \
@@ -200,6 +232,7 @@ libfetish_a_SOURCES = \
xgethostname.c \
xmalloc.c \
xmemcoll.c xmemcoll.h \
xnanosleep.c xnanosleep.h \
xreadlink.c xreadlink.h \
xstrdup.c \
xstrtod.c xstrtod.h \
@@ -217,7 +250,9 @@ BUILT_SOURCES = getdate.c lstat.c stat.c unlocked-io.h
MAINTAINERCLEANFILES = $(BUILT_SOURCES)
DISTCLEANFILES = lstat.c stat.c unlocked-io.h
EXTRA_DIST = xstat.in config.charset ref-add.sin ref-del.sin gen-uio
EXTRA_DIST = xstat.in config.charset ref-add.sin ref-del.sin gen-uio \
fnmatch_loop.c
charset_alias = $(DESTDIR)$(libdir)/charset.alias
charset_tmp = $(DESTDIR)$(libdir)/charset.tmp
@@ -243,9 +278,10 @@ am_libfetish_a_OBJECTS = acl$U.$(OBJEXT) getdate$U.$(OBJEXT) \
getopt$U.$(OBJEXT) getopt1$U.$(OBJEXT) hash$U.$(OBJEXT) \
hash-pjw$U.$(OBJEXT) addext$U.$(OBJEXT) argmatch$U.$(OBJEXT) \
backupfile$U.$(OBJEXT) basename$U.$(OBJEXT) \
canon-host$U.$(OBJEXT) closeout$U.$(OBJEXT) diacrit$U.$(OBJEXT) \
dirname$U.$(OBJEXT) dup-safer$U.$(OBJEXT) exclude$U.$(OBJEXT) \
filemode$U.$(OBJEXT) fopen-safer$U.$(OBJEXT) \
canon-host$U.$(OBJEXT) c-stack$U.$(OBJEXT) closeout$U.$(OBJEXT) \
diacrit$U.$(OBJEXT) dirname$U.$(OBJEXT) dup-safer$U.$(OBJEXT) \
exclude$U.$(OBJEXT) exitfail$U.$(OBJEXT) filemode$U.$(OBJEXT) \
file-type$U.$(OBJEXT) fopen-safer$U.$(OBJEXT) \
full-write$U.$(OBJEXT) getstr$U.$(OBJEXT) gettime$U.$(OBJEXT) \
getugroups$U.$(OBJEXT) hard-locale$U.$(OBJEXT) \
human$U.$(OBJEXT) idcache$U.$(OBJEXT) isdir$U.$(OBJEXT) \
@@ -260,15 +296,13 @@ am_libfetish_a_OBJECTS = acl$U.$(OBJEXT) getdate$U.$(OBJEXT) \
stripslash$U.$(OBJEXT) unicodeio$U.$(OBJEXT) \
userspec$U.$(OBJEXT) version-etc$U.$(OBJEXT) \
xgetcwd$U.$(OBJEXT) xgethostname$U.$(OBJEXT) \
xmalloc$U.$(OBJEXT) xmemcoll$U.$(OBJEXT) xreadlink$U.$(OBJEXT) \
xstrdup$U.$(OBJEXT) xstrtod$U.$(OBJEXT) xstrtol$U.$(OBJEXT) \
xstrtoul$U.$(OBJEXT) xstrtoimax$U.$(OBJEXT) \
xmalloc$U.$(OBJEXT) xmemcoll$U.$(OBJEXT) xnanosleep$U.$(OBJEXT) \
xreadlink$U.$(OBJEXT) xstrdup$U.$(OBJEXT) xstrtod$U.$(OBJEXT) \
xstrtol$U.$(OBJEXT) xstrtoul$U.$(OBJEXT) xstrtoimax$U.$(OBJEXT) \
xstrtoumax$U.$(OBJEXT) yesno$U.$(OBJEXT)
libfetish_a_OBJECTS = $(am_libfetish_a_OBJECTS)
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
CPPFLAGS = @CPPFLAGS@
LDFLAGS = @LDFLAGS@
LIBS = @LIBS@
depcomp = $(SHELL) $(top_srcdir)/config/depcomp
am__depfiles_maybe = depfiles
@AMDEP_TRUE@DEP_FILES = $(DEPDIR)/__fpending.Po $(DEPDIR)/alloca.Po \
@@ -292,24 +326,26 @@ am__depfiles_maybe = depfiles
@AMDEP_TRUE@ $(DEPDIR)/readutmp.Po $(DEPDIR)/realloc.Po \
@AMDEP_TRUE@ $(DEPDIR)/regex.Po $(DEPDIR)/rename.Po \
@AMDEP_TRUE@ $(DEPDIR)/rmdir.Po $(DEPDIR)/rpmatch.Po \
@AMDEP_TRUE@ $(DEPDIR)/stat.Po $(DEPDIR)/stpcpy.Po \
@AMDEP_TRUE@ $(DEPDIR)/strcasecmp.Po $(DEPDIR)/strcspn.Po \
@AMDEP_TRUE@ $(DEPDIR)/strdup.Po $(DEPDIR)/strncasecmp.Po \
@AMDEP_TRUE@ $(DEPDIR)/strndup.Po $(DEPDIR)/strnlen.Po \
@AMDEP_TRUE@ $(DEPDIR)/strpbrk.Po $(DEPDIR)/strstr.Po \
@AMDEP_TRUE@ $(DEPDIR)/strtod.Po $(DEPDIR)/strtoimax.Po \
@AMDEP_TRUE@ $(DEPDIR)/strtol.Po $(DEPDIR)/strtoll.Po \
@AMDEP_TRUE@ $(DEPDIR)/strtoul.Po $(DEPDIR)/strtoull.Po \
@AMDEP_TRUE@ $(DEPDIR)/strtoumax.Po $(DEPDIR)/strverscmp.Po \
@AMDEP_TRUE@ $(DEPDIR)/tempname.Po $(DEPDIR)/utime.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/acl$U.Po ./$(DEPDIR)/addext$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/argmatch$U.Po \
@AMDEP_TRUE@ $(DEPDIR)/sig2str.Po $(DEPDIR)/stat.Po \
@AMDEP_TRUE@ $(DEPDIR)/stpcpy.Po $(DEPDIR)/strcasecmp.Po \
@AMDEP_TRUE@ $(DEPDIR)/strcspn.Po $(DEPDIR)/strdup.Po \
@AMDEP_TRUE@ $(DEPDIR)/strncasecmp.Po $(DEPDIR)/strndup.Po \
@AMDEP_TRUE@ $(DEPDIR)/strnlen.Po $(DEPDIR)/strpbrk.Po \
@AMDEP_TRUE@ $(DEPDIR)/strstr.Po $(DEPDIR)/strtod.Po \
@AMDEP_TRUE@ $(DEPDIR)/strtoimax.Po $(DEPDIR)/strtol.Po \
@AMDEP_TRUE@ $(DEPDIR)/strtoll.Po $(DEPDIR)/strtoul.Po \
@AMDEP_TRUE@ $(DEPDIR)/strtoull.Po $(DEPDIR)/strtoumax.Po \
@AMDEP_TRUE@ $(DEPDIR)/strverscmp.Po $(DEPDIR)/tempname.Po \
@AMDEP_TRUE@ $(DEPDIR)/utime.Po ./$(DEPDIR)/acl$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/addext$U.Po ./$(DEPDIR)/argmatch$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/backupfile$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/basename$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/basename$U.Po ./$(DEPDIR)/c-stack$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/canon-host$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/closeout$U.Po ./$(DEPDIR)/diacrit$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/dirname$U.Po ./$(DEPDIR)/dup-safer$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/exclude$U.Po ./$(DEPDIR)/filemode$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/exclude$U.Po ./$(DEPDIR)/exitfail$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/file-type$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/filemode$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/fopen-safer$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/full-write$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/getdate$U.Po ./$(DEPDIR)/getopt$U.Po \
@@ -342,6 +378,7 @@ am__depfiles_maybe = depfiles
@AMDEP_TRUE@ ./$(DEPDIR)/xgetcwd$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/xgethostname$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/xmalloc$U.Po ./$(DEPDIR)/xmemcoll$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/xnanosleep$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/xreadlink$U.Po ./$(DEPDIR)/xstrdup$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/xstrtod$U.Po \
@AMDEP_TRUE@ ./$(DEPDIR)/xstrtoimax$U.Po \
@@ -351,7 +388,6 @@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
CFLAGS = @CFLAGS@
YACCCOMPILE = $(YACC) $(YFLAGS) $(AM_YFLAGS)
DIST_SOURCES = $(libfetish_a_SOURCES)
DIST_COMMON = README ChangeLog Makefile.am Makefile.in TODO \
@@ -362,7 +398,7 @@ DIST_COMMON = README ChangeLog Makefile.am Makefile.in TODO \
group-member.c lchown.c malloc.c memchr.c memcmp.c memcpy.c \
memmove.c memrchr.c memset.c mkdir.c mkstemp.c mktime.c \
mountlist.c nanosleep.c obstack.c obstack.h putenv.c readutmp.c \
realloc.c regex.c rename.c rmdir.c rpmatch.c stpcpy.c \
realloc.c regex.c rename.c rmdir.c rpmatch.c sig2str.c stpcpy.c \
strcasecmp.c strcspn.c strdup.c strncasecmp.c strndup.c \
strnlen.c strpbrk.c strstr.c strtod.c strtoimax.c strtol.c \
strtoll.c strtoul.c strtoull.c strtoumax.c strverscmp.c \
@@ -444,6 +480,7 @@ mostlyclean-kr:
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/rename.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/rmdir.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/rpmatch.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/sig2str.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/stat.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/stpcpy.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/strcasecmp.Po@am__quote@
@@ -469,12 +506,15 @@ mostlyclean-kr:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/argmatch$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/backupfile$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basename$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c-stack$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/canon-host$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/closeout$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/diacrit$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dirname$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dup-safer$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exclude$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exitfail$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file-type$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filemode$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fopen-safer$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/full-write$U.Po@am__quote@
@@ -521,6 +561,7 @@ mostlyclean-kr:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xgethostname$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmalloc$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xmemcoll$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xnanosleep$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xreadlink$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrdup$U.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xstrtod$U.Po@am__quote@
@@ -534,17 +575,26 @@ distclean-depend:
-rm -rf $(DEPDIR) ./$(DEPDIR)
.c.o:
@AMDEP_TRUE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
$(COMPILE) -c `test -f $< || echo '$(srcdir)/'`$<
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
@am__fastdepCC_TRUE@ -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
@am__fastdepCC_TRUE@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
@am__fastdepCC_TRUE@ fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
.c.obj:
@AMDEP_TRUE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
@AMDEP_TRUE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
$(COMPILE) -c `cygpath -w $<`
CCDEPMODE = @CCDEPMODE@
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
@am__fastdepCC_TRUE@ -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'`; \
@am__fastdepCC_TRUE@ then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
@am__fastdepCC_TRUE@ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
@am__fastdepCC_TRUE@ fi
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'`
__fpending_.c: lib/__fpending.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/lib/__fpending.c; then echo $(srcdir)/lib/__fpending.c; else echo lib/__fpending.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > __fpending_.c || rm -f __fpending_.c
acl_.c: acl.c $(ANSI2KNR)
@@ -561,6 +611,8 @@ backupfile_.c: backupfile.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/backupfile.c; then echo $(srcdir)/backupfile.c; else echo backupfile.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > backupfile_.c || rm -f backupfile_.c
basename_.c: basename.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/basename.c; then echo $(srcdir)/basename.c; else echo basename.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > basename_.c || rm -f basename_.c
c-stack_.c: c-stack.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/c-stack.c; then echo $(srcdir)/c-stack.c; else echo c-stack.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > c-stack_.c || rm -f c-stack_.c
canon-host_.c: canon-host.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/canon-host.c; then echo $(srcdir)/canon-host.c; else echo canon-host.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > canon-host_.c || rm -f canon-host_.c
chown_.c: lib/chown.c $(ANSI2KNR)
@@ -583,6 +635,10 @@ euidaccess_.c: lib/euidaccess.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/lib/euidaccess.c; then echo $(srcdir)/lib/euidaccess.c; else echo lib/euidaccess.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > euidaccess_.c || rm -f euidaccess_.c
exclude_.c: exclude.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/exclude.c; then echo $(srcdir)/exclude.c; else echo exclude.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > exclude_.c || rm -f exclude_.c
exitfail_.c: exitfail.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/exitfail.c; then echo $(srcdir)/exitfail.c; else echo exitfail.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > exitfail_.c || rm -f exitfail_.c
file-type_.c: file-type.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/file-type.c; then echo $(srcdir)/file-type.c; else echo file-type.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > file-type_.c || rm -f file-type_.c
fileblocks_.c: lib/fileblocks.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/lib/fileblocks.c; then echo $(srcdir)/lib/fileblocks.c; else echo lib/fileblocks.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > fileblocks_.c || rm -f fileblocks_.c
filemode_.c: filemode.c $(ANSI2KNR)
@@ -645,8 +701,6 @@ localcharset_.c: localcharset.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/localcharset.c; then echo $(srcdir)/localcharset.c; else echo localcharset.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > localcharset_.c || rm -f localcharset_.c
long-options_.c: long-options.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/long-options.c; then echo $(srcdir)/long-options.c; else echo long-options.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > long-options_.c || rm -f long-options_.c
lstat_.c: lib/lstat.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/lib/lstat.c; then echo $(srcdir)/lib/lstat.c; else echo lib/lstat.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > lstat_.c || rm -f lstat_.c
makepath_.c: makepath.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/makepath.c; then echo $(srcdir)/makepath.c; else echo makepath.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > makepath_.c || rm -f makepath_.c
malloc_.c: lib/malloc.c $(ANSI2KNR)
@@ -725,8 +779,8 @@ settime_.c: settime.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/settime.c; then echo $(srcdir)/settime.c; else echo settime.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > settime_.c || rm -f settime_.c
sha_.c: sha.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/sha.c; then echo $(srcdir)/sha.c; else echo sha.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > sha_.c || rm -f sha_.c
stat_.c: lib/stat.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/lib/stat.c; then echo $(srcdir)/lib/stat.c; else echo lib/stat.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > stat_.c || rm -f stat_.c
sig2str_.c: lib/sig2str.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/lib/sig2str.c; then echo $(srcdir)/lib/sig2str.c; else echo lib/sig2str.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > sig2str_.c || rm -f sig2str_.c
stpcpy_.c: lib/stpcpy.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/lib/stpcpy.c; then echo $(srcdir)/lib/stpcpy.c; else echo lib/stpcpy.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > stpcpy_.c || rm -f stpcpy_.c
strcasecmp_.c: lib/strcasecmp.c $(ANSI2KNR)
@@ -783,6 +837,8 @@ xmalloc_.c: xmalloc.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/xmalloc.c; then echo $(srcdir)/xmalloc.c; else echo xmalloc.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > xmalloc_.c || rm -f xmalloc_.c
xmemcoll_.c: xmemcoll.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/xmemcoll.c; then echo $(srcdir)/xmemcoll.c; else echo xmemcoll.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > xmemcoll_.c || rm -f xmemcoll_.c
xnanosleep_.c: xnanosleep.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/xnanosleep.c; then echo $(srcdir)/xnanosleep.c; else echo xnanosleep.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > xnanosleep_.c || rm -f xnanosleep_.c
xreadlink_.c: xreadlink.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/xreadlink.c; then echo $(srcdir)/xreadlink.c; else echo xreadlink.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > xreadlink_.c || rm -f xreadlink_.c
xstrdup_.c: xstrdup.c $(ANSI2KNR)
@@ -801,11 +857,12 @@ yesno_.c: yesno.c $(ANSI2KNR)
$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/yesno.c; then echo $(srcdir)/yesno.c; else echo yesno.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > yesno_.c || rm -f yesno_.c
__fpending_.$(OBJEXT) acl_.$(OBJEXT) addext_.$(OBJEXT) \
alloca_.$(OBJEXT) argmatch_.$(OBJEXT) atexit_.$(OBJEXT) \
backupfile_.$(OBJEXT) basename_.$(OBJEXT) canon-host_.$(OBJEXT) \
chown_.$(OBJEXT) closeout_.$(OBJEXT) diacrit_.$(OBJEXT) \
dirfd_.$(OBJEXT) dirname_.$(OBJEXT) dup-safer_.$(OBJEXT) \
dup2_.$(OBJEXT) error_.$(OBJEXT) euidaccess_.$(OBJEXT) \
exclude_.$(OBJEXT) fileblocks_.$(OBJEXT) filemode_.$(OBJEXT) \
backupfile_.$(OBJEXT) basename_.$(OBJEXT) c-stack_.$(OBJEXT) \
canon-host_.$(OBJEXT) chown_.$(OBJEXT) closeout_.$(OBJEXT) \
diacrit_.$(OBJEXT) dirfd_.$(OBJEXT) dirname_.$(OBJEXT) \
dup-safer_.$(OBJEXT) dup2_.$(OBJEXT) error_.$(OBJEXT) \
euidaccess_.$(OBJEXT) exclude_.$(OBJEXT) exitfail_.$(OBJEXT) \
file-type_.$(OBJEXT) fileblocks_.$(OBJEXT) filemode_.$(OBJEXT) \
fnmatch_.$(OBJEXT) fopen-safer_.$(OBJEXT) fsusage_.$(OBJEXT) \
ftruncate_.$(OBJEXT) full-write_.$(OBJEXT) getdate_.$(OBJEXT) \
getgroups_.$(OBJEXT) gethostname_.$(OBJEXT) getline_.$(OBJEXT) \
@@ -815,36 +872,36 @@ gettimeofday_.$(OBJEXT) getugroups_.$(OBJEXT) getusershell_.$(OBJEXT) \
group-member_.$(OBJEXT) hard-locale_.$(OBJEXT) hash_.$(OBJEXT) \
hash-pjw_.$(OBJEXT) human_.$(OBJEXT) idcache_.$(OBJEXT) \
isdir_.$(OBJEXT) lchown_.$(OBJEXT) linebuffer_.$(OBJEXT) \
localcharset_.$(OBJEXT) long-options_.$(OBJEXT) lstat_.$(OBJEXT) \
makepath_.$(OBJEXT) malloc_.$(OBJEXT) mbswidth_.$(OBJEXT) \
md5_.$(OBJEXT) memcasecmp_.$(OBJEXT) memchr_.$(OBJEXT) \
memcmp_.$(OBJEXT) memcoll_.$(OBJEXT) memcpy_.$(OBJEXT) \
memmove_.$(OBJEXT) memrchr_.$(OBJEXT) memset_.$(OBJEXT) \
mkdir_.$(OBJEXT) mkstemp_.$(OBJEXT) mktime_.$(OBJEXT) \
modechange_.$(OBJEXT) mountlist_.$(OBJEXT) nanosleep_.$(OBJEXT) \
obstack_.$(OBJEXT) path-concat_.$(OBJEXT) physmem_.$(OBJEXT) \
posixtm_.$(OBJEXT) posixver_.$(OBJEXT) putenv_.$(OBJEXT) \
quote_.$(OBJEXT) quotearg_.$(OBJEXT) readtokens_.$(OBJEXT) \
readutmp_.$(OBJEXT) realloc_.$(OBJEXT) regex_.$(OBJEXT) \
rename_.$(OBJEXT) rmdir_.$(OBJEXT) rpmatch_.$(OBJEXT) \
safe-read_.$(OBJEXT) same_.$(OBJEXT) save-cwd_.$(OBJEXT) \
savedir_.$(OBJEXT) settime_.$(OBJEXT) sha_.$(OBJEXT) stat_.$(OBJEXT) \
stpcpy_.$(OBJEXT) strcasecmp_.$(OBJEXT) strcspn_.$(OBJEXT) \
strdup_.$(OBJEXT) strftime_.$(OBJEXT) stripslash_.$(OBJEXT) \
strncasecmp_.$(OBJEXT) strndup_.$(OBJEXT) strnlen_.$(OBJEXT) \
strpbrk_.$(OBJEXT) strstr_.$(OBJEXT) strtod_.$(OBJEXT) \
strtoimax_.$(OBJEXT) strtol_.$(OBJEXT) strtoll_.$(OBJEXT) \
strtoul_.$(OBJEXT) strtoull_.$(OBJEXT) strtoumax_.$(OBJEXT) \
strverscmp_.$(OBJEXT) tempname_.$(OBJEXT) unicodeio_.$(OBJEXT) \
userspec_.$(OBJEXT) utime_.$(OBJEXT) version-etc_.$(OBJEXT) \
xgetcwd_.$(OBJEXT) xgethostname_.$(OBJEXT) xmalloc_.$(OBJEXT) \
xmemcoll_.$(OBJEXT) xreadlink_.$(OBJEXT) xstrdup_.$(OBJEXT) \
localcharset_.$(OBJEXT) long-options_.$(OBJEXT) makepath_.$(OBJEXT) \
malloc_.$(OBJEXT) mbswidth_.$(OBJEXT) md5_.$(OBJEXT) \
memcasecmp_.$(OBJEXT) memchr_.$(OBJEXT) memcmp_.$(OBJEXT) \
memcoll_.$(OBJEXT) memcpy_.$(OBJEXT) memmove_.$(OBJEXT) \
memrchr_.$(OBJEXT) memset_.$(OBJEXT) mkdir_.$(OBJEXT) \
mkstemp_.$(OBJEXT) mktime_.$(OBJEXT) modechange_.$(OBJEXT) \
mountlist_.$(OBJEXT) nanosleep_.$(OBJEXT) obstack_.$(OBJEXT) \
path-concat_.$(OBJEXT) physmem_.$(OBJEXT) posixtm_.$(OBJEXT) \
posixver_.$(OBJEXT) putenv_.$(OBJEXT) quote_.$(OBJEXT) \
quotearg_.$(OBJEXT) readtokens_.$(OBJEXT) readutmp_.$(OBJEXT) \
realloc_.$(OBJEXT) regex_.$(OBJEXT) rename_.$(OBJEXT) rmdir_.$(OBJEXT) \
rpmatch_.$(OBJEXT) safe-read_.$(OBJEXT) same_.$(OBJEXT) \
save-cwd_.$(OBJEXT) savedir_.$(OBJEXT) settime_.$(OBJEXT) \
sha_.$(OBJEXT) sig2str_.$(OBJEXT) stpcpy_.$(OBJEXT) \
strcasecmp_.$(OBJEXT) strcspn_.$(OBJEXT) strdup_.$(OBJEXT) \
strftime_.$(OBJEXT) stripslash_.$(OBJEXT) strncasecmp_.$(OBJEXT) \
strndup_.$(OBJEXT) strnlen_.$(OBJEXT) strpbrk_.$(OBJEXT) \
strstr_.$(OBJEXT) strtod_.$(OBJEXT) strtoimax_.$(OBJEXT) \
strtol_.$(OBJEXT) strtoll_.$(OBJEXT) strtoul_.$(OBJEXT) \
strtoull_.$(OBJEXT) strtoumax_.$(OBJEXT) strverscmp_.$(OBJEXT) \
tempname_.$(OBJEXT) unicodeio_.$(OBJEXT) userspec_.$(OBJEXT) \
utime_.$(OBJEXT) version-etc_.$(OBJEXT) xgetcwd_.$(OBJEXT) \
xgethostname_.$(OBJEXT) xmalloc_.$(OBJEXT) xmemcoll_.$(OBJEXT) \
xnanosleep_.$(OBJEXT) xreadlink_.$(OBJEXT) xstrdup_.$(OBJEXT) \
xstrtod_.$(OBJEXT) xstrtoimax_.$(OBJEXT) xstrtol_.$(OBJEXT) \
xstrtoul_.$(OBJEXT) xstrtoumax_.$(OBJEXT) yesno_.$(OBJEXT) : \
$(ANSI2KNR)
.y.c:
$(YACCCOMPILE) `test -f $< || echo '$(srcdir)/'`$<
$(YACCCOMPILE) `test -f '$<' || echo '$(srcdir)/'`$<
sed '/^#/ s|y\.tab\.c|$@|' y.tab.c >$@
rm -f y.tab.c
if test -f y.tab.h; then \
@@ -867,6 +924,9 @@ uninstall-info-am:
ETAGS = etags
ETAGSFLAGS =
CTAGS = ctags
CTAGSFLAGS =
tags: TAGS
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -892,20 +952,39 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|| $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
top_distdir = ..
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
distdir: $(DISTFILES)
@for file in $(DISTFILES); do \
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \
case $$file in \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
esac; \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
@@ -915,8 +994,10 @@ distdir: $(DISTFILES)
dir=''; \
fi; \
if test -d $$d/$$file; then \
cp -pR $$d/$$file $(distdir)$$dir \
|| exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
@@ -949,13 +1030,15 @@ clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
-rm -f Makefile $(CONFIG_CLEAN_FILES)
-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
-test -z "$(BUILT_SOURCES)$(MAINTAINERCLEANFILES)" || rm -f $(BUILT_SOURCES) $(MAINTAINERCLEANFILES)
-rm -f getdate.c
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
clean: clean-am
clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
@@ -991,27 +1074,37 @@ mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-compile mostlyclean-generic mostlyclean-kr
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-info-am uninstall-local
.PHONY: GTAGS all all-am all-local check check-am clean clean-generic \
clean-noinstLIBRARIES distclean distclean-compile \
distclean-depend distclean-generic distclean-tags distdir dvi \
dvi-am info info-am install install-am install-data \
install-data-am install-exec install-exec-am install-exec-local \
install-info install-info-am install-man install-strip \
installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \
mostlyclean-generic mostlyclean-kr tags uninstall uninstall-am \
.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \
clean-generic clean-noinstLIBRARIES ctags distclean \
distclean-compile distclean-depend distclean-generic \
distclean-tags distdir dvi dvi-am info info-am install \
install-am install-data install-data-am install-exec \
install-exec-am install-exec-local install-info install-info-am \
install-man install-strip installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-compile mostlyclean-generic \
mostlyclean-kr pdf pdf-am ps ps-am tags uninstall uninstall-am \
uninstall-info-am uninstall-local
lstat.c: xstat.in
sed \
-e '/@IGNORE@/d' \
-e 's/@xstat@/lstat/g' \
-e '/_LSTAT_ONLY@/d' \
-e '/@BEGIN_STAT_ONLY@/,/@END_STAT_ONLY@/d' \
$(srcdir)/xstat.in > $@-t
mv $@-t $@
$(srcdir)/xstat.in > t-$@
mv t-$@ $@
stat.c: xstat.in
sed \
@@ -1019,8 +1112,8 @@ stat.c: xstat.in
-e 's/@xstat@/stat/g' \
-e '/_STAT_ONLY@/d' \
-e '/@BEGIN_LSTAT_ONLY@/,/@END_LSTAT_ONLY@/d' \
$(srcdir)/xstat.in > $@-t
mv $@-t $@
$(srcdir)/xstat.in > t-$@
mv t-$@ $@
# The following is needed in order to install a simple file in $(libdir)
# which is shared with other installed packages. We use a list of referencing
@@ -1060,8 +1153,8 @@ charset.alias: config.charset
$(SHELL) $(srcdir)/config.charset '@host@' > t-$@
mv t-$@ $@
.sin.sed:
sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $< > $@-t
mv $@-t $@
sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $< > t-$@
mv t-$@ $@
###############################################

View File

@@ -1,5 +1,5 @@
/* addext.c -- add an extension to a file name
Copyright 1990, 1997, 1998, 1999, 2001 Free Software Foundation, Inc.
Copyright 1990, 1997, 1998, 1999, 2001, 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -83,7 +83,7 @@ addext (char *filename, char const *ext, int e)
*s = c;
}
if (0 <= name_max || errno == 0)
slen_max = name_max == (size_t) name_max ? name_max : -1;
slen_max = name_max == (long) (size_t) name_max ? name_max : -1;
}
#endif

435
lib/c-stack.c Normal file
View File

@@ -0,0 +1,435 @@
/* Stack overflow handling.
Copyright (C) 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Written by Paul Eggert. */
/* NOTES:
A program that uses alloca, dynamic arrays, or large local
variables may extend the stack by more than a page at a time. If
so, when the stack overflows the operating system may not detect
the overflow until the program uses the array, and this module may
incorrectly report a program error instead of a stack overflow.
To avoid this problem, allocate only small objects on the stack; a
program should be OK if it limits single allocations to a page or
less. Allocate larger arrays in static storage, or on the heap
(e.g., with malloc). Yes, this is a pain, but we don't know of any
better solution that is portable.
No attempt has been made to deal with multithreaded applications.
If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, the current implementation
assumes that, if the RLIMIT_STACK limit changes during execution,
then c_stack_action is invoked immediately afterwards. */
#if HAVE_CONFIG_H
# include <config.h>
#endif
#ifndef __attribute__
# if __GNUC__ < 3 || __STRICT_ANSI__
# define __attribute__(x)
# endif
#endif
#include "gettext.h"
#define _(msgid) gettext (msgid)
#include <errno.h>
#ifndef ENOTSUP
# define ENOTSUP EINVAL
#endif
#ifndef EOVERFLOW
# define EOVERFLOW EINVAL
#endif
#include <signal.h>
#if ! HAVE_STACK_T && ! defined stack_t
typedef struct sigaltstack stack_t;
#endif
#include <stdlib.h>
#include <string.h>
#if HAVE_SYS_RESOURCE_H
/* Include sys/time.h here, because...
SunOS-4.1.x <sys/resource.h> fails to include <sys/time.h>.
This gives "incomplete type" errors for ru_utime and tu_stime. */
# if HAVE_SYS_TIME_H
# include <sys/time.h>
# endif
# include <sys/resource.h>
#endif
#if HAVE_UCONTEXT_H
# include <ucontext.h>
#endif
#if HAVE_UNISTD_H
# include <unistd.h>
#endif
#ifndef STDERR_FILENO
# define STDERR_FILENO 2
#endif
#if DEBUG
# include <stdio.h>
#endif
#include "c-stack.h"
#include "exitfail.h"
extern char *program_name;
/* The user-specified action to take when a SEGV-related program error
or stack overflow occurs. */
static void (* volatile segv_action) (int);
/* Translated messages for program errors and stack overflow. Do not
translate them in the signal handler, since gettext is not
async-signal-safe. */
static char const * volatile program_error_message;
static char const * volatile stack_overflow_message;
/* Output an error message, then exit with status EXIT_FAILURE if it
appears to have been a stack overflow, or with a core dump
otherwise. This function is async-signal-safe. */
static void die (int) __attribute__ ((noreturn));
static void
die (int signo)
{
char const *message =
signo ? program_error_message : stack_overflow_message;
segv_action (signo);
write (STDERR_FILENO, program_name, strlen (program_name));
write (STDERR_FILENO, ": ", 2);
write (STDERR_FILENO, message, strlen (message));
write (STDERR_FILENO, "\n", 1);
if (! signo)
_exit (exit_failure);
kill (getpid (), signo);
abort ();
}
#if HAVE_SIGALTSTACK && HAVE_DECL_SIGALTSTACK
/* Direction of the C runtime stack. This function is
async-signal-safe. */
# if STACK_DIRECTION
# define find_stack_direction(ptr) STACK_DIRECTION
# else
static int
find_stack_direction (char const *addr)
{
char dummy;
return ! addr ? find_stack_direction (&dummy) : addr < &dummy ? 1 : -1;
}
# endif
# if HAVE_XSI_STACK_OVERFLOW_HEURISTIC
# define get_stack_location(argv) 0
# else
# if defined RLIMIT_STACK && defined _SC_PAGESIZE
/* Return the minimum machine address deducible from ARGV. This
includes the addresses of all the strings that ARGV points at, as
well as the address of ARGV itself. */
static char const *
min_address_from_argv (char * const *argv)
{
char const *min = (char const *) argv;
char const *p;
while ((p = *argv++))
if (p < min)
min = p;
return min;
}
/* Return the maximum machine address deducible from ARGV. */
static char const *
max_address_from_argv (char * const *argv)
{
char const *max = *argv;
char const *max1;
char const *p;
while ((p = *argv++))
if (max < p)
max = p;
max1 = (char const *) (argv + 1);
return max && max1 < max ? max + strlen (max) + 1 : max1;
}
# endif
/* The base and size of the stack, determined at startup. */
static char const * volatile stack_base;
static size_t volatile stack_size;
/* Store the base and size of the stack into the static variables
STACK_BASE and STACK_SIZE. The base is the numerically lowest
address in the stack. Return -1 (setting errno) if this cannot be
done. */
static int
get_stack_location (char * const *argv)
{
# if ! (defined RLIMIT_STACK && defined _SC_PAGESIZE)
errno = ENOTSUP;
return -1;
# else
struct rlimit rlimit;
int r = getrlimit (RLIMIT_STACK, &rlimit);
if (r == 0)
{
char const *base;
size_t size = rlimit.rlim_cur;
extern char **environ;
size_t page_size = sysconf (_SC_PAGESIZE);
int stack_direction = find_stack_direction (0);
# if HAVE_GETCONTEXT && HAVE_DECL_GETCONTEXT
ucontext_t context;
if (getcontext (&context) == 0)
{
base = context.uc_stack.ss_sp;
if (stack_direction < 0)
base -= size - context.uc_stack.ss_size;
}
else
# endif
{
if (stack_direction < 0)
{
char const *a = max_address_from_argv (argv);
char const *b = max_address_from_argv (environ);
base = (a < b ? b : a) - size;
base += - (size_t) base % page_size;
}
else
{
char const *a = min_address_from_argv (argv);
char const *b = min_address_from_argv (environ);
base = a < b ? a : b;
base -= (size_t) base % page_size;
}
}
if (size != rlimit.rlim_cur
|| rlimit.rlim_cur < 0
|| base + size < base
# ifdef RLIM_SAVED_CUR
|| rlimit.rlim_cur == RLIM_SAVED_CUR
# endif
# ifdef RLIM_SAVED_MAX
|| rlimit.rlim_cur == RLIM_SAVED_MAX
# endif
# ifdef RLIM_INFINITY
|| rlimit.rlim_cur == RLIM_INFINITY
# endif
)
{
errno = EOVERFLOW;
return -1;
}
stack_base = base;
stack_size = size;
# if DEBUG
fprintf (stderr, "get_stack_location base=%p size=%lx\n",
base, (unsigned long) size);
# endif
}
return r;
# endif
}
# endif
/* Storage for the alternate signal stack. */
static union
{
char buffer[SIGSTKSZ];
/* These other members are for proper alignment. There's no
standard way to guarantee stack alignment, but this seems enough
in practice. */
long double ld;
long l;
void *p;
} alternate_signal_stack;
# if defined SA_ONSTACK && defined SA_SIGINFO && defined _SC_PAGESIZE
/* Handle a segmentation violation and exit. This function is
async-signal-safe. */
static void segv_handler (int, siginfo_t *, void *) __attribute__((noreturn));
static void
segv_handler (int signo, siginfo_t *info,
void *context __attribute__ ((unused)))
{
/* Clear SIGNO if it seems to have been a stack overflow. */
if (0 < info->si_code)
{
/* If the faulting address is within the stack, or within one
page of the stack end, assume that it is a stack
overflow. */
# if HAVE_XSI_STACK_OVERFLOW_HEURISTIC
ucontext_t const *user_context = context;
char const *stack_base = user_context->uc_stack.ss_sp;
size_t stack_size = user_context->uc_stack.ss_size;
# endif
char const *faulting_address = info->si_addr;
size_t s = faulting_address - stack_base;
size_t page_size = sysconf (_SC_PAGESIZE);
if (find_stack_direction (0) < 0)
s += page_size;
if (s < stack_size + page_size)
signo = 0;
# if DEBUG
{
char buf[1024];
sprintf (buf,
"segv_handler fault=%p base=%p size=%lx page=%lx signo=%d\n",
faulting_address, stack_base, (unsigned long) stack_size,
(unsigned long) page_size, signo);
write (STDERR_FILENO, buf, strlen (buf));
}
# endif
}
die (signo);
}
# endif
static void
null_action (int signo __attribute__ ((unused)))
{
}
/* Assuming ARGV is the argument vector of `main', set up ACTION so
that it is invoked on C stack overflow. Return -1 (setting errno)
if this cannot be done.
When ACTION is called, it is passed an argument equal to SIGSEGV
for a segmentation violation that does not appear related to stack
overflow, and is passed zero otherwise.
A null ACTION acts like an action that does nothing.
ACTION must be async-signal-safe. ACTION together with its callees
must not require more than SIGSTKSZ bytes of stack space. */
int
c_stack_action (char * const *argv __attribute__ ((unused)),
void (*action) (int))
{
int r = get_stack_location (argv);
if (r != 0)
return r;
{
stack_t st;
st.ss_flags = 0;
st.ss_sp = alternate_signal_stack.buffer;
st.ss_size = sizeof alternate_signal_stack.buffer;
r = sigaltstack (&st, 0);
if (r != 0)
return r;
}
segv_action = action ? action : null_action;
program_error_message = _("program error");
stack_overflow_message = _("stack overflow");
{
# if ! (defined SA_ONSTACK && defined SA_SIGINFO && defined _SC_PAGESIZE)
return signal (SIGSEGV, die) == SIG_ERR ? -1 : 0;
# else
struct sigaction act;
sigemptyset (&act.sa_mask);
/* POSIX 1003.1-2001 says SA_RESETHAND implies SA_NODEFER, but
this is not true on Solaris 8 at least. It doesn't hurt to use
SA_NODEFER here, so leave it in. */
act.sa_flags = SA_NODEFER | SA_ONSTACK | SA_RESETHAND | SA_SIGINFO;
act.sa_sigaction = segv_handler;
return sigaction (SIGSEGV, &act, 0);
# endif
}
}
#else /* ! (HAVE_SIGALTSTACK && HAVE_DECL_SIGALTSTACK) */
int
c_stack_action (char * const *argv __attribute__ ((unused)),
void (*action) (int) __attribute__ ((unused)))
{
errno = ENOTSUP;
return -1;
}
#endif
#if DEBUG
int volatile exit_failure;
static long
recurse (char *p)
{
char array[500];
array[0] = 1;
return *p + recurse (array);
}
char *program_name;
int
main (int argc __attribute__ ((unused)), char **argv)
{
program_name = argv[0];
fprintf (stderr, "The last line of output should be \"stack overflow\".\n");
if (c_stack_action (argv, 0) == 0)
return recurse ("\1");
perror ("c_stack_action");
return 1;
}
#endif /* DEBUG */
/*
Local Variables:
compile-command: "gcc -DDEBUG -DHAVE_CONFIG_H -I.. -g -O -Wall -W c-stack.c"
End:
*/

19
lib/c-stack.h Normal file
View File

@@ -0,0 +1,19 @@
/* Stack overflow handling.
Copyright (C) 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
int c_stack_action (char * const *, void (*) (int));

View File

@@ -22,6 +22,6 @@
#ifndef HAVE_DECL_DIRFD
"this configure-time declaration test was not run"
#endif
#if !HAVE_DECL_DIRFD
#if !HAVE_DECL_DIRFD && !defined dirfd
int dirfd (DIR const *);
#endif

31
lib/exitfail.c Normal file
View File

@@ -0,0 +1,31 @@
/* Failure exit status
Copyright (C) 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; see the file COPYING.
If not, write to the Free Software Foundation,
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#if HAVE_CONFIG_H
# include <config.h>
#endif
#if HAVE_STDLIB_H
# include <stdlib.h>
#endif
#ifndef EXIT_FAILURE
# define EXIT_FAILURE 1
#endif
int volatile exit_failure = EXIT_FAILURE;

20
lib/exitfail.h Normal file
View File

@@ -0,0 +1,20 @@
/* Failure exit status
Copyright (C) 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; see the file COPYING.
If not, write to the Free Software Foundation,
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
extern int volatile exit_failure;

72
lib/file-type.c Normal file
View File

@@ -0,0 +1,72 @@
/* Return a string describing the type of a file.
Copyright (C) 1993, 1994, 2001, 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Written by Paul Eggert. */
#if HAVE_CONFIG_H
# include <config.h>
#endif
#include <sys/types.h>
#include <sys/stat.h>
#include "file-type.h"
#include <gettext.h>
#define _(text) gettext (text)
char const *
file_type (struct stat const *st)
{
/* See POSIX 1003.1-2001 XCU Table 4-8 lines 17093-17107 for some of
these formats.
To keep diagnostics grammatical in English, the returned string
must start with a consonant. */
if (S_ISREG (st->st_mode))
return st->st_size == 0 ? _("regular empty file") : _("regular file");
if (S_ISDIR (st->st_mode))
return _("directory");
if (S_ISBLK (st->st_mode))
return _("block special file");
if (S_ISCHR (st->st_mode))
return _("character special file");
if (S_ISFIFO (st->st_mode))
return _("fifo");
if (S_ISLNK (st->st_mode))
return _("symbolic link");
if (S_ISSOCK (st->st_mode))
return _("socket");
if (S_TYPEISMQ (st))
return _("message queue");
if (S_TYPEISSEM (st))
return _("semaphore");
if (S_TYPEISSHM (st))
return _("shared memory object");
return _("weird file");
}

161
lib/file-type.h Normal file
View File

@@ -0,0 +1,161 @@
/* Return a string describing the type of a file.
Copyright (C) 1993, 1994, 2001, 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Written by Paul Eggert and Jim Meyering. */
#ifndef FILE_TYPE_H
# define FILE_TYPE_H 1
# if ! defined S_ISREG && ! defined S_IFREG
you must include <sys/stat.h> before including this file
# endif
char const *file_type (struct stat const *);
# ifndef S_IFMT
# define S_IFMT 0170000
# endif
# if STAT_MACROS_BROKEN
# undef S_ISBLK
# undef S_ISCHR
# undef S_ISDIR
# undef S_ISDOOR
# undef S_ISFIFO
# undef S_ISLNK
# undef S_ISNAM
# undef S_ISMPB
# undef S_ISMPC
# undef S_ISNWK
# undef S_ISREG
# undef S_ISSOCK
# endif
# ifndef S_ISBLK
# ifdef S_IFBLK
# define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK)
# else
# define S_ISBLK(m) 0
# endif
# endif
# ifndef S_ISCHR
# ifdef S_IFCHR
# define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)
# else
# define S_ISCHR(m) 0
# endif
# endif
# ifndef S_ISDIR
# ifdef S_IFDIR
# define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
# else
# define S_ISDIR(m) 0
# endif
# endif
# ifndef S_ISDOOR /* Solaris 2.5 and up */
# ifdef S_IFDOOR
# define S_ISDOOR(m) (((m) & S_IFMT) == S_IFDOOR)
# else
# define S_ISDOOR(m) 0
# endif
# endif
# ifndef S_ISFIFO
# ifdef S_IFIFO
# define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO)
# else
# define S_ISFIFO(m) 0
# endif
# endif
# ifndef S_ISLNK
# ifdef S_IFLNK
# define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
# else
# define S_ISLNK(m) 0
# endif
# endif
# ifndef S_ISMPB /* V7 */
# ifdef S_IFMPB
# define S_ISMPB(m) (((m) & S_IFMT) == S_IFMPB)
# define S_ISMPC(m) (((m) & S_IFMT) == S_IFMPC)
# else
# define S_ISMPB(m) 0
# define S_ISMPC(m) 0
# endif
# endif
# ifndef S_ISNAM /* Xenix */
# ifdef S_IFNAM
# define S_ISNAM(m) (((m) & S_IFMT) == S_IFNAM)
# else
# define S_ISNAM(m) 0
# endif
# endif
# ifndef S_ISNWK /* HP/UX */
# ifdef S_IFNWK
# define S_ISNWK(m) (((m) & S_IFMT) == S_IFNWK)
# else
# define S_ISNWK(m) 0
# endif
# endif
# ifndef S_ISREG
# ifdef S_IFREG
# define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
# else
# define S_ISREG(m) 0
# endif
# endif
# ifndef S_ISSOCK
# ifdef S_IFSOCK
# define S_ISSOCK(m) (((m) & S_IFMT) == S_IFSOCK)
# else
# define S_ISSOCK(m) 0
# endif
# endif
# ifndef S_TYPEISSEM
# ifdef S_INSEM
# define S_TYPEISSEM(p) (S_ISNAM ((p)->st_mode) && (p)->st_rdev == S_INSEM)
# else
# define S_TYPEISSEM(p) 0
# endif
# endif
# ifndef S_TYPEISSHM
# ifdef S_INSHD
# define S_TYPEISSHM(p) (S_ISNAM ((p)->st_mode) && (p)->st_rdev == S_INSHD)
# else
# define S_TYPEISSHM(p) 0
# endif
# endif
# ifndef S_TYPEISMQ
# define S_TYPEISMQ(p) 0
# endif
#endif /* FILE_TYPE_H */

View File

@@ -1,4 +1,5 @@
/* Copyright 1991, 1992, 1993, 1996, 1997, 2000 Free Software Foundation, Inc.
/* Copyright (C) 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000, 2001,
2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -10,9 +11,9 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#if HAVE_CONFIG_H
# include <config.h>
@@ -23,208 +24,362 @@
# define _GNU_SOURCE 1
#endif
#ifdef __GNUC__
# define alloca __builtin_alloca
# define HAVE_ALLOCA 1
#else
# if defined HAVE_ALLOCA_H || defined _LIBC
# include <alloca.h>
# else
# ifdef _AIX
# pragma alloca
# else
# ifndef alloca
char *alloca ();
# endif
# endif
# endif
#endif
#if ! defined __builtin_expect && __GNUC__ < 3
# define __builtin_expect(expr, expected) (expr)
#endif
#include <assert.h>
#include <errno.h>
#include <fnmatch.h>
#include <ctype.h>
#if defined STDC_HEADERS || !defined isascii
# define IN_CTYPE_DOMAIN(c) 1
#if HAVE_STRING_H || defined _LIBC
# include <string.h>
#else
# define IN_CTYPE_DOMAIN(c) isascii (c)
# if HAVE_STRINGS_H
# include <strings.h>
# endif
#endif
#define ISUPPER(c) (IN_CTYPE_DOMAIN (c) && isupper (c))
#if defined STDC_HEADERS || defined _LIBC
# include <stddef.h>
# include <stdlib.h>
#endif
#define WIDE_CHAR_SUPPORT (HAVE_WCTYPE_H && HAVE_WCHAR_H && HAVE_BTOWC)
/* For platform which support the ISO C amendement 1 functionality we
support user defined character classes. */
#if defined _LIBC || WIDE_CHAR_SUPPORT
/* Solaris 2.5 has a bug: <wchar.h> must be included before <wctype.h>. */
# include <wchar.h>
# include <wctype.h>
#endif
/* We need some of the locale data (the collation sequence information)
but there is no interface to get this information in general. Therefore
we support a correct implementation only in glibc. */
#ifdef _LIBC
# include "../locale/localeinfo.h"
# include "../locale/elem-hash.h"
# include "../locale/coll-lookup.h"
# include <shlib-compat.h>
# define CONCAT(a,b) __CONCAT(a,b)
# define mbsinit __mbsinit
# define mbsrtowcs __mbsrtowcs
# define fnmatch __fnmatch
extern int fnmatch (const char *pattern, const char *string, int flags);
#endif
/* We often have to test for FNM_FILE_NAME and FNM_PERIOD being both set. */
#define NO_LEADING_PERIOD(flags) \
((flags & (FNM_FILE_NAME | FNM_PERIOD)) == (FNM_FILE_NAME | FNM_PERIOD))
/* Comment out all this code if we are using the GNU C Library, are not
actually compiling the library itself, and have not detected a bug
in the library. This code is part of the GNU C
Library, but also included in many other GNU distributions. Compiling
and linking in this code is a waste when using the GNU C library
(especially if it is a shared library). Rather than having every GNU
program understand `configure --with-gnu-libc' and omit the object files,
it is simpler to just do this in the source for each such file. */
#if defined _LIBC || !defined __GNU_LIBRARY__ || !HAVE_FNMATCH_GNU
#ifndef errno
# if defined STDC_HEADERS || !defined isascii
# define ISASCII(c) 1
# else
# define ISASCII(c) isascii(c)
# endif
# ifdef isblank
# define ISBLANK(c) (ISASCII (c) && isblank (c))
# else
# define ISBLANK(c) ((c) == ' ' || (c) == '\t')
# endif
# ifdef isgraph
# define ISGRAPH(c) (ISASCII (c) && isgraph (c))
# else
# define ISGRAPH(c) (ISASCII (c) && isprint (c) && !isspace (c))
# endif
# define ISPRINT(c) (ISASCII (c) && isprint (c))
# define ISDIGIT(c) (ISASCII (c) && isdigit (c))
# define ISALNUM(c) (ISASCII (c) && isalnum (c))
# define ISALPHA(c) (ISASCII (c) && isalpha (c))
# define ISCNTRL(c) (ISASCII (c) && iscntrl (c))
# define ISLOWER(c) (ISASCII (c) && islower (c))
# define ISPUNCT(c) (ISASCII (c) && ispunct (c))
# define ISSPACE(c) (ISASCII (c) && isspace (c))
# define ISUPPER(c) (ISASCII (c) && isupper (c))
# define ISXDIGIT(c) (ISASCII (c) && isxdigit (c))
# define STREQ(s1, s2) ((strcmp (s1, s2) == 0))
# if defined _LIBC || WIDE_CHAR_SUPPORT
/* The GNU C library provides support for user-defined character classes
and the functions from ISO C amendement 1. */
# ifdef CHARCLASS_NAME_MAX
# define CHAR_CLASS_MAX_LENGTH CHARCLASS_NAME_MAX
# else
/* This shouldn't happen but some implementation might still have this
problem. Use a reasonable default value. */
# define CHAR_CLASS_MAX_LENGTH 256
# endif
# ifdef _LIBC
# define IS_CHAR_CLASS(string) __wctype (string)
# else
# define IS_CHAR_CLASS(string) wctype (string)
# endif
# ifdef _LIBC
# define ISWCTYPE(WC, WT) __iswctype (WC, WT)
# else
# define ISWCTYPE(WC, WT) iswctype (WC, WT)
# endif
# if (HAVE_MBSTATE_T && HAVE_MBSRTOWCS) || _LIBC
/* In this case we are implementing the multibyte character handling. */
# define HANDLE_MULTIBYTE 1
# endif
# else
# define CHAR_CLASS_MAX_LENGTH 6 /* Namely, `xdigit'. */
# define IS_CHAR_CLASS(string) \
(STREQ (string, "alpha") || STREQ (string, "upper") \
|| STREQ (string, "lower") || STREQ (string, "digit") \
|| STREQ (string, "alnum") || STREQ (string, "xdigit") \
|| STREQ (string, "space") || STREQ (string, "print") \
|| STREQ (string, "punct") || STREQ (string, "graph") \
|| STREQ (string, "cntrl") || STREQ (string, "blank"))
# endif
/* Avoid depending on library functions or files
whose names are inconsistent. */
# if !defined _LIBC && !defined getenv && !HAVE_DECL_GETENV
extern char *getenv ();
# endif
# ifndef errno
extern int errno;
#endif
# endif
/* Match STRING against the filename pattern PATTERN, returning zero if
it matches, nonzero if not. */
int
fnmatch (const char *pattern, const char *string, int flags)
{
register const char *p = pattern, *n = string;
register char c;
/* Global variable. */
static int posixly_correct;
# ifndef internal_function
/* Inside GNU libc we mark some function in a special way. In other
environments simply ignore the marking. */
# define internal_function
# endif
/* Note that this evaluates C many times. */
#define FOLD(c) ((flags & FNM_CASEFOLD) && ISUPPER ((unsigned char) (c)) \
? tolower ((unsigned char) (c)) \
: (c))
# ifdef _LIBC
# define FOLD(c) ((flags & FNM_CASEFOLD) ? tolower (c) : (c))
# else
# define FOLD(c) ((flags & FNM_CASEFOLD) && ISUPPER (c) ? tolower (c) : (c))
# endif
# define CHAR char
# define UCHAR unsigned char
# define INT int
# define FCT internal_fnmatch
# define EXT ext_match
# define END end_pattern
# define L(CS) CS
# ifdef _LIBC
# define BTOWC(C) __btowc (C)
# else
# define BTOWC(C) btowc (C)
# endif
# define STRLEN(S) strlen (S)
# define STRCAT(D, S) strcat (D, S)
# ifdef _LIBC
# define MEMPCPY(D, S, N) __mempcpy (D, S, N)
# else
# if HAVE_MEMPCPY
# define MEMPCPY(D, S, N) mempcpy (D, S, N)
# else
# define MEMPCPY(D, S, N) ((void *) ((char *) memcpy (D, S, N) + (N)))
# endif
# endif
# define MEMCHR(S, C, N) memchr (S, C, N)
# define STRCOLL(S1, S2) strcoll (S1, S2)
# include "fnmatch_loop.c"
while ((c = *p++) != '\0')
# if HANDLE_MULTIBYTE
# define FOLD(c) ((flags & FNM_CASEFOLD) ? towlower (c) : (c))
# define CHAR wchar_t
# define UCHAR wint_t
# define INT wint_t
# define FCT internal_fnwmatch
# define EXT ext_wmatch
# define END end_wpattern
# define L(CS) L##CS
# define BTOWC(C) (C)
# ifdef _LIBC
# define STRLEN(S) __wcslen (S)
# define STRCAT(D, S) __wcscat (D, S)
# define MEMPCPY(D, S, N) __wmempcpy (D, S, N)
# else
# define STRLEN(S) wcslen (S)
# define STRCAT(D, S) wcscat (D, S)
# if HAVE_WMEMPCPY
# define MEMPCPY(D, S, N) wmempcpy (D, S, N)
# else
# define MEMPCPY(D, S, N) (wmemcpy (D, S, N) + (N))
# endif
# endif
# define MEMCHR(S, C, N) wmemchr (S, C, N)
# define STRCOLL(S1, S2) wcscoll (S1, S2)
# define WIDE_CHAR_VERSION 1
# undef IS_CHAR_CLASS
/* We have to convert the wide character string in a multibyte string. But
we know that the character class names consist of alphanumeric characters
from the portable character set, and since the wide character encoding
for a member of the portable character set is the same code point as
its single-byte encoding, we can use a simplified method to convert the
string to a multibyte character string. */
static wctype_t
is_char_class (const wchar_t *wcs)
{
char s[CHAR_CLASS_MAX_LENGTH + 1];
char *cp = s;
do
{
c = FOLD (c);
switch (c)
/* Test for a printable character from the portable character set. */
# ifdef _LIBC
if (*wcs < 0x20 || *wcs > 0x7e
|| *wcs == 0x24 || *wcs == 0x40 || *wcs == 0x60)
return (wctype_t) 0;
# else
switch (*wcs)
{
case '?':
if (*n == '\0')
return FNM_NOMATCH;
else if ((flags & FNM_FILE_NAME) && *n == '/')
return FNM_NOMATCH;
else if ((flags & FNM_PERIOD) && *n == '.' &&
(n == string || ((flags & FNM_FILE_NAME) && n[-1] == '/')))
return FNM_NOMATCH;
case L' ': case L'!': case L'"': case L'#': case L'%':
case L'&': case L'\'': case L'(': case L')': case L'*':
case L'+': case L',': case L'-': case L'.': case L'/':
case L'0': case L'1': case L'2': case L'3': case L'4':
case L'5': case L'6': case L'7': case L'8': case L'9':
case L':': case L';': case L'<': case L'=': case L'>':
case L'?':
case L'A': case L'B': case L'C': case L'D': case L'E':
case L'F': case L'G': case L'H': case L'I': case L'J':
case L'K': case L'L': case L'M': case L'N': case L'O':
case L'P': case L'Q': case L'R': case L'S': case L'T':
case L'U': case L'V': case L'W': case L'X': case L'Y':
case L'Z':
case L'[': case L'\\': case L']': case L'^': case L'_':
case L'a': case L'b': case L'c': case L'd': case L'e':
case L'f': case L'g': case L'h': case L'i': case L'j':
case L'k': case L'l': case L'm': case L'n': case L'o':
case L'p': case L'q': case L'r': case L's': case L't':
case L'u': case L'v': case L'w': case L'x': case L'y':
case L'z': case L'{': case L'|': case L'}': case L'~':
break;
case '\\':
if (!(flags & FNM_NOESCAPE))
{
c = *p++;
if (c == '\0')
/* Trailing \ loses. */
return FNM_NOMATCH;
c = FOLD (c);
}
if (FOLD (*n) != c)
return FNM_NOMATCH;
break;
case '*':
if ((flags & FNM_PERIOD) && *n == '.' &&
(n == string || ((flags & FNM_FILE_NAME) && n[-1] == '/')))
return FNM_NOMATCH;
for (c = *p++; c == '?' || c == '*'; c = *p++)
{
if (c == '?')
{
/* A ? needs to match one character. */
if (*n == '\0' || (*n == '/' && (flags & FNM_FILE_NAME)))
/* There isn't another character; no match. */
return FNM_NOMATCH;
else
/* One character of the string is consumed in matching
this ? wildcard, so *??? won't match if there are
less than three characters. */
++n;
}
}
if (c == '\0')
{
if ((flags & (FNM_FILE_NAME | FNM_LEADING_DIR)) == FNM_FILE_NAME)
for (; *n != '\0'; n++)
if (*n == '/')
return FNM_NOMATCH;
return 0;
}
{
char c1 = (!(flags & FNM_NOESCAPE) && c == '\\') ? *p : c;
c1 = FOLD (c1);
for (--p; *n != '\0'; ++n)
if ((c == '[' || FOLD (*n) == c1) &&
fnmatch (p, n, flags & ~FNM_PERIOD) == 0)
return 0;
else if (*n == '/' && (flags & FNM_FILE_NAME))
break;
return FNM_NOMATCH;
}
case '[':
{
/* Nonzero if the sense of the character class is inverted. */
register int not;
if (*n == '\0')
return FNM_NOMATCH;
if ((flags & FNM_PERIOD) && *n == '.' &&
(n == string || ((flags & FNM_FILE_NAME) && n[-1] == '/')))
return FNM_NOMATCH;
not = (*p == '!' || *p == '^');
if (not)
++p;
c = *p++;
for (;;)
{
register char cstart = c, cend = c;
if (!(flags & FNM_NOESCAPE) && c == '\\')
{
if (*p == '\0')
return FNM_NOMATCH;
cstart = cend = *p++;
}
cstart = cend = FOLD (cstart);
if (c == '\0')
/* [ (unterminated) loses. */
return FNM_NOMATCH;
c = *p++;
c = FOLD (c);
if ((flags & FNM_FILE_NAME) && c == '/')
/* [/] can never match. */
return FNM_NOMATCH;
if (c == '-' && *p != ']')
{
cend = *p++;
if (!(flags & FNM_NOESCAPE) && cend == '\\')
cend = *p++;
if (cend == '\0')
return FNM_NOMATCH;
cend = FOLD (cend);
c = *p++;
}
if (FOLD (*n) >= cstart && FOLD (*n) <= cend)
goto matched;
if (c == ']')
break;
}
if (!not)
return FNM_NOMATCH;
break;
matched:;
/* Skip the rest of the [...] that already matched. */
while (c != ']')
{
if (c == '\0')
/* [... (unterminated) loses. */
return FNM_NOMATCH;
c = *p++;
if (!(flags & FNM_NOESCAPE) && c == '\\')
{
if (*p == '\0')
return FNM_NOMATCH;
/* XXX 1003.2d11 is unclear if this is right. */
++p;
}
}
if (not)
return FNM_NOMATCH;
}
break;
default:
if (c != FOLD (*n))
return FNM_NOMATCH;
return (wctype_t) 0;
}
# endif
++n;
/* Avoid overrunning the buffer. */
if (cp == s + CHAR_CLASS_MAX_LENGTH)
return (wctype_t) 0;
*cp++ = (char) *wcs++;
}
while (*wcs != L'\0');
if (*n == '\0')
return 0;
*cp = '\0';
if ((flags & FNM_LEADING_DIR) && *n == '/')
/* The FNM_LEADING_DIR flag says that "foo*" matches "foobar/frobozz". */
return 0;
return FNM_NOMATCH;
#undef FOLD
# ifdef _LIBC
return __wctype (s);
# else
return wctype (s);
# endif
}
# define IS_CHAR_CLASS(string) is_char_class (string)
# include "fnmatch_loop.c"
# endif
int
fnmatch (pattern, string, flags)
const char *pattern;
const char *string;
int flags;
{
# if HANDLE_MULTIBYTE
if (__builtin_expect (MB_CUR_MAX, 1) != 1)
{
mbstate_t ps;
size_t n;
wchar_t *wpattern;
wchar_t *wstring;
/* Convert the strings into wide characters. */
memset (&ps, '\0', sizeof (ps));
n = mbsrtowcs (NULL, &pattern, 0, &ps);
if (__builtin_expect (n, 0) == (size_t) -1)
/* Something wrong.
XXX Do we have to set `errno' to something which mbsrtows hasn't
already done? */
return -1;
wpattern = (wchar_t *) alloca ((n + 1) * sizeof (wchar_t));
assert (mbsinit (&ps));
(void) mbsrtowcs (wpattern, &pattern, n + 1, &ps);
assert (mbsinit (&ps));
n = mbsrtowcs (NULL, &string, 0, &ps);
if (__builtin_expect (n, 0) == (size_t) -1)
/* Something wrong.
XXX Do we have to set `errno' to something which mbsrtows hasn't
already done? */
return -1;
wstring = (wchar_t *) alloca ((n + 1) * sizeof (wchar_t));
assert (mbsinit (&ps));
(void) mbsrtowcs (wstring, &string, n + 1, &ps);
return internal_fnwmatch (wpattern, wstring, wstring + n,
flags & FNM_PERIOD, flags);
}
# endif /* mbstate_t and mbsrtowcs or _LIBC. */
return internal_fnmatch (pattern, string, string + strlen (string),
flags & FNM_PERIOD, flags);
}
# ifdef _LIBC
# undef fnmatch
versioned_symbol (libc, __fnmatch, fnmatch, GLIBC_2_2_3);
# if SHLIB_COMPAT(libc, GLIBC_2_0, GLIBC_2_2_3)
strong_alias (__fnmatch, __fnmatch_old)
compat_symbol (libc, __fnmatch_old, fnmatch, GLIBC_2_0);
# endif
# endif
#endif /* _LIBC or not __GNU_LIBRARY__. */

View File

@@ -1,69 +0,0 @@
/* Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.
NOTE: The canonical source of this file is maintained with the GNU C Library.
Bugs can be reported to bug-glibc@prep.ai.mit.edu.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2, or (at your option) any
later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#ifndef _FNMATCH_H
#define _FNMATCH_H 1
#ifdef __cplusplus
extern "C" {
#endif
#if defined (__cplusplus) || (defined (__STDC__) && __STDC__)
#undef __P
#define __P(protos) protos
#else /* Not C++ or ANSI C. */
#undef __P
#define __P(protos) ()
/* We can get away without defining `const' here only because in this file
it is used only inside the prototype for `fnmatch', which is elided in
non-ANSI C where `const' is problematical. */
#endif /* C++ or ANSI C. */
/* We #undef these before defining them because some losing systems
(HP-UX A.08.07 for example) define these in <unistd.h>. */
#undef FNM_PATHNAME
#undef FNM_NOESCAPE
#undef FNM_PERIOD
/* Bits set in the FLAGS argument to `fnmatch'. */
#define FNM_PATHNAME (1 << 0) /* No wildcard can ever match `/'. */
#define FNM_NOESCAPE (1 << 1) /* Backslashes don't quote special chars. */
#define FNM_PERIOD (1 << 2) /* Leading `.' is matched only explicitly. */
#if !defined (_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 2 || defined (_GNU_SOURCE)
#define FNM_FILE_NAME FNM_PATHNAME /* Preferred GNU name. */
#define FNM_LEADING_DIR (1 << 3) /* Ignore `/...' after a match. */
#define FNM_CASEFOLD (1 << 4) /* Compare without regard to case. */
#endif
/* Value returned by `fnmatch' if STRING does not match PATTERN. */
#define FNM_NOMATCH 1
/* Match STRING against the filename pattern PATTERN,
returning zero if it matches, FNM_NOMATCH if not. */
extern int fnmatch __P ((const char *__pattern, const char *__string,
int __flags));
#ifdef __cplusplus
}
#endif
#endif /* fnmatch.h */

80
lib/fnmatch_.h Normal file
View File

@@ -0,0 +1,80 @@
/* Copyright (C) 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2001, 2002
Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#ifndef _FNMATCH_H
# define _FNMATCH_H 1
# ifdef __cplusplus
extern "C" {
# endif
# if defined __cplusplus || (defined __STDC__ && __STDC__) || defined WINDOWS32
# if !defined __GLIBC__ || !defined __P
# undef __P
# define __P(protos) protos
# endif
# else /* Not C++ or ANSI C. */
# undef __P
# define __P(protos) ()
/* We can get away without defining `const' here only because in this file
it is used only inside the prototype for `fnmatch', which is elided in
non-ANSI C where `const' is problematical. */
# endif /* C++ or ANSI C. */
# ifndef __const
# define __const const
# endif
/* We #undef these before defining them because some losing systems
(HP-UX A.08.07 for example) define these in <unistd.h>. */
# undef FNM_PATHNAME
# undef FNM_NOESCAPE
# undef FNM_PERIOD
/* Bits set in the FLAGS argument to `fnmatch'. */
# define FNM_PATHNAME (1 << 0) /* No wildcard can ever match `/'. */
# define FNM_NOESCAPE (1 << 1) /* Backslashes don't quote special chars. */
# define FNM_PERIOD (1 << 2) /* Leading `.' is matched only explicitly. */
# if !defined _POSIX_C_SOURCE || _POSIX_C_SOURCE < 2 || defined _GNU_SOURCE
# define FNM_FILE_NAME FNM_PATHNAME /* Preferred GNU name. */
# define FNM_LEADING_DIR (1 << 3) /* Ignore `/...' after a match. */
# define FNM_CASEFOLD (1 << 4) /* Compare without regard to case. */
# define FNM_EXTMATCH (1 << 5) /* Use ksh-like extended matching. */
# endif
/* Value returned by `fnmatch' if STRING does not match PATTERN. */
# define FNM_NOMATCH 1
/* This value is returned if the implementation does not support
`fnmatch'. Since this is not the case here it will never be
returned but the conformance test suites still require the symbol
to be defined. */
# ifdef _XOPEN_SOURCE
# define FNM_NOSYS (-1)
# endif
/* Match NAME against the filename pattern PATTERN,
returning zero if it matches, FNM_NOMATCH if not. */
extern int fnmatch __P ((__const char *__pattern, __const char *__name,
int __flags));
# ifdef __cplusplus
}
# endif
#endif /* fnmatch.h */

1189
lib/fnmatch_loop.c Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,6 @@
/* fsusage.c -- return space usage of mounted filesystems
Copyright (C) 1991, 1992, 1996, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1991, 1992, 1996, 1998, 1999, 2002 Free Software
Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -21,7 +22,15 @@
#if HAVE_INTTYPES_H
# include <inttypes.h>
#else
# if HAVE_STDINT_H
# include <stdint.h>
# endif
#endif
#ifndef UINTMAX_MAX
# define UINTMAX_MAX ((uintmax_t) -1)
#endif
#include <sys/types.h>
#include <sys/stat.h>
#include "fsusage.h"
@@ -51,7 +60,7 @@ int statfs ();
# include <sys/fs/s5param.h>
#endif
#if defined (HAVE_SYS_FILSYS_H) && !defined (_CRAY)
#if defined HAVE_SYS_FILSYS_H && !defined _CRAY
# include <sys/filsys.h> /* SVR2 */
#endif
@@ -74,9 +83,14 @@ int statvfs ();
/* Many space usage primitives use all 1 bits to denote a value that is
not applicable or unknown. Propagate this information by returning
a uintmax_t value that is all 1 bits if the argument is all 1 bits,
even if the argument is unsigned and smaller than uintmax_t. */
#define PROPAGATE_ALL_ONES(x) ((x) == -1 ? (uintmax_t) -1 : (uintmax_t) (x))
a uintmax_t value that is all 1 bits if X is all 1 bits, even if X
is unsigned and narrower than uintmax_t. */
#define PROPAGATE_ALL_ONES(x) \
((sizeof (x) < sizeof (uintmax_t) \
&& (~ (x) == (sizeof (x) < sizeof (int) \
? - (1 << (sizeof (x) * CHAR_BIT)) \
: 0))) \
? UINTMAX_MAX : (x))
/* Extract the top bit of X as an uintmax_t value. */
#define EXTRACT_TOP_BIT(x) ((x) \
@@ -162,7 +176,7 @@ get_fs_usage (const char *path, const char *disk, struct fs_usage *fsp)
fsp->fsu_bavail = PROPAGATE_TOP_BIT (fsd.s_tfree);
fsp->fsu_bavail_top_bit_set = EXTRACT_TOP_BIT (fsd.s_tfree) != 0;
fsp->fsu_files = (fsd.s_isize == -1
? (uintmax_t) -1
? UINTMAX_MAX
: (fsd.s_isize - 2) * INOPB * (fsd.s_type == Fs2b ? 2 : 1));
fsp->fsu_ffree = PROPAGATE_ALL_ONES (fsd.s_tinode);
@@ -219,7 +233,7 @@ get_fs_usage (const char *path, const char *disk, struct fs_usage *fsp)
/* Empirically, the block counts on most SVR3 and SVR3-derived
systems seem to always be in terms of 512-byte blocks,
no matter what value f_bsize has. */
# if _AIX || defined(_CRAY)
# if _AIX || defined _CRAY
fsp->fsu_blocksize = PROPAGATE_ALL_ONES (fsd.f_bsize);
# else
fsp->fsu_blocksize = 512;
@@ -235,12 +249,13 @@ get_fs_usage (const char *path, const char *disk, struct fs_usage *fsp)
return -1;
/* f_frsize isn't guaranteed to be supported. */
fsp->fsu_blocksize =
PROPAGATE_ALL_ONES (fsd.f_frsize ? fsd.f_frsize : fsd.f_bsize);
fsp->fsu_blocksize = (fsd.f_frsize
? PROPAGATE_ALL_ONES (fsd.f_frsize)
: PROPAGATE_ALL_ONES (fsd.f_bsize));
#endif /* STAT_STATVFS */
#if !defined(STAT_STATFS2_FS_DATA) && !defined(STAT_READ_FILSYS)
#if !defined STAT_STATFS2_FS_DATA && !defined STAT_READ_FILSYS
/* !Ultrix && !SVR2 */
fsp->fsu_blocks = PROPAGATE_ALL_ONES (fsd.f_blocks);
@@ -255,7 +270,7 @@ get_fs_usage (const char *path, const char *disk, struct fs_usage *fsp)
return 0;
}
#if defined(_AIX) && defined(_I386)
#if defined _AIX && defined _I386
/* AIX PS/2 does not supply statfs. */
int

View File

@@ -2,7 +2,7 @@
NOTE: getopt is now part of the C library, so if you don't know what
"Keep this file name-space clean" means, talk to drepper@gnu.org
before changing it!
Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001
Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001,2002
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -86,6 +86,13 @@
# else
# define _(msgid) (msgid)
# endif
# if defined _LIBC && defined USE_IN_LIBIO
# include <wchar.h>
# endif
#endif
#ifndef attribute_hidden
# define attribute_hidden
#endif
/* This version of `getopt' appears to the caller like standard Unix `getopt'
@@ -131,7 +138,7 @@ int optind = 1;
causes problems with re-calling getopt as programs generally don't
know that. */
int __getopt_initialized;
int __getopt_initialized attribute_hidden;
/* The next char to be scanned in the option-element
in which the last option character we returned was found.
@@ -250,35 +257,22 @@ static int first_nonopt;
static int last_nonopt;
#ifdef _LIBC
/* Stored original parameters.
XXX This is no good solution. We should rather copy the args so
that we can compare them later. But we must not use malloc(3). */
extern int __libc_argc;
extern char **__libc_argv;
/* Bash 2.0 gives us an environment variable containing flags
indicating ARGV elements that should not be considered arguments. */
#ifdef USE_NONOPTION_FLAGS
# ifdef USE_NONOPTION_FLAGS
/* Defined in getopt_init.c */
extern char *__getopt_nonoption_flags;
static int nonoption_flags_max_len;
static int nonoption_flags_len;
#endif
static int original_argc;
static char *const *original_argv;
/* Make sure the environment variable bash 2.0 puts in the environment
is valid for the getopt call we must make sure that the ARGV passed
to getopt is that one passed to the process. */
static void
__attribute__ ((unused))
store_args_and_env (int argc, char *const *argv)
{
/* XXX This is no good solution. We should rather copy the args so
that we can compare them later. But we must not use malloc(3). */
original_argc = argc;
original_argv = argv;
}
# ifdef text_set_element
text_set_element (__libc_subinit, store_args_and_env);
# endif /* text_set_element */
# endif
# ifdef USE_NONOPTION_FLAGS
# define SWAP_FLAGS(ch1, ch2) \
@@ -428,7 +422,7 @@ _getopt_initialize (argc, argv, optstring)
#if defined _LIBC && defined USE_NONOPTION_FLAGS
if (posixly_correct == NULL
&& argc == original_argc && argv == original_argv)
&& argc == __libc_argc && argv == __libc_argv)
{
if (nonoption_flags_max_len == 0)
{
@@ -691,8 +685,26 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only)
if (ambig && !exact)
{
if (print_errors)
fprintf (stderr, _("%s: option `%s' is ambiguous\n"),
argv[0], argv[optind]);
{
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
if (__asprintf (&buf, _("%s: option `%s' is ambiguous\n"),
argv[0], argv[optind]) >= 0)
{
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
free (buf);
}
#else
fprintf (stderr, _("%s: option `%s' is ambiguous\n"),
argv[0], argv[optind]);
#endif
}
nextchar += strlen (nextchar);
optind++;
optopt = 0;
@@ -713,16 +725,50 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only)
{
if (print_errors)
{
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
int n;
#endif
if (argv[optind - 1][1] == '-')
/* --option */
fprintf (stderr,
_("%s: option `--%s' doesn't allow an argument\n"),
argv[0], pfound->name);
{
/* --option */
#if defined _LIBC && defined USE_IN_LIBIO
n = __asprintf (&buf, _("\
%s: option `--%s' doesn't allow an argument\n"),
argv[0], pfound->name);
#else
fprintf (stderr, _("\
%s: option `--%s' doesn't allow an argument\n"),
argv[0], pfound->name);
#endif
}
else
/* +option or -option */
fprintf (stderr,
_("%s: option `%c%s' doesn't allow an argument\n"),
argv[0], argv[optind - 1][0], pfound->name);
{
/* +option or -option */
#if defined _LIBC && defined USE_IN_LIBIO
n = __asprintf (&buf, _("\
%s: option `%c%s' doesn't allow an argument\n"),
argv[0], argv[optind - 1][0],
pfound->name);
#else
fprintf (stderr, _("\
%s: option `%c%s' doesn't allow an argument\n"),
argv[0], argv[optind - 1][0], pfound->name);
#endif
}
#if defined _LIBC && defined USE_IN_LIBIO
if (n >= 0)
{
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
free (buf);
}
#endif
}
nextchar += strlen (nextchar);
@@ -738,9 +784,27 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only)
else
{
if (print_errors)
fprintf (stderr,
_("%s: option `%s' requires an argument\n"),
argv[0], argv[optind - 1]);
{
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
if (__asprintf (&buf, _("\
%s: option `%s' requires an argument\n"),
argv[0], argv[optind - 1]) >= 0)
{
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
free (buf);
}
#else
fprintf (stderr,
_("%s: option `%s' requires an argument\n"),
argv[0], argv[optind - 1]);
#endif
}
nextchar += strlen (nextchar);
optopt = pfound->val;
return optstring[0] == ':' ? ':' : '?';
@@ -766,14 +830,45 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only)
{
if (print_errors)
{
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
int n;
#endif
if (argv[optind][1] == '-')
/* --option */
fprintf (stderr, _("%s: unrecognized option `--%s'\n"),
argv[0], nextchar);
{
/* --option */
#if defined _LIBC && defined USE_IN_LIBIO
n = __asprintf (&buf, _("%s: unrecognized option `--%s'\n"),
argv[0], nextchar);
#else
fprintf (stderr, _("%s: unrecognized option `--%s'\n"),
argv[0], nextchar);
#endif
}
else
/* +option or -option */
fprintf (stderr, _("%s: unrecognized option `%c%s'\n"),
argv[0], argv[optind][0], nextchar);
{
/* +option or -option */
#if defined _LIBC && defined USE_IN_LIBIO
n = __asprintf (&buf, _("%s: unrecognized option `%c%s'\n"),
argv[0], argv[optind][0], nextchar);
#else
fprintf (stderr, _("%s: unrecognized option `%c%s'\n"),
argv[0], argv[optind][0], nextchar);
#endif
}
#if defined _LIBC && defined USE_IN_LIBIO
if (n >= 0)
{
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
free (buf);
}
#endif
}
nextchar = (char *) "";
optind++;
@@ -796,13 +891,42 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only)
{
if (print_errors)
{
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
int n;
#endif
if (posixly_correct)
/* 1003.2 specifies the format of this message. */
fprintf (stderr, _("%s: illegal option -- %c\n"),
argv[0], c);
{
/* 1003.2 specifies the format of this message. */
#if defined _LIBC && defined USE_IN_LIBIO
n = __asprintf (&buf, _("%s: illegal option -- %c\n"),
argv[0], c);
#else
fprintf (stderr, _("%s: illegal option -- %c\n"), argv[0], c);
#endif
}
else
fprintf (stderr, _("%s: invalid option -- %c\n"),
argv[0], c);
{
#if defined _LIBC && defined USE_IN_LIBIO
n = __asprintf (&buf, _("%s: invalid option -- %c\n"),
argv[0], c);
#else
fprintf (stderr, _("%s: invalid option -- %c\n"), argv[0], c);
#endif
}
#if defined _LIBC && defined USE_IN_LIBIO
if (n >= 0)
{
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
free (buf);
}
#endif
}
optopt = c;
return '?';
@@ -831,8 +955,24 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only)
if (print_errors)
{
/* 1003.2 specifies the format of this message. */
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
if (__asprintf (&buf,
_("%s: option requires an argument -- %c\n"),
argv[0], c) >= 0)
{
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
free (buf);
}
#else
fprintf (stderr, _("%s: option requires an argument -- %c\n"),
argv[0], c);
#endif
}
optopt = c;
if (optstring[0] == ':')
@@ -878,8 +1018,25 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only)
if (ambig && !exact)
{
if (print_errors)
fprintf (stderr, _("%s: option `-W %s' is ambiguous\n"),
argv[0], argv[optind]);
{
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
if (__asprintf (&buf, _("%s: option `-W %s' is ambiguous\n"),
argv[0], argv[optind]) >= 0)
{
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
free (buf);
}
#else
fprintf (stderr, _("%s: option `-W %s' is ambiguous\n"),
argv[0], argv[optind]);
#endif
}
nextchar += strlen (nextchar);
optind++;
return '?';
@@ -896,9 +1053,27 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only)
else
{
if (print_errors)
fprintf (stderr, _("\
{
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
if (__asprintf (&buf, _("\
%s: option `-W %s' doesn't allow an argument\n"),
argv[0], pfound->name);
argv[0], pfound->name) >= 0)
{
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
free (buf);
}
#else
fprintf (stderr, _("\
%s: option `-W %s' doesn't allow an argument\n"),
argv[0], pfound->name);
#endif
}
nextchar += strlen (nextchar);
return '?';
@@ -911,9 +1086,27 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only)
else
{
if (print_errors)
fprintf (stderr,
_("%s: option `%s' requires an argument\n"),
argv[0], argv[optind - 1]);
{
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
if (__asprintf (&buf, _("\
%s: option `%s' requires an argument\n"),
argv[0], argv[optind - 1]) >= 0)
{
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
free (buf);
}
#else
fprintf (stderr,
_("%s: option `%s' requires an argument\n"),
argv[0], argv[optind - 1]);
#endif
}
nextchar += strlen (nextchar);
return optstring[0] == ':' ? ':' : '?';
}
@@ -960,9 +1153,25 @@ _getopt_internal (argc, argv, optstring, longopts, longind, long_only)
if (print_errors)
{
/* 1003.2 specifies the format of this message. */
#if defined _LIBC && defined USE_IN_LIBIO
char *buf;
if (__asprintf (&buf, _("\
%s: option requires an argument -- %c\n"),
argv[0], c) >= 0)
{
if (_IO_fwide (stderr, 0) > 0)
__fwprintf (stderr, L"%s", buf);
else
fputs (buf, stderr);
free (buf);
}
#else
fprintf (stderr,
_("%s: option requires an argument -- %c\n"),
argv[0], c);
#endif
}
optopt = c;
if (optstring[0] == ':')

View File

@@ -1,5 +1,5 @@
/* getopt_long and getopt_long_only entry points for GNU getopt.
Copyright (C) 1987,88,89,90,91,92,93,94,96,97,98
Copyright (C) 1987,88,89,90,91,92,93,94,96,97,98, 02
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -22,7 +22,11 @@
#include <config.h>
#endif
#include "getopt.h"
#ifdef _LIBC
# include <getopt.h>
#else
# include "getopt.h"
#endif
#if !defined __STDC__ || !__STDC__
/* This is a separate conditional since some stdc systems
@@ -90,6 +94,10 @@ getopt_long_only (argc, argv, options, long_options, opt_index)
return _getopt_internal (argc, argv, options, long_options, opt_index, 1);
}
# ifdef _LIBC
libc_hidden_def (getopt_long)
libc_hidden_def (getopt_long_only)
# endif
#endif /* Not ELIDE_CODE. */

69
lib/gettext.h Normal file
View File

@@ -0,0 +1,69 @@
/* Convenience header for conditional use of GNU <libintl.h>.
Copyright (C) 1995-1998, 2000-2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU Library General Public License as published
by the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
USA. */
#ifndef _LIBGETTEXT_H
# define _LIBGETTEXT_H 1
/* NLS can be disabled through the configure --disable-nls option. */
# if ENABLE_NLS
/* Get declarations of GNU message catalog functions. */
# include <libintl.h>
# else
/* Solaris /usr/include/locale.h includes /usr/include/libintl.h, which
chokes if dcgettext is defined as a macro. So include it now, to make
later inclusions of <locale.h> a NOP. We don't include <libintl.h>
as well because people using "gettext.h" will not include <libintl.h>,
and also including <libintl.h> would fail on SunOS 4, whereas <locale.h>
is OK. */
# if defined(__sun)
# include <locale.h>
# endif
/* Disabled NLS.
The casts to 'const char *' serve the purpose of producing warnings
for invalid uses of the value returned from these functions.
On pre-ANSI systems without 'const', the config.h file is supposed to
contain "#define const". */
# define gettext(Msgid) ((const char *) (Msgid))
# define dgettext(Domainname, Msgid) ((const char *) (Msgid))
# define dcgettext(Domainname, Msgid, Category) ((const char *) (Msgid))
# define ngettext(Msgid1, Msgid2, N) \
((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
# define dngettext(Domainname, Msgid1, Msgid2, N) \
((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
# define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \
((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2))
# define textdomain(Domainname) ((const char *) (Domainname))
# define bindtextdomain(Domainname, Dirname) ((const char *) (Dirname))
# define bind_textdomain_codeset(Domainname, Codeset) ((const char *) (Codeset))
# endif
/* A pseudo function call that serves as a marker for the automated
extraction of messages, but does not call gettext(). The run-time
translation is done at a different place in the code.
The argument, String, should be a literal string. Concatenated strings
and other string expressions won't work.
The macro's expansion is not parenthesized, so that it is suitable as
initializer for static 'char[]' or 'const char[]' variables. */
# define gettext_noop(String) String
#endif /* _LIBGETTEXT_H */

View File

@@ -1,7 +1,7 @@
/* Work around the bug in some systems whereby gettimeofday clobbers the
static buffer that localtime uses for it's return value. The gettimeofday
function from Mac OS X 10.0.4, i.e. Darwin 1.3.7 has this problem.
Copyright (C) 2001 Free Software Foundation, Inc.
Copyright (C) 2001, 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -21,9 +21,10 @@
#include <config.h>
/* Disable the definition of gettimeofday (from config.h) so we can use
the library version. */
/* Disable the definitions of gettimeofday and localtime (from config.h)
so we can use the library versions here. */
#undef gettimeofday
#undef localtime
#include <sys/types.h>
@@ -42,6 +43,23 @@
static struct tm *localtime_buffer_addr;
/* This is a wrapper for localtime. It is used only on systems for which
gettimeofday clobbers the static buffer used for localtime's result.
On the first call, record the address of the static buffer that
localtime uses for its result. */
struct tm *
rpl_localtime (const time_t *timep)
{
struct tm *tm = localtime (timep);
if (! localtime_buffer_addr)
localtime_buffer_addr = tm;
return tm;
}
/* This is a wrapper for gettimeofday. It is used only on systems for which
gettimeofday clobbers the static buffer used for localtime's result.

View File

@@ -1,5 +1,6 @@
/* hard-locale.c -- Determine whether a locale is hard.
Copyright 1997, 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -19,41 +20,26 @@
# include <config.h>
#endif
#if __GNUC__
# define alloca __builtin_alloca
#else
# ifdef HAVE_ALLOCA_H
# include <alloca.h>
# else
# ifdef _AIX
# pragma alloca
# else
# ifdef _WIN32
# include <malloc.h>
# include <io.h>
# else
# ifndef alloca
char *alloca ();
# endif
# endif
# endif
# endif
#endif
#if HAVE_LOCALE_H
# include <locale.h>
#endif
#if HAVE_STDLIB_H
# include <stdlib.h>
#endif
#if HAVE_STRING_H
# include <string.h>
#endif
#include "hard-locale.h"
/* Return nonzero if the current CATEGORY locale is hard, i.e. if you
can't get away with assuming traditional C or POSIX behavior. */
int
hard_locale (int category)
{
#if ! (defined ENABLE_NLS && HAVE_SETLOCALE)
#if ! HAVE_SETLOCALE
return 0;
#else
@@ -62,22 +48,28 @@ hard_locale (int category)
if (p)
{
# if defined __GLIBC__ && __GLIBC__ >= 2
# if defined __GLIBC__ && 2 <= __GLIBC__
if (strcmp (p, "C") == 0 || strcmp (p, "POSIX") == 0)
hard = 0;
# else
char *locale = alloca (strlen (p) + 1);
strcpy (locale, p);
char *locale = malloc (strlen (p) + 1);
if (locale)
{
strcpy (locale, p);
/* Temporarily set the locale to the "C" and "POSIX" locales to
find their names, so that we can determine whether one or the
other is the caller's locale. */
if (((p = setlocale (category, "C")) && strcmp (p, locale) == 0)
|| ((p = setlocale (category, "POSIX")) && strcmp (p, locale) == 0))
hard = 0;
/* Temporarily set the locale to the "C" and "POSIX" locales
to find their names, so that we can determine whether one
or the other is the caller's locale. */
if (((p = setlocale (category, "C"))
&& strcmp (p, locale) == 0)
|| ((p = setlocale (category, "POSIX"))
&& strcmp (p, locale) == 0))
hard = 0;
/* Restore the caller's locale. */
setlocale (category, locale);
/* Restore the caller's locale. */
setlocale (category, locale);
free (locale);
}
# endif
}

View File

@@ -1,5 +1,5 @@
/* Provide a stub lchown function for systems that lack it.
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -30,8 +30,13 @@ extern int errno;
#ifdef STAT_MACROS_BROKEN
# undef S_ISLNK
#endif
#if !defined(S_ISLNK) && defined(S_IFLNK)
# define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
#ifndef S_ISLNK
# ifdef S_IFLNK
# define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
# else
# define S_ISLNK(m) 0
# endif
#endif
/* Declare chown to avoid a warning. Don't include unistd.h,

View File

@@ -46,7 +46,7 @@ char *alloca ();
# undef S_ISDIR
#endif
#if !defined(S_ISDIR) && defined(S_IFDIR)
#if !defined S_ISDIR && defined S_IFDIR
# define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
#endif
@@ -311,7 +311,7 @@ make_path (const char *argpath,
if ((owner != (uid_t) -1 || group != (gid_t) -1)
&& chown (basename_dir, owner, group)
#if defined(AFS) && defined (EPERM)
#if defined AFS && defined EPERM
&& errno != EPERM
#endif
)
@@ -355,6 +355,9 @@ make_path (const char *argpath,
if (!do_chdir)
basename_dir = dirpath;
/* Done creating leading directories. Restore original umask. */
umask (oldmask);
/* We're done making leading directories.
Create the final component of the path. */
@@ -364,9 +367,6 @@ make_path (const char *argpath,
return 1;
}
/* Done creating directories. Restore original umask. */
umask (oldmask);
if (verbose_fmt_string != NULL)
error (0, 0, verbose_fmt_string, quote (dirpath));
@@ -392,7 +392,8 @@ make_path (const char *argpath,
if ((mode & ~S_IRWXUGO)
&& chmod (basename_dir, mode))
{
error (0, errno, _("cannot change permissions of %s"), quote (dirpath));
error (0, errno, _("cannot change permissions of %s"),
quote (dirpath));
retval = 1;
}

View File

@@ -1,22 +1,22 @@
/* Convert a `struct tm' to a time_t value.
Copyright (C) 1993, 94, 95, 96, 97, 98, 99 Free Software Foundation, Inc.
Copyright (C) 1993-1999, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Paul Eggert (eggert@twinsun.com).
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
Lesser General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If not,
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
/* Define this to have a standalone program to test this implementation of
mktime. */
@@ -49,6 +49,7 @@
# include <stdio.h>
# if STDC_HEADERS
# include <stdlib.h>
# include <string.h>
# endif
/* Make it work even if the system's libc has its own mktime routine. */
# define mktime my_mktime
@@ -236,6 +237,9 @@ __mktime_internal (struct tm *tp,
int year_requested = tp->tm_year;
int isdst = tp->tm_isdst;
/* 1 if the previous probe was DST. */
int dst2;
/* Ensure that mon is in range, and set year accordingly. */
int mon_remainder = mon % 12;
int negative_mon_remainder = mon_remainder < 0;
@@ -254,6 +258,13 @@ __mktime_internal (struct tm *tp,
+ mday - 1);
int sec_requested = sec;
/* Only years after 1970 are defined.
If year is 69, it might still be representable due to
timezone differences. */
if (year < 69)
return -1;
#if LEAP_SECONDS_POSSIBLE
/* Handle out-of-range seconds specially,
since ydhms_tm_diff assumes every minute has 60 seconds. */
@@ -270,20 +281,24 @@ __mktime_internal (struct tm *tp,
tm.tm_yday = tm.tm_hour = tm.tm_min = tm.tm_sec = 0;
t0 = ydhms_tm_diff (year, yday, hour, min, sec, &tm);
for (t = t1 = t2 = t0 + *offset;
for (t = t1 = t2 = t0 + *offset, dst2 = 0;
(dt = ydhms_tm_diff (year, yday, hour, min, sec,
ranged_convert (convert, &t, &tm)));
t1 = t2, t2 = t, t += dt)
t1 = t2, t2 = t, t += dt, dst2 = tm.tm_isdst != 0)
if (t == t1 && t != t2
&& (isdst < 0 || tm.tm_isdst < 0
|| (isdst != 0) != (tm.tm_isdst != 0)))
&& (tm.tm_isdst < 0
|| (isdst < 0
? dst2 <= (tm.tm_isdst != 0)
: (isdst != 0) != (tm.tm_isdst != 0))))
/* We can't possibly find a match, as we are oscillating
between two values. The requested time probably falls
within a spring-forward gap of size DT. Follow the common
practice in this case, which is to return a time that is DT
away from the requested time, preferring a time whose
tm_isdst differs from the requested value. In practice,
this is more useful than returning -1. */
tm_isdst differs from the requested value. (If no tm_isdst
was requested and only one of the two values has a nonzero
tm_isdst, prefer that value.) In practice, this is more
useful than returning -1. */
break;
else if (--remaining_probes == 0)
return -1;
@@ -357,6 +372,14 @@ __mktime_internal (struct tm *tp,
return -1;
}
if (year == 69)
{
/* If year was 69, need to check whether the time was representable
or not. */
if (t < 0 || t > 2 * 24 * 60 * 60)
return -1;
}
*tp = tm;
return t;
}
@@ -382,6 +405,11 @@ mktime (tp)
#ifdef weak_alias
weak_alias (mktime, timelocal)
#endif
#ifdef _LIBC
libc_hidden_def (mktime)
libc_hidden_weak (timelocal)
#endif
#if DEBUG

View File

@@ -1,5 +1,5 @@
/* mountlist.c -- return a list of mounted filesystems
Copyright (C) 1991, 1992, 1997-2001 Free Software Foundation, Inc.
Copyright (C) 1991, 1992, 1997-2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -136,6 +136,7 @@ extern int errno;
# include <sys/mntent.h>
#endif
#undef MNT_IGNORE
#if defined MNTOPT_IGNORE && defined HAVE_HASMNTOPT
# define MNT_IGNORE(M) hasmntopt ((M), MNTOPT_IGNORE)
#else

View File

@@ -1,5 +1,5 @@
/* mountlist.h -- declarations for list of mounted filesystems
Copyright (C) 1991, 1992, 1998, 2000, 2001 Free Software Foundation, Inc.
Copyright (C) 1991, 1992, 1998, 2000-2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -39,8 +39,7 @@ struct mount_entry *read_filesystem_list PARAMS ((int need_fs_type));
#ifndef ME_DUMMY
# define ME_DUMMY(Fs_name, Fs_type) \
(!strcmp (Fs_type, "auto") \
|| !strcmp (Fs_type, "autofs") \
(!strcmp (Fs_type, "autofs") \
/* for Irix 6.5 */ \
|| !strcmp (Fs_type, "ignore"))
#endif

View File

@@ -1,5 +1,5 @@
/* obstack.c - subroutines used implicitly by object stack macros
Copyright (C) 1988-1994,96,97,98,99,2000,2001 Free Software Foundation, Inc.
Copyright (C) 1988-1994, 1996-2001, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library. Its master source is NOT part of
the C library, however. The master source lives in /gd/gnu/lib.
@@ -22,7 +22,11 @@
# include <config.h>
#endif
#include "obstack.h"
#ifdef _LIBC
# include <obstack.h>
#else
# include "obstack.h"
#endif
/* NOTE BEFORE MODIFYING THIS FILE: This version number must be
incremented whenever callers compiled using an old obstack.h can no
@@ -338,6 +342,9 @@ _obstack_newchunk (h, length)
/* The new chunk certainly contains no empty object yet. */
h->maybe_empty_object = 0;
}
# ifdef _LIBC
libc_hidden_def (_obstack_newchunk)
# endif
/* Return nonzero if object OBJ has been allocated from obstack H.
This is here for debugging.
@@ -468,9 +475,8 @@ _obstack_memory_used (h)
# define _(Str) (Str)
# endif
# endif
# if defined _LIBC && defined USE_IN_LIBIO
# ifdef _LIBC
# include <libio/iolibio.h>
# define fputs(s, f) _IO_fputs (s, f)
# endif
# ifndef __attribute__

View File

@@ -22,6 +22,12 @@
# include <config.h>
#endif
#if HAVE_STDBOOL_H
# include <stdbool.h>
#else
typedef enum {false = 0, true = 1} bool;
#endif
#include <stdio.h>
#if HAVE_STDLIB_H
# include <stdlib.h>
@@ -51,9 +57,6 @@
of `digit' even when the host does not conform to POSIX. */
#define ISDIGIT(c) ((unsigned) (c) - '0' <= 9)
/* The return value. */
static struct tm t;
time_t mktime ();
/*
@@ -74,26 +77,23 @@ time_t mktime ();
*/
static int
year (const int *digit_pair, size_t n, int allow_century)
year (struct tm *tm, const int *digit_pair, size_t n, int allow_century)
{
switch (n)
{
case 1:
t.tm_year = *digit_pair;
tm->tm_year = *digit_pair;
/* Deduce the century based on the year.
POSIX requires that 00-68 be interpreted as 2000-2068,
and that 69-99 be interpreted as 1969-1999. */
if (digit_pair[0] <= 68)
t.tm_year += 100;
tm->tm_year += 100;
break;
case 2:
if (!allow_century)
return 1;
t.tm_year = digit_pair[0] * 100 + digit_pair[1];
if (t.tm_year < 1900)
return 1;
t.tm_year -= 1900;
tm->tm_year = digit_pair[0] * 100 + digit_pair[1] - 1900;
break;
case 0:
@@ -104,7 +104,9 @@ year (const int *digit_pair, size_t n, int allow_century)
/* Use current year. */
time (&now);
tmp = localtime (&now);
t.tm_year = tmp->tm_year;
if (! tmp)
return 1;
tm->tm_year = tmp->tm_year;
}
break;
@@ -116,7 +118,7 @@ year (const int *digit_pair, size_t n, int allow_century)
}
static int
posix_time_parse (const char *s, unsigned int syntax_bits)
posix_time_parse (struct tm *tm, const char *s, unsigned int syntax_bits)
{
const char *dot = NULL;
int pair[6];
@@ -151,44 +153,30 @@ posix_time_parse (const char *s, unsigned int syntax_bits)
p = pair;
if (syntax_bits & PDS_LEADING_YEAR)
{
if (year (p, len - 4, syntax_bits & PDS_CENTURY))
if (year (tm, p, len - 4, syntax_bits & PDS_CENTURY))
return 1;
p += len - 4;
len = 4;
}
/* Handle 8 digits worth of `MMDDhhmm'. */
if (*p < 1 || *p > 12)
return 1;
t.tm_mon = *p - 1;
++p; --len;
if (*p < 1 || *p > 31)
return 1;
t.tm_mday = *p;
++p; --len;
if (*p < 0 || *p > 23)
return 1;
t.tm_hour = *p;
++p; --len;
if (*p < 0 || *p > 59)
return 1;
t.tm_min = *p;
++p; --len;
tm->tm_mon = *p++ - 1;
tm->tm_mday = *p++;
tm->tm_hour = *p++;
tm->tm_min = *p++;
len -= 4;
/* Handle any trailing year. */
if (syntax_bits & PDS_TRAILING_YEAR)
{
if (year (p, len, syntax_bits & PDS_CENTURY))
if (year (tm, p, len, syntax_bits & PDS_CENTURY))
return 1;
}
/* Handle seconds. */
if (!dot)
{
t.tm_sec = 0;
tm->tm_sec = 0;
}
else
{
@@ -199,34 +187,51 @@ posix_time_parse (const char *s, unsigned int syntax_bits)
return 1;
seconds = 10 * (dot[0] - '0') + dot[1] - '0';
if (seconds < 0 || seconds > 61)
return 1;
t.tm_sec = seconds;
tm->tm_sec = seconds;
}
return 0;
}
/* Parse a POSIX-style date and return it, or (time_t)-1 for an error. */
/* Parse a POSIX-style date, returning true if successful. */
time_t
posixtime (const char *s, unsigned int syntax_bits)
bool
posixtime (time_t *p, const char *s, unsigned int syntax_bits)
{
t.tm_isdst = -1;
if (posix_time_parse (s, syntax_bits))
return (time_t)-1;
struct tm tm0;
struct tm tm1;
struct tm const *tm;
time_t t;
if (posix_time_parse (&tm0, s, syntax_bits))
return false;
tm1 = tm0;
tm1.tm_isdst = -1;
t = mktime (&tm1);
if (t != (time_t) -1)
tm = &tm1;
else
return mktime (&t);
}
{
/* mktime returns -1 for errors, but -1 is also a valid time_t
value. Check whether an error really occurred. */
tm = localtime (&t);
if (! tm)
return false;
}
/* Parse a POSIX-style date and return it, or NULL for an error. */
/* Reject dates like "September 31" and times like "25:61". */
if ((tm0.tm_year ^ tm->tm_year)
| (tm0.tm_mon ^ tm->tm_mon)
| (tm0.tm_mday ^ tm->tm_mday)
| (tm0.tm_hour ^ tm->tm_hour)
| (tm0.tm_min ^ tm->tm_min)
| (tm0.tm_sec ^ tm->tm_sec))
return false;
struct tm *
posixtm (const char *s, unsigned int syntax_bits)
{
if (posixtime (s, syntax_bits) == -1)
return NULL;
return &t;
*p = t;
return true;
}
#ifdef TEST_POSIXTIME
@@ -234,20 +239,58 @@ posixtm (const char *s, unsigned int syntax_bits)
Test mainly with syntax_bits == 13
(aka: (PDS_LEADING_YEAR | PDS_CENTURY | PDS_SECONDS))
BEGIN-DATA
1112131415 13 1323807300 Tue Dec 13 14:15:00 2011
1112131415.16 13 1323807316 Tue Dec 13 14:15:16 2011
201112131415.16 13 1323807316 Tue Dec 13 14:15:16 2011
191112131415.16 13 -1 ***
203712131415.16 13 2144348116 Sun Dec 13 14:15:16 2037
3712131415.16 13 2144348116 Sun Dec 13 14:15:16 2037
6812131415.16 13 -1 ***
6912131415.16 13 -1 ***
7012131415.16 13 29967316 Sun Dec 13 14:15:16 1970
12131415.16 13 913580116 Sun Dec 13 14:15:16 1998
This test data assumes Universal Time, e.g., TZ="UTC0".
1213141599 2 945116100 Mon Dec 13 14:15:00 1999
1213141500 2 976738500 Wed Dec 13 14:15:00 2000
This test data also assumes that time_t is signed and is at least
39 bits wide, so that it can represent all years from 0000 through
9999. A host with 32-bit signed time_t can represent only time
stamps in the range 1901-12-13 20:45:52 through 2038-01-18
03:14:07 UTC, assuming POSIX time_t with no leap seconds, so test
cases outside this range will not work on such a host.
Also, the first two lines of test data assume that the current
year is 2002.
BEGIN-DATA
12131415.16 13 1039788916 Fri Dec 13 14:15:16 2002
12131415.16 13 1039788916 Fri Dec 13 14:15:16 2002
000001010000.00 13 -62167132800 Sun Jan 1 00:00:00 0000
190112132045.52 13 -2147483648 Fri Dec 13 20:45:52 1901
190112132045.53 13 -2147483647 Fri Dec 13 20:45:53 1901
190112132046.52 13 -2147483588 Fri Dec 13 20:46:52 1901
190112132145.52 13 -2147480048 Fri Dec 13 21:45:52 1901
190112142045.52 13 -2147397248 Sat Dec 14 20:45:52 1901
190201132045.52 13 -2144805248 Mon Jan 13 20:45:52 1902
196912312359.59 13 -1 Wed Dec 31 23:59:59 1969
197001010000.00 13 0 Thu Jan 1 00:00:00 1970
197001010000.01 13 1 Thu Jan 1 00:00:01 1970
197001010001.00 13 60 Thu Jan 1 00:01:00 1970
197001010100.00 13 3600 Thu Jan 1 01:00:00 1970
197001020000.00 13 86400 Fri Jan 2 00:00:00 1970
197002010000.00 13 2678400 Sun Feb 1 00:00:00 1970
197101010000.00 13 31536000 Fri Jan 1 00:00:00 1971
197001000000.00 13 * *
197000010000.00 13 * *
197001010000.60 13 * *
197001010060.00 13 * *
197001012400.00 13 * *
197001320000.00 13 * *
197013010000.00 13 * *
203801190314.06 13 2147483646 Tue Jan 19 03:14:06 2038
203801190314.07 13 2147483647 Tue Jan 19 03:14:07 2038
203801190314.08 13 2147483648 Tue Jan 19 03:14:08 2038
999912312359.59 13 253402300799 Fri Dec 31 23:59:59 9999
1112131415 13 1323785700 Tue Dec 13 14:15:00 2011
1112131415.16 13 1323785716 Tue Dec 13 14:15:16 2011
201112131415.16 13 1323785716 Tue Dec 13 14:15:16 2011
191112131415.16 13 -1831974284 Wed Dec 13 14:15:16 1911
203712131415.16 13 2144326516 Sun Dec 13 14:15:16 2037
3712131415.16 13 2144326516 Sun Dec 13 14:15:16 2037
6812131415.16 13 3122633716 Thu Dec 13 14:15:16 2068
6912131415.16 13 -1590284 Sat Dec 13 14:15:16 1969
7012131415.16 13 29945716 Sun Dec 13 14:15:16 1970
1213141599 2 945094500 Mon Dec 13 14:15:00 1999
1213141500 2 976716900 Wed Dec 13 14:15:00 2000
END-DATA
*/
@@ -265,13 +308,24 @@ main ()
char time_str[MAX_BUFF_LEN];
unsigned int syntax_bits;
time_t t;
char *result;
sscanf (buff, "%s %u", time_str, &syntax_bits);
t = posixtime (time_str, syntax_bits);
result = (t == (time_t) -1 ? "***" : ctime (&t));
printf ("%d %s\n", (int) t, result);
if (sscanf (buff, "%s %u", time_str, &syntax_bits) != 2)
printf ("*\n");
else
{
printf ("%-15s %2u ", time_str, syntax_bits);
if (posixtime (&t, time_str, syntax_bits))
printf ("%12ld %s", (long) t, ctime (&t));
else
printf ("%12s %s", "*", "*\n");
}
}
exit (0);
}
#endif
/*
Local Variables:
compile-command: "gcc -DTEST_POSIXTIME -DHAVE_CONFIG_H -I.. -g -O -Wall -W posixtm.c"
End:
*/

View File

@@ -15,10 +15,7 @@
# endif
# endif
time_t
posixtime PARAMS ((const char *s, unsigned int syntax_bits));
struct tm *
posixtm PARAMS ((const char *s, unsigned int syntax_bits));
bool
posixtime PARAMS ((time_t *p, const char *s, unsigned int syntax_bits));
#endif

View File

@@ -1,5 +1,5 @@
/* Declarations for GNU's read utmp module.
Copyright (C) 1992-2001 Free Software Foundation, Inc.
Copyright (C) 1992-2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -30,6 +30,12 @@
# include <sys/types.h>
/* AIX 4.3.3 has both utmp.h and utmpx.h, but only struct utmp
has the ut_exit member. */
# if HAVE_UTMPX_H && HAVE_UTMP_H && HAVE_STRUCT_UTMP_UT_EXIT && ! HAVE_STRUCT_UTMPX_UT_EXIT
# undef HAVE_UTMPX_H
# endif
# ifdef HAVE_UTMPX_H
# ifdef HAVE_UTMP_H
/* HPUX 10.20 needs utmp.h, for the definition of e.g., UTMP_FILE. */
@@ -44,6 +50,27 @@
# ifdef HAVE_UTMPXNAME
# define UTMP_NAME_FUNCTION utmpxname
# endif
# if HAVE_STRUCT_UTMPX_UT_EXIT_E_TERMINATION
# define UT_EXIT_E_TERMINATION(U) ((U)->ut_exit.e_termination)
# else
# if HAVE_STRUCT_UTMPX_UT_EXIT_UT_TERMINATION
# define UT_EXIT_E_TERMINATION(U) ((U)->ut_exit.ut_termination)
# else
# define UT_EXIT_E_TERMINATION(U) 0
# endif
# endif
# if HAVE_STRUCT_UTMPX_UT_EXIT_E_EXIT
# define UT_EXIT_E_EXIT(U) ((U)->ut_exit.e_exit)
# else
# if HAVE_STRUCT_UTMPX_UT_EXIT_UT_EXIT
# define UT_EXIT_E_EXIT(U) ((U)->ut_exit.ut_exit)
# else
# define UT_EXIT_E_EXIT(U) 0
# endif
# endif
# else
# include <utmp.h>
# if !HAVE_DECL_GETUTENT
@@ -57,6 +84,27 @@
# ifdef HAVE_UTMPNAME
# define UTMP_NAME_FUNCTION utmpname
# endif
# if HAVE_STRUCT_UTMP_UT_EXIT_E_TERMINATION
# define UT_EXIT_E_TERMINATION(U) ((U)->ut_exit.e_termination)
# else
# if HAVE_STRUCT_UTMP_UT_EXIT_UT_TERMINATION
# define UT_EXIT_E_TERMINATION(U) ((U)->ut_exit.ut_termination)
# else
# define UT_EXIT_E_TERMINATION(U) 0
# endif
# endif
# if HAVE_STRUCT_UTMP_UT_EXIT_E_EXIT
# define UT_EXIT_E_EXIT(U) ((U)->ut_exit.e_exit)
# else
# if HAVE_STRUCT_UTMP_UT_EXIT_UT_EXIT
# define UT_EXIT_E_EXIT(U) ((U)->ut_exit.ut_exit)
# else
# define UT_EXIT_E_EXIT(U) 0
# endif
# endif
# endif
/* Accessor macro for the member named ut_user or ut_name. */
@@ -69,9 +117,6 @@
# undef UT_USER
# define UT_USER(Utmp) ((Utmp)->ut_name)
# endif
# if defined HAVE_STRUCT_UTMPX_UT_TYPE
# define UT_TYPE(Utmp) ((Utmp)->ut_type)
# endif
# else
@@ -82,12 +127,25 @@
# undef UT_USER
# define UT_USER(Utmp) Utmp->ut_name
# endif
# if defined HAVE_STRUCT_UTMP_UT_TYPE
# define UT_TYPE(Utmp) ((Utmp)->ut_type)
# endif
# endif
# define HAVE_STRUCT_XTMP_UT_EXIT \
(HAVE_STRUCT_UTMP_UT_EXIT \
|| HAVE_STRUCT_UTMPX_UT_EXIT)
# define HAVE_STRUCT_XTMP_UT_ID \
(HAVE_STRUCT_UTMP_UT_ID \
|| HAVE_STRUCT_UTMPX_UT_ID)
# define HAVE_STRUCT_XTMP_UT_PID \
(HAVE_STRUCT_UTMP_UT_PID \
|| HAVE_STRUCT_UTMPX_UT_PID)
# define HAVE_STRUCT_XTMP_UT_TYPE \
(HAVE_STRUCT_UTMP_UT_TYPE \
|| HAVE_STRUCT_UTMPX_UT_TYPE)
typedef struct UTMP_STRUCT_NAME STRUCT_UTMP;
# include <time.h>

View File

@@ -1,5 +1,5 @@
/* safe-read.c -- an interface to read that retries after interrupts
Copyright (C) 1993, 1994, 1998 Free Software Foundation, Inc.
Copyright (C) 1993, 1994, 1998, 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -34,8 +34,7 @@ extern int errno;
#include "safe-read.h"
/* Read LEN bytes at PTR from descriptor DESC, retrying if interrupted.
Return the actual number of bytes read, zero for EOF, or negative
for an error. */
Return the actual number of bytes read, zero for EOF, or -1 upon error. */
ssize_t
safe_read (int desc, void *ptr, size_t len)

346
lib/sig2str.c Normal file
View File

@@ -0,0 +1,346 @@
/* sig2str.c -- convert between signal names and numbers
Copyright (C) 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Written by Paul Eggert. */
#if HAVE_CONFIG_H
# include <config.h>
#endif
#include <limits.h>
#include <signal.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "sig2str.h"
#ifndef SIGRTMIN
# define SIGRTMIN 0
# undef SIGRTMAX
#endif
#ifndef SIGRTMAX
# define SIGRTMAX (SIGRTMIN - 1)
#endif
#define NUMNAME(name) { SIG##name, #name }
/* Signal names and numbers. Put the preferred name first. */
static struct numname { int num; char const name[8]; } numname_table[] =
{
/* Signals required by POSIX 1003.1-2001 base, listed in
traditional numeric order. */
#ifdef SIGHUP
NUMNAME (HUP),
#endif
#ifdef SIGINT
NUMNAME (INT),
#endif
#ifdef SIGQUIT
NUMNAME (QUIT),
#endif
#ifdef SIGILL
NUMNAME (ILL),
#endif
#ifdef SIGTRAP
NUMNAME (TRAP),
#endif
#ifdef SIGABRT
NUMNAME (ABRT),
#endif
#ifdef SIGFPE
NUMNAME (FPE),
#endif
#ifdef SIGKILL
NUMNAME (KILL),
#endif
#ifdef SIGBUS
NUMNAME (BUS),
#endif
#ifdef SIGSEGV
NUMNAME (SEGV),
#endif
#ifdef SIGPIPE
NUMNAME (PIPE),
#endif
#ifdef SIGALRM
NUMNAME (ALRM),
#endif
#ifdef SIGTERM
NUMNAME (TERM),
#endif
#ifdef SIGUSR1
NUMNAME (USR1),
#endif
#ifdef SIGUSR2
NUMNAME (USR2),
#endif
#ifdef SIGCHLD
NUMNAME (CHLD),
#endif
#ifdef SIGURG
NUMNAME (URG),
#endif
#ifdef SIGSTOP
NUMNAME (STOP),
#endif
#ifdef SIGTSTP
NUMNAME (TSTP),
#endif
#ifdef SIGCONT
NUMNAME (CONT),
#endif
#ifdef SIGTTIN
NUMNAME (TTIN),
#endif
#ifdef SIGTTOU
NUMNAME (TTOU),
#endif
/* Signals required by POSIX 1003.1-2001 with the XSI extension. */
#ifdef SIGSYS
NUMNAME (SYS),
#endif
#ifdef SIGPOLL
NUMNAME (POLL),
#endif
#ifdef SIGVTALRM
NUMNAME (VTALRM),
#endif
#ifdef SIGPROF
NUMNAME (PROF),
#endif
#ifdef SIGXCPU
NUMNAME (XCPU),
#endif
#ifdef SIGXFSZ
NUMNAME (XFSZ),
#endif
/* Unix Version 7. */
#ifdef SIGIOT
NUMNAME (IOT), /* Older name for ABRT. */
#endif
#ifdef SIGEMT
NUMNAME (EMT),
#endif
/* USG Unix. */
#ifdef SIGPHONE
NUMNAME (PHONE),
#endif
#ifdef SIGWIND
NUMNAME (WIND),
#endif
/* Unix System V. */
#ifdef SIGCLD
NUMNAME (CLD),
#endif
#ifdef SIGPWR
NUMNAME (PWR),
#endif
/* GNU/Linux 2.2 and Solaris 8. */
#ifdef SIGCANCEL
NUMNAME (CANCEL),
#endif
#ifdef SIGLWP
NUMNAME (LWP),
#endif
#ifdef SIGWAITING
NUMNAME (WAITING),
#endif
#ifdef SIGFREEZE
NUMNAME (FREEZE),
#endif
#ifdef SIGTHAW
NUMNAME (THAW),
#endif
#ifdef SIGLOST
NUMNAME (LOST),
#endif
#ifdef SIGWINCH
NUMNAME (WINCH),
#endif
/* GNU/Linux 2.2. */
#ifdef SIGINFO
NUMNAME (INFO),
#endif
#ifdef SIGIO
NUMNAME (IO),
#endif
#ifdef SIGSTKFLT
NUMNAME (STKFLT),
#endif
/* AIX 5L. */
#ifdef SIGDANGER
NUMNAME (DANGER),
#endif
#ifdef SIGGRANT
NUMNAME (GRANT),
#endif
#ifdef SIGMIGRATE
NUMNAME (MIGRATE),
#endif
#ifdef SIGMSG
NUMNAME (MSG),
#endif
#ifdef SIGPRE
NUMNAME (PRE),
#endif
#ifdef SIGRETRACT
NUMNAME (RETRACT),
#endif
#ifdef SIGSAK
NUMNAME (SAK),
#endif
#ifdef SIGSOUND
NUMNAME (SOUND),
#endif
/* Older AIX versions. */
#ifdef SIGALRM1
NUMNAME (ALRM1), /* unknown; taken from Bash 2.05 */
#endif
#ifdef SIGKAP
NUMNAME (KAP), /* Older name for SIGGRANT. */
#endif
#ifdef SIGVIRT
NUMNAME (VIRT), /* unknown; taken from Bash 2.05 */
#endif
#ifdef SIGWINDOW
NUMNAME (WINDOW), /* Older name for SIGWINCH. */
#endif
/* BeOS */
#ifdef SIGKILLTHR
NUMNAME (KILLTHR),
#endif
/* Older HP-UX versions. */
#ifdef SIGDIL
NUMNAME (DIL),
#endif
/* Korn shell and Bash, of uncertain vintage. */
{ 0, "EXIT" }
};
#define NUMNAME_ENTRIES (sizeof numname_table / sizeof numname_table[0])
/* ISDIGIT differs from isdigit, as follows:
- Its arg may be any int or unsigned int; it need not be an unsigned char.
- It's guaranteed to evaluate its argument exactly once.
- It's typically faster.
POSIX says that only '0' through '9' are digits. Prefer ISDIGIT to
ISDIGIT_LOCALE unless it's important to use the locale's definition
of `digit' even when the host does not conform to POSIX. */
#define ISDIGIT(c) ((unsigned) (c) - '0' <= 9)
/* Convert the signal name SIGNAME to a signal number. Return the
signal number if successful, -1 otherwise. */
static int
str2signum (char const *signame)
{
if (ISDIGIT (*signame))
{
char *endp;
long int n = strtol (signame, &endp, 10);
if (! *endp && n <= SIGNUM_BOUND)
return n;
}
else
{
size_t i;
for (i = 0; i < NUMNAME_ENTRIES; i++)
if (strcmp (numname_table[i].name, signame) == 0)
return numname_table[i].num;
{
char *endp;
int rtmin = SIGRTMIN;
int rtmax = SIGRTMAX;
if (0 < rtmin && strncmp (signame, "RTMIN", 5) == 0)
{
long int n = strtol (signame + 5, &endp, 10);
if (! *endp && 0 <= n && n <= rtmax - rtmin)
return rtmin + n;
}
else if (0 < rtmax && strncmp (signame, "RTMAX", 5) == 0)
{
long int n = strtol (signame + 5, &endp, 10);
if (! *endp && rtmin - rtmax <= n && n <= 0)
return rtmax + n;
}
}
}
return -1;
}
/* Convert the signal name SIGNAME to the signal number *SIGNUM.
Return 0 if successful, -1 otherwise. */
int
str2sig (char const *signame, int *signum)
{
*signum = str2signum (signame);
return *signum < 0 ? -1 : 0;
}
/* Convert SIGNUM to a signal name in SIGNAME. SIGNAME must point to
a buffer of at least SIG2STR_MAX bytes. Return 0 if successful, -1
otherwise. */
int
sig2str (int signum, char *signame)
{
size_t i;
for (i = 0; i < NUMNAME_ENTRIES; i++)
if (numname_table[i].num == signum)
{
strcpy (signame, numname_table[i].name);
return 0;
}
{
int rtmin = SIGRTMIN;
int rtmax = SIGRTMAX;
if (! (rtmin <= signum && signum <= rtmax))
return -1;
if (signum <= rtmin + (rtmax - rtmin) / 2)
{
int delta = signum - rtmin;
sprintf (signame, delta ? "RTMIN+%d" : "RTMIN", delta);
}
else
{
int delta = rtmax - signum;
sprintf (signame, delta ? "RTMAX-%d" : "RTMAX", delta);
}
return 0;
}
}

47
lib/sig2str.h Normal file
View File

@@ -0,0 +1,47 @@
/* sig2str.h -- convert between signal names and numbers
Copyright (C) 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Written by Paul Eggert. */
/* Include <signal.h> before including this file. */
/* Don't override system declarations of SIG2STR_MAX, sig2str, str2sig. */
#ifndef SIG2STR_MAX
/* Upper bound on the string length of an integer converted to string.
302 / 1000 is ceil (log10 (2.0)). Subtract 1 for the sign bit;
add 1 for integer division truncation; add 1 more for a minus sign. */
# define INT_STRLEN_BOUND(t) ((sizeof (t) * CHAR_BIT - 1) * 302 / 1000 + 2)
/* Size of a buffer needed to hold a signal name like "HUP". */
# define SIG2STR_MAX (sizeof "SIGRTMAX" + INT_STRLEN_BOUND (int) - 1)
int sig2str (int, char *);
int str2sig (char const *, int *);
#endif
/* An upper bound on signal numbers allowed by the system. */
#if defined _sys_nsig
# define SIGNUM_BOUND (_sys_nsig - 1)
#elif defined NSIG
# define SIGNUM_BOUND (NSIG - 1)
#else
# define SIGNUM_BOUND 64
#endif

View File

@@ -1,5 +1,5 @@
/* xmalloc.c -- malloc with out of memory checking
Copyright (C) 1990-1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1990-1999, 2000, 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -46,12 +46,12 @@ void free ();
# define EXIT_FAILURE 1
#endif
#ifndef HAVE_DONE_WORKING_MALLOC_CHECK
"you must run the autoconf test for a properly working malloc -- see malloc.m4"
#ifndef HAVE_MALLOC
"you must run the autoconf test for a properly working malloc"
#endif
#ifndef HAVE_DONE_WORKING_REALLOC_CHECK
"you must run the autoconf test for a properly working realloc --see realloc.m4"
#ifndef HAVE_REALLOC
"you must run the autoconf test for a properly working realloc"
#endif
/* Exit value when the requested amount of memory is not available.

217
lib/xnanosleep.c Normal file
View File

@@ -0,0 +1,217 @@
/* xnanosleep.c -- a more convenient interface to nanosleep
Copyright (C) 2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Mostly written (for sleep.c) by Paul Eggert.
Factored out (creating this file) by Jim Meyering. */
#if HAVE_CONFIG_H
# include <config.h>
#endif
#include <stdio.h>
#include <assert.h>
#include <errno.h>
#include <sys/types.h>
#include <time.h>
#define USE_CLOCK_GETTIME (defined CLOCK_REALTIME && HAVE_CLOCK_GETTIME)
#if ! USE_CLOCK_GETTIME
# include <sys/time.h>
#endif
#ifndef CHAR_BIT
# define CHAR_BIT 8
#endif
/* The extra casts work around common compiler bugs. */
#define TYPE_SIGNED(t) (! ((t) 0 < (t) -1))
/* The outer cast is needed to work around a bug in Cray C 5.0.3.0.
It is necessary at least when t == time_t. */
#define TYPE_MINIMUM(t) ((t) (TYPE_SIGNED (t) \
? ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1) : (t) 0))
#define TYPE_MAXIMUM(t) ((t) (~ (t) 0 - TYPE_MINIMUM (t)))
#ifndef TIME_T_MAX
# define TIME_T_MAX TYPE_MAXIMUM (time_t)
#endif
#include "timespec.h"
#include "xalloc.h"
#include "xnanosleep.h"
#include "xstrtod.h"
#if HAVE_FENV_H
# include <fenv.h>
#endif
/* Tell the compiler that non-default rounding modes are used. */
#if 199901 <= __STDC_VERSION__
#pragma STDC FENV_ACCESS ON
#endif
static int initialized = 0;
/* Subtract the `struct timespec' values X and Y,
storing the difference in DIFF.
Return 1 if the difference is positive, otherwise 0.
Derived from code in the GNU libc manual. */
static int
timespec_subtract (struct timespec *diff,
const struct timespec *x, struct timespec *y)
{
/* Perform the carry for the later subtraction by updating Y. */
if (x->tv_nsec < y->tv_nsec)
{
int nsec = (y->tv_nsec - x->tv_nsec) / 1000000000 + 1;
y->tv_nsec -= 1000000000 * nsec;
y->tv_sec += nsec;
}
if (1000000000 < x->tv_nsec - y->tv_nsec)
{
int nsec = (y->tv_nsec - x->tv_nsec) / 1000000000;
y->tv_nsec += 1000000000 * nsec;
y->tv_sec -= nsec;
}
/* Compute the time remaining to wait.
`tv_nsec' is certainly positive. */
diff->tv_sec = x->tv_sec - y->tv_sec;
diff->tv_nsec = x->tv_nsec - y->tv_nsec;
/* Return 1 if result is positive. */
return y->tv_sec < x->tv_sec;
}
struct timespec *
clock_get_realtime (struct timespec *ts)
{
int fail;
#if USE_CLOCK_GETTIME
fail = clock_gettime (CLOCK_REALTIME, ts);
#else
struct timeval tv;
fail = gettimeofday (&tv, NULL);
if (!fail)
{
ts->tv_sec = tv.tv_sec;
ts->tv_nsec = 1000 * tv.tv_usec;
}
#endif
if (fail)
return NULL;
return ts;
}
/* Sleep until the time (call it WAKE_UP_TIME) specified as
SECONDS seconds after the time this function is called.
SECONDS must be non-negative. If SECONDS is so large that
it is not representable as a `struct timespec', then use
the maximum value for that interval. Return -1 on failure
(setting errno), 0 on success. */
int
xnanosleep (double seconds)
{
int overflow;
double ns;
struct timespec ts_start;
struct timespec ts_sleep;
struct timespec ts_stop;
assert (0 <= seconds);
#ifdef FE_UPWARD
if (! initialized)
{
/* Always round up, since we must sleep for at least the specified
interval. */
/* FIXME: save and restore state, rather than just setting it? */
fesetround (FE_UPWARD);
}
#endif
if (clock_get_realtime (&ts_start) == NULL)
return -1;
/* Separate whole seconds from nanoseconds.
Be careful to detect any overflow. */
ts_sleep.tv_sec = seconds;
ns = 1e9 * (seconds - ts_sleep.tv_sec);
overflow = ! (ts_sleep.tv_sec <= seconds && 0 <= ns && ns <= 1e9);
ts_sleep.tv_nsec = ns;
/* Round up to the next whole number, if necessary, so that we
always sleep for at least the requested amount of time. */
ts_sleep.tv_nsec += (ts_sleep.tv_nsec < ns);
/* Normalize the interval length. nanosleep requires this. */
if (1000000000 <= ts_sleep.tv_nsec)
{
time_t t = ts_sleep.tv_sec + 1;
/* Detect integer overflow. */
overflow |= (t < ts_sleep.tv_sec);
ts_sleep.tv_sec = t;
ts_sleep.tv_nsec -= 1000000000;
}
/* Compute the time until which we should sleep. */
ts_stop.tv_sec = ts_start.tv_sec + ts_sleep.tv_sec;
ts_stop.tv_nsec = ts_start.tv_nsec + ts_sleep.tv_nsec;
if (1000000000 <= ts_stop.tv_nsec)
{
++ts_stop.tv_sec;
ts_stop.tv_nsec -= 1000000000;
}
/* Detect integer overflow. */
overflow |= (ts_stop.tv_sec < ts_start.tv_sec
|| (ts_stop.tv_sec == ts_start.tv_sec
&& ts_stop.tv_nsec < ts_start.tv_nsec));
if (overflow)
{
/* Fix ts_sleep and ts_stop, which may be garbage due to overflow. */
ts_sleep.tv_sec = ts_stop.tv_sec = TIME_T_MAX;
ts_sleep.tv_nsec = ts_stop.tv_nsec = 999999999;
}
while (nanosleep (&ts_sleep, NULL) != 0)
{
if (errno != EINTR)
return -1;
/* POSIX.1-2001 requires that when a process is suspended, then
resumed, nanosleep (A, B) returns -1, sets errno to EINTR,
and sets *B to the time remaining at the point of resumption.
However, some versions of the Linux kernel incorrectly return
the time remaining at the point of suspension. Work around
this bug by computing the remaining time here, rather than by
relying on nanosleep's computation. */
if (! timespec_subtract (&ts_sleep, &ts_stop,
clock_get_realtime (&ts_start)))
break;
}
return 0;
}

1
lib/xnanosleep.h Normal file
View File

@@ -0,0 +1 @@
int xnanosleep (double);

View File

@@ -4,7 +4,7 @@
/* Work around the bug in some systems whereby @xstat@ succeeds when
given the zero-length file name argument. The @xstat@ from SunOS4.1.4
has this bug.
Copyright (C) 1997-2001 Free Software Foundation, Inc.
Copyright (C) 1997-2002 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -31,6 +31,7 @@
extern int errno;
#endif
@BEGIN_LSTAT_ONLY@
#include <string.h>
#if HAVE_STDLIB_H
# include <stdlib.h>
@@ -39,8 +40,13 @@ extern int errno;
#ifdef STAT_MACROS_BROKEN
# undef S_ISLNK
#endif
#if !defined(S_ISLNK) && defined(S_IFLNK)
# define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
#ifndef S_ISLNK
# ifdef S_IFLNK
# define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
# else
# define S_ISLNK(m) 0
# endif
#endif
#ifndef HAVE_DECL_FREE

View File

@@ -1,3 +1,251 @@
2002-09-29 Jim Meyering <meyering@lucent.com>
* gettext.m4 (AM_INTL_SUBDIR): Don't require gt_HEADER_INTTYPES_H.
It's not necessary with autoconf-2.54.
2002-09-28 Jim Meyering <meyering@lucent.com>
* getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
* jm-macros.m4 (jm_MACROS): Don't set GETGROUPS_LIB here; now it's
done via getgroups.m4's wrapper function.
* strerror_r.m4: Remove file -- now it's part of autoconf-2.54.
Reported by Akim Demaille.
2002-09-25 Jim Meyering <meyering@lucent.com>
* gettext.m4: Upgrade to gettext-0.11.5.
2002-09-07 Bruno Haible <bruno@clisp.org>
* host-os.m4 (UTILS_HOST_OS): Add a case for freebsd*-gnu*.
2002-09-17 Jim Meyering <meyering@lucent.com>
* jm-macros.m4 (jm_MACROS): Require gt_INTTYPES_PRI.
* inttypes-pri.m4 (gt_INTTYPES_PRI): New file, mostly from gettext.
2002-09-16 Jim Meyering <meyering@lucent.com>
* prereq.m4: Forbid symbols matching ^jm_[A-Z].
(jm_PREREQ_QUOTEARG): Add jm_FUNC_MEMCMP.
From Akim Demaille.
* error.m4 (jm_PREREQ_ERROR): Check for libintl.h.
Reported by Akim Demaille.
2002-09-13 Jim Meyering <meyering@lucent.com>
* jm-macros.m4 (jm_MACROS): Require autoconf-2.54.
2002-09-09 Jim Meyering <meyering@lucent.com>
* getloadavg.m4: Remove file -- now it's part of autoconf-2.53c.
* jm-macros.m4: Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
AC_FUNC_GETLOADAVG where to find getloadavg.c.
2002-09-03 Jim Meyering <meyering@lucent.com>
* gnu-source.m4: Remove file -- now it's part of autoconf-2.53c.
* mbstate_t.m4: Likewise.
* fnmatch.m4: Likewise.
2002-08-05 Jim Meyering <meyering@lucent.com>
* jm-winsz1.m4: Also change use of $am_cv_sys_posix_termios
to $ac_cv_sys_posix_termios. Reported by Andreas Schwab.
2002-08-03 Jim Meyering <meyering@lucent.com>
* jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not AM_SYS_POSIX_TERMIOS.
Reported by mkc@mathdogs.com.
2002-08-01 Jim Meyering <meyering@lucent.com>
* prereq.m4 (jm_PREREQ_TEMPNAME): lib/tempname.c may use uintmax_t,
so require jm_AC_TYPE_UINTMAX_T. Patch by Joe Orton.
2002-07-28 Jim Meyering <meyering@lucent.com>
* jm-macros.m4: Don't require jm_FUNC_READDIR.
* readdir.m4 (jm_FUNC_READDIR): Remove file/macro. No longer needed.
2002-07-27 Jim Meyering <meyering@lucent.com>
* prereq.m4 (jm_PREREQ_READUTMP): Don't check just
`struct utmpx.ut_exit' and `struct utmp.ut_exit'. Instead, check
all combinations of utmp/utmpx and ut_termination/e_termination
and ut_exit/e_exit.
2002-07-23 Jim Meyering <meyering@lucent.com>
* c-bs-a.m4 (AC_C_BACKSLASH_A): Remove file, now that autoconf
provides this macro.
2002-07-20 Jim Meyering <meyering@lucent.com>
* intdiv0.m4: New file. From gettex-0.11.3.
* jm-macros.m4: Require autoconf-2.53b.
Use new macros AC_FUNC_MALLOC and AC_FUNC_REALLOC,
in place of jm_-prefixed ones. Thanks, Akim!
* malloc.m4: Remove file, now that autoconf provides this macro.
* realloc.m4: Likewise.
2002-07-18 gettextize <bug-gnu-gettext@gnu.org>
* gettext.m4: Upgrade to gettext-0.11.3.
* iconv.m4: Upgrade to gettext-0.11.3.
* isc-posix.m4: Upgrade to gettext-0.11.3.
* lcmessage.m4: Upgrade to gettext-0.11.3.
* lib-link.m4: Upgrade to gettext-0.11.3.
2002-07-17 Jim Meyering <meyering@lucent.com>
* boottime.m4: New file. Extracted from sh-utils' configure.ac
and extended to work also with *BSD systems.
2002-07-15 Jim Meyering <meyering@lucent.com>
FreeBSD support for uname and uptime.
* jm-macros.m4 (jm_MACROS): Check for the sysctl function.
(jm_CHECK_ALL_HEADERS): Check for sys/sysctl.h.
Suggestion from Bruno Haible.
2002-06-11 Paul Eggert <eggert@twinsun.com>
* fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
2002-06-22 Jim Meyering <meyering@lucent.com>
* c-stack.m4: New file, from diffutils-2.8.2.
* prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
* jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
now that configure.ac uses AC_GNU_SOURCE.
(jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
* prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
Update to latest tools. Suggestions from Paul Eggert.
* stdbool.m4: New file, from diffutils-2.8.2.
* gnu-source.m4: Update from diffutils-2.8.2.
* fnmatch.m4: Likewise.
* prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
to AC_HEADER_STDBOOL
2002-06-21 Jim Meyering <meyering@lucent.com>
* c-bs-a.m4: Add comment, from diffutils-2.8.2.
* mbrtowc.m4: Likewise.
* mbstate_t.m4: Update from diffutils-2.8.2.
* mbswidth.m4: Reflect name change:
s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
* prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
* lib-link.m4: Update from gettext-0.11.2.
* gettext.m4: Likewise.
* jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
From Alfred M. Szmidt.
2002-05-19 Paul Eggert <eggert@twinsun.com>
* jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
2002-06-07 Jim Meyering <meyering@lucent.com>
* prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
They're needed at least for NetBSD 1.5.2.
($statxfs_includes): Include those same headers.
($statxfs_includes): Include sys/vfs.h if available.
($statxfs_includes): Likewise for sys/statvfs.h.
Check for the following members in both structs statfs and statvfs:
f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
2002-06-01 Jim Meyering <meyering@lucent.com>
* d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
2002-05-28 Jim Meyering <meyering@lucent.com>
* readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
Reported by Volker Borchert.
2002-05-27 Jim Meyering <meyering@lucent.com>
* gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
localtime.
* readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
use the replacement function; it wouldn't resolve at link time.
Reported by Volker Borchert.
2002-04-30 Jim Meyering <meyering@lucent.com>
* prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
2002-04-29 Paul Eggert <eggert@twinsun.com>
* prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
Do not check for alloca.h (no longer used) or stdbool.h (was never
used?). Add AM_C_PROTOTYPES since hard-locale.h uses it.
2002-04-28 Paul Eggert <eggert@twinsun.com>
* prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
2002-04-29 Jim Meyering <meyering@lucent.com>
* jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
* prereq.m4: Add jm_PREREQ_STRNLEN.
Use AC_FUNC_STRNLEN here instead.
* jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
With autoconf-2.53a, it's part of AC_PROG_CC.
2002-04-28 Paul Eggert <eggert@twinsun.com>
* jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
* prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
2002-04-24 Jim Meyering <meyering@lucent.com>
* prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
(jm_PREREQ): Use it.
* getloadavg.m4: Check for these headers: locale.h unistd.h
mach/mach.h fcntl.h.
Check for this function: setlocale.
2002-04-16 Jim Meyering <meyering@lucent.com>
* prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
ut_pid, ut_id, ut_exit.
2002-04-12 Jim Meyering <meyering@lucent.com>
* ls-mntd-fs.m4 (checking for getmntinfo function...): Remove now-bogus
check for f_type in sys/mount.h. Instead, just test for the existence
of the getmntinfo function. Needed for Darwin 5.3.
* dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
This is necessary at least on Darwin 5.3.
* jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
AC_FUNC_STRNLEN. Otherwise, we'd end up putting two copies of strnlen.o
in the library, and that makes some versions of ranlib object.
2002-04-09 Jim Meyering <meyering@lucent.com>
* malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
to be more precise. Rather than saying we're checking whether the
function `works', say what we're testing.
* realloc.m4 (jm_FUNC_REALLOC): Likewise.
Reported by Bruno Haible.
2002-02-27 Paul Eggert <eggert@twinsun.com>
* jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.

View File

@@ -7,7 +7,8 @@ acl.m4 \
afs.m4 \
assert.m4 \
bison.m4 \
c-bs-a.m4 \
boottime.m4 \
c-stack.m4 \
check-decl.m4 \
chown.m4 \
codeset.m4 \
@@ -16,7 +17,6 @@ d-type.m4 \
dirfd.m4 \
dos.m4 \
error.m4 \
fnmatch.m4 \
fpending.m4 \
fstypename.m4 \
fsusage.m4 \
@@ -24,15 +24,15 @@ ftruncate.m4 \
getcwd.m4 \
getgroups.m4 \
getline.m4 \
getloadavg.m4 \
gettext.m4 \
gettimeofday.m4 \
glibc.m4 \
glibc21.m4 \
gnu-source.m4 \
group-member.m4 \
host-os.m4 \
iconv.m4 \
intdiv0.m4 \
inttypes-pri.m4 \
inttypes.m4 \
isc-posix.m4 \
jm-glibc-io.m4 \
@@ -50,9 +50,7 @@ link-follow.m4 \
longlong.m4 \
ls-mntd-fs.m4 \
lstat.m4 \
malloc.m4 \
mbrtowc.m4 \
mbstate_t.m4 \
mbswidth.m4 \
memcmp.m4 \
mkdir-slash.m4 \
@@ -62,8 +60,6 @@ perl.m4 \
prereq.m4 \
progtest.m4 \
putenv.m4 \
readdir.m4 \
realloc.m4 \
regex.m4 \
rename.m4 \
rmdir-errno.m4 \
@@ -71,7 +67,7 @@ search-libs.m4 \
st_dm_mode.m4 \
st_mtim.m4 \
stat.m4 \
strerror_r.m4 \
stdbool.m4 \
strftime.m4 \
timespec.m4 \
unlink-busy.m4 \

View File

@@ -1,4 +1,4 @@
# Makefile.in generated by automake 1.6 from Makefile.am.
# Makefile.in generated by automake 1.7 from Makefile.am.
# @configure_input@
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
@@ -13,110 +13,138 @@
# PARTICULAR PURPOSE.
@SET_MAKE@
SHELL = @SHELL@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
INSTALL_SCRIPT = @INSTALL_SCRIPT@
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = @program_transform_name@
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
host_alias = @host_alias@
host_triplet = @host@
EXEEXT = @EXEEXT@
OBJEXT = @OBJEXT@
PATH_SEPARATOR = @PATH_SEPARATOR@
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
CATOBJEXT = @CATOBJEXT@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
DATADIRNAME = @DATADIRNAME@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DF_PROG = @DF_PROG@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FESETROUND_LIBM = @FESETROUND_LIBM@
GENCAT = @GENCAT@
GETLOADAVG_LIBS = @GETLOADAVG_LIBS@
GLIBC21 = @GLIBC21@
GMSGFMT = @GMSGFMT@
GNU_PACKAGE = @GNU_PACKAGE@
HAVE_LIB = @HAVE_LIB@
HELP2MAN = @HELP2MAN@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTOBJEXT = @INSTOBJEXT@
INTLBISON = @INTLBISON@
INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@
INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
KMEM_GROUP = @KMEM_GROUP@
LIB = @LIB@
LDFLAGS = @LDFLAGS@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBS = @LIBS@
LIB_CLOCK_GETTIME = @LIB_CLOCK_GETTIME@
LIB_CRYPT = @LIB_CRYPT@
LIB_NANOSLEEP = @LIB_NANOSLEEP@
LTLIB = @LTLIB@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MAN = @MAN@
MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@
MSGMERGE = @MSGMERGE@
NEED_SETGID = @NEED_SETGID@
OBJEXT = @OBJEXT@
OPTIONAL_BIN_PROGS = @OPTIONAL_BIN_PROGS@
OPTIONAL_BIN_ZCRIPTS = @OPTIONAL_BIN_ZCRIPTS@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
POSUB = @POSUB@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SEQ_LIBM = @SEQ_LIBM@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SQRT_LIBM = @SQRT_LIBM@
STRIP = @STRIP@
U = @U@
USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
YACC = @YACC@
ac_ct_CC = @ac_ct_CC@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__include = @am__include@
am__quote = @am__quote@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localstatedir = @localstatedir@
mandir = @mandir@
oldincludedir = @oldincludedir@
prefix = @prefix@
program_transform_name = @program_transform_name@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
EXTRA_DIST = \
README jm-glibc-io.m4 jm-glibc-io.m4n Makefile.am.in \
@@ -124,7 +152,8 @@ acl.m4 \
afs.m4 \
assert.m4 \
bison.m4 \
c-bs-a.m4 \
boottime.m4 \
c-stack.m4 \
check-decl.m4 \
chown.m4 \
codeset.m4 \
@@ -133,7 +162,6 @@ d-type.m4 \
dirfd.m4 \
dos.m4 \
error.m4 \
fnmatch.m4 \
fpending.m4 \
fstypename.m4 \
fsusage.m4 \
@@ -141,15 +169,15 @@ ftruncate.m4 \
getcwd.m4 \
getgroups.m4 \
getline.m4 \
getloadavg.m4 \
gettext.m4 \
gettimeofday.m4 \
glibc.m4 \
glibc21.m4 \
gnu-source.m4 \
group-member.m4 \
host-os.m4 \
iconv.m4 \
intdiv0.m4 \
inttypes-pri.m4 \
inttypes.m4 \
isc-posix.m4 \
jm-glibc-io.m4 \
@@ -167,9 +195,7 @@ link-follow.m4 \
longlong.m4 \
ls-mntd-fs.m4 \
lstat.m4 \
malloc.m4 \
mbrtowc.m4 \
mbstate_t.m4 \
mbswidth.m4 \
memcmp.m4 \
mkdir-slash.m4 \
@@ -179,8 +205,6 @@ perl.m4 \
prereq.m4 \
progtest.m4 \
putenv.m4 \
readdir.m4 \
realloc.m4 \
regex.m4 \
rename.m4 \
rmdir-errno.m4 \
@@ -188,7 +212,7 @@ search-libs.m4 \
st_dm_mode.m4 \
st_mtim.m4 \
stat.m4 \
strerror_r.m4 \
stdbool.m4 \
strftime.m4 \
timespec.m4 \
unlink-busy.m4 \
@@ -217,13 +241,20 @@ uninstall-info-am:
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
top_distdir = ..
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
distdir: $(DISTFILES)
@for file in $(DISTFILES); do \
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \
case $$file in \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
esac; \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
@@ -233,8 +264,10 @@ distdir: $(DISTFILES)
dir=''; \
fi; \
if test -d $$d/$$file; then \
cp -pR $$d/$$file $(distdir)$$dir \
|| exit 1; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
@@ -266,7 +299,7 @@ mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
-rm -f Makefile $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -305,6 +338,14 @@ mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-info-am
.PHONY: all all-am check check-am clean clean-generic distclean \
@@ -313,7 +354,8 @@ uninstall-am: uninstall-info-am
install-exec-am install-info install-info-am install-man \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-generic uninstall uninstall-am uninstall-info-am
mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
uninstall-info-am
Makefile.am: Makefile.am.in

37
m4/boottime.m4 Normal file
View File

@@ -0,0 +1,37 @@
# Determine whether this system has infrastructure for obtaining the boot time.
# GNULIB_BOOT_TIME([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
* ----------------------------------------------------------
AC_DEFUN([GNULIB_BOOT_TIME],
[
AC_CHECK_FUNCS(sysctl)
AC_CHECK_HEADERS(sys/sysctl.h)
AC_CACHE_CHECK(
[whether we can get the system boot time],
[gnulib_cv_have_boot_time],
[
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
[AC_INCLUDES_DEFAULT
#if HAVE_SYSCTL && HAVE_SYS_SYSCTL_H
# include <sys/param.h> /* needed for OpenBSD 3.0 */
# include <sys/sysctl.h>
#endif
#ifdef HAVE_UTMPX_H
# include <utmpx.h>
#else
# include <utmp.h>
#endif
],
[[
#if defined BOOT_TIME || (defined CTL_KERN && defined KERN_BOOTTIME)
/* your system *does* have the infrastructure to determine boot time */
#else
please_tell_us_how_to_determine_boot_time_on_your_system
#endif
]])],
gnulib_cv_have_boot_time=yes,
gnulib_cv_have_boot_time=no)
])
AS_IF([test $gnulib_cv_have_boot_time = yes], [$1], [$2])
])

View File

@@ -1,23 +0,0 @@
#serial 4
dnl From Paul Eggert.
AC_DEFUN([AC_C_BACKSLASH_A],
[
AC_CACHE_CHECK([whether backslash-a works in strings], ac_cv_c_backslash_a,
[AC_TRY_COMPILE([],
[
#if '\a' == 'a'
syntax error;
#endif
char buf['\a' == 'a' ? -1 : 1];
buf[0] = '\a';
return buf[0] != "\a"[0];
],
ac_cv_c_backslash_a=yes,
ac_cv_c_backslash_a=no)])
if test $ac_cv_c_backslash_a = yes; then
AC_DEFINE(HAVE_C_BACKSLASH_A, 1,
[Define if backslash-a works in C strings.])
fi
])

136
m4/c-stack.m4 Normal file
View File

@@ -0,0 +1,136 @@
# Check prerequisites for compiling lib/c-stack.c.
# Copyright (C) 2002 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
# Written by Paul Eggert.
AC_DEFUN([AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC],
[# for STACK_DIRECTION
AC_REQUIRE([AC_FUNC_ALLOCA])
AC_CACHE_CHECK([for working C stack overflow detection],
ac_cv_sys_xsi_stack_overflow_heuristic,
[AC_TRY_RUN(
[
#include <signal.h>
#include <ucontext.h>
static union
{
char buffer[SIGSTKSZ];
long double ld;
long u;
void *p;
} alternate_signal_stack;
#if STACK_DIRECTION
# define find_stack_direction(ptr) STACK_DIRECTION
#else
static int
find_stack_direction (char const *addr)
{
char dummy;
return (! addr ? find_stack_direction (&dummy)
: addr < &dummy ? 1 : -1);
}
#endif
static void
segv_handler (int signo, siginfo_t *info, void *context)
{
if (0 < info->si_code)
{
ucontext_t const *user_context = context;
char const *stack_min = user_context->uc_stack.ss_sp;
size_t stack_size = user_context->uc_stack.ss_size;
char const *faulting_address = info->si_addr;
size_t s = faulting_address - stack_min;
size_t page_size = sysconf (_SC_PAGESIZE);
if (find_stack_direction (0) < 0)
s += page_size;
if (s < stack_size + page_size)
_exit (0);
}
_exit (1);
}
static int
c_stack_action (void)
{
stack_t st;
struct sigaction act;
int r;
st.ss_flags = 0;
st.ss_sp = alternate_signal_stack.buffer;
st.ss_size = sizeof alternate_signal_stack.buffer;
r = sigaltstack (&st, 0);
if (r != 0)
return r;
sigemptyset (&act.sa_mask);
act.sa_flags = SA_NODEFER | SA_ONSTACK | SA_RESETHAND | SA_SIGINFO;
act.sa_sigaction = segv_handler;
return sigaction (SIGSEGV, &act, 0);
}
static int
recurse (char *p)
{
char array[500];
array[0] = 1;
return *p + recurse (array);
}
int
main (void)
{
c_stack_action ();
return recurse ("\1");
}
],
[ac_cv_sys_xsi_stack_overflow_heuristic=yes],
[ac_cv_sys_xsi_stack_overflow_heuristic=no],
[ac_cv_sys_xsi_stack_overflow_heuristic=cross-compiling])])
if test $ac_cv_sys_xsi_stack_overflow_heuristic = yes; then
AC_DEFINE(HAVE_XSI_STACK_OVERFLOW_HEURISTIC, 1,
[Define to 1 if extending the stack slightly past the limit causes
a SIGSEGV, and an alternate stack can be established with sigaltstack,
and the signal handler is passed a context that specifies the
run time stack. This behavior is defined by POSIX 1003.1-2001
with the X/Open System Interface (XSI) option
and is a standardized way to implement a SEGV-based stack
overflow detection heuristic.])
fi])
AC_DEFUN([jm_PREREQ_C_STACK],
[AC_REQUIRE([AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC])
# for STACK_DIRECTION
AC_REQUIRE([AC_FUNC_ALLOCA])
AC_CHECK_FUNCS(getcontext sigaltstack)
AC_CHECK_DECLS([getcontext], , , [#include <ucontext.h>])
AC_CHECK_DECLS([sigaltstack], , , [#include <signal.h>])
AC_CHECK_HEADERS(sys/resource.h ucontext.h unistd.h)
AC_CHECK_TYPES([stack_t], , , [#include <signal.h>])])

View File

@@ -1,4 +1,4 @@
#serial 4
#serial 5
dnl From Jim Meyering.
dnl
@@ -34,7 +34,7 @@ AC_DEFUN([jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE],
]
)
if test $jm_cv_struct_dirent_d_type = yes; then
AC_DEFINE(D_TYPE_IN_DIRENT, 1,
AC_DEFINE(HAVE_STRUCT_DIRENT_D_TYPE, 1,
[Define if there is a member named d_type in the struct describing
directory headers.])
fi

View File

@@ -1,4 +1,4 @@
#serial 1
#serial 2
dnl Find out how to get the file descriptor associated with an open DIR*.
dnl From Jim Meyering
@@ -25,9 +25,19 @@ AC_DEFUN([UTILS_FUNC_DIRFD],
AC_CHECK_FUNCS(dirfd)
AC_CHECK_DECLS([dirfd], , , $dirfd_headers)
# Use the replacement only if we have neither the function
# nor a declaration.
if test $ac_cv_func_dirfd,$ac_cv_have_decl_dirfd = no,no; then
AC_CACHE_CHECK([whether dirfd is a macro],
jm_cv_func_dirfd_macro,
AC_EGREP_CPP([dirent_header_defines_dirfd], [$dirfd_headers
#ifdef dirfd
dirent_header_defines_dirfd
#endif],
jm_cv_func_dirfd_macro=yes,
jm_cv_func_dirfd_macro=no))
# Use the replacement only if we have no function, macro,
# or declaration with that name.
if test $ac_cv_func_dirfd,$ac_cv_have_decl_dirfd,$jm_cv_func_dirfd_macro \
= no,no,no; then
AC_REPLACE_FUNCS([dirfd])
AC_CACHE_CHECK(
[how to get the file descriptor associated with an open DIR*],

View File

@@ -1,4 +1,4 @@
#serial 4
#serial 5
dnl FIXME: put these prerequisite-only *.m4 files in a separate
dnl directory -- otherwise, they'll conflict with existing files.
@@ -8,6 +8,7 @@ AC_DEFUN([jm_PREREQ_ERROR],
[
AC_CHECK_FUNCS(strerror vprintf doprnt)
AC_CHECK_DECLS([strerror])
AC_CHECK_HEADERS([libintl.h])
AC_FUNC_STRERROR_R
AC_HEADER_STDC
])

View File

@@ -1,15 +0,0 @@
#serial 5
dnl Determine whether to add fnmatch.o to LIBOBJS and to
dnl define fnmatch to rpl_fnmatch.
dnl
AC_DEFUN([jm_FUNC_FNMATCH],
[
AC_FUNC_FNMATCH
if test $ac_cv_func_fnmatch_works = no; then
AC_LIBOBJ(fnmatch)
AC_DEFINE(fnmatch, rpl_fnmatch,
[Define to rpl_fnmatch if the replacement function should be used.])
fi
])

View File

@@ -1,46 +1,14 @@
#serial 5
#serial 6
dnl From Jim Meyering.
dnl
dnl Invoking code should check $GETGROUPS_LIB something like this:
dnl jm_FUNC_GETGROUPS
dnl test -n "$GETGROUPS_LIB" && LIBS="$GETGROUPS_LIB $LIBS"
dnl
dnl A wrapper around AC_FUNC_GETGROUPS.
AC_DEFUN([jm_FUNC_GETGROUPS],
[AC_REQUIRE([AC_TYPE_GETGROUPS])dnl
AC_REQUIRE([AC_TYPE_SIZE_T])dnl
AC_CHECK_FUNCS(getgroups)
# If we don't yet have getgroups, see if it's in -lbsd.
# This is reported to be necessary on an ITOS 3000WS running SEIUX 3.1.
if test $ac_cv_func_getgroups = no; then
jm_cv_sys_getgroups_saved_lib="$LIBS"
AC_CHECK_LIB(bsd, getgroups, [GETGROUPS_LIB=-lbsd])
LIBS="$jm_cv_sys_getgroups_saved_lib"
fi
# Run the program to test the functionality of the system-supplied
# getgroups function only if there is such a function.
if test $ac_cv_func_getgroups = yes; then
AC_CACHE_CHECK([for working getgroups], jm_cv_func_working_getgroups,
[AC_TRY_RUN([
int
main ()
{
/* On Ultrix 4.3, getgroups (0, 0) always fails. */
exit (getgroups (0, 0) == -1 ? 1 : 0);
}
],
jm_cv_func_working_getgroups=yes,
jm_cv_func_working_getgroups=no,
dnl When crosscompiling, assume getgroups is broken.
jm_cv_func_working_getgroups=no)
])
if test $jm_cv_func_working_getgroups = no; then
AC_LIBOBJ(getgroups)
AC_DEFINE(getgroups, rpl_getgroups,
[Define as rpl_getgroups if getgroups doesn't work right.])
fi
[AC_REQUIRE([AC_FUNC_GETGROUPS])dnl
if test $cv_func_getgroups_works = no; then
AC_LIBOBJ(getgroups)
AC_DEFINE(getgroups, rpl_getgroups,
[Define as rpl_getgroups if getgroups doesn't work right.])
fi
test -n "$GETGROUPS_LIB" && LIBS="$GETGROUPS_LIB $LIBS"
])

View File

@@ -1,105 +0,0 @@
#serial 8
# A replacement for autoconf's macro by the same name. This version
# accepts an optional argument specifying the name of the $srcdir-relative
# directory in which the file getloadavg.c may be found. It is unusual
# (but justified, imho) that this file is required at ./configure time.
undefine([AC_FUNC_GETLOADAVG])
# AC_FUNC_GETLOADAVG
# ------------------
AC_DEFUN([AC_FUNC_GETLOADAVG],
[ac_have_func=no # yes means we've found a way to get the load average.
# By default, expect to find getloadavg.c in $srcdir/.
ac_lib_dir_getloadavg=$srcdir
# But if there's an argument, DIR, expect to find getloadavg.c in $srcdir/DIR.
m4_ifval([$1], [ac_lib_dir_getloadavg=$srcdir/$1])
# Make sure getloadavg.c is where it belongs, at ./configure-time.
test -f $ac_lib_dir_getloadavg/getloadavg.c \
|| AC_MSG_ERROR([getloadavg.c is not in $ac_lib_dir_getloadavg])
# FIXME: Add an autoconf-time test, too?
ac_save_LIBS=$LIBS
# Check for getloadavg, but be sure not to touch the cache variable.
(AC_CHECK_FUNC(getloadavg, exit 0, exit 1)) && ac_have_func=yes
# On HPUX9, an unprivileged user can get load averages through this function.
AC_CHECK_FUNCS(pstat_getdynamic)
# Solaris has libkstat which does not require root.
AC_CHECK_LIB(kstat, kstat_open)
test $ac_cv_lib_kstat_kstat_open = yes && ac_have_func=yes
# Some systems with -lutil have (and need) -lkvm as well, some do not.
# On Solaris, -lkvm requires nlist from -lelf, so check that first
# to get the right answer into the cache.
# For kstat on solaris, we need libelf to force the definition of SVR4 below.
if test $ac_have_func = no; then
AC_CHECK_LIB(elf, elf_begin, LIBS="-lelf $LIBS")
fi
if test $ac_have_func = no; then
AC_CHECK_LIB(kvm, kvm_open, LIBS="-lkvm $LIBS")
# Check for the 4.4BSD definition of getloadavg.
AC_CHECK_LIB(util, getloadavg,
[LIBS="-lutil $LIBS" ac_have_func=yes ac_cv_func_getloadavg_setgid=yes])
fi
if test $ac_have_func = no; then
# There is a commonly available library for RS/6000 AIX.
# Since it is not a standard part of AIX, it might be installed locally.
ac_getloadavg_LIBS=$LIBS
LIBS="-L/usr/local/lib $LIBS"
AC_CHECK_LIB(getloadavg, getloadavg,
[LIBS="-lgetloadavg $LIBS"], [LIBS=$ac_getloadavg_LIBS])
fi
# Make sure it is really in the library, if we think we found it,
# otherwise set up the replacement function.
AC_CHECK_FUNCS(getloadavg, [],
[_AC_LIBOBJ_GETLOADAVG])
# Some definitions of getloadavg require that the program be installed setgid.
AC_CACHE_CHECK(whether getloadavg requires setgid,
ac_cv_func_getloadavg_setgid,
[AC_EGREP_CPP([Yowza Am I SETGID yet],
[#include "$ac_lib_dir_getloadavg/getloadavg.c"
#ifdef LDAV_PRIVILEGED
Yowza Am I SETGID yet
@%:@endif],
ac_cv_func_getloadavg_setgid=yes,
ac_cv_func_getloadavg_setgid=no)])
if test $ac_cv_func_getloadavg_setgid = yes; then
NEED_SETGID=true
AC_DEFINE(GETLOADAVG_PRIVILEGED, 1,
[Define if the `getloadavg' function needs to be run setuid
or setgid.])
else
NEED_SETGID=false
fi
AC_SUBST(NEED_SETGID)dnl
if test $ac_cv_func_getloadavg_setgid = yes; then
AC_CACHE_CHECK(group of /dev/kmem, ac_cv_group_kmem,
[ # On Solaris, /dev/kmem is a symlink. Get info on the real file.
ac_ls_output=`ls -lgL /dev/kmem 2>/dev/null`
# If we got an error (system does not support symlinks), try without -L.
test -z "$ac_ls_output" && ac_ls_output=`ls -lg /dev/kmem`
ac_cv_group_kmem=`echo $ac_ls_output \
| sed -ne ['s/[ ][ ]*/ /g;
s/^.[sSrwx-]* *[0-9]* *\([^0-9]*\) *.*/\1/;
/ /s/.* //;p;']`
])
AC_SUBST(KMEM_GROUP, $ac_cv_group_kmem)dnl
fi
if test "x$ac_save_LIBS" = x; then
GETLOADAVG_LIBS=$LIBS
else
GETLOADAVG_LIBS=`echo "$LIBS" | sed "s!$ac_save_LIBS!!"`
fi
LIBS=$ac_save_LIBS
AC_SUBST(GETLOADAVG_LIBS)dnl
])# AC_FUNC_GETLOADAVG

View File

@@ -1,4 +1,4 @@
# gettext.m4 serial 12 (gettext-0.11)
# gettext.m4 serial 17 (gettext-0.11.5)
dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License. As a special exception to the GNU General
@@ -33,7 +33,9 @@ dnl AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library
dnl $(top_builddir)/intl/libintl.a will be created.
dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext
dnl implementations (in libc or libintl) without the ngettext() function
dnl will be ignored.
dnl will be ignored. If NEEDSYMBOL is specified and is
dnl 'need-formatstring-macros', then GNU gettext implementations that don't
dnl support the ISO C 99 <inttypes.h> formatstring macros will be ignored.
dnl INTLDIR is used to find the intl libraries. If empty,
dnl the value `$(top_builddir)/intl/' is used.
dnl
@@ -60,9 +62,9 @@ AC_DEFUN([AM_GNU_GETTEXT],
ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], ,
[errprint([ERROR: invalid first argument to AM_GNU_GETTEXT
])])])])])
ifelse([$2], [], , [ifelse([$2], [need-ngettext], ,
ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], ,
[errprint([ERROR: invalid second argument to AM_GNU_GETTEXT
])])])
])])])])
define(gt_included_intl, ifelse([$1], [external], [no], [yes]))
define(gt_libtool_suffix_prefix, ifelse([$1], [use-libtool], [l], []))
@@ -75,6 +77,21 @@ AC_DEFUN([AM_GNU_GETTEXT],
AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
AC_REQUIRE([AC_LIB_RPATH])
dnl Sometimes libintl requires libiconv, so first search for libiconv.
dnl Ideally we would do this search only after the
dnl if test "$USE_NLS" = "yes"; then
dnl if test "$gt_cv_func_gnugettext_libc" != "yes"; then
dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT
dnl the configure script would need to contain the same shell code
dnl again, outside any 'if'. There are two solutions:
dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'.
dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE.
dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not
dnl documented, we avoid it.
ifelse(gt_included_intl, yes, , [
AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
])
AC_MSG_CHECKING([whether NLS is requested])
dnl Default is enabled NLS
AC_ARG_ENABLE(nls,
@@ -110,15 +127,23 @@ AC_DEFUN([AM_GNU_GETTEXT],
dnl to fall back to GNU NLS library.
dnl Add a version number to the cache macros.
define([gt_api_version], ifelse([$2], [need-ngettext], 2, 1))
define([gt_api_version], ifelse([$2], [need-formatstring-macros], 3, ifelse([$2], [need-ngettext], 2, 1)))
define([gt_cv_func_gnugettext_libc], [gt_cv_func_gnugettext]gt_api_version[_libc])
define([gt_cv_func_gnugettext_libintl], [gt_cv_func_gnugettext]gt_api_version[_libintl])
AC_CACHE_CHECK([for GNU gettext in libc], gt_cv_func_gnugettext_libc,
[AC_TRY_LINK([#include <libintl.h>
extern int _nl_msg_cat_cntr;],
]ifelse([$2], [need-formatstring-macros],
[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
#endif
changequote(,)dnl
typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
changequote([,])dnl
], [])[extern int _nl_msg_cat_cntr;
extern int *_nl_domain_bindings;],
[bindtextdomain ("", "");
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr],
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_domain_bindings],
gt_cv_func_gnugettext_libc=yes,
gt_cv_func_gnugettext_libc=no)])
@@ -140,18 +165,42 @@ return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("",
LIBS="$LIBS $LIBINTL"
dnl Now see whether libintl exists and does not depend on libiconv.
AC_TRY_LINK([#include <libintl.h>
extern int _nl_msg_cat_cntr;],
]ifelse([$2], [need-formatstring-macros],
[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
#endif
changequote(,)dnl
typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
changequote([,])dnl
], [])[extern int _nl_msg_cat_cntr;
extern
#ifdef __cplusplus
"C"
#endif
const char *_nl_expand_alias ();],
[bindtextdomain ("", "");
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr],
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
gt_cv_func_gnugettext_libintl=yes,
gt_cv_func_gnugettext_libintl=no)
dnl Now see whether libintl exists and depends on libiconv.
if test "$gt_cv_func_gnugettext_libintl" != yes && test -n "$LIBICONV"; then
LIBS="$LIBS $LIBICONV"
AC_TRY_LINK([#include <libintl.h>
extern int _nl_msg_cat_cntr;],
]ifelse([$2], [need-formatstring-macros],
[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
#endif
changequote(,)dnl
typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
changequote([,])dnl
], [])[extern int _nl_msg_cat_cntr;
extern
#ifdef __cplusplus
"C"
#endif
const char *_nl_expand_alias ();],
[bindtextdomain ("", "");
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr],
return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
[LIBINTL="$LIBINTL $LIBICONV"
LTLIBINTL="$LTLIBINTL $LTLIBICONV"
gt_cv_func_gnugettext_libintl=yes
@@ -169,6 +218,11 @@ return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("",
|| { test "$gt_cv_func_gnugettext_libintl" = "yes" \
&& test "$PACKAGE" != gettext; }; then
gt_use_preinstalled_gnugettext=yes
else
dnl Reset the values set by searching for libintl.
LIBINTL=
LTLIBINTL=
INCINTL=
fi
ifelse(gt_included_intl, yes, [
@@ -434,7 +488,7 @@ AC_DEFUN([AM_PO_SUBDIRS],
;;
esac
done],
[# Capture the value of obsolete $ALL_LINGUAS because we need it to compute
[# Capture the value of obsolete ALL_LINGUAS because we need it to compute
# POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES, CATALOGS. But hide it
# from automake.
eval 'ALL_LINGUAS''="$ALL_LINGUAS"'
@@ -463,6 +517,9 @@ AC_DEFUN([AM_INTL_SUBDIR],
AC_REQUIRE([AC_FUNC_ALLOCA])dnl
AC_REQUIRE([AC_FUNC_MMAP])dnl
AC_REQUIRE([jm_GLIBC21])dnl
AC_REQUIRE([gt_INTDIV0])dnl
AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])dnl
AC_REQUIRE([gt_INTTYPES_PRI])dnl
AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
stdlib.h string.h unistd.h sys/param.h])
@@ -472,7 +529,9 @@ strcasecmp strdup strtoul tsearch __argz_count __argz_stringify __argz_next])
AM_ICONV
AM_LANGINFO_CODESET
AM_LC_MESSAGES
if test $ac_cv_header_locale_h = yes; then
AM_LC_MESSAGES
fi
dnl intl/plural.c is generated from intl/plural.y. It requires bison,
dnl because plural.y uses bison specific features. It requires at least
@@ -521,3 +580,7 @@ AC_DEFUN([AM_MKINSTALLDIRS],
fi
AC_SUBST(MKINSTALLDIRS)
])
dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version])
AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])

View File

@@ -1,4 +1,4 @@
#serial 1
#serial 2
dnl From Jim Meyering.
dnl
@@ -6,8 +6,8 @@ dnl See if gettimeofday clobbers the static buffer that localtime uses
dnl for it's return value. The gettimeofday function from Mac OS X 10.0.4,
dnl i.e. Darwin 1.3.7 has this problem.
dnl
dnl If it does, then arrange to use gettimeofday only via the wrapper
dnl function that works around the problem.
dnl If it does, then arrange to use gettimeofday and localtime only via
dnl the wrapper functions that work around the problem.
AC_DEFUN([AC_FUNC_GETTIMEOFDAY_CLOBBER],
[
@@ -59,6 +59,8 @@ main ()
])
if test $jm_cv_func_gettimeofday_clobber = yes; then
AC_LIBOBJ(gettimeofday)
AC_DEFINE(localtime, rpl_localtime,
[Define to rpl_localtime if the replacement function should be used.])
AC_DEFINE(gettimeofday, rpl_gettimeofday,
[Define to rpl_gettimeofday if the replacement function should be used.])
AC_DEFINE(GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, 1,

View File

@@ -1,25 +0,0 @@
#serial 3
# Make sure _GNU_SOURCE is defined where necessary: as early as possible
# for configure-time tests, as well as for every source file that includes
# config.h.
# From Jim Meyering.
AC_DEFUN([AC__GNU_SOURCE],
[
# Make sure that _GNU_SOURCE is defined for all subsequent
# configure-time compile tests.
# This definition must be emitted (into confdefs.h) before any
# test that involves compilation.
cat >>confdefs.h <<\EOF
#ifndef _GNU_SOURCE
# define _GNU_SOURCE
#endif
EOF
# Emit this code into config.h.in.
# The ifndef is to avoid redefinition warnings.
AH_VERBATIM([_GNU_SOURCE], [#ifndef _GNU_SOURCE
# define _GNU_SOURCE
#endif])
])

View File

@@ -1,4 +1,4 @@
#serial 1
#serial 2
dnl From Paul Eggert.
@@ -40,6 +40,7 @@ AC_DEFUN([UTILS_HOST_OS],
hpux*) os='HP-UX';;
hiux*) os='HI-UX';;
gnu*) os='GNU';;
freebsd*-gnu*) os='GNU/FreeBSD';;
freebsd*) os='FreeBSD';;
dgux*) os='DG/UX';;
bsdi*) os='BSD/OS';;

View File

@@ -1,4 +1,4 @@
# iconv.m4 serial AM3 (gettext-0.11)
# iconv.m4 serial AM4 (gettext-0.11.3)
dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License. As a special exception to the GNU General
@@ -8,11 +8,8 @@ dnl the same distribution terms as the rest of that program.
dnl From Bruno Haible.
AC_DEFUN([AM_ICONV_LINK],
AC_DEFUN([AM_ICONV_LINKFLAGS_BODY],
[
dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
dnl those with the standalone portable GNU libiconv installed).
dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
AC_REQUIRE([AC_LIB_RPATH])
@@ -20,6 +17,16 @@ AC_DEFUN([AM_ICONV_LINK],
dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
dnl accordingly.
AC_LIB_LINKFLAGS_BODY([iconv])
])
AC_DEFUN([AM_ICONV_LINK],
[
dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
dnl those with the standalone portable GNU libiconv installed).
dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
dnl accordingly.
AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
dnl Add $INCICONV to CPPFLAGS before performing the following checks,
dnl because if the user has installed libiconv and not disabled its use
@@ -69,7 +76,7 @@ AC_DEFUN([AM_ICONV_LINK],
AC_DEFUN([AM_ICONV],
[
AC_REQUIRE([AM_ICONV_LINK])
AM_ICONV_LINK
if test "$am_cv_func_iconv" = yes; then
AC_MSG_CHECKING([for iconv declaration])
AC_CACHE_VAL(am_cv_proto_iconv, [

72
m4/intdiv0.m4 Normal file
View File

@@ -0,0 +1,72 @@
# intdiv0.m4 serial 1 (gettext-0.11.3)
dnl Copyright (C) 2002 Free Software Foundation, Inc.
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License. As a special exception to the GNU General
dnl Public License, this file may be distributed as part of a program
dnl that contains a configuration script generated by Autoconf, under
dnl the same distribution terms as the rest of that program.
dnl From Bruno Haible.
AC_DEFUN([gt_INTDIV0],
[
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_CACHE_CHECK([whether integer division by zero raises SIGFPE],
gt_cv_int_divbyzero_sigfpe,
[
AC_TRY_RUN([
#include <stdlib.h>
#include <signal.h>
static void
#ifdef __cplusplus
sigfpe_handler (int sig)
#else
sigfpe_handler (sig) int sig;
#endif
{
/* Exit with code 0 if SIGFPE, with code 1 if any other signal. */
exit (sig != SIGFPE);
}
int x = 1;
int y = 0;
int z;
int nan;
int main ()
{
signal (SIGFPE, sigfpe_handler);
/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP. */
#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP)
signal (SIGTRAP, sigfpe_handler);
#endif
/* Linux/SPARC yields signal SIGILL. */
#if defined (__sparc__) && defined (__linux__)
signal (SIGILL, sigfpe_handler);
#endif
z = x / y;
nan = y / y;
exit (1);
}
], gt_cv_int_divbyzero_sigfpe=yes, gt_cv_int_divbyzero_sigfpe=no,
[
# Guess based on the CPU.
case "$host_cpu" in
alpha* | i[34567]86 | m68k | s390*)
gt_cv_int_divbyzero_sigfpe="guessing yes";;
*)
gt_cv_int_divbyzero_sigfpe="guessing no";;
esac
])
])
case "$gt_cv_int_divbyzero_sigfpe" in
*yes) value=1;;
*) value=0;;
esac
AC_DEFINE_UNQUOTED(INTDIV0_RAISES_SIGFPE, $value,
[Define if integer division by zero raises signal SIGFPE.])
])

34
m4/inttypes-pri.m4 Normal file
View File

@@ -0,0 +1,34 @@
# inttypes-pri.m4 serial 1001 (based on gettext-0.11.4's `serial 1')
dnl Copyright (C) 1997-2002 Free Software Foundation, Inc.
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License. As a special exception to the GNU General
dnl Public License, this file may be distributed as part of a program
dnl that contains a configuration script generated by Autoconf, under
dnl the same distribution terms as the rest of that program.
dnl From Bruno Haible.
# Define PRI_MACROS_BROKEN if <inttypes.h> exists and defines the PRI*
# macros to non-string values. This is the case on AIX 4.3.3.
AC_DEFUN([gt_INTTYPES_PRI],
[
# autoconf-2.52 has a proper check for inttypes.h.
AC_PREREQ(2.52)
if test $ac_cv_header_inttypes_h = yes; then
AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken],
gt_cv_inttypes_pri_broken,
[
AC_TRY_COMPILE([#include <inttypes.h>
#ifdef PRId32
char *p = PRId32;
#endif
], [], gt_cv_inttypes_pri_broken=no, gt_cv_inttypes_pri_broken=yes)
])
fi
if test "$gt_cv_inttypes_pri_broken" = yes; then
AC_DEFINE_UNQUOTED(PRI_MACROS_BROKEN, 1,
[Define if <inttypes.h> exists and defines unusable PRI* macros.])
fi
])

View File

@@ -1,4 +1,4 @@
# isc-posix.m4 serial 1 (gettext-0.10.40)
# isc-posix.m4 serial 2 (gettext-0.11.2)
dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License. As a special exception to the GNU General
@@ -6,6 +6,8 @@ dnl Public License, this file may be distributed as part of a program
dnl that contains a configuration script generated by Autoconf, under
dnl the same distribution terms as the rest of that program.
# This file is not needed with autoconf-2.53 and newer. Remove it in 2005.
# This test replaces the one in autoconf.
# Currently this macro should have the same name as the autoconf macro
# because gettext's gettext.m4 (distributed in the automake package)

View File

@@ -1,10 +1,10 @@
#serial 45 -*- autoconf -*-
#serial 53 -*- autoconf -*-
dnl Misc type-related macros for fileutils, sh-utils, textutils.
AC_DEFUN([jm_MACROS],
[
AC_PREREQ(2.52g)
AC_PREREQ(2.54)
GNU_PACKAGE="GNU $PACKAGE"
AC_DEFINE_UNQUOTED(GNU_PACKAGE, "$GNU_PACKAGE",
@@ -43,14 +43,13 @@ AC_DEFUN([jm_MACROS],
AC_REQUIRE([jm_FUNC_LSTAT])
AC_REQUIRE([AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK])
AC_REQUIRE([jm_FUNC_STAT])
AC_REQUIRE([jm_FUNC_REALLOC])
AC_REQUIRE([jm_FUNC_MALLOC])
AC_REQUIRE([AC_FUNC_REALLOC])
AC_REQUIRE([AC_FUNC_MALLOC])
AC_REQUIRE([AC_FUNC_STRERROR_R])
AC_REQUIRE([jm_FUNC_NANOSLEEP])
AC_REQUIRE([jm_FUNC_READDIR])
AC_REQUIRE([jm_FUNC_MEMCMP])
AC_REQUIRE([jm_FUNC_GLIBC_UNLOCKED_IO])
AC_REQUIRE([jm_FUNC_FNMATCH])
AC_REQUIRE([AC_FUNC_FNMATCH_GNU])
AC_REQUIRE([jm_FUNC_GROUP_MEMBER])
AC_REQUIRE([jm_FUNC_PUTENV])
AC_REQUIRE([jm_AFS])
@@ -62,13 +61,19 @@ AC_DEFUN([jm_MACROS],
AC_REQUIRE([jm_FUNC_MKTIME])
AC_REQUIRE([jm_FUNC_FPENDING])
# This is for od and stat, and any other program that
# uses the PRI.MAX macros from inttypes.h.
AC_REQUIRE([gt_INTTYPES_PRI])
AC_REQUIRE([jm_FUNC_GETGROUPS])
test -n "$GETGROUPS_LIB" && LIBS="$GETGROUPS_LIB $LIBS"
AC_REQUIRE([AC_FUNC_FSEEKO])
AC_REQUIRE([AC_FUNC_VPRINTF])
AC_REQUIRE([AC_FUNC_ALLOCA])
AC_FUNC_GETLOADAVG([lib])
AC_CONFIG_LIBOBJ_DIR([lib])
AC_FUNC_GETLOADAVG
AC_REQUIRE([jm_SYS_PROC_UPTIME])
AC_REQUIRE([jm_FUNC_FTRUNCATE])
AC_REQUIRE([vb_FUNC_RENAME])
@@ -76,11 +81,11 @@ AC_DEFUN([jm_MACROS],
AC_REPLACE_FUNCS(strcasecmp strncasecmp)
AC_REPLACE_FUNCS(dup2)
AC_REPLACE_FUNCS(gethostname getusershell)
AC_REPLACE_FUNCS(sig2str)
AC_REPLACE_FUNCS(strcspn stpcpy strstr strtol strtoul)
AC_REPLACE_FUNCS(strpbrk)
AC_REPLACE_FUNCS(euidaccess memcmp rmdir rpmatch strndup strverscmp)
AC_REPLACE_FUNCS(atexit)
AC_REPLACE_FUNCS(strnlen)
AC_REPLACE_FUNCS(getpass)
dnl used by e.g. intl/*domain.c and lib/canon-host.c
@@ -148,6 +153,7 @@ AC_DEFUN([jm_MACROS],
strchr \
strerror \
strrchr \
sysctl \
sysinfo \
wcrtomb \
tzset \
@@ -160,7 +166,6 @@ AC_DEFUN([jm_MACROS],
AC_FUNC_OBSTACK
AC_FUNC_STRTOD
AC_FUNC_STRNLEN
# See if linking `seq' requires -lm.
# It does on nearly every system. The single exception (so far) is
@@ -208,6 +213,7 @@ AC_DEFUN([jm_CHECK_ALL_HEADERS],
fcntl.h \
fenv.h \
float.h \
hurd.h \
limits.h \
memory.h \
mntent.h \
@@ -230,6 +236,7 @@ AC_DEFUN([jm_CHECK_ALL_HEADERS],
sys/socket.h \
sys/statfs.h \
sys/statvfs.h \
sys/sysctl.h \
sys/systeminfo.h \
sys/time.h \
sys/timeb.h \
@@ -246,11 +253,6 @@ AC_DEFUN([jm_CHECK_ALL_HEADERS],
# This macro must be invoked before any tests that run the compiler.
AC_DEFUN([jm_CHECK_ALL_TYPES],
[
# FIXME: I shouldn't have to require this macro here. Rather, it should
# be required by any autoconf macro that performs a compile-time test or
# otherwise uses confdefs.h.
AC_REQUIRE([AC__GNU_SOURCE])
dnl This test must come as early as possible after the compiler configuration
dnl tests, because the choice of the file model can (in principle) affect
dnl whether functions and headers are available, whether they work, etc.
@@ -263,7 +265,6 @@ AC_DEFUN([jm_CHECK_ALL_TYPES],
dnl Checks for typedefs, structures, and compiler characteristics.
AC_REQUIRE([AC_C_BIGENDIAN])
AC_REQUIRE([AC_PROG_CC_STDC])
AC_REQUIRE([AC_C_CONST])
AC_REQUIRE([AC_C_VOLATILE])
AC_REQUIRE([AC_C_INLINE])
@@ -272,7 +273,10 @@ AC_DEFUN([jm_CHECK_ALL_TYPES],
AC_REQUIRE([jm_CHECK_ALL_HEADERS])
AC_REQUIRE([AC_HEADER_DIRENT])
AC_REQUIRE([AC_HEADER_STDC])
AC_CHECK_MEMBERS([struct stat.st_blksize],,,[$ac_includes_default
AC_CHECK_MEMBERS(
[struct stat.st_author,
struct stat.st_blksize],,,
[$ac_includes_default
#include <sys/stat.h>
])
AC_REQUIRE([AC_STRUCT_ST_BLOCKS])

View File

@@ -1,12 +1,12 @@
#serial 5
#serial 6
dnl From Jim Meyering and Paul Eggert.
AC_DEFUN([jm_HEADER_TIOCGWINSZ_IN_TERMIOS_H],
[AC_REQUIRE([AM_SYS_POSIX_TERMIOS])
[AC_REQUIRE([AC_SYS_POSIX_TERMIOS])
AC_CACHE_CHECK([whether use of TIOCGWINSZ requires termios.h],
jm_cv_sys_tiocgwinsz_needs_termios_h,
[jm_cv_sys_tiocgwinsz_needs_termios_h=no
if test $am_cv_sys_posix_termios = yes; then
if test $ac_cv_sys_posix_termios = yes; then
AC_EGREP_CPP([yes],
[#include <sys/types.h>
# include <termios.h>
@@ -19,11 +19,11 @@ AC_DEFUN([jm_HEADER_TIOCGWINSZ_IN_TERMIOS_H],
])
AC_DEFUN([jm_WINSIZE_IN_PTEM],
[AC_REQUIRE([AM_SYS_POSIX_TERMIOS])
[AC_REQUIRE([AC_SYS_POSIX_TERMIOS])
AC_CACHE_CHECK([whether use of struct winsize requires sys/ptem.h],
jm_cv_sys_struct_winsize_needs_sys_ptem_h,
[jm_cv_sys_struct_winsize_needs_sys_ptem_h=yes
if test $am_cv_sys_posix_termios = yes; then
if test $ac_cv_sys_posix_termios = yes; then
AC_TRY_COMPILE([#include <termios.h>]
[struct winsize x;],
[jm_cv_sys_struct_winsize_needs_sys_ptem_h=no])

View File

@@ -1,4 +1,4 @@
# lcmessage.m4 serial 2 (gettext-0.10.40)
# lcmessage.m4 serial 3 (gettext-0.11.3)
dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License. As a special exception to the GNU General
@@ -21,12 +21,12 @@ dnl Ulrich Drepper <drepper@cygnus.com>, 1995.
# Check whether LC_MESSAGES is available in <locale.h>.
AC_DEFUN([AM_LC_MESSAGES],
[if test $ac_cv_header_locale_h = yes; then
AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
[AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
[
AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
[AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
if test $am_cv_val_LC_MESSAGES = yes; then
AC_DEFINE(HAVE_LC_MESSAGES, 1,
[Define if your <locale.h> file defines LC_MESSAGES.])
fi
fi])
if test $am_cv_val_LC_MESSAGES = yes; then
AC_DEFINE(HAVE_LC_MESSAGES, 1,
[Define if your <locale.h> file defines LC_MESSAGES.])
fi
])

View File

@@ -1,4 +1,4 @@
# lib-link.m4 serial 1 (gettext-0.11)
# lib-link.m4 serial 3 (gettext-0.11.3)
dnl Copyright (C) 2001-2002 Free Software Foundation, Inc.
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License. As a special exception to the GNU General
@@ -116,6 +116,10 @@ AC_DEFUN([AC_LIB_RPATH],
hardcode_minus_L="$acl_cv_hardcode_minus_L"
sys_lib_search_path_spec="$acl_cv_sys_lib_search_path_spec"
sys_lib_dlsearch_path_spec="$acl_cv_sys_lib_dlsearch_path_spec"
dnl Determine whether the user wants rpath handling at all.
AC_ARG_ENABLE(rpath,
[ --disable-rpath do not hardcode runtime library paths],
:, enable_rpath=yes)
])
dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and
@@ -245,7 +249,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
dnl Linking with a shared library. We attempt to hardcode its
dnl directory into the executable's runpath, unless it's the
dnl standard /usr/lib.
if test "X$found_dir" = "X/usr/lib"; then
if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
dnl No hardcoding is needed.
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
else
@@ -434,6 +438,35 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
fi
fi
;;
-R*)
dir=`echo "X$dep" | sed -e 's/^X-R//'`
if test "$enable_rpath" != no; then
dnl Potentially add DIR to rpathdirs.
dnl The rpathdirs will be appended to $LIBNAME at the end.
haveit=
for x in $rpathdirs; do
if test "X$x" = "X$dir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
rpathdirs="$rpathdirs $dir"
fi
dnl Potentially add DIR to ltrpathdirs.
dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
haveit=
for x in $ltrpathdirs; do
if test "X$x" = "X$dir"; then
haveit=yes
break
fi
done
if test -z "$haveit"; then
ltrpathdirs="$ltrpathdirs $dir"
fi
fi
;;
-l*)
dnl Handle this in the next round.
names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`

View File

@@ -195,12 +195,7 @@ if test -z "$ac_list_mounted_fs"; then
AC_MSG_CHECKING([for getmntinfo function])
AC_CACHE_VAL(fu_cv_sys_mounted_getmntinfo,
[
ok=
if test $ac_cv_func_getmntinfo = yes; then
AC_EGREP_HEADER(f_type;, sys/mount.h,
ok=yes)
fi
test -n "$ok" \
test "$ac_cv_func_getmntinfo" = yes \
&& fu_cv_sys_mounted_getmntinfo=yes \
|| fu_cv_sys_mounted_getmntinfo=no
])
@@ -209,7 +204,7 @@ if test -z "$ac_list_mounted_fs"; then
ac_list_mounted_fs=found
AC_DEFINE(MOUNTED_GETMNTINFO, 1,
[Define if there is a function named getmntinfo for reading the
list of mounted filesystems. (4.4BSD)])
list of mounted filesystems. (4.4BSD, Darwin)])
fi
fi

View File

@@ -1,34 +0,0 @@
#serial 5
dnl From Jim Meyering.
dnl Determine whether malloc accepts 0 as its argument.
dnl If it doesn't, arrange to use the replacement function.
dnl
AC_DEFUN([jm_FUNC_MALLOC],
[
dnl xmalloc.c requires that this symbol be defined so it doesn't
dnl mistakenly use a broken malloc -- as it might if this test were omitted.
AC_DEFINE(HAVE_DONE_WORKING_MALLOC_CHECK, 1,
[Define if the malloc check has been performed. ])
AC_CACHE_CHECK([for working malloc], jm_cv_func_working_malloc,
[AC_TRY_RUN([
char *malloc ();
int
main ()
{
exit (malloc (0) ? 0 : 1);
}
],
jm_cv_func_working_malloc=yes,
jm_cv_func_working_malloc=no,
dnl When crosscompiling, assume malloc is broken.
jm_cv_func_working_malloc=no)
])
if test $jm_cv_func_working_malloc = no; then
AC_LIBOBJ(malloc)
AC_DEFINE(malloc, rpl_malloc,
[Define to rpl_malloc if the replacement function should be used.])
fi
])

View File

@@ -1,4 +1,10 @@
#serial 4
# mbrtowc.m4 serial 4 (fileutils-4.1.3)
dnl Copyright (C) 2001-2002 Free Software Foundation, Inc.
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License. As a special exception to the GNU General
dnl Public License, this file may be distributed as part of a program
dnl that contains a configuration script generated by Autoconf, under
dnl the same distribution terms as the rest of that program.
dnl From Paul Eggert

View File

@@ -1,29 +0,0 @@
# serial 9
# From Paul Eggert.
# BeOS 5 has <wchar.h> but does not define mbstate_t,
# so you can't declare an object of that type.
# Check for this incompatibility with Standard C.
# Include stdlib.h first, because otherwise this test would fail on Linux
# (at least glibc-2.1.3) because the "_XOPEN_SOURCE 500" definition elicits
# a syntax error in wchar.h due to the use of undefined __int32_t.
AC_DEFUN([AC_MBSTATE_T],
[
AC_CHECK_HEADERS(stdlib.h)
AC_CACHE_CHECK([for mbstate_t], ac_cv_type_mbstate_t,
[AC_TRY_COMPILE([
#if HAVE_STDLIB_H
# include <stdlib.h>
#endif
#include <wchar.h>],
[mbstate_t x; return sizeof x;],
ac_cv_type_mbstate_t=yes,
ac_cv_type_mbstate_t=no)])
if test $ac_cv_type_mbstate_t = no; then
AC_DEFINE(mbstate_t, int,
[Define to a type if <wchar.h> does not define.])
fi])

View File

@@ -1,4 +1,4 @@
#serial 6
#serial 7
dnl autoconf tests required for use of mbswidth.c
dnl From Bruno Haible.
@@ -32,5 +32,5 @@ AC_DEFUN([jm_PREREQ_MBSWIDTH],
AC_DEFINE_UNQUOTED(HAVE_DECL_WCWIDTH, $ac_val,
[Define to 1 if you have the declaration of wcwidth(), and to 0 otherwise.])
AC_MBSTATE_T
AC_TYPE_MBSTATE_T
])

View File

@@ -1,16 +1,21 @@
#serial 22
#serial 27
dnl These are the prerequisite macros for files in the lib/
dnl directories of the fileutils, sh-utils, and textutils packages.
dnl We use jm_ for non Autoconf macros.
m4_pattern_forbid([^jm_[ABCDEFGHIJKLMNOPQRSTUVXYZ]])dnl
# These are the prerequisite macros for files in the lib/
# directory of the coreutils package.
AC_DEFUN([jm_PREREQ],
[
jm_PREREQ_ADDEXT
jm_PREREQ_C_STACK
jm_PREREQ_CANON_HOST
jm_PREREQ_DIRNAME
jm_PREREQ_ERROR
jm_PREREQ_EXCLUDE
jm_PREREQ_GETPAGESIZE
jm_PREREQ_HARD_LOCALE
jm_PREREQ_HASH
jm_PREREQ_HUMAN
jm_PREREQ_MBSWIDTH
@@ -20,6 +25,8 @@ AC_DEFUN([jm_PREREQ],
jm_PREREQ_QUOTEARG
jm_PREREQ_READUTMP
jm_PREREQ_REGEX
jm_PREREQ_STAT
jm_PREREQ_STRNLEN
jm_PREREQ_TEMPNAME # called by mkstemp
jm_PREREQ_XGETCWD
jm_PREREQ_XREADLINK
@@ -56,8 +63,8 @@ AC_DEFUN([jm_PREREQ_DIRNAME],
AC_DEFUN([jm_PREREQ_EXCLUDE],
[
jm_FUNC_FNMATCH
AC_CHECK_HEADERS(stdbool.h)
AC_FUNC_FNMATCH_GNU
AC_HEADER_STDBOOL
])
AC_DEFUN([jm_PREREQ_GETPAGESIZE],
@@ -66,9 +73,17 @@ AC_DEFUN([jm_PREREQ_GETPAGESIZE],
AC_CHECK_HEADERS(OS.h unistd.h)
])
AC_DEFUN([jm_PREREQ_HARD_LOCALE],
[
AC_CHECK_HEADERS(locale.h stdlib.h string.h)
AC_CHECK_FUNCS(setlocale)
AM_C_PROTOTYPES
])
AC_DEFUN([jm_PREREQ_HASH],
[
AC_CHECK_HEADERS(stdlib.h stdbool.h)
AC_CHECK_HEADERS(stdlib.h)
AC_HEADER_STDBOOL
AC_REQUIRE([jm_CHECK_DECLS])
])
@@ -102,10 +117,11 @@ AC_DEFUN([jm_PREREQ_QUOTEARG],
[
AC_CHECK_FUNCS(isascii iswprint)
jm_FUNC_MBRTOWC
jm_FUNC_MEMCMP
AC_CHECK_HEADERS(limits.h stddef.h stdlib.h string.h wchar.h wctype.h)
AC_HEADER_STDC
AC_C_BACKSLASH_A
AC_MBSTATE_T
AC_TYPE_MBSTATE_T
AM_C_PROTOTYPES
])
@@ -133,6 +149,20 @@ $ac_includes_default
AC_CHECK_MEMBERS([struct utmp.ut_name],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmpx.ut_type],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmp.ut_type],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmpx.ut_pid],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmp.ut_pid],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmpx.ut_id],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmp.ut_id],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmpx.ut_exit.ut_exit],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmp.ut_exit.ut_exit],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmpx.ut_exit.e_exit],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmp.ut_exit.e_exit],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmpx.ut_exit.ut_termination],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmp.ut_exit.ut_termination],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmpx.ut_exit.e_termination],,,[$utmp_includes])
AC_CHECK_MEMBERS([struct utmp.ut_exit.e_termination],,,[$utmp_includes])
AC_LIBOBJ(readutmp)
fi
])
@@ -148,6 +178,54 @@ AC_DEFUN([jm_PREREQ_REGEX],
AC_FUNC_ALLOCA
])
AC_DEFUN([jm_PREREQ_STAT],
[
AC_CHECK_HEADERS(sys/sysmacros.h sys/statvfs.h sys/vfs.h inttypes.h)
AC_CHECK_HEADERS(sys/param.h sys/mount.h)
AC_CHECK_FUNCS(statvfs)
jm_AC_TYPE_LONG_LONG
statxfs_includes="\
$ac_includes_default
#if HAVE_SYS_STATVFS_H
# include <sys/statvfs.h>
#endif
#if HAVE_SYS_VFS_H
# include <sys/vfs.h>
#endif
#if ( ! HAVE_SYS_STATVFS_H && ! HAVE_SYS_VFS_H && HAVE_SYS_MOUNT_H && HAVE_SYS_PARAM_H )
/* NetBSD 1.5.2 needs these, for the declaration of struct statfs. */
# include <sys/param.h>
# include <sys/mount.h>
#endif
"
AC_CHECK_MEMBERS([struct statfs.f_basetype],,,[$statxfs_includes])
AC_CHECK_MEMBERS([struct statvfs.f_basetype],,,[$statxfs_includes])
AC_CHECK_MEMBERS([struct statfs.f_fstypename],,,[$statxfs_includes])
AC_CHECK_MEMBERS([struct statfs.f_type],,,[$statxfs_includes])
AC_CHECK_MEMBERS([struct statvfs.f_type],,,[$statxfs_includes])
AC_CHECK_MEMBERS([struct statfs.f_fsid.__val],,,[$statxfs_includes])
AC_CHECK_MEMBERS([struct statvfs.f_fsid.__val],,,[$statxfs_includes])
AC_CHECK_MEMBERS([struct statfs.f_namemax],,,[$statxfs_includes])
AC_CHECK_MEMBERS([struct statvfs.f_namemax],,,[$statxfs_includes])
AC_CHECK_MEMBERS([struct statfs.f_namelen],,,[$statxfs_includes])
AC_CHECK_MEMBERS([struct statvfs.f_namelen],,,[$statxfs_includes])
])
AC_DEFUN([jm_PREREQ_STRNLEN],
[
AC_FUNC_STRNLEN
AC_HEADER_STDC
AC_CHECK_HEADERS(memory.h)
AC_CHECK_DECLS([memchr])
# This is necessary because automake-1.6.1 doesn't understand
# that the above use of AC_FUNC_STRNLEN means we may have to use
# lib/strnlen.c.
test $ac_cv_func_strnlen_working = yes \
&& AC_LIBOBJ(strnlen)
])
AC_DEFUN([jm_PREREQ_TEMPNAME],
[
AC_HEADER_STDC
@@ -155,6 +233,7 @@ AC_DEFUN([jm_PREREQ_TEMPNAME],
AC_CHECK_HEADERS(fcntl.h sys/time.h stdint.h unistd.h)
AC_CHECK_FUNCS(__secure_getenv gettimeofday)
AC_CHECK_DECLS([getenv])
AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
])
AC_DEFUN([jm_PREREQ_XGETCWD],

View File

@@ -1,129 +0,0 @@
#serial 4
dnl SunOS's readdir is broken in such a way that rm.c has to add extra code
dnl to test whether a NULL return value really means there are no more files
dnl in the directory.
dnl
dnl Detect the problem by creating a directory containing 300 files (254 not
dnl counting . and .. is the minimum) and see if a loop doing `readdir; unlink'
dnl removes all of them.
dnl
dnl Define HAVE_WORKING_READDIR if readdir does *not* have this problem.
dnl Written by Jim Meyering.
AC_DEFUN([jm_FUNC_READDIR],
[dnl
AC_REQUIRE([AC_HEADER_DIRENT])
AC_CHECK_HEADERS(string.h)
AC_CACHE_CHECK([for working readdir], jm_cv_func_working_readdir,
[dnl
# Arrange for deletion of the temporary directory this test creates, in
# case the test itself fails to delete everything -- as happens on Sunos.
ac_clean_files="$ac_clean_files conf-dir"
AC_TRY_RUN(
[# include <stdio.h>
# include <sys/types.h>
# if HAVE_STRING_H
# include <string.h>
# endif
# ifdef HAVE_DIRENT_H
# include <dirent.h>
# define NLENGTH(direct) (strlen((direct)->d_name))
# else /* not HAVE_DIRENT_H */
# define dirent direct
# define NLENGTH(direct) ((direct)->d_namlen)
# ifdef HAVE_SYS_NDIR_H
# include <sys/ndir.h>
# endif /* HAVE_SYS_NDIR_H */
# ifdef HAVE_SYS_DIR_H
# include <sys/dir.h>
# endif /* HAVE_SYS_DIR_H */
# ifdef HAVE_NDIR_H
# include <ndir.h>
# endif /* HAVE_NDIR_H */
# endif /* HAVE_DIRENT_H */
# define DOT_OR_DOTDOT(Basename) \
(Basename[0] == '.' && (Basename[1] == '\0' \
|| (Basename[1] == '.' && Basename[2] == '\0')))
static void
create_300_file_dir (const char *dir)
{
int i;
if (mkdir (dir, 0700))
abort ();
if (chdir (dir))
abort ();
for (i = 0; i < 300; i++)
{
char file_name[4];
FILE *out;
sprintf (file_name, "%03d", i);
out = fopen (file_name, "w");
if (!out)
abort ();
if (fclose (out) == EOF)
abort ();
}
if (chdir (".."))
abort ();
}
static void
remove_dir (const char *dir)
{
DIR *dirp;
if (chdir (dir))
abort ();
dirp = opendir (".");
if (dirp == NULL)
abort ();
while (1)
{
struct dirent *dp = readdir (dirp);
if (dp == NULL)
break;
if (DOT_OR_DOTDOT (dp->d_name))
continue;
if (unlink (dp->d_name))
abort ();
}
closedir (dirp);
if (chdir (".."))
abort ();
if (rmdir (dir))
exit (1);
}
int
main ()
{
const char *dir = "conf-dir";
create_300_file_dir (dir);
remove_dir (dir);
exit (0);
}],
jm_cv_func_working_readdir=yes,
jm_cv_func_working_readdir=no,
jm_cv_func_working_readdir=no)])
if test $jm_cv_func_working_readdir = yes; then
AC_DEFINE(HAVE_WORKING_READDIR, 1,
[Define if readdir is found to work properly in some unusual cases. ])
fi
])

View File

@@ -1,34 +0,0 @@
#serial 5
dnl From Jim Meyering.
dnl Determine whether realloc works when both arguments are 0.
dnl If it doesn't, arrange to use the replacement function.
dnl
AC_DEFUN([jm_FUNC_REALLOC],
[
dnl xmalloc.c requires that this symbol be defined so it doesn't
dnl mistakenly use a broken realloc -- as it might if this test were omitted.
AC_DEFINE(HAVE_DONE_WORKING_REALLOC_CHECK, 1,
[Define if the realloc check has been performed. ])
AC_CACHE_CHECK([for working realloc], jm_cv_func_working_realloc,
[AC_TRY_RUN([
char *realloc ();
int
main ()
{
exit (realloc (0, 0) ? 0 : 1);
}
],
jm_cv_func_working_realloc=yes,
jm_cv_func_working_realloc=no,
dnl When crosscompiling, assume realloc is broken.
jm_cv_func_working_realloc=no)
])
if test $jm_cv_func_working_realloc = no; then
AC_LIBOBJ(realloc)
AC_DEFINE(realloc, rpl_realloc,
[Define to rpl_realloc if the replacement function should be used.])
fi
])

Some files were not shown because too many files have changed in this diff Show More