Jim Meyering [Thu, 13 May 2004 07:03:00 +0000 (07:03 +0000)]
Don't assume that "make -C" works; Solaris "make" doesn't have -C.
(all_programs.list): New rule, copied from
man/Makefile.am and tests/Makefile.am, except that we use the
system tr rather than ./tr and we don't use tr -s.
Jim Meyering [Sat, 8 May 2004 12:49:22 +0000 (12:49 +0000)]
Fix bug where "rm" gave up too easily, reported by Dan Jacobsen in
<http://mail.gnu.org/archive/html/bug-coreutils/2004-05/msg00013.html>.
(remove_entry): Check for errno values like ENOENT
that show the file cannot be directory, instead of for errno
values like EPERM that show the file might be a directory. This
is necessary because, when a single unlink() call has multiple
reasons to fail, it can set errno to any of those reasons; it's
only the rare errno value like ENOENT that excludes all the other
possible reasons to fail even when the file is a directory.
(remove_cwd_entries): Don't attempt chdir if the file is known
to not be a directory.
(remove_dir): Use the same method that remove_cwd_entries uses
(for some reason they differed). Don't assert that saved_errno
must be EPERM; it might be just about anything.
Jim Meyering [Thu, 6 May 2004 14:43:31 +0000 (14:43 +0000)]
(xgetgroups): Use xnmalloc, rather than xmalloc.
Don't add `1' to the buffer size (it was to protect against malloc
implementations that fail to allocate a buffer of size zero).
That is no longer necessary, since we use a malloc wrapper
on such systems.
Jim Meyering [Tue, 4 May 2004 07:26:33 +0000 (07:26 +0000)]
(show_disk, show_point): If several filesystems are
mounted on the same mount point, prefer the last one, not the first.
Problem reported by Christian Jones in
<http://mail.gnu.org/archive/html/bug-coreutils/2004-04/msg00200.html>.
(show_disk): Remove unused statp arg. Return bool, not int.
(show_point): Rewrite to avoid gotos. Use the same algorithm
for lofs and dummies for each pass through the mount table,
rather than subtly different algorithms (which are probably
inadvertent).
Jim Meyering [Mon, 3 May 2004 11:03:14 +0000 (11:03 +0000)]
Temporary work-around for the problem reported here:
http://sources.redhat.com/ml/automake/2004-05/msg00023.html
(FIXME: the number `23' may not be accurate)
(AM_GNU_GETTEXT): Don't require AM_INTL_SUBDIR.
(AM_INTL_SUBDIR): Comment out definition.
Jim Meyering [Sat, 1 May 2004 14:41:21 +0000 (14:41 +0000)]
(gl_PREREQ_CHOWN): Check for fcntl.h.
See if we need an fchown replacement.
(gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
(gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
and use the replacement function if we detect either defect.
Jim Meyering [Sat, 1 May 2004 14:36:29 +0000 (14:36 +0000)]
(rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
Wrap old code with this conditional.
[CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
function that does not dereference symlinks.
Jim Meyering [Sat, 1 May 2004 14:33:41 +0000 (14:33 +0000)]
When chown or chgrp is modifying the referent of a symlink,
use the chown(2) function, if possible.
(change_file_owner): Don't hard-code the
open/fchown/close kludge here. Use `chown' instead.
The chown function works just fine on conforming systems.
Other systems now go through the new chown wrapper that
resorts to the old kludge.