mirror of
git://git.sv.gnu.org/coreutils.git
synced 2026-03-25 22:34:34 +02:00
5953 lines
203 KiB
Plaintext
5953 lines
203 KiB
Plaintext
2001-02-11 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Makefile.maint (emit-rsync-commands): Define.
|
||
(alpha): Use it here.
|
||
|
||
2001-02-10 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Makefile.maint (alpha): Fix previous, incomplete change.
|
||
|
||
* Version 4.0.39.
|
||
|
||
* depcomp: New version, from automake.
|
||
|
||
2001-02-04 Jim Meyering <meyering@lucent.com>
|
||
|
||
* README: Remove note about now-ancient Sequents.
|
||
|
||
2001-02-03 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/ln.c (main): Change type of index variable to `unsigned int'
|
||
to avoid a warning.
|
||
|
||
* config.guess: Update from master repository.
|
||
|
||
* Makefile.maint (a_host): Use fencepost.
|
||
(real_dir): Use the same name for both.
|
||
(alpha): Print commands for both hosts.
|
||
|
||
* src/mv.c (long_options): Use `strip-trailing-slashes',
|
||
per the documetation, not `strip-trailing-slash'.
|
||
* src/cp.c (long_opts): Likewise.
|
||
Reported by Oskar Liljeblad.
|
||
|
||
* doc/fileutils.texi (mv invocation): Add a warning about how a trailing
|
||
slash makes a difference. Prompted by a report from Oskar Liljeblad
|
||
via Michael Stone (Debian bug#83991).
|
||
|
||
2001-01-31 Jim Meyering <meyering@lucent.com>
|
||
|
||
* config.sub: Update from master repository.
|
||
* config.guess: Likewise.
|
||
|
||
2001-01-28 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0.38.
|
||
|
||
* configure, aclocal.m4, etc.: Regenerate using autoconf-2.49c.
|
||
|
||
* src/ls.c (gobble_file): Add a FIXME comment.
|
||
|
||
* TODO: Add a few items.
|
||
|
||
* src/ls.c (enum) [FULL_TIME]: Define.
|
||
(long_options): Use it.
|
||
(decode_switches): Make --full-time imply -l.
|
||
Prompted by a report from Karl Eichwalder.
|
||
|
||
2001-01-22 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/remove.c (remove_file): Correct an expression to avoid making
|
||
an unnecessary call to euidaccess for each file.
|
||
|
||
2001-01-21 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0.37.
|
||
|
||
2001-01-20 Jim Meyering <meyering@lucent.com>
|
||
|
||
* configure.in: Remove jm_CHECK_ALL_TYPES.
|
||
Now it's invoked by jm_MACROS.
|
||
|
||
2001-01-17 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/sys2.h (case_GETOPT_VERSION_CHAR): Use PACKAGE, not GNU_PACKAGE.
|
||
* src/sync.c (main): Likewise.
|
||
* src/shred.c (PACKAGE): Likewise.
|
||
* src/dd.c (main): Likewise.
|
||
|
||
2001-01-14 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0.36.
|
||
|
||
* src/shred.c (UINT_MAX_32_BITS): Define.
|
||
Use UINT_MAX_32_BITS in the cpp conditions that determine
|
||
the `word32' typedef. Using a literal `0xffffffff' failed with
|
||
HPUX10.20's /bin/cc.
|
||
|
||
* config.sub: Update from master repository.
|
||
* config.guess: Likewise.
|
||
|
||
2001-01-02 Volker Borchert <bt@teknon.de>
|
||
|
||
Work around a broken rename system call, e.g. on SunOS 4.1.1_U1,
|
||
that fails when the source path has a trailing slash.
|
||
* src/copy.h [RENAME_TRAILING_SLASH_BUG]: Use the rename wrapper.
|
||
* tests/mv/trailing-slash: Test whether the workaround works.
|
||
* tests/m4/Makefile.am (TESTS): Add trailing-slash.
|
||
|
||
2001-01-03 Alexandre Duret-Lutz <duret_g@epita.fr>
|
||
|
||
* po/Makefile.in.in (update-po): Merge po-files in temporary files
|
||
in the build directory, and update the source directory only when
|
||
the merged catalog differs from the original. This fixes the known
|
||
`make distcheck' failure due to `make update-po' being called
|
||
on up-to-date but read-only files.
|
||
|
||
2001-01-13 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/copy.c (same_file_ok): When moving a symlink onto itself,
|
||
don't remove the symlink. Reported by David Luyer as Debian bug#82089,
|
||
via Michael Stone.
|
||
* tests/mv/into-self-4: New test for the above.
|
||
* tests/mv/Makefile.am (TESTS): Add into-self-4.
|
||
|
||
* tests/chmod/setgid: If `chmod g+s d' fails, then try to chgrp
|
||
to a group of which we're a member, then try the chmod again.
|
||
|
||
2001-01-11 Jim Meyering <meyering@lucent.com>
|
||
|
||
* depcomp: New version, from automake.
|
||
|
||
2001-01-10 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/copy.c (copy_internal): Add a comment.
|
||
Set *copy_into_self in the new code that detects that.
|
||
Make diagnostic more consistent: s/won't/will not/.
|
||
[move_mode, copy_into_self]: Give a diagnstic here, now that
|
||
we have the top_level_* globals. Remove the corresponding diagnostic
|
||
from mv.c.
|
||
Add a FIXME comment.
|
||
* src/mv.c (do_move): Remove diagnostic, now that copy.c issues it.
|
||
Set `fail' to nonzero in the primary `if (copy_into_self)' block
|
||
rather than in its own tiny one below.
|
||
|
||
* src/copy.c (copy_internal): Don't allow cp (or mv, when working
|
||
across a partition boundary) to overwrite a non-directory with a
|
||
directory. Reported by Michael J. Croghan.
|
||
* tests/cp/dir-vs-file: New test for the above.
|
||
* tests/cp/Makefile.am (TESTS): Add dir-vs-file.
|
||
|
||
2001-01-09 Jim Meyering <meyering@lucent.com>
|
||
|
||
Give a better diagnostic for `cp -R a a'.
|
||
* src/copy.c (top_level_src_path, top_level_dst_path): New globals.
|
||
(copy_internal): Use them.
|
||
(copy): Set them.
|
||
* src/cp-hash.c [struct entry] (node): Describe how it's used,
|
||
now that we've overloaded it, in order to detect and diagnose
|
||
the copying-directory-into-self problem.
|
||
(new_file): Remove global.
|
||
(htab): Declare global to be static.
|
||
(remember_created): Insert file name instead of dummy pointer, so
|
||
that copy.c can use the just-created directory name to detect
|
||
the copying-directory-into-self problem.
|
||
* tests/cp/into-self: New test for the above.
|
||
* tests/cp/Makefile.am (TESTS): Add into-self.
|
||
|
||
2001-01-07 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/cp.c (usage): Split a string that was longer than 2048 bytes.
|
||
|
||
* doc/perm.texi: s/can not/cannot/
|
||
|
||
2001-01-07 Karl Eichwalder <ke@suse.de>
|
||
|
||
* src/chown.c (usage): Split long message string.
|
||
|
||
2001-01-07 Karl Eichwalder <ke@suse.de>
|
||
|
||
* src/ls.c (usage): Untabify.
|
||
|
||
* src/chgrp.c (parse_group): Normalize spelling.
|
||
|
||
2001-01-03 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* NEWS: Document the planned --full-time change.
|
||
* doc/fileutils.texi: Likewise.
|
||
* NEWS: Document that time stamps depend on LC_TIME, not LC_MESSAGES.
|
||
|
||
2001-01-03 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Use the more precise algorithm of GNU "make" to decide whether
|
||
a file is in the future, by looking at high-resolution time
|
||
stamps if available.
|
||
|
||
* src/ls.c:
|
||
(TIMESPEC_NS): New macro.
|
||
(current_time): Initialize to the minimum value.
|
||
(current_time_ns): New var.
|
||
(main): Do not bother to initialize current_time;
|
||
it's no longer needed.
|
||
(get_current_time): New function.
|
||
(print_long_format): Use it when a file appears to be in the future.
|
||
Get the nanoseconds of the file's time stamp, if available,
|
||
and use that to decide whether the file appears to be in the future.
|
||
|
||
* src/Makefile.am (dir_LDADD, ls_LDADD, vdir_LDADD): New macros.
|
||
|
||
2001-01-02 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/ls.c (long_time_expected_width, print_long_format): Fix
|
||
bug: the initial byte passed to strftime wasn't initialized to
|
||
a nonzero value after the buffer was reallocated.
|
||
|
||
2001-01-02 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Make ls -l compatible with POSIX, which requires that the
|
||
behavior of time formats must depend only on LC_TIME, not on
|
||
LC_MESSAGES.
|
||
|
||
* po/Makefile.in.in (install-data-yes): If the package is
|
||
fileutils, install LC_TIME as an alias for LC_MESSAGES.
|
||
* src/sys2.h (dcgettext): New macro.
|
||
* src/ls.c (decode_switches): Use dcgettext with LC_TIME,
|
||
not plain gettext, to get the translations of time formats.
|
||
|
||
2001-01-02 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/ls.c (long_time_expected_width): New function.
|
||
(print_long_format): Use it, so that we don't assume a
|
||
particular width for time stamps in an internationalized
|
||
environment.
|
||
|
||
2001-01-01 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* doc/fileutils.texi, NEWS:
|
||
ls -l now reports the year for files even slightly in the future, as
|
||
POSIX requires. This helps warn users about clock skew problems.
|
||
|
||
* src/ls.c (print_long_format):
|
||
Report the year for files even slightly in the future.
|
||
Avoid overflow problems near Y2038 on 32-bit hosts.
|
||
To calculate "six months", take half the average Gregorian
|
||
year, not 180 days.
|
||
|
||
2001-01-01 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/chmod/Makefile.am (TESTS): Add setgid.
|
||
* tests/chmod/setgid: Test for chmod's existing behavior.
|
||
Based on a report from Paul Eggert.
|
||
|
||
2000-12-29 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Clean up the terminology a tad: some directories were called "sticky"
|
||
when they were really setgid.
|
||
* tests/Makefile.am (EXTRA_DIST): sticky-check -> setgid-check
|
||
* tests/chmod/c-option, tests/cp/cp-parents, tests/mkdir/parents,
|
||
tests/mkdir/perm: Likewise.
|
||
* tests/setgid-check: File renamed from tests/sticky-check.
|
||
All uses of "sticky" changed to "setgid".
|
||
|
||
2000-12-31 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/cp/Makefile.am (TESTS): Add deref-slink.
|
||
* tests/cp/deref-slink: New file. Test for the bug fixed by my
|
||
2000-12-28 change to copy.c.
|
||
|
||
2000-12-30 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/ls.c: Improve performance by invoking gettext twice at the start,
|
||
instead of once for each file.
|
||
(long_time_format): New var.
|
||
(decode_switches): Initialize it, if format == long_format.
|
||
(print_long_format): Use it.
|
||
|
||
2000-12-30 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/ls.c (print_long_format): Don't dump core if strftime
|
||
returns the empty string.
|
||
|
||
2000-12-30 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/ls.c (gobble_file): If not using long format, don't
|
||
invoke acl; it's not needed.
|
||
|
||
2000-12-30 Jim Meyering <meyering@lucent.com>
|
||
|
||
Avoid an unnecessary `stat' when using --dereference.
|
||
* src/copy.c (same_file_ok): Use stat only if lstat reported that
|
||
the file was a symbolic link.
|
||
|
||
2000-12-29 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* doc/perm.texi: append-only directories -> restricted deletion flag,
|
||
which is the term that POSIX d5 uses for this notion.
|
||
|
||
2000-12-28 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* tests/group-names: Try /usr/xpg4/bin/id (Solaris 7) if plain
|
||
'id' doesn't work.
|
||
|
||
2000-12-28 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/cp/cp-parents: Run sticky-check from just-created directory.
|
||
|
||
2000-12-28 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/copy.c (same_file_ok): Fix two typos from my 2000-09-03 change:
|
||
s/tmp_dst_sb/tmp_src_sb/.
|
||
|
||
2000-12-27 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* tests/sticky-check: Turn off the working directory's sticky
|
||
bit, so that we don't have to worry about it later.
|
||
|
||
* src/copy.c (same_file_ok): Use a single auto var for
|
||
tmp_dst_sb, instead of two static vars. Likewise for
|
||
tmp_src_sb.
|
||
|
||
2000-12-26 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0.35.
|
||
|
||
* Regenerate build/config framework to use automake-1.4b and
|
||
the latest CVS version autoconf.
|
||
|
||
* tests/mkdir/perm: Disable the test if the working directory has
|
||
the sticky bit set.
|
||
* tests/cp/cp-parents: Likewise.
|
||
Reported by Nelson Beebe.
|
||
|
||
2000-12-25 Jim Meyering <meyering@lucent.com>
|
||
|
||
Clean-up to avoid warnings from Irix's c89.
|
||
|
||
* src/remove.c (hash_compare_active_dir_ents): Return explicit `true'
|
||
or `false', rather than relying on implicit int-to-enum cast.
|
||
* src/copy.c (same_file_ok): Remove declaration and set of unused
|
||
variables: src_sb_no_link, dst_sb_no_link.
|
||
* src/ls.c (extract_dirs_from_files): Remove unused variable.
|
||
Reported by Nelson Beebe.
|
||
|
||
* src/ls.c (gobble_file): Move decl of local, val, into the scope
|
||
where it's used.
|
||
|
||
2000-12-24 Jim Meyering <meyering@lucent.com>
|
||
|
||
For both ln and install, when using `--backup=simple --suffix=S',
|
||
the suffix `S' wasn't used.
|
||
|
||
* src/ln.c (main): Actually use the local variable,
|
||
`backup_suffix_string'.
|
||
* src/install.c (main): Likewise.
|
||
Nelson Beebe reported the unused variables.
|
||
* tests/ln/misc: Add a test for this (for all of cp, mv, ln, install).
|
||
|
||
* man/help2man: Update to version 1.24.
|
||
|
||
2000-12-22 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0.34.
|
||
|
||
* src/shred.c (isaac_seed_machdep) [_ARCH_PPC]: Disable the code
|
||
that would use the PPC mfspr `asm' code. Suggestion from Michael Stone.
|
||
|
||
2000-12-19 Jim Meyering <meyering@lucent.com>
|
||
|
||
* doc/fileutils.texi: Use `ref_file' in place of `file' to make
|
||
descriptions of the various --reference=... options clearer.
|
||
|
||
2000-12-17 Jim Meyering <meyering@lucent.com>
|
||
|
||
* doc/texinfo.tex: Update from master repository.
|
||
* config.sub: Likewise.
|
||
* config.guess: Likewise.
|
||
|
||
2000-12-16 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/chown-core.c (uint_to_string): New function.
|
||
(uid_to_name): Use it.
|
||
(gid_to_name): Use it.
|
||
Rename locals, user/group, to uid/gid.
|
||
|
||
* src/chown-core.h (enum Change_status): Start with 1.
|
||
|
||
* src/chown.c (main): Rename locals, user/group, to uid/gid.
|
||
* src/chgrp.c (main): Rename local, group, to gid.
|
||
|
||
* tests/group-names: New file.
|
||
* tests/Makefile.am (EXTRA_DIST): Add group-names.
|
||
* tests/chgrp/basic: Use group-names.
|
||
* tests/chgrp/deref: Likewise.
|
||
* tests/chgrp/recurse: Likewise.
|
||
|
||
* tests/chgrp/basic: Don't assume that creating a file gives it
|
||
group $g1.
|
||
|
||
* tests/chgrp/Makefile.am (TESTS): Add recurse.
|
||
|
||
2000-12-15 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/chown-core.h [enum Dereference_symlink] (dereference): Rename
|
||
from change_symlinks.
|
||
* src/chown-core.c: Declare lstat.
|
||
Rename change_symlinks member to `dereference' and use the DEREF_*
|
||
enum values.
|
||
(describe_change): Merge the chgrp and chown switch statements.
|
||
Use xmalloc to form the `user:group' string.
|
||
(change_file_owner): Record (and later, use) is_symlink and is_directory
|
||
from the lstat stats, in order to control whether we operate on symlinks
|
||
and whether (with -R) we traverse symlinks to directories.
|
||
When dereferencing, use open/fchown (rather than chown) on symlinks.
|
||
* src/chown.c (main): Reflect renaming: s/dereference/change_symlinks/.
|
||
* src/chgrp.c (main): Likewise.
|
||
|
||
* src/chown-core.c (describe_change): Use `:' (not `.') to separate the
|
||
username and group in messages evoked by the --verbose and --changes
|
||
options.
|
||
|
||
2000-12-09 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/Makefile.am (noinst_HEADERS): Add chown-core.h.
|
||
(chown_SOURCES): Define.
|
||
(chgrp_SOURCES): Define.
|
||
|
||
* src/chgrp.c: Include "chown-core.h".
|
||
[enum Change_status, enum Verbosity]: Remove declarations.
|
||
Remove decls of globals that are now part of struct Chown_option.
|
||
Remove decl of xstat.
|
||
(describe_change): Remove function.
|
||
(change_file_group): Likewise.
|
||
(change_dir_group): Likewise.
|
||
(parse_group): Don't set global, groupname, here...
|
||
(main): ... instead, initialize `chopt.group_name' here.
|
||
Initialize chopt and update uses of the now-members.
|
||
Set group_name also when it's obtained via a --reference=FILE option.
|
||
Call change_file_owner (with -1 for uids), not change_file_group.
|
||
|
||
* src/chown.c: Don't include pwd.h or grp.h -- no longer needed.
|
||
Include "chown-core.h".
|
||
[enum Change_status, enum Verbosity]: Remove declarations.
|
||
Remove decls of globals that are now part of struct Chown_option.
|
||
(describe_change): Remove function.
|
||
(change_file_owner): Likewise.
|
||
(change_dir_owner): Likewise.
|
||
(main): Initialize chopt and update uses of the now-members.
|
||
Set user_name and group_name also when they're obtained via a
|
||
--reference=FILE option.
|
||
Pass `chopt' to change_file_owner.
|
||
|
||
* src/chown-core.c: Include <pwd.h>, <grp.h>, and "xalloc.h".
|
||
[!_POSIX_VERSION]: Declare getgrnam and getgrgid.
|
||
(gid_to_name): New function.
|
||
(uid_to_name): Likewise.
|
||
(chopt_free): Likewise.
|
||
|
||
Factor out code that's common to chgrp.c and chown.c.
|
||
* src/chown-core.h: New file.
|
||
* src/chown-core.c (chopt_init): New function.
|
||
(describe_change): Extracted/combined from chgrp.c and chown.c.
|
||
(change_dir_owner): Likewise.
|
||
(change_file_owner): Likewise.
|
||
* po/POTFILES.in: Add src/chown-core.c.
|
||
|
||
* configure.in (AC_OUTPUT): Add tests/chgrp/Makefile.
|
||
* tests/Makefile.am (SUBDIRS): Add chgrp.
|
||
* tests/chgrp: New directory.
|
||
* tests/chgrp/basic: New test.
|
||
* tests/chgrp/deref: Likewise.
|
||
* tests/chgrp/Makefile.am: New file.
|
||
|
||
* src/chown.c (change_file_owner): Restore special file permission
|
||
bits, since calling chown resets them on some systems.
|
||
Reported by Matt Perry.
|
||
|
||
2000-12-08 Andreas Schwab <schwab@suse.de>
|
||
|
||
* tests/mv/mv-special-1: Don't make the success of the test depend
|
||
on the order in which directory entries are processed.
|
||
|
||
2000-12-03 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/ls.c (gobble_file) [USE_ACL]: Set have_acl member unconditionally
|
||
to avoid uninitialized memory reference via FILE_HAS_ACL.
|
||
|
||
* Makefile.maint (alpha): Use rsync rather than scp, so the destination
|
||
file is created only after the successful completion of the copy.
|
||
|
||
2000-12-02 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/ls/Makefile.am (TESTS): Add follow-slink.
|
||
* tests/ls/follow-slink: New file.
|
||
|
||
2000-12-01 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/ls.c (gobble_file): Do not fall back on lstat if stat
|
||
fails; POSIX.2 does not allow this. Invoke acl only on
|
||
non-symlinks, and only if lstat or stat succeeds.
|
||
|
||
2000-12-02 Jim Meyering <meyering@lucent.com>
|
||
|
||
* configure: Regenerate using the very latest version (in CVS) of
|
||
autoconf.
|
||
|
||
* tests/dd/skip-seek: Remove test #2, now that support for the
|
||
`B' suffix is gone.
|
||
* tests/dd/Makefile.am (TESTS): Add skip-seek2
|
||
* tests/dd/skip-seek2: New file.
|
||
|
||
2000-12-01 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/dd.c (skip, dd_copy): Use ssize_t to store result of
|
||
safe_read, to avoid overflow e.g. on 64-bit Solaris sparc.
|
||
(dd_copy): Remove unnecessary cast.
|
||
|
||
2000-12-01 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* doc/fileutils.texi: Remove B suffix. Document how to have
|
||
the desired effect without it.
|
||
|
||
* src/dd.c: Undo most of the changes since 2000-11-24, since we've
|
||
documented a standard way to do it.
|
||
(skip_bytes, seek_bytes): Remove.
|
||
(usage): Remove B suffix.
|
||
(scanargs, skip, dd_copy, main): Remove support for B suffix.
|
||
|
||
2000-11-28 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/mkdir.c (main): Remove any trailing slash unconditionally.
|
||
Reported by Volker Borchert.
|
||
* tests/mkdir/t-slash: Add a test for this.
|
||
|
||
2000-11-27 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0.33.
|
||
|
||
* tests/touch/no-rights: Use touch with `-d tomorrow' to avoid a
|
||
race condition.
|
||
|
||
* tests/Fetish.pm (_compare_files): New function.
|
||
(_process_file_spec): Likewise.
|
||
(_at_replace): Likewise.
|
||
(run_tests): Support new keywords, AUX and CMP and associated
|
||
syntax and semantics.
|
||
|
||
* config.sub: Likewise.
|
||
* config.guess: Likewise.
|
||
|
||
2000-11-26 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/dd.c (skip): Perform the `records < blocksize' test
|
||
at the top of the loop, not at the bottom.
|
||
|
||
2000-11-26 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/dd.c (skip): New arg COUNT_BYTES. Read with BLOCKSIZE
|
||
bytes, but consider RECORDS to be a byte count if COUNT_BYTES
|
||
is nonzero.
|
||
|
||
2000-11-25 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* doc/fileutils.texi: Document seek=nB and skip=nB.
|
||
|
||
* src/dd.c (skip_bytes, seek_bytes): Now booleans, not counts.
|
||
(seek_records): Renamed from seek_record, for consistency with
|
||
skip_records and max_records. All uses changed.
|
||
|
||
(usage, scanargs): Remove bseek=n and bskip=n; instead, use seek=nB
|
||
and skip=nB.
|
||
(enum Unit, Unit): Remove.
|
||
(skip, dd_copy, main): Undo most recent change.
|
||
(dd_copy, main): Pass blocksize of 1 as appropriate when
|
||
skip_bytes or seek_bytes is nonzero.
|
||
(main): Rework ftruncate failure diagnostic to always use byte count.
|
||
|
||
2000-11-25 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/dd.c: Add new options, bskip and bseek.
|
||
Based on a patch from Chris Sylvain.
|
||
* tests/dd/skip-seek: New tests.
|
||
* tests/dd/Makefile.am (TESTS): Add skip-seek.
|
||
|
||
2000-11-24 Paul Eggert <eggert@green.twinsun.com>
|
||
|
||
* src/dd.c (S_TYPEISSHM): New macro.
|
||
(main): Report failed fstat.
|
||
Complain only when ftruncate fails on a regular file,
|
||
a directory, or a shared memory object.
|
||
|
||
2000-11-24 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/dd.c: Declare a pointer parameters to be `const' as appropriate.
|
||
|
||
* src/dd.c (main): Use ftruncate only on regular files.
|
||
Based on a patch from Michael Stone.
|
||
Reported by andras@kolumbus.fi at http://bugs.debian.org/77174.
|
||
|
||
2000-11-23 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/df.c (show_point): Before accepting an entry as a match, make
|
||
sure that the mount directory exists and has the required device number.
|
||
Before, e.g., `df /floppy' would mistakenly report on the root
|
||
partition if /floppy were not listed in /etc/mtab but / was.
|
||
Patch from Eirik Fuller (http://bugs.debian.org/76923).
|
||
|
||
* src/chmod.c (mode_changed): New function.
|
||
(change_file_mode): Use it to determine accurately when -c should
|
||
make chmod announce there's been a change.
|
||
Based on a patch from Michael Stone.
|
||
Reported by Kai Henningsen as Debian bug #77349.
|
||
|
||
* tests/chmod/c-option: New test for the above fix.
|
||
* tests/chmod/Makefile.am (TESTS): Add c-option
|
||
|
||
* tests/sticky-check: New file. Factored out of tests/mkdir/parents.
|
||
* tests/Makefile.am (EXTRA_DIST): Add sticky-check.
|
||
* tests/mkdir/parents: Source sticky-check instead of open-coding it.
|
||
|
||
2000-11-19 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/chmod/equal-x: Update to use its own directory, and better trap.
|
||
|
||
2000-11-18 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/ls.c (BLOCK_SIZE_OPTION, COLOR_OPTION, FORMAT_OPTION,
|
||
INDICATOR_STYLE_OPTION, QUOTING_STYLE_OPTION,
|
||
SHOW_CONTROL_CHARS_OPTION, SORT_OPTION, TIME_OPTION): New enum
|
||
values, to ensure that option values can't collide with chars.
|
||
(long_options, decode_switches): Use them.
|
||
|
||
2000-11-18 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/sys2.h (GETOPT_HELP_CHAR, GETOPT_VERSION_CHAR): Now enum
|
||
constants rather than macros. Use values that cannot conflict
|
||
with C characters or with -1, CHAR_MAX + 1, etc.
|
||
|
||
2000-11-18 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/du.c (count_entry): Don't omit the size of a directory entry
|
||
merely because we couldn't `chdir' into it. That would give subtly
|
||
different results in some cases. Reported by Mattias Wadenstein
|
||
via Michael Stone.
|
||
|
||
* src/ls.c: Revert change of 2000-11-11. It inadvertently change
|
||
the output format of `ls -l --full-time'.
|
||
|
||
* src/mkdir.c (main): When failing to create a directory, give only
|
||
one diagnostic, not two. Reported by Volker Borchert.
|
||
|
||
* src/mkdir.c (main): With --parents, remove any trailing slashes
|
||
from the argument to the final mkdir call. Required for NetBSD.
|
||
Reported by Volker Borchert.
|
||
* tests/mkdir/t-slash: New test for this.
|
||
* tests/mkdir/Makefile.am (TESTS): Add t-slash.
|
||
|
||
* tests/mv/mv-special-1: Create and `cd' into temporary directory
|
||
before anything else. Reported by Volker Borchert.
|
||
|
||
* configure, config.h.in, Makefile.in, etc.: Regenerate using the
|
||
very latest version (in CVS) of autoconf.
|
||
|
||
2000-11-17 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Makefile.am (.NOTPARALLEL): Remove target.
|
||
* GNUmakefile (.NOTPARALLEL): ... put it here instead, since this
|
||
file is common to these packages: fileutils, sh-utils, textutils.
|
||
|
||
* Makefile.am (.NOTPARALLEL): New target. Prevent unwanted parallelism.
|
||
Suggestion from Ulrich Drepper.
|
||
* po/Makefile.in.in (Makefile): Likewise.
|
||
|
||
* Makefile.maint (sha1): Define.
|
||
(announcement): Include SHA1 digest of .tar.gz file.
|
||
|
||
2000-11-14 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/mkdir/perm: Add an `echo' so that the input to the sed command
|
||
is NL-terminated. Otherwise, Solaris' /bin/sed generates no output.
|
||
Reported by Vin Shelton.
|
||
|
||
2000-11-13 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/sys2.h (ST_TIME_CMP_NS): Fix typo: ST_MTIM_NSEC should
|
||
be tested with #ifdef, not with #if.
|
||
|
||
2000-11-12 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/ls.c (print_long_format): Remove obsolete comment.
|
||
From Paul Eggert.
|
||
|
||
* doc/texinfo.tex: Update from master repository.
|
||
|
||
2000-11-11 Paul Eggert <eggert@sic.twinsun.com>
|
||
|
||
* src/ls.c (<langinfo.h>): Include if HAVE_LANGINFO_H.
|
||
(DATE_FMT_LANGINFO): New macro, taken from sh-utils/src/date.c.
|
||
(print_long_format): Use it to determine "date" format.
|
||
Do not wrap "%b %e %Y" and "%b %e %H:%M" in _(), as it results in
|
||
incorrect behavior when LC_ALL is unset, LC_TIME is "C", and
|
||
LC_MESSAGES or LANG is set to something disagreeing with the POSIX
|
||
locale.
|
||
|
||
2000-11-11 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0.32.
|
||
|
||
* Makefile.maint (GZIP_ENV): Define to --no-name, so the timestamp
|
||
is not included in the .tar.gz file.
|
||
|
||
* tests/mkdir/perm (tests): Use `empty' (instead of just blanks) to
|
||
indicate no `-m' option. Using just blanks wasn't portable to
|
||
Solaris2.5.1's /bin/sh.
|
||
|
||
* tests/mkdir/perm: Don't put a newline in IFS; that's not portable to
|
||
NetBSD's /bin/sh. Instead, filter newlines and leading/trailing blanks
|
||
out of `tests' before the `set -'.
|
||
|
||
* Makefile.maint (announcement): Limit depth of ChangeLog `find' to 2.
|
||
|
||
* src/ls.c (print_long_format): Wrap the `--full-time' date format
|
||
string in _(...), so it too may be internationalized.
|
||
Suggestion from Jungshik Shin.
|
||
|
||
2000-11-10 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/touch.c (main): Interpret a lone numeric argument of 8 or 10
|
||
digits as a file name, rather than as a date/time in the obsolescent
|
||
`MMDDhhmm[YY]' format. Reported by Wenjun Zheng.
|
||
* tests/touch/obsolescent: New test for this.
|
||
* tests/touch/Makefile.am (TESTS): Add obsolescent.
|
||
|
||
2000-11-06 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/cp/cp-parents: Move mkdir tests into ../mkdir.
|
||
|
||
* doc/fileutils.texi: Use Free Documentation Licence.
|
||
Change GNU to @sc{gnu} in many places.
|
||
|
||
* doc/texinfo.tex: Update from master repository.
|
||
* config.sub: Likewise.
|
||
* config.guess: Likewise.
|
||
* man/help2man: Update from latest version: 1.23.
|
||
|
||
* src/mkdir.c: Do not set the permissions of the final directory
|
||
component if it was not just created.
|
||
Based on a patch from Volker Borchert.
|
||
|
||
* tests/rwx-to-mode: New file.
|
||
* tests/Makefile.am (EXTRA_DIST): Add rwx-to-mode.
|
||
* tests/mkdir/parents: New test for the above mkdir.c fix.
|
||
* tests/mkdir/Makefile.am (TESTS): Add parents.
|
||
(TESTS_ENVIRONMENT): Define srcdir=$(srcdir).
|
||
|
||
2000-11-02 Won-kyu Park <wkpark@chem.skku.ac.kr>
|
||
|
||
* src/df.c (print_header): Mark strings for translation.
|
||
|
||
2000-11-05 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0.31.
|
||
|
||
* configure, config.h.in, Makefile.in, etc.: Regenerate using the
|
||
very latest version (in CVS) of autoconf.
|
||
|
||
* src/mkdir.c (main): Use make_dir instead of using mkdir directly.
|
||
Diagnose as failure when mkdir tries to create (without the
|
||
--parent (-p) option) a directory that already exists.
|
||
* tests/cp/cp-parents: Add a test for the above fix.
|
||
|
||
* tests/mv/mv-special-1: Clean up this test.
|
||
|
||
2000-11-01 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0.30.
|
||
|
||
* src/chmod.c (main): Better diagnostics.
|
||
|
||
2000-10-31 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/lang-default: Add all the internationalization-related
|
||
variable names autoconf uses. Set and export them in a loop.
|
||
|
||
`mkdir -p' would create parent directories with permissions
|
||
that did not account for the umask. [introduced with the
|
||
2000-09-30 change that became part of fileutils-4.0.28]
|
||
* src/mkdir.c: Include dirname.h.
|
||
Compute the parent directory `mode' unconditionally, effectively
|
||
as `$(umask -S),u+wx'.
|
||
Use make_path to create only the parent directories, thus using
|
||
the same code, both with and without -p, to create the final
|
||
component in each file name. Reported by Bob Proulx.
|
||
|
||
Add tests for the above fix.
|
||
* tests/cp/cp-parents: Add some permission tests.
|
||
* tests/mkdir/perm: Fix the test so it actually does something.
|
||
Run each test also with mkdir's `-p' option and check permissions
|
||
on the parent directories.
|
||
|
||
2000-10-23 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* doc/getdate.texi: Use @sc where appropriate. Document the
|
||
ranges of supported times more precisely. Correct menu
|
||
spacing. Document old Latin 12m/12pm tradition. Remove list
|
||
of alphabetic time zone names, as it wasn't correct and people
|
||
shouldn't be relying on it anyway. Relative items also
|
||
account for non-DST adjustments. Fix some misspellings.
|
||
|
||
2000-10-30 Jim Meyering <meyering@lucent.com>
|
||
|
||
* configure, config.h.in, Makefile.in, etc.: Regenerate using the
|
||
very latest version (in CVS) of autoconf.
|
||
|
||
2000-10-29 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0.29.
|
||
|
||
* src/cp.c (do_copy): When constructing dst_path for use with the
|
||
--parents option, first remove any trailing slashes from the command
|
||
line argument. Otherwise, tests/cp/cp-parent would fail on NetBSD.
|
||
|
||
* tests/cp/cp-parents: Add a test.
|
||
|
||
* src/ls.c (DT_INIT): Define.
|
||
[enum filetype]: Remove the #ifdef, and use DT_INIT on the
|
||
initializers instead. `unknown' was undefined for some systems.
|
||
Reported by John David Anglin.
|
||
|
||
* tests/lang-default (LC_COLLATE): Set it to the empty string and
|
||
export it. Otherwise, tests/cp/cp-mv-backup would fail e.g., when
|
||
LC_COLLATE was set to en. Reported by Vin Shelton.
|
||
|
||
2000-10-28 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/ls.c (main): In call to gobble_file with `"."', use `directory'
|
||
as the type, not `unknown'.
|
||
[enum filetype] (arg_directory): Rather than `100', use
|
||
a number that should never conflict with another DT_* value.
|
||
From Ulrich Drepper.
|
||
|
||
* Version 4.0.28.
|
||
|
||
Make `ls' a lot more efficient on systems (e.g., linux-2.4.*)
|
||
that store file type information in directory entries.
|
||
|
||
* src/ls.c [enum filetype] (unknown):
|
||
Add members (as yet unused):
|
||
(HAVE_STRUCT_DIRENT_D_TYPE): Define.
|
||
(format_needs_type): New global.
|
||
(main): Set it.
|
||
(print_dir): Set `type' from directory entry, if possible.
|
||
(gobble_file): Add a parameter, TYPE.
|
||
Stat the file only if its type is unknown and we need the type.
|
||
Patch from Ulrich Drepper.
|
||
|
||
Shred can now determine the size of a block devices (e.g. /dev/fd0)
|
||
by writing until a write operation fails.
|
||
|
||
* src/shred.c: Include assert.h.
|
||
(fillrand): Add a parameter, size_max.
|
||
Adjust caller.
|
||
Add an assertion.
|
||
(dopass): Break out of the `for (;;)' loop if size < offset.
|
||
That can happen now that dopass is called with SIZE == -1.
|
||
(do_wipefd): Accept a length of zero only for a regular file.
|
||
If lseek fails or returns 0 for a non-regular file, let dopass
|
||
determine the length.
|
||
Inspired by a patch from Alan Iwi.
|
||
|
||
* tests/Makefile.am (EXTRA_DIST): Add lang-default.
|
||
|
||
* tests/rm/hash: Factor out the expensive-test-checking code, ...
|
||
* tests/expensive: ... into this new file.
|
||
* tests/cp/perm: Disable this test by default; it's expensive.
|
||
Mark this as an expensive test.
|
||
* tests/Makefile.am (EXTRA_DIST): Add expensive.
|
||
|
||
* doc/fileutils.texi (shred invocation): Give two examples.
|
||
|
||
2000-10-26 Jim Meyering <meyering@lucent.com>
|
||
|
||
* doc/getdate.texi (Authors of getdate): Add Paul Eggert.
|
||
|
||
2000-10-23 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Makefile.am (EXTRA_DIST): Add .prev-version.
|
||
|
||
2000-10-22 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/cp.c (make_path_private): Add a FIXME comment.
|
||
|
||
* tests/lang-default: New file. Set LANG, LC_ALL, and LANGUAGE to ''
|
||
(rather than to `C') and export them into the environment.
|
||
Suggestion from Bruno Haible.
|
||
|
||
* tests/cp/backup-is-src: Source lang-default rather than open-coding
|
||
the setting/exporting of LANG, LC_ALL, and LANGUAGE.
|
||
* tests/cp/cp-mv-backup: Likewise.
|
||
* tests/cp/same-file: Likewise.
|
||
* tests/cp/slink-2-slink: Likewise.
|
||
* tests/cp/symlink-slash: Likewise.
|
||
* tests/ln/sf-1: Likewise.
|
||
* tests/ls/symlink-slash: Likewise.
|
||
* tests/ls/time-1: Likewise.
|
||
* tests/mv/backup-is-src: Likewise.
|
||
* tests/mv/diag: Likewise.
|
||
* tests/mv/force: Likewise.
|
||
* tests/mv/hard-link-1: Likewise.
|
||
* tests/mv/i-2: Likewise.
|
||
* tests/mv/into-self: Likewise.
|
||
* tests/mv/into-self-2: Likewise.
|
||
* tests/mv/into-self-3: Likewise.
|
||
* tests/mv/mv-special-1: Likewise.
|
||
* tests/mv/part-symlink: Likewise.
|
||
* tests/mv/partition-perm: Likewise.
|
||
* tests/rm/r-1: Likewise.
|
||
* tests/rm/r-2: Likewise.
|
||
|
||
2000-10-21 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/cp/cp-parents: New test.
|
||
* tests/cp/Makefile.am (TESTS): Add cp-parents;
|
||
|
||
2000-10-19 Jim Meyering <meyering@lucent.com>
|
||
|
||
* doc/texinfo.tex: Update from master repository.
|
||
* config.sub: Likewise.
|
||
* config.guess: Likewise.
|
||
* depcomp: Likewise.
|
||
|
||
2000-10-18 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/mv/part-symlink: Make sure the programs use C-locale formats
|
||
and translations. Bruno Haible reported that this test would fail
|
||
when using other locales, because ls printed a translation of `total'.
|
||
|
||
2000-10-16 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/ls.c (print_long_format): Wrap date format strings in _(...)
|
||
so they may be internationalized. Suggestion from Christian Rose.
|
||
|
||
2000-10-13 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/mv.c (rm_option_init): Remove FIXME-maybe comment.
|
||
|
||
2000-09-30 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/du/two-args: Update to use newer template.
|
||
|
||
* src/install.c: Remove big, option-describing comment block.
|
||
(main): Rename local `symbolic_mode' to `specified_mode'.
|
||
|
||
* src/mkdir.c (main): Don't set the umask to 0 and hand-apply
|
||
the previously-set umask unconditionally. Do that only when a
|
||
MODE has been specified. Otherwise, call mkdir with the full
|
||
creation mask (0777 or 0666) and let the kernel apply the umask.
|
||
The difference shows up only on file systems with ACL support
|
||
when the containing directory has a default ACL.
|
||
Patch by Andreas Gruenbacher.
|
||
(main): Rename local `symbolic_mode' to `specified_mode'.
|
||
* src/mknod.c (main): Likewise (but `call mknod', not mkdir).
|
||
Also, when MODE is specified, call chmod to ensure that the
|
||
permission bits are set as specified even when the containing
|
||
directory has a default ACL.
|
||
Patch by Andreas Gruenbacher.
|
||
* src/mkfifo.c (main): Likewise (but `call mkfifo', not mkdir).
|
||
Patch by Andreas Gruenbacher.
|
||
|
||
* tests/mkdir/perm: New test.
|
||
* tests/mkdir/Makefile.am (TESTS): Add perm.
|
||
|
||
2000-08-17 Andreas Gruenbacher <ag@bestbits.at>
|
||
|
||
* src/chmod.c (change_file_mode): Perform the chmod even if the
|
||
file mode permission bits are the same as those that should be set.
|
||
Omitting the chmod call would be alright with minimal 1003.1e DS17
|
||
ACLs, but eventually there may be other permissions in addition to
|
||
rwx. E.g., add and delete for directories, and something analogous
|
||
to NT's take ownership permission.
|
||
|
||
2000-09-25 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/cp/same-file: Don't use `diff -u'. It's not portable.
|
||
Reported by Christian Krackowizer.
|
||
* tests/cp/same-file: Run `diff -c' only if cmp finds a difference.
|
||
* tests/mv/part-symlink: Likewise. And clean up.
|
||
|
||
`shred --exact file1 file2' wouldn't touch `file1'
|
||
* src/shred.c (long_opts): --exact doesn't take an argument.
|
||
Reported by Alan Iwi.
|
||
* tests/shred/exact: New test for this.
|
||
* tests/shred/Makefile.am (TESTS): Add exact.
|
||
|
||
* Makefile.maint (PREV_VERSION): Get the value from a file, rather
|
||
than trying to derive it from the current version number.
|
||
This is much more robust.
|
||
(alpha): Record just-released version number in `.prev-version',
|
||
and commit (post-tag).
|
||
|
||
* Version 4.0.27.
|
||
|
||
2000-09-24 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* doc/fileutils.texi: Update to more closely match changes in 4.0z.
|
||
* src/cp.c (usage): Match revised documentation better.
|
||
|
||
2000-09-24 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/cp.c (main): Tweak a relatively new diagnostic.
|
||
|
||
2000-09-23 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/ls/time-1: Output more information when a test fails.
|
||
|
||
2000-09-22 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/install.c (cp_option_init): Once again make it so install always
|
||
unlinks an existing destination before trying to open it for writing.
|
||
Otherwise, installing onto a running shared library would make the
|
||
running program malfunction.
|
||
Reported by Dan Pascu via Michael Stone.
|
||
|
||
* src/mv.c (do_move): Moving a directory specified with a trailing
|
||
slash from one partition to another, and giving it a different
|
||
name at the destination would cause mv to get a failed assertion.
|
||
Reported by Michael Stone.
|
||
(strip_trailing_slashes_2): Move function definition to precede
|
||
new first use.
|
||
* tests/mv/part-rename: New test for the above fix.
|
||
* tests/mv/Makefile.am (TESTS): Add part-rename.
|
||
|
||
* src/copy.c (copy_internal): Don't try to unlink directories when
|
||
using --remove-dest with -R.
|
||
* tests/cp/dir-rm-dest: New test for the above fix.
|
||
* tests/cp/Makefile.am (TESTS): Add dir-rm-dest.
|
||
|
||
2000-09-19 Jim Meyering <meyering@lucent.com>
|
||
|
||
* doc/fileutils.texi (cp invocation): Describe how --force works.
|
||
Update description of -P (soon to change meaning to conform w/POSIX).
|
||
Describe --remove-destination.
|
||
|
||
* src/cp.c (main): When used with --force, each of the --link and
|
||
--symbolic-link options now implies --remove-destination.
|
||
Reported by Miles Bader via Mike Stone.
|
||
* tests/cp/link: New file. Test for the above fix.
|
||
* tests/cp/same-file: Adjust for this change in behavior.
|
||
|
||
2000-09-15 Volker Borchert <bt@teknon.de>
|
||
|
||
* tests/Makefile.am (check-root, root-hint): New targets.
|
||
(check-recursive): Depend on root-hint.
|
||
* Makefile.am (check-root): New target.
|
||
|
||
2000-09-16 Jim Meyering <meyering@lucent.com>
|
||
|
||
* doc/perm.texi (Changing Special Permissions): Remove this statement:
|
||
``a' in the USERS part of a symbolic mode does not cause the special
|
||
permissions to be affected'... It doesn't reflect what the code does
|
||
and isn't required by POSIX. Reported by aldomel@ix.netcom.com via
|
||
Mike Stone.
|
||
|
||
2000-09-15 Jim Meyering <meyering@lucent.com>
|
||
|
||
* config.sub: Update from master repository.
|
||
|
||
2000-09-10 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/cp/cp-mv-backup (LC_ALL): Set to `C' and export to ensure
|
||
that `ls' sorts the same way for everyone. Reported by Vin Shelton.
|
||
|
||
* Makefile.maint (b_host): Use freefriends.org, not tug.org.
|
||
|
||
2000-09-09 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Makefile.maint (announcement): Use a stricter regexp for the
|
||
previous version.
|
||
|
||
* Version 4.0z.
|
||
|
||
* tests/cp/special-bits: New file.
|
||
* tests/cp/Makefile.am (TESTS): Add special-bits.
|
||
(TESTS_ENVIRONMENT): Propagate $MAKE into environment, for special-bits.
|
||
|
||
* src/copy.c (SAME_OWNER, SAME_GROUP, SAME_OWNER_AND_GROUP): Define.
|
||
(copy_internal): Avoid calling chown if we know it's not necessary.
|
||
|
||
* src/copy.c (copy_internal): Call chmod also if we've made the
|
||
preceding chown call and we're supposed to preserve some special
|
||
permission bit(s) that would have been reset by chown.
|
||
Reported by Greg Louis.
|
||
|
||
2000-09-08 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/mkdir.c (S_IRWXUGO): Remove definition.
|
||
* src/sys2.h (S_IRWXUGO): Define here, instead.
|
||
|
||
2000-09-07 Jim Meyering <meyering@lucent.com>
|
||
|
||
* doc/texinfo.tex: Update from master repository.
|
||
* config.sub: Likewise.
|
||
* config.guess: Likewise.
|
||
|
||
2000-09-05 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/mv/part-symlink: Redirect stdout to stderr before trying to
|
||
remove the temp directory. Otherwise, the `rm -rf' would get an
|
||
error because the output file wouldn't be closed and the directory
|
||
wouldn't be `empty'.
|
||
* tests/cp/same-file: Likewise.
|
||
|
||
* tests/cp/same-file: Remove the `cp -dl sl1 sl2' case,
|
||
since it's no longer portable (hard link to a symlink).
|
||
Likewise for the `cp -bdl symlink foo' case.
|
||
|
||
* config.guess: Update from master repository.
|
||
|
||
2000-09-04 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/cp.c: Move declaractions of lstat, stat, and rpl_lstat
|
||
as well as the definition of lstat from here...
|
||
* src/copy.h: ...to here.
|
||
* src/copy.c: Remove declaration of lstat, now that it's in copy.h.
|
||
|
||
* tests/mv/force: mv's --force (-f) option is no longer needed for
|
||
this test, now that all it does is cancel --interactive (-i).
|
||
|
||
* tests/cp/same-file: Add new tests using cp's --rem option.
|
||
Reflect the fact that cp's -f option no longer causes cp to remove the
|
||
destination file before trying to open it.
|
||
Reflect the fact that `cp -bdl' now makes a backup when copying a
|
||
symlink onto the file it points to (FIXME: look into this, and why
|
||
cp -bl does *not* do so).
|
||
|
||
* src/ln.c (do_link): Tweak diagnostics.
|
||
|
||
2000-09-03 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/install.c (cp_option_init): Initialize new members.
|
||
|
||
* src/cp.c (enum): Add UNLINK_DEST_BEFORE_OPENING.
|
||
[long_options]: Add an entry for --remove-destination.
|
||
(usage): Describe --remove-destination.
|
||
(do_copy): Use unlink_dest_after_failed_open member, not `force.'
|
||
(cp_option_init): Initialize new members.
|
||
(main): Handle UNLINK_DEST_BEFORE_OPENING (aka --remove-destination).
|
||
|
||
* src/mv.c: Remove obsolete comment block.
|
||
(cp_option_init): Initialize new members.
|
||
(usage): Reflect the fact that --force (-f) relates only to whether
|
||
mv prompts.
|
||
(main): Remove uses of old `force' option member.
|
||
|
||
* src/install.c (cp_option_init): Reflect
|
||
|
||
`force' no longer means unlink-dest-before-opening
|
||
* src/copy.h (struct cp_options) [force]: Remove member.
|
||
[unlink_dest_before_opening]: Add member. `cp -f' and `mv -f' used to
|
||
do this. Now, you must use `cp --remove-destination' to get this
|
||
behavior. Now, `cp -f' and `mv -f' work as required by POSIX.
|
||
[unlink_dest_after_failed_open]: Add member.
|
||
Paul Eggert reported that `cp -f' removes an existing destination
|
||
file unconditionally, and that is contrary to POSIX.
|
||
|
||
* src/copy.c (same_file_ok): New function, extracted from copy_internal,
|
||
and rewritten.
|
||
(copy_internal): Unlink destination file when unlink_dest_before_opening
|
||
option is set, and when the source is neither a regular file nor a
|
||
directory.
|
||
|
||
* tests/mv/Makefile.am (TESTS): Add part-symlink.
|
||
|
||
* src/ls.c: Use strcoll (not strcmp) when comparing file names.
|
||
Suggestion from Ulrich Drepper.
|
||
|
||
2000-08-27 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/copy.c (copy_reg): New parameters: X and NEW_DST.
|
||
Remove the SPARSE_MODE parameter. Update caller.
|
||
Perform POSIX-mandated (for cp) open-with-O_WRONLY|O_TRUNC when copying
|
||
a regular source file and the destination file exists; upon failure,
|
||
unlink that existing file, then open again, but with O_WRONLY|O_CREAT.
|
||
(copy_internal): `force' in not related to interactive; remove
|
||
the conjunct.
|
||
Remove the entire `else if (x->force)' block; justifying
|
||
removal of the non-directory part is easy: POSIX requires we try
|
||
to open an existing regular file, so we can't unlink it beforehand.
|
||
The part that changes the mode on a directory to allow overwriting
|
||
isn't necessary.
|
||
|
||
* src/copy.c (copy_reg): Rename two goto labels.
|
||
(copy_internal): Set `new_dst' when the move_mode rename fails,
|
||
since we then unlink the destination file.
|
||
|
||
* src/cp.c (usage): --force is independent of --interactive.
|
||
|
||
2000-08-24 Jim Meyering <meyering@lucent.com>
|
||
|
||
Put back the kluge. It's necessary after all.
|
||
* src/dd.c (buggy_lseek_support): New function.
|
||
(skip): Use it.
|
||
Frank Adler reported that although _llseek returns 0, lseek
|
||
erroneously returns an offset suggesting the operation succeeded
|
||
even though it fails.
|
||
|
||
* install-sh: Double quote as needed, to protect against arguments
|
||
containing spaces or shell metacharacters. Reported by Bruno Haible.
|
||
|
||
2000-08-23 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/dd/not-rewound: New test, for the SEEK_CUR vs. SEEK_SET part
|
||
of the last change. Based on Paul's example.
|
||
* tests/dd/Makefile.am (TESTS): Add not-rewound.
|
||
|
||
2000-08-22 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/dd.c (skip):
|
||
Assume lseek failed if it returned zero, since a zero return is
|
||
impossible and some buggy drivers return zero.
|
||
|
||
Use SEEK_CUR rather than SEEK_SET; this fixes a bug when the
|
||
file descriptor is not currently rewound.
|
||
|
||
2000-08-23 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/dd.c: Back out my last change. Paul's (above) is better.
|
||
|
||
2000-08-22 Jim Meyering <meyering@lucent.com>
|
||
|
||
Don't even try to use lseek on character devices.
|
||
* src/dd.c (buggy_lseek_support): New function.
|
||
(skip): Use it.
|
||
Reported by Martin Gallant via Michael Stone.
|
||
|
||
2000-08-21 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/cp/same-file: Clean up traps. Create files in a subdir.
|
||
|
||
* install-sh (oIFS): Remove unmatched double quote, left over from
|
||
my 2000-08-12 change. From J. David Anglin.
|
||
|
||
* Makefile.maint (wget-update): Get the latest version of depcomp.
|
||
|
||
* depcomp: Update from automake.
|
||
|
||
2000-08-20 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0y.
|
||
|
||
Add support for cp's new POSIX-mandated -H and -L options.
|
||
* src/copy.h (enum Dereference_symlink): Define.
|
||
(struct cp_options) [dereference]: Change type to Dereference_symlink.
|
||
* src/copy.c: Declare lstat.
|
||
(copy_dir): Set `xstat' member to lstat so that with `-H' we don't
|
||
follow symlinks found via recursive traversal.
|
||
Update uses of `dereference' to compare against new enum member names.
|
||
* src/cp.c (long_opts): Add --dereference, -L.
|
||
(usage): Describe -L and -H.
|
||
(cp_option_init): Initialize to DEREF_UNDEFINED, not `1'.
|
||
(main): Add `H' and `-L' to getopt spec string.
|
||
[case 'a']: Initialize `dereference' to DEREF_NEVER, not 0.
|
||
[case 'd']: Likewise.
|
||
[case 'H']: New case.
|
||
[case 'L']: New case.
|
||
[case 'R']: Don't set dereference to `0' here.
|
||
If it's not yet defined, set x.dereference to DEREF_NEVER
|
||
if -R was specified, else set it to DEREF_ALWAYS.
|
||
Set x.xstat accordingly for -H.
|
||
* doc/fileutils.texi (cp invocation): Describe -H and -L.
|
||
* src/mv.c (cp_option_init): Initialize to DEREF_NEVER, not `0'.
|
||
* src/install.c (cp_option_init): Initialize to DEREF_ALWAYS, not `1'.
|
||
|
||
* tests/cp/Makefile.am (TESTS): Add cp-HL.
|
||
* tests/cp/cp-HL: New test.
|
||
|
||
* src/du.c (print_totals): Rename global from opt_combined_arguments.
|
||
|
||
2000-08-17 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/copy.c (DO_CHOWN): Do not make a special case for non-root.
|
||
POSIX.2 requires that cp -p and mv attempt to set the uid of the
|
||
destination file, even if you're not root. This affects behavior
|
||
only on hosts that let you give files away via chmod.
|
||
* NEWS: Describe the above change.
|
||
|
||
2000-08-15 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/du.c (count_entry): Remember the current directory also for `.'
|
||
and `..'. Reported by Stephen Smoogen, based on a patch from H.J. Lu.
|
||
* tests/du/two-args: Add tests for this.
|
||
|
||
2000-08-14 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/copy.c (copy_reg): Move declaration of local, `n_read', into
|
||
the scope where it's used.
|
||
(copy_internal): In calling copy_reg, pass not the raw `src_mode',
|
||
but the possibly-umask-relative mode, `get_dest_mode (x, src_mode)'.
|
||
|
||
2000-08-13 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/copy.c (get_dest_mode): Rename from new_nondir_mode.
|
||
Honor the umask for `cp', but not for `mv' or `cp -p'.
|
||
(copy_reg): New 4th parameter, dst_mode. Pass it as 3rd arg. to open.
|
||
(copy_internal): Change type of locals `src_mode' and `src_type' from
|
||
int to mode_t.
|
||
Remove unnecessary local, `fix_mode'.
|
||
Combine two if-stmts into one.
|
||
Pass `src_mode' as 4th arg to copy_reg.
|
||
If we've just created a new regular file, return early, skipping the
|
||
chmod step. copy_reg now sets permissions of such files upon creation.
|
||
Use get_dest_mode, so there's just one chmod call here.
|
||
|
||
* tests/cp/Makefile.am (TESTS): Add perm.
|
||
* tests/cp/perm: New tests, to help ensure the above didn't
|
||
change anything.
|
||
|
||
2000-08-12 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/mv/into-self-2: Remove test for the VERSION_CONTROL and/or
|
||
SIMPLE_BACKUP_SUFFIX envvars. Source ../envvar-check instead.
|
||
* tests/mv/i-2: Likewise.
|
||
* tests/mv/to-symlink: Likewise.
|
||
* tests/cp/slink-2-slink: Likewise.
|
||
* tests/mv/partition-perm: Likewise.
|
||
* tests/cp/cp-mv-backup: Likewise.
|
||
|
||
* tests/Makefile.am (EXTRA_DIST): Add envvar-check.
|
||
* tests/envvar-check: New file.
|
||
|
||
* install-sh: Remove trailing blanks.
|
||
Output diagnostics to stderr, not stdout.
|
||
Remove many useless curly braces and double quotes.
|
||
|
||
2000-08-11 J. David Anglin <dave@hiauly1.hia.nrc.ca>
|
||
|
||
* install-sh: Improve error handling.
|
||
Do the job even when the target file is `busy' on systems
|
||
that don't allow such files to be unlinked.
|
||
|
||
2000-08-12 Jim Meyering <meyering@lucent.com>
|
||
|
||
* README: Remove note about how installation can fail and the
|
||
work-around, now that it's all automated.
|
||
|
||
2000-08-07 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/cp.c (usage, main): For cp -P messages, mention the new
|
||
behavior as well as the old.
|
||
|
||
2000-08-07 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Standardize on "memory exhausted" instead of "Memory exhausted"
|
||
or "virtual memory exhausted".
|
||
Invoke xalloc_die instead of printing our own message.
|
||
* src/chmod.c (main): Likewise.
|
||
* src/copy.c (copy_dir, copy_internal): Likewise.
|
||
* src/cp.c (do_copy): Likewise.
|
||
* src/dircolors.c (xstrndup): Likewise.
|
||
* src/install.c (main): Likewise.
|
||
* src/ln.c (do_link): Likewise.
|
||
* src/mkdir.c (main): Likewise.
|
||
* src/mkfifo.c (main): Likewise.
|
||
* src/mknod.c (main): Likewise.
|
||
* src/mv.c (movefile): Likewise.
|
||
* src/remove.c (remove_cwd_entries, rm): Likewise.
|
||
* src/shred.c (quotearg_colon, xmalloc):
|
||
"virtual memory exhausted" -> "memory exhausted"
|
||
|
||
2000-08-07 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/cp.c (enum) [PARENTS_OPTION]: New member.
|
||
(long_opts): Update "parents" and deprecated "path" entries to use
|
||
`PARENTS_OPTION', not `P'.
|
||
(usage): Update --help output.
|
||
(main): Warn that the meaning of `-P' will soon change.
|
||
|
||
2000-08-06 Jim Meyering <meyering@lucent.com>
|
||
|
||
* doc/fileutils.texi (cp invocation) [-r]: Remove inaccurate mention of
|
||
`non-symbolic links'.
|
||
|
||
2000-08-05 Jim Meyering <meyering@lucent.com>
|
||
|
||
* config.guess: Update from master repository.
|
||
* config.sub: Likewise.
|
||
|
||
* Regenerate build/config framework to use the latest CVS versions
|
||
of automake and autoconf.
|
||
|
||
2000-07-31 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/shred.c [!HAVE_CONFIG_H]: Use `virtual memory exhausted', not
|
||
`Memory exhausted'.
|
||
|
||
2000-07-30 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/sys2.h (ISPRINT): Undef before defining to avoid warning.
|
||
|
||
* src/copy.c (copy_internal): Quote the file names that are displayed
|
||
with --verbose and --backup.
|
||
* src/remove.c (remove_file): Quote the file names that are displayed
|
||
with --verbose.
|
||
(remove_dir): Likewise.
|
||
* tests/mv/mv-special-1: Add quote marks to match new behavior.
|
||
* tests/rm/r-1: Likewise.
|
||
* tests/rm/r-2: Likewise.
|
||
|
||
* src/df.c: Convert "`%s'" in format strings to "%s", and wrap each
|
||
corresponding argument in a `quote (...)' call.
|
||
* src/dircolors.c: Likewise.
|
||
* src/du.c: Likewise.
|
||
* src/mkdir.c: Likewise.
|
||
* src/mkfifo.c: Likewise.
|
||
* src/mknod.c: Likewise.
|
||
* src/shred.c: Likewise.
|
||
* src/rmdir.c: Likewise.
|
||
* src/cp-hash.c: Likewise.
|
||
|
||
* src/chgrp.c: Convert "`%s'" in format strings to "%s", and wrap each
|
||
corresponding argument in a `quote (...)' call.
|
||
Add more precise diagnostics.
|
||
* src/chmod.c: Likewise.
|
||
* src/chown.c: Likewise.
|
||
|
||
* src/remove.c (remove_cwd_entries): Quote one more file name.
|
||
|
||
* src/help-version: Remove file. Move it to ...
|
||
* tests/help-version: ...here
|
||
* tests/Makefile.am (TESTS): Set to help-version.
|
||
(TESTS_ENVIRONMENT): Define.
|
||
(EXTRA_DIST): Add $(TESTS).
|
||
* src/Makefile.am (EXTRA_DIST): Remove help-version.
|
||
(TESTS): Remove definition.
|
||
(TESTS_ENVIRONMENT): Remove definition.
|
||
|
||
2000-07-24 Bruno Haible <haible@clisp.cons.org>
|
||
|
||
* src/ls.c: Include <limits.h>, <stdlib.h>, <wchar.h>, <wctype.h>.
|
||
(quote_name): Use mbrtowc to step through the filename string while
|
||
replacing nonprintables with question marks. Return the screen width,
|
||
not the strlen length. Do no output if the out stream is NULL.
|
||
(length_of_file_name_and_frills): Use the quote_name return value.
|
||
|
||
2000-07-25 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/chgrp.c (change_file_group): Save errno from a possibly failed
|
||
chown, and use that later. Otherwise, errno itself could be clobbered
|
||
before used.
|
||
* src/chmod.c (change_file_mode): Likewise.
|
||
* src/chown.c (change_file_owner): Likewise.
|
||
|
||
* src/mv.c (main): Remove unnecessary "%s" argument.
|
||
|
||
* src/ln.c: Convert "`%s'" in format strings to "%s", and wrap each
|
||
corresponding argument in a `quote (...)' call.
|
||
Add more precise diagnostics.
|
||
* src/mv.c: Likewise.
|
||
* src/cp.c: Likewise.
|
||
* src/touch.c: Likewise.
|
||
|
||
2000-07-23 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0x.
|
||
|
||
* src/dd.c (main): Give a better diagnostic for e.g.,
|
||
`dd if=/dev/fd0 seek=100000000000'.
|
||
Convert "`%s'" in format strings to "%s", and wrap each
|
||
corresponding argument in a `quote (...)' call.
|
||
Add many, more precise diagnostics.
|
||
|
||
* src/remove.c (ASSIGN_STRDUPA): Remove macro definition.
|
||
* src/sys2.h (ASSIGN_STRDUPA): New macro (moved here from remove.c).
|
||
|
||
Fix cp so that `cp -r DIR1/ DIR2' works once again.
|
||
* src/cp.c (ASSIGN_BASENAME_STRDUPA): New macro.
|
||
(do_copy): Use it here (so we always strip trailing slashes before
|
||
calling base_name). Reported by Branden Robinson via Michael Stone.
|
||
|
||
Test for the above fix.
|
||
* tests/cp/Makefile.am (TESTS): Add dir-slash.
|
||
* tests/cp/dir-slash: New file.
|
||
|
||
2000-07-17 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Makefile.maint (WGET): Define.
|
||
(ftp-gnu): Define.
|
||
(wget-update): New rule, based on the one in autoconf.
|
||
|
||
* src/shred.c (usage): Give a little more info.
|
||
Remove a FIXME comment.
|
||
|
||
Avoid warnings.
|
||
* src/ls.c (struct bin_str): Declare `string' member to be `const'.
|
||
(put_indicator): Declare local `p' to be `const'.
|
||
|
||
2000-07-15 Jim Meyering <meyering@lucent.com>
|
||
|
||
Begin converting "`%s'" in format strings to "%s", and wrap each
|
||
corresponding argument in a `quote (...)' call -- if there's only one.
|
||
If there are two or more, then use `quote_n (0, ...),
|
||
quote_n (1, ...), ...'.
|
||
|
||
Here's the justification, from Paul Eggert (thanks, Paul):
|
||
|
||
[Consider] the following, taken from fileutils/copy.c:
|
||
|
||
error (0, errno, _("cannot create directory `%s'"), dst_path);
|
||
|
||
Now, suppose dst_path is "/'\nrm: removing all files under `/"
|
||
(expressed in C string syntax). This will cause the user to see
|
||
the following delightfully ambiguous display:
|
||
|
||
cp: cannot create directory `/'
|
||
rm: removing all files under `/'
|
||
|
||
It would be better to rewrite the above line to be something
|
||
like this:
|
||
|
||
error (0, errno, _("cannot create directory %s"), quote (dst_path));
|
||
|
||
using the definition of "quote" [in lib/quote.c]. That way,
|
||
the user will see the following unambiguous display instead:
|
||
|
||
cp: cannot create directory `/\'\nrm: removing all files under `/'
|
||
|
||
One might object that any user who asks to copy a file with
|
||
a weird name like that deserves to get confused. But this
|
||
is not a good objection, as the source of the string may not
|
||
be under the user's control, or even visible to the user.
|
||
|
||
* src/copy.c: Adapt format strings and args as above. Include quote.h.
|
||
I have deliberately not changed the output of --verbose.
|
||
FIXME: maybe I should.
|
||
* src/cp.c: Likewise.
|
||
* src/remove.c: Likewise.
|
||
* src/install.c: Likewise. and improve a couple diagnostics.
|
||
|
||
2000-07-13 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* NEWS: Describe --quoting-style=clocale.
|
||
|
||
* doc/fileutils.texi: New clocale quoting style.
|
||
Undo the previous change to the locale quoting style.
|
||
|
||
2000-07-09 Jim Meyering <meyering@lucent.com>
|
||
|
||
* config.guess: Update from FSF.
|
||
* config.sub: Likewise.
|
||
|
||
2000-07-05 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* doc/fileutils.texi: Don't use ` and ' for quoting.
|
||
|
||
2000-07-01 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0w.
|
||
|
||
* tests/touch/dangling-symlink: Warn about the problem rather
|
||
than failing, on some very recent (at least 2.3.99) versions of
|
||
the Linux kernel. Suggestion from Ulrich Drepper.
|
||
* tests/touch/Makefile.am (TESTS_ENVIRONMENT): Define host_triplet
|
||
for use in the dangling-symlink test.
|
||
|
||
2000-06-28 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/mv/i-2: Don't copy `out' into /tmp.
|
||
|
||
2000-06-26 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Now that savedir.c has been cleaned up...
|
||
* src/chgrp.c (change_dir_group): Don't set errno before
|
||
invoking savedir, and assume that errno is nonzero if savedir fails.
|
||
* src/chmod.c (change_dir_mode): Likewise.
|
||
* src/chown.c (change_dir_owner): Likewise.
|
||
* src/copy.c (copy_dir): Likewise.
|
||
* src/du.c (count_entry): Likewise.
|
||
|
||
2000-06-26 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/df.c (show_dev): Round disk usage percentage up, not to
|
||
nearest value. Use integer arithmetic if it's easy. Fix bug
|
||
when converting twos-complement negative values to floating point.
|
||
|
||
2000-06-25 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/copy.c (copy_internal): Don't return immediately after a failed
|
||
copy_dir call -- otherwise, the failure to read a single file in a
|
||
source directory would cause the containing destination directory
|
||
not to have the owner and/or permissions set properly.
|
||
Reported by Piotr and Maciej Kwapulinski.
|
||
* tests/cp/fail-perm: Test for it.
|
||
* tests/cp/Makefile.am (TESTS): Add fail-perm.
|
||
|
||
* Version 4.0v.
|
||
|
||
2000-06-18 Jim Meyering <meyering@lucent.com>
|
||
|
||
* README-alpha: Update.
|
||
|
||
2000-06-17 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/install/basic-1: Don't fail (just exit 77) if strip doesn't
|
||
work. Suggestion from Ulrich Drepper.
|
||
Add canonical trap/mkdir/cd, plus exit portability cruft.
|
||
|
||
2000-06-16 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/copy.c (copy_reg): Give a slightly better diagnostic upon
|
||
open failure.
|
||
|
||
2000-06-15 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* NEWS, doc/fileutils.texi: df, du, and ls now round disk
|
||
usage up and disk free space down.
|
||
|
||
* src/df.c (df_readable): New arg for rounding style.
|
||
Round negative numbers correctly.
|
||
(show_dev): Round disk usage up and disk free space down.
|
||
|
||
* src/ls.c: (print_dir, gobble_file, print_long_format,
|
||
print_file_name_and_frills): Round disk usage up.
|
||
* src/du.c (print_size): Likewise.
|
||
|
||
2000-06-14 Andreas Schwab <schwab@suse.de>
|
||
|
||
* tests/rm/r-1 (framework_failure): Initialize this instead of
|
||
test_failure.
|
||
|
||
2000-06-12 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0u.
|
||
|
||
* tests/rm/r-1: Clean up.
|
||
Be careful to remove temp directory upon interrupt.
|
||
|
||
* src/mv.c (main): Give the correct diagnostic when using the
|
||
--target-dir=DIR option, but no arguments.
|
||
Patch from Michael Stone. Reported by Herbert Xu.
|
||
* tests/mv/diag: New test for this.
|
||
* tests/mv/Makefile.am (TESTS): Add diag.
|
||
|
||
2000-06-08 Brian Youmans <3diff@gnu.org>
|
||
|
||
* doc/perm.texi (Multiple Changes): Fix typo.
|
||
* doc/fileutils.texi: A few typos and minor formatting fixes.
|
||
* doc/getdate.texi: Likewise.
|
||
|
||
2000-06-06 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Makefile.maint (alpha_subdir): Factor out `gnu/fetish'.
|
||
|
||
2000-06-04 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0t.
|
||
|
||
* src/df.c (show_point) [HAVE_REALPATH && !HAVE_RESOLVEPATH]:
|
||
Cast undeclared `realpath' to char* to avoid warning.
|
||
|
||
2000-06-03 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/install.c (usage): Document that -v is a synonym for --verbose.
|
||
* src/mkdir.c: Allow -v as synonym for --verbose, to be consistent
|
||
with other fileutils.
|
||
* src/rmdir.c: Likewise.
|
||
Suggestion from Fran<61>ois Pinard.
|
||
|
||
2000-06-02 Jim Meyering <meyering@lucent.com>
|
||
|
||
* configure.in (ALL_LINGUAS): Add Danish (da).
|
||
|
||
2000-05-29 Jim Meyering <meyering@lucent.com>
|
||
|
||
Allow `cp -d -u' to copy one symlink onto another that's identical.
|
||
* src/copy.c (copy_internal): Change the || to ^ in the big sameness
|
||
test, so copying one symlink onto another, identical one doesn't fail
|
||
here.
|
||
If the symlink call fails, don't report the failure if the destination
|
||
already exists and is a symlink pointing to the proper name.
|
||
Reported by Andrew Burgess.
|
||
* tests/cp/slink-2-slink: New test.
|
||
* tests/cp/Makefile.am (TESTS): Add slink-2-slink.
|
||
* tests/cp/same-file: Adapt to fit new semantics of `cp -d'.
|
||
|
||
2000-05-25 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/dd.c (close_stdout_wrapper): Don't dereference NULL pointer.
|
||
From Bob Proulx.
|
||
|
||
2000-05-23 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/shred/remove: Add traps to clean up.
|
||
Correct broken running-as-root test.
|
||
|
||
* tests/mv/i-2: Exit 77 when run as root. Reported by Andreas Schwab.
|
||
|
||
2000-05-20 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0s.
|
||
|
||
* tests/mv/Makefile.am (TESTS): Add i-2, for 2000-05-12 change.
|
||
|
||
* tests/rm/r-2: Clean up.
|
||
* tests/ls/time-1 (LC_ALL): Set it unconditionally.
|
||
|
||
2000-05-19 Jim Meyering <meyering@lucent.com>
|
||
|
||
Save device number as well as inode number for each directory,
|
||
and use both in comparisons. This makes the directory cycle
|
||
test more robust, and closes the small remaining hole whereby
|
||
an attacker could subvert a running `rm -r' command.
|
||
|
||
* src/remove.c (struct active_dir_ent) [st_dev]: New member.
|
||
[st_ino]: Rename from `inum'.
|
||
(make_active_dir_ent) [device]: New parameter.
|
||
(hash_compare_active_dir_ents): Compare using SAME_INODE macro.
|
||
(fspec_init_common): New function, factored out.
|
||
(fspec_init_file): Initialize have_device member.
|
||
(fspec_get_full_mode): Remove parameter. Update caller.
|
||
Set have_device and st_dev members.
|
||
* src/remove.h (struct File_spec) [have_device, st_dev]: New members
|
||
|
||
2000-05-18 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/remove.c (rm): Combine adjacent fputc and fprintf.
|
||
|
||
* tests/rm/Makefile.am (TESTS): Add hash.
|
||
* tests/rm/hash: New test for the fix in lib/hash.c.
|
||
|
||
2000-05-17 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/remove.c (remove_dir): Detect (and fail upon) attempt to subvert
|
||
a running `rm -r'. Reported by Morten Welinder.
|
||
|
||
2000-05-15 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/ln.c (do_link): Use complete strings in diagnostics so they
|
||
are easier to translate. Reported by Michel Robitaille.
|
||
(main): Drop support for the case in which S_ISLNK wasn't defined.
|
||
It was broken in any case.
|
||
|
||
* tests/ls/time-1: Set LC_ALL to `C' to avoid failure when the
|
||
current locale is not C (POSIX). From Matthew Clarke.
|
||
|
||
2000-05-13 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/help-version: New test.
|
||
* src/Makefile.am (TESTS): Define.
|
||
(TESTS_ENVIRONMENT): Likewise.
|
||
(EXTRA_DIST): Add help-version.
|
||
|
||
* src/chgrp.c: Arrange to call close_stdout only upon exit.
|
||
* src/chmod.c: Likewise.
|
||
* src/chown.c: Likewise.
|
||
* src/cp.c: Likewise.
|
||
* src/df.c: Likewise.
|
||
* src/dircolors.c: Likewise.
|
||
* src/du.c: Likewise.
|
||
* src/install.c: Likewise.
|
||
* src/ln.c: Likewise.
|
||
* src/ls.c: Likewise.
|
||
* src/mkdir.c: Likewise.
|
||
* src/mkfifo.c: Likewise.
|
||
* src/mknod.c: Likewise.
|
||
* src/mv.c: Likewise.
|
||
* src/rm.c: Likewise.
|
||
* src/rmdir.c: Likewise.
|
||
* src/shred.c: Likewise.
|
||
* src/sync.c: Likewise.
|
||
* src/touch.c: Likewise.
|
||
|
||
* src/dd.c: Include closeout.h.
|
||
(usage): Don't call close_stdout here.
|
||
(close_stdout_wrapper): New, kludgey, function and file-scoped global.
|
||
(main): Register it with atexit.
|
||
|
||
2000-05-12 Jim Meyering <meyering@lucent.com>
|
||
|
||
Unlike for mv, -i doesn't cancel the effect of -f
|
||
and -f doesn't cancel the effect of -i.
|
||
* src/cp.c (main) ['f']: Don't reset `x.interactive'.
|
||
['i']: Don't reset `x.force'.
|
||
* src/copy.c (copy_internal): Fix force and interactive tests.
|
||
Patch from Michael Stone, reported by Jeff Sheinberg.
|
||
|
||
2000-05-09 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/shred.c: Include sys/types.h in shred.c before including
|
||
sys/stat.h or system.h. From John David Anglin.
|
||
|
||
2000-05-08 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/shred/remove: Don't use touch in root test. Instead, append to
|
||
the test file, since now touch operates even on files which deny owner
|
||
write access.
|
||
|
||
2000-05-06 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/Makefile.am (shred_LDADD): Add @LIB_CLOCK_GETTIME@.
|
||
|
||
* src/rmdir.c (EEXIST): Remove now-unused definition.
|
||
(ENOTEMPTY): Likewise.
|
||
(errno_rmdir_non_empty): Rewrite to use RMDIR_ERRNO_NOT_EMPTY,
|
||
which is determined by the autoconf test in m4/rmdir-errno.m4.
|
||
|
||
2000-05-03 Bruno Haible <haible@clisp.cons.org>
|
||
|
||
Don't fail when running `make check' with non-`C' locale.
|
||
* tests/cp/symlink-slash: During ls, set LANGUAGE (for GNU gettext)
|
||
and LC_ALL (for systems which look at LC_MESSAGES).
|
||
* tests/rm/r-2: Define LC_ALL instead of LANG, in case the user has
|
||
LC_CTYPE or LC_ALL set. Define it and LANGUAGE before the first use
|
||
of sort.
|
||
|
||
2000-05-03 Jim Meyering <meyering@lucent.com>
|
||
|
||
With a recent glibc, _GNU_SOURCE, and -O, strndup may be a macro.
|
||
* src/sys2.h (!HAVE_DECL_STRNDUP): Declare strndup.
|
||
* src/dircolors.c: Remove declaration of strndup.
|
||
Reported by Bruno Haible.
|
||
|
||
2000-05-02 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/rm.c (usage): Add the answer to `How do I remove a file named -f?'
|
||
|
||
2000-05-01 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/install.c (change_attributes): Don't even attempt the chmod
|
||
if the chown fails. Before, when a non-root user ran `install -m 4755
|
||
-o nobody FILE DEST', DEST would set-uid not to `nobody' but rather to
|
||
the ID of the installing user. Reported by Marc Olzheim.
|
||
|
||
2000-04-30 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/touch.c (O_NOCTTY): Define if not defined already.
|
||
(touch): Add O_NOCTTY to the flags passed to open.
|
||
|
||
2000-04-29 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0r.
|
||
|
||
* src/cp.c [LSTAT_FOLLOWS_SLASHED_SYMLINK] (lstat): Define to rpl_lstat.
|
||
|
||
2000-04-27 Jim Meyering <meyering@lucent.com>
|
||
|
||
Clean up.
|
||
* tests/mkdir/Makefile.am (TESTS_ENVIRONMENT): Set PATH, not MKDIR.
|
||
* tests/mkdir/p-1: Use mkdir, not $MKDIR.
|
||
* tests/mkdir/p-2: Likewise.
|
||
|
||
* configure.in (AC_OUTPUT): Add tests/du/Makefile.
|
||
* tests/Makefile.am (SUBDIRS): Add du.
|
||
* tests/du: New directory.
|
||
* tests/du/two-args: New test.
|
||
|
||
* tests/mkdir/special-1: New test.
|
||
* tests/mkdir/Makefile.am (TESTS): Add special-1.
|
||
|
||
2000-04-25 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/du.c (pop_dir): Remove through_symlink arg; use null cwd
|
||
for that purpose instead.
|
||
(count_entry): Also save the directory if we're saving more
|
||
than one level.
|
||
Fix file descriptor and memory leak when chdir fails.
|
||
|
||
2000-04-26 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/mkdir.c: Rename global: s/path_mode/create_parents/.
|
||
(main): No longer perform explicit chmod when creating
|
||
parent directories, since make_path now does the chmod.
|
||
|
||
2000-04-17 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/chown.c: New option: --from=CURRENT_OWNER:CURRENT_GROUP.
|
||
(enum) [FROM_OPTION]: New member.
|
||
(long_options): New getopt spec.
|
||
(change_file_owner): Add old_user, old_group parameters. Use them.
|
||
(change_dir_owner): Likewise.
|
||
(usage): Describe.
|
||
(main): New case.
|
||
From Andries Brouwer.
|
||
* doc/fileutils.texi (invoking chown): Document it.
|
||
|
||
2000-04-16 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/cp.c: New option: --strip-trailing-slashes.
|
||
(enum) [STRIP_TRAILING_SLASHES_OPTION]: New member.
|
||
(remove_trailing_slashes): New global.
|
||
(long_opts): New getopt spec.
|
||
(usage): Describe.
|
||
(do_copy): Strip trailing slashes on SOURCE names only if the new
|
||
option has been specified.
|
||
(main): New case.
|
||
|
||
* tests/cp/symlink-slash: New test for the change in behavior.
|
||
* tests/cp/Makefile.am (TESTS): Add symlink-slash.
|
||
|
||
* doc/fileutils.texi (Trailing slashes): Factor out discussion on
|
||
trailing slashes into its own node.
|
||
Cross reference from cp and mv.
|
||
|
||
2000-04-14 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/touch.c (touch): Add O_NOCTTY to the list of open-time flags.
|
||
|
||
2000-04-13 Jim Meyering <meyering@lucent.com>
|
||
|
||
Move some code into m4/.
|
||
* configure.in (_GNU_SOURCE): Don't define here.
|
||
(AC_SYS_LARGEFILE): Don't use here.
|
||
(AM_C_PROTOTYPES): Don't use here.
|
||
* acconfig.h: Remove now-unused file.
|
||
|
||
2000-04-08 Jim Meyering <meyering@lucent.com>
|
||
|
||
* doc/fileutils.texi (cp invocation): Mention that there is an
|
||
application for cp's --sparse=never option. From Martin Hippe.
|
||
(cp invocation): Describe how --backup and --force
|
||
can be useful together.
|
||
|
||
2000-03-10 Alan Iwi <iwi@atm.ox.ac.uk>
|
||
|
||
* src/ls.c: Add support for "ln=target" in the LS_COLORS variable,
|
||
to colorize links as for the file/directory pointed to.
|
||
* src/dircolors.hin: Add a few words of documentation of the above.
|
||
|
||
2000-04-08 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/cp.c (usage): Document that while the --backup option takes an
|
||
optional argument, the -b option accepts none.
|
||
(main): Use `backup type' in call to xget_version, not the
|
||
now-deprecated `--version-control'.
|
||
* src/install.c: Likewise.
|
||
* src/ln.c: Likewise.
|
||
* src/mv.c: Likewise.
|
||
|
||
2000-03-12 Jim Meyering <meyering@lucent.com>
|
||
|
||
Merge from textutils.
|
||
* src/system.h: (O_BINARY, O_TEXT): Define if necessary.
|
||
(SET_BINARY, SET_BINARY2): Define.
|
||
(DEV_BSIZE): Define to BBSIZE if appropriate.
|
||
|
||
2000-03-10 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/mv/mv-special-1: Make the message more like that in the
|
||
similar touch and shred tests.
|
||
* tests/touch/fifo: Accommodate SunOS-NFS-mounting-OpenBSD mkfifo
|
||
bug and `exit 77' if the fifo cannot be created.
|
||
Report and suggestion from Volker Borchert.
|
||
|
||
2000-03-03 Jim Meyering <meyering@lucent.com>
|
||
|
||
* po/Makefile.in.in (dist distdir): Don't use `ln' (which was just a
|
||
space optimization anyway) to populate $(distdir). Otherwise, the dist
|
||
rules that change permissions would end up affecting the master sources.
|
||
|
||
2000-03-01 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/df.c (show_point): Ignore shortcuts based on path
|
||
prefixes that are loop file system mount points, since they
|
||
yield undesirable output.
|
||
|
||
2000-02-29 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/ls.c (decode_switches): Remove `e' from getopt_long's list of
|
||
option characters. Reported by John Summerfield.
|
||
|
||
2000-02-28 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/install/basic-1: Use ginstall, not install.
|
||
|
||
2000-02-27 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0q.
|
||
|
||
* src/sys2.h: Guard declaration of strtoull also with
|
||
`&& HAVE_UNSIGNED_LONG_LONG'.
|
||
|
||
* src/sys2.h: Use `#if !HAVE_DECL...' instead of `#ifndef HAVE_DECL...'
|
||
now that autoconf always defines the HAVE_DECL_ symbols.
|
||
|
||
* src/install.c (install_file_to_path): Always use install_file_in_file.
|
||
Based on a patch from Adam Klein via Michael Stone.
|
||
|
||
* tests/install/Makefile.am (TESTS): Add create-leading.
|
||
* tests/install/create-leading: New file.
|
||
|
||
* tests/install/basic-1: Clean up.
|
||
* tests/install/Makefile.am (TESTS_ENVIRONMENT): Add PATH. Remove cruft.
|
||
|
||
2000-02-26 Jim Meyering <meyering@lucent.com>
|
||
|
||
Tranform the generated src/Makefile.in file so it falls back on
|
||
using /bin/rm when necessary. The old rule didn't always work.
|
||
This is necessary only on certain losing systems, and because this
|
||
package builds an `rm' executable and some people put `.' too
|
||
early in their PATH.
|
||
* Makefile.am (DISTCLEANFILES): Remove .deps and `FIXME' comment.
|
||
(EXTRA_DIST): Add .kludge-stamp.
|
||
(.kludge-stamp): New rule.
|
||
* src/Makefile.am (AUTOMAKE): Remove definition.
|
||
(Makefile.in): Remove dependency on automake-wrap script.
|
||
(EXTRA_DIST): Remove automake-wrap.
|
||
* src/automake-wrap: Remove file.
|
||
|
||
* tests/rm/r-2: Don't make the success of the test depend on the
|
||
order in which directory entries are processed.
|
||
Reported by Andreas Schwab.
|
||
|
||
2000-02-12 Jim Meyering <meyering@lucent.com>
|
||
|
||
* po/POTFILES.in: Add lib/userspec.c.
|
||
|
||
* doc/fileutils.texi (chown invocation): Deprecate use of `.'.
|
||
|
||
* src/chown.c (usage): Mention only `:', and not `.' as the separator,
|
||
since POSIX allows only the former.
|
||
Prompted by a report from Manas Garg.
|
||
|
||
2000-02-11 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/df.c (main): Count the stat'able arguments.
|
||
Print the header line only if there is at least one valid argument.
|
||
Reported by Andy Longton <alongton@metamark.com>
|
||
|
||
2000-02-10 Jim Meyering <meyering@lucent.com>
|
||
|
||
Make du work when invoked from an unreadable directory.
|
||
|
||
* src/du.c (pop_dir): New function.
|
||
(count_entry): Factor out common code (pop_dir), and call the new
|
||
function instead.
|
||
Move declaration of global, `stat_buf' into this function.
|
||
(du_files): Don't stat `.' or call save_cwd, since count_entry
|
||
never returns with a changed working directory.
|
||
|
||
2000-02-09 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/mv/mv-special-1: Use $null and $dir in place of literals
|
||
in `here' script.
|
||
Exit 77 if we can't set up the framework (Volker Borchert reported
|
||
that this test would fail because mknod failed when run on SunOS4.1.4
|
||
using NFS-mounted disk from an OpenBSD system).
|
||
|
||
2000-02-05 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/copy.c (copy_internal): Don't allow mv to move a directory onto
|
||
a non-directory. Reported by Brian Kimball via Michael Stone.
|
||
|
||
2000-02-03 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/mv/Makefile.am (TESTS): Add dir-file.
|
||
(TESTS_ENVIRONMENT): Remove vestiges of old tests.
|
||
* tests/mv/dir-file: New file.
|
||
|
||
2000-02-02 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/touch/Makefile.am (TESTS): Add fifo.
|
||
* tests/touch/fifo: New file.
|
||
|
||
2000-02-01 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/touch.c (O_NDELAY): Define to 0 if not defined.
|
||
(O_NONBLOCK): Define to O_NDELAY if not defined.
|
||
(touch): Open with O_NONBLOCK, so one can touch a fifo without hanging.
|
||
Reported by Eric G. Miller via Michael Stone.
|
||
|
||
* man/*.x: Change ." to .\".
|
||
Reported by Andreas Schwab and Brendan O'Dea.
|
||
|
||
2000-01-31 Jim Meyering <meyering@lucent.com>
|
||
|
||
* man/Makefile.maint (ginstall_filter): Define.
|
||
($(man_MANS)): Use it here so that the install.1 man page refers
|
||
to `install', not `ginstall'. Reported by Andreas Schwab.
|
||
|
||
2000-01-30 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0p.
|
||
|
||
* configure.in: Move library-related tests into m4/lib-check.m4.
|
||
|
||
* src/system.h (ST_NBLOCKS): Use st_size only for regular files and
|
||
for directories. From H. J. Lu.
|
||
|
||
* src/dd.c (main): Exit with nonzero status if ftruncate fails.
|
||
|
||
2000-01-24 Jim Meyering <meyering@lucent.com>
|
||
|
||
* src/ln.c (usage): Describe behavior when LINK_NAME is omitted.
|
||
From Michael Stone.
|
||
|
||
* src/mv.c (main): Don't expect array index `n_files - 1' to evaluate
|
||
to `-1' for unsigned int n_files == 0. Doing so lead to a segfault on
|
||
alpha. From Michael Stone.
|
||
|
||
2000-01-23 Jim Meyering <meyering@lucent.com>
|
||
|
||
* configure.in (AM_FUNC_OBSTACK): Remove. (move to m4/.)
|
||
Remove nearly all function checks (moved to m4/.)
|
||
(AC_SUBST(DF_PROG)): Move this to m4/.
|
||
(ftruncate test): Move into new file: m4/ftruncate.m4.
|
||
(AC_HEADER_MAJOR, AC_HEADER_DIRENT): Move into m4/.
|
||
Remove df-related tests. i.e., move jm_LIST_MOUNTED_FILESYSTEMS,
|
||
jm_FSTYPENAME, and jm_FILE_SYSTEM_USAGE) into m4/.
|
||
|
||
2000-01-22 Jim Meyering <meyering@lucent.com>
|
||
|
||
* configure.in: Move addext.c prerequisites from this file into m4/.
|
||
(AC_CHECK_HEADERS): Move these checks into m4/.
|
||
|
||
2000-01-17 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/dd.c (interrupt_handler): Likewise.
|
||
(install_handler): Use SA_NOCLDSTOP, not _POSIX_VERSION,
|
||
to decide whether to call sigaction; this fixes an old typo.
|
||
|
||
2000-01-16 Jim Meyering <meyering@lucent.com>
|
||
|
||
* lib/Makefile.am: Sync with sh-utils/lib/Makefile.am.
|
||
|
||
* configure.in: Remove AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME,
|
||
jm_FUNC_GROUP_MEMBER, jm_FUNC_GETGROUPS, AC_FUNC_VPRINTF, and
|
||
AC_FUNC_ALLOCA. They're now in m4/.
|
||
|
||
Sync with the version from emacs-20.5.
|
||
* lib/alloca.c
|
||
(<string.h>): Include if HAVE_STRING_H.
|
||
(<stdlib.h>): Include if HAVE_STDLIB_H.
|
||
(alloca): Abort if malloc fails.
|
||
Reported by Paul Eggert.
|
||
|
||
2000-01-15 Jim Meyering <meyering@lucent.com>
|
||
|
||
* configure.in (AC_REPLACE_FUNCS): Remove these: euidaccess memcpy
|
||
memcmp memset mkdir rmdir rpmatch stpcpy strndup strstr strtol
|
||
strtoul strverscmp. Now they're in m4/.
|
||
|
||
2000-01-12 Jim Meyering <meyering@lucent.com>
|
||
|
||
* tests/shred/remove: Make the warning that this shred test may not
|
||
be run as root more prominent. Suggestion from Volker Borchert.
|
||
|
||
2000-01-11 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Quote multibyte characters correctly.
|
||
|
||
* lib/quotearg.c (ISGRAPH): Remove.
|
||
(ISPRINT): New macro.
|
||
(<wchar.h>): Include if HAVE_MBRTOWC && HAVE_WCHAR_H.
|
||
(isprint, mbrtowc, mbsinit, mbstate_t): New macros,
|
||
defined if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
|
||
(quotearg_buffer_restyled): New function, with most of the old
|
||
quotearg_buffer's contents.
|
||
Major rewrite to support multibyte characters.
|
||
(quotearg_buffer): Now just calls quotearg_buffer_restyled.
|
||
|
||
* m4/c-bs-a.m4: New file.
|
||
* m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
|
||
(jm_PREREQ): Use it.
|
||
|
||
2000-01-11 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/modechange.c (mode_compile): Use uintmax_t, not unsigned
|
||
long, to parse numeric modes. Check for any unknown bits, not
|
||
just unknown bits left of the leftmost known bit.
|
||
|
||
2000-01-11 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/getdate.y: Update copyright notice.
|
||
|
||
2000-01-11 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* COPYING: Sync with latest FSF version (fixing a minor Y2k problem).
|
||
|
||
2000-01-11 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/exclude.c, lib/exclude.h: Sync to the slightly more
|
||
general version of GNU tar.
|
||
|
||
* src/du.c (count_entry):
|
||
Adjust to new calling convention for excluded_filename.
|
||
(main): Likewise, for add_exclude_file.
|
||
|
||
2000-01-11 Jim Meyering <meyering@lucent.com>
|
||
|
||
* lib/memcpy.c (memcpy): Protoize.
|
||
|
||
Prepare to sync lib/ directories of fileutils, sh-utils, and textutils.
|
||
* lib/Makefile.am: s/fu/fetish/
|
||
* src/Makefile.am: s/libfu/libfetish/
|
||
|
||
* lib/hash.c (hash_initialize): Fix typo in comment.
|
||
From Fran<61>ois Pinard.
|
||
|
||
2000-01-10 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0o.
|
||
|
||
* lib/Makefile.am (noinst_HEADERS): Add nanosleep.h.
|
||
|
||
2000-01-09 Jim Meyering <meyering@lucent.com>
|
||
|
||
* Version 4.0n.
|
||
|
||
* src/ln.c (do_link): Produce the same sort of one-line output for
|
||
`--backup --verbose' as cp, mv, install. Before this, the backup
|
||
file name wasn't printed at all.
|
||
|
||
This affects cp, install, and mv.
|
||
* src/copy.c (copy_internal): When making backup files in verbose
|
||
mode, print the backup file name on the same line as the rest of the
|
||
information, e.g., `a -> b (backup: b.~13~)' rather than on a separate
|
||
line by itself. Suggestion from Karl Berry.
|
||
|
||
2000-01-08 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/error.c (error): Use __strerror_r's return value only if
|
||
HAVE_WORKING_STRERROR_R.
|
||
(error_at_line): Likewise.
|
||
|
||
* Makefile.maint (null_AM_MAKEFLAGS): Define.
|
||
(my-distcheck): Use it to avoid distributing out of date files
|
||
whose derivation would require a maintainer tool.
|
||
|
||
2000-01-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/euidaccess.c: Sync with the GNU C library.
|
||
|
||
* tests/dir/Makefile.am: (TESTS_ENVIRONMENT): Add `pwd`/ prefix
|
||
to exported PATH value (though not strictly necessary, here).
|
||
* tests/dd/Makefile.am: Likewise.
|
||
* tests/dircolors/Makefile.am: Likewise.
|
||
* tests/rm/Makefile.am: Likewise.
|
||
* tests/rmdir/Makefile.am: Likewise.
|
||
* tests/shred/Makefile.am: Likewise.
|
||
* tests/touch/Makefile.am: Likewise.
|
||
* tests/shred/Makefile.am: Likewise.
|
||
|
||
2000-01-06 Jim Meyering <meyering@ascend.com>
|
||
|
||
* man/help2man: Import version 1.020.
|
||
|
||
* lib/strftime.c: Sync with the GNU C Library.
|
||
|
||
2000-01-06 Paul Eggert <eggert@set.twinsun.com>
|
||
|
||
* tar/lib/getdate.y: Sync tm_diff with the GNU C Library.
|
||
(TM_YEAR_BASE): Renamed from TM_YEAR_ORIGIN. All uses changed.
|
||
(tm_diff): Renamed from difftm. All uses changed.
|
||
Replace body with that taken from GNU C Library 2.1.3pre1.
|
||
(get_date): Prefer tm_gmtoff to tm_diff if available.
|
||
|
||
2000-01-04 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* savedir.c (savedir): Don't store past the end of an array if
|
||
name_size is zero and the directory is empty.
|
||
|
||
* Makefile.maint (PREV_VERSION): Tweak so it handles e.g., 2.0a -> 2.0.
|
||
(alpha): Create xdelta diffs.
|
||
|
||
2000-01-02 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0m.
|
||
|
||
* src/mv.c: New option: --strip-trailing-slashes.
|
||
|
||
1999-11-18 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/strftime.c (my_strftime): Some old compilers object to
|
||
'\a', so don't bother optimizing for it.
|
||
|
||
2000-01-01 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Fix bug: `df PATH' sometimes misbehaves when there is an
|
||
inaccessible mount point unrelated to PATH.
|
||
* configure.in (AC_CHECK_FUNCS): Add realpath, resolvepath.
|
||
* src/df.c (#pragma alloca): Add if _AIX is defined.
|
||
(path-concat.h): Include.
|
||
(show_point): If HAVE_REALPATH or HAVE_RESOLVEPATH is defined,
|
||
find the real absolute path for PATH, and use that to find the
|
||
mount point.
|
||
|
||
(show_point): Prefer non-dummy entries in shortcuts, too.
|
||
Disable bogus mount dirs instead of restatting them each time.
|
||
|
||
1999-12-30 Jim Meyering <meyering@ascend.com>
|
||
1999-12-17 Kalle Olavi Niemitalo <tosi@stekt.oulu.fi>
|
||
|
||
* src/rmdir.c (remove_parents, main): Don't pass errno to error
|
||
when printing "removing directory" message. Failure of rmdir is
|
||
handled elsewhere.
|
||
|
||
1999-12-23 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in: Remove clock_gettime tests.
|
||
Now they're in m4/jm-macros.m4.
|
||
|
||
* src/ln.c (usage): Correct typos.
|
||
List new --target-directory=... usage.
|
||
Reported by G<>ran Uddeborg
|
||
|
||
* src/mv.c (usage): List new --target-directory=... usage.
|
||
|
||
1999-12-22 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/getdate.y (get_date): Fix typo in time_t overflow test.
|
||
From Michael Stone.
|
||
|
||
1999-12-21 Andreas Schwab <schwab@suse.de>
|
||
|
||
* tests/shred/remove: Use $file, not $tmp/file. Exit 77 if run as
|
||
root.
|
||
|
||
1999-12-20 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/df.c (ceil_percent): Remove.
|
||
(show_dev): Avoid overflow problems when calculating percent.
|
||
Do not display negative percents.
|
||
|
||
1999-12-19 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0l.
|
||
|
||
* doc/fileutils.texi: Clarify and combine descriptions of -c and of
|
||
--time=ctime.
|
||
Likewise for -u/--time=atime.
|
||
|
||
* src/ls.c [! LSTAT_FOLLOWS_SLASHED_SYMLINK]: Use lstat wrapper.
|
||
[Notice the new configure-time test in m4/lstat-slash.m4. ]
|
||
(main): Back out change from 1999-02-19 that made ls remove
|
||
trailing slashes from command line arguments to accommodate early
|
||
versions of Linux. Now, `ls symlink-to-dir/' acts like
|
||
`ls symlink-to-dir/.' thus following the symbolic link, as POSIX says
|
||
it should. Suggestion from Bruno Haible and Andreas Schwab.
|
||
|
||
* lib/xstat.in (slash_aware_lstat): New function.
|
||
(rpl_@xstat@): Use it.
|
||
* lib/Makefile.am (lstat.c): Adapt rule to handle new parts of xstat.in.
|
||
(lstat.c): Likewise.
|
||
|
||
Make sure ls does the right thing with symlinks and trailing slashes.
|
||
* tests/ls/Makefile.am (TESTS): Add symlink-slash.
|
||
* tests/ls/symlink-slash: New test, for above-fixed bug.
|
||
|
||
1999-12-18 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/shred.c (wipename): When repeatedly renaming a file, making the
|
||
name shorter and shorter, skip to the next shorter length length if a
|
||
rename fails (e.g. due to permission denied). Otherwise, this loop
|
||
would iterate for so long that shred would appear to be stuck in an
|
||
infinite loop for any but the shortest file names.
|
||
Reported by Joe Orton.
|
||
|
||
* configure.in (AC_OUTPUT): Add tests/shred/Makefile.
|
||
* tests/Makefile.am (SUBDIRS): Add shred.
|
||
* tests/shred: New directory
|
||
* tests/shred/remove: New file. Tests for the above-fixed bug.
|
||
|
||
1999-12-13 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/makepath.c (make_path): Consistently use `error' to output
|
||
the verbose, `created directory ...' messages.
|
||
Reported by Bernhard Rosenkraenzer.
|
||
|
||
1999-12-12 Jim Meyering <meyering@ascend.com>
|
||
|
||
Move 120+ lines of stat.h-related macros from system.h (not shared)
|
||
to sys2.h, which is shared between fileutils, sh-utils, textutils.
|
||
* src/system.h: Move them from here...
|
||
* src/sys2.h: ... to here.
|
||
|
||
* src/system.h (S_IRUSR, S_IRGRP, S_IWGRP, S_IROTH, S_IWOTH): Define
|
||
if not defined. This was necessary on a NeXT Turbostation running
|
||
Mach 3.3. Reported by Nelson H. F. Beebe.
|
||
|
||
* src/ls.c (decode_switches): If -c or -u is specified and not -l
|
||
(or any other option that implies -l), and no sort-type was specified,
|
||
then sort by the ctime (-c) or atime (-u). Part of this change reverts
|
||
the 1998-01-10 delta.
|
||
(usage): Update to reflect this change.
|
||
Reported by Paul Slootman via Michael Stone.
|
||
|
||
1999-12-09 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/df.c (BLOCK_SIZE_OPTION, SYNC_OPTION, NO_SYNC_OPTION): Define
|
||
these and use them instead of `CHAR_MAX + n'.
|
||
* src/du.c (BLOCK_SIZE_OPTION, EXCLUDE_OPTION, MAX_DEPTH_OPTION):
|
||
Likewise.
|
||
* src/touch.c (TIME_OPTION): Likewise.
|
||
* src/rmdir.c (IGNORE_FAIL_ON_NON_EMPTY_OPTION): Likewise.
|
||
|
||
* tests/ls/time-1: Test more of the framework (touch's -a and -m
|
||
options) before running the actual ls test.
|
||
|
||
1999-12-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/cp/cp-mv-backup: Use 1>&2 rather than `1<&-'.
|
||
Suggestion from Volker Borchert.
|
||
|
||
1999-12-05 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Makefile.maint: Remove ftp.enst.fr.
|
||
|
||
1999-12-04 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0k.
|
||
|
||
* tests/mv/into-self-2: Adapt to reflect this change in behavior.
|
||
Make sure the VERSION_CONTROL envvar is not set.
|
||
Run diff if comparison fails.
|
||
|
||
* src/copy.c (copy_internal): In move mode, if the rename attempt
|
||
fails, then unlink any existing destination file. This makes a
|
||
cross-device `mv' more consistent with the intra-device behavior.
|
||
This change is required by POSIX to make a cross-device move act with
|
||
semantics similar to those of the rename syscall. For example now
|
||
`mv' can move a file onto a symlink to itself when that symlink
|
||
is on a separate partition. With fileutils-4.0j, it would fail with
|
||
a diagnostic saying they were the same file.
|
||
Reported by Bruno Haible.
|
||
|
||
* tests/mv/to-symlink: New file. Adds test for the above.
|
||
* tests/mv/Makefile.am (TESTS): Add to-symlink.
|
||
|
||
* tests/cp/cp-mv-backup (trap): Be careful to close $actual before
|
||
removing the containing directory. Otherwise, on some systems rmdir
|
||
fails to remove the containing directory.
|
||
|
||
* tests/ls/time-1: List --full-time dates upon failure.
|
||
|
||
1999-12-02 Andreas Schwab <schwab@suse.de>
|
||
|
||
* src/ls.c (check_symlink_color): New variable.
|
||
(main): Set it if we need to check for dangling symlinks when
|
||
displaying colors.
|
||
(gobble_file): Check check_symlink_color instead of print_with_color.
|
||
|
||
1999-11-30 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/ls.c (usage): Shorten help for --show-control-chars.
|
||
|
||
1999-11-30 Jim Meyering <meyering@ascend.com>
|
||
|
||
Give the right diagnostic when failing to create a file in an
|
||
unwritable directory.
|
||
* src/touch.c (touch): Record errno upon failed errno and use that
|
||
saved value if a subsequent fstat, stat or utime call fails.
|
||
Reported by Wichert Akkerman via Michael Stone.
|
||
|
||
1999-11-27 Jim Meyering <meyering@ascend.com>
|
||
|
||
Clean up test scripts.
|
||
* tests/mv/setup: Don't set/use DF or MKDIR. Use df and mkdir instead.
|
||
* tests/mv/mv-special-1: Likewise for these: LS MV MKDIR MKNOD RM TOUCH
|
||
* tests/mv/backup-is-src: Likewise for RM and MV.
|
||
* tests/mv/hard-link-1: Likewise.
|
||
* tests/mv/into-self: Likewise.
|
||
* tests/mv/into-self-3: Likewise.
|
||
|
||
Add test for 1999-05-23 change to src/copy.c (copy_internal).
|
||
* tests/mv/partition-perm: New file.
|
||
* tests/mv/Makefile.am (TESTS): Add partition-perm.
|
||
|
||
* Version 4.0j.
|
||
|
||
1999-11-22 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/df.c (df_readable): Now returns char const *, not char *.
|
||
New arg NEGATIVE.
|
||
(ceil_percent): Now returns double, not int.
|
||
Be more careful about adding 1 to a wild value.
|
||
(show_dev): Don't filter out wild sizes from the underlying operating
|
||
system; instead, show them to the user as faithfully as possible.
|
||
|
||
1999-11-23 Jim Meyering <meyering@ascend.com>
|
||
|
||
* doc/getdate.texi (Calendar date item): Correction regarding 0..68/
|
||
69-99 split for 1900 vs 2000. From Peter Moulder.
|
||
|
||
1999-11-22 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/Makefile.am (DISTCLEANFILES): Add lstat.c and stat.c.
|
||
|
||
1999-11-20 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/rmdir.c (errno_rmdir_non_empty): New function to encapsulate
|
||
errno comparison.
|
||
(remove_parents): Use it.
|
||
(main): Use it.
|
||
|
||
* tests/cp/cp-mv-backup: Run `diff -c' if the test fails.
|
||
|
||
* tests/ls/time-1: Use `ls' and `touch', not $LS and $TOUCH.
|
||
* tests/ls/Makefile.am (TESTS_ENVIRONMENT): Specify PATH, etc.
|
||
|
||
* src/chgrp.c: Declare lstat; needed on e.g. SunOS4.
|
||
Reported by Tom Tromey.
|
||
|
||
1999-11-19 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/strstr.c (strstr): Include config.h.
|
||
Add a `;' between shloop label and `}'.
|
||
From Akim Demaille.
|
||
|
||
1999-11-17 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/mkdir.c (S_IRWXUGO): Define if necessary.
|
||
(main): Use chmod to set the permissions if bits other than those
|
||
of S_IRWXUGO were requested. Reported by Sami Farin.
|
||
|
||
1999-11-14 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* touch.c (touch): Simplify code a tad, using fd == -1 instead
|
||
of separate valid_fd variable.
|
||
|
||
1999-11-13 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/touch.c (touch): Don't fail just because we couldn't open
|
||
an existing file. This makes it so that touching a read-only
|
||
file now works. Also clean up and simplify.
|
||
Based on a patch from Chip Salzenberg.
|
||
* tests/touch/no-rights: New test for this.
|
||
* tests/touch/Makefile.am (TESTS): Add no-rights.
|
||
|
||
1999-11-12 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/remove.c (print_nth_dir): Write one fewer byte so we don't print
|
||
a trailing slash.
|
||
(rm): Fix bugs in (and test, this time) the very rarely used code
|
||
to warn about directory cycles.
|
||
Reported by michael@roka.net.
|
||
|
||
1999-11-11 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/copy.c (copy_internal): Treat src and dest as the `same' in
|
||
`mv src symlink-to-src' when src and dest are on different partitions.
|
||
Otherwise, that `mv' command would silently remove `src'.
|
||
Reported by Michael Stone.
|
||
* tests/mv/into-self-2: Add a test for this fix.
|
||
|
||
* lib/makepath.c (make_path): Fix long-latent bug: s/&&/||/ (others
|
||
just like that also dated back to 1992 were fixed in 1998-01-02).
|
||
Richard Braakman reported that using `install -d -g foo 1/2`
|
||
only sets the group on the intermediate directory, not the final
|
||
component. From Michael Stone.
|
||
|
||
1999-11-07 Paul Eggert <eggert@set.twinsun.com>
|
||
|
||
* human.c (default_block_size): New function.
|
||
(humblock): Use it if no block size is specified.
|
||
(human_block_size): If the specified block size is zero, report an
|
||
error if report_errors is nonzero; otherwise use the default.
|
||
|
||
1999-11-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/dircolors.hin: Add several more TERM types.
|
||
Add .bz2 suffix.
|
||
Add .png for real this time.
|
||
Change the image types colors to be visible in a black-on-white xterm.
|
||
From Michael Stone.
|
||
|
||
* src/chgrp.c (xstat): New global.
|
||
(main): Define it.
|
||
(change_file_group): Use it. Before this change, when running chgrp
|
||
on a symlink without --dereference (-h) and when the requested group
|
||
is the same as the group for the *symlink*, chgrp would do nothing.
|
||
Now it changes the group of the file referenced through the symlink.
|
||
Reported by Martin Mitchell.
|
||
|
||
* src/chmod.c: Use REFERENCE_FILE_OPTION instead of bare `CHAR_MAX + 1'.
|
||
* src/chown.c: Define and use REFERENCE_FILE_OPTION and
|
||
DEREFERENCE_OPTION in place of bare `CHAR_MAX + N'.
|
||
* src/chgrp.c: Likewise.
|
||
|
||
* tests/ln/misc: Add hard-link-to-symlink test.
|
||
Move framework_failure test to the end.
|
||
Fix a typo: s/||/&&/.
|
||
|
||
* src/ln.c (do_link): Warn that making a hard link to a symbolic link
|
||
is not portable.
|
||
|
||
* tests/ln/misc: Use --b=simple, not the now-deprecated `-V simple'.
|
||
* tests/ln/backup-1: Likewise.
|
||
|
||
* configure.in (AC_OUTPUT): Add tests/rmdir/Makefile.
|
||
* tests/Makefile.am (SUBDIRS): Add rmdir.
|
||
* tests/rmdir: New directory
|
||
* tests/rmdir/ignore: New file.
|
||
|
||
* src/rmdir.c (remove_parents): Use the correct test (just as in
|
||
main) in handling --ignore-fail-on-non-empty. From Michael Stone.
|
||
(usage): Improve description of --parents. Based on suggestion from
|
||
Torsten Landschoff.
|
||
|
||
1999-11-06 Jim Meyering <meyering@ascend.com>
|
||
|
||
Allow hard links to symlinks on systems that support it.
|
||
* src/ln.c (STAT_LIKE_LINK): Define.
|
||
(do_link): Use STAT_LIKE_LINK, rather than bare `stat', and perform
|
||
the extra lstat only on systems where LINK_FOLLOWS_SYMLINKS.
|
||
|
||
* src/ls.c (long_options): Correct typo (s/'F'/'p'/) so that `-p' is
|
||
accepted as the short form of --file-type, per the documentation.
|
||
From James Sneeringer.
|
||
|
||
* src/ln.c (do_link): Fix typo (in which the function name `symlink'
|
||
was tested instead of the variable `symbolic_link') that could make
|
||
ln perform an unneeded `stat' call.
|
||
|
||
1999-11-05 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/system.h: Use HAVE_STRUCT_STAT_ST_BLOCKS, not deprecated
|
||
HAVE_ST_BLOCKS.
|
||
* src/copy.c: Likewise.
|
||
* lib/fileblocks.c: Likewise.
|
||
|
||
* configure.in: Move some type/header/member tests into
|
||
m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) so they are shared by all of
|
||
fileutils, textutils, and sh-utils.
|
||
|
||
1999-11-02 Jim Meyering <meyering@ascend.com>
|
||
|
||
* man/help2man: Import version 1.018.
|
||
* man/Makefile.maint ($(man_MANS)): Remove use of --name=... option.
|
||
* man/*.x: Include one-line summary in [NAME] section.
|
||
* man/Makefile.summ: Remove the one-line summaries.
|
||
Suggestion for clean-up from Akim Demaille.
|
||
|
||
* configure.in (ALL_LINGUAS): Add Galician (gl).
|
||
|
||
1999-11-01 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/cp.c (usage): Warn about mixing use of `-r' with FIFOs and
|
||
other special files like /dev/zero.
|
||
|
||
* lib/Makefile.am (MAINTAINERCLEANFILES): Set to $(BUILT_SOURCES).
|
||
|
||
1999-10-31 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Makefile.maint (my-distcheck): Remove $(DEPDIR) to work around
|
||
automake bug.
|
||
|
||
* doc/fileutils.texi: Document new --backup[=METHOD] option for
|
||
cp, mv, ln, and install.
|
||
|
||
* src/ln.c: Convert --backup to take an optional argument.
|
||
Deprecate --version-control (-V) in comments.
|
||
(usage): Remove mention of --version-control.
|
||
(main): Make -V warn then fall through into --backup case.
|
||
[--backup case]: Handle optional arg.
|
||
* src/install.c: Likewise.
|
||
|
||
1999-10-24 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/cp.c (do_copy): Constify `dest', and cast-away the new
|
||
const in assignment to new_dest.
|
||
|
||
1999-10-23 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/touch/Makefile.am (TESTS): Add dangling-symlink.
|
||
* tests/touch/dangling-symlink: New file.
|
||
|
||
1999-10-23 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/touch.c (full_write): Remove unused decl.
|
||
(open_maybe_create): Remove.
|
||
(touch): Don't record whether the file was created; this isn't
|
||
possible to do reliably and portably without race conditions.
|
||
If the file was created and if amtime_now is nonzero, this
|
||
change means we'll have to do another utime system call, but
|
||
that's no more harmful than the previous version of this code.
|
||
Reported by Gabor Z. Papp.
|
||
|
||
1999-10-21 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (ALL_LINGUAS): Add Japanese (pa).
|
||
|
||
1999-10-17 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/mv/backup-is-src: Remove use of mv's now-deprecated
|
||
-V option. Use --b=simple instead of -b -V simple.
|
||
|
||
* src/mv.c: Convert --backup to take an optional argument.
|
||
Deprecate --version-control (-V) in comments.
|
||
(usage): Remove mention of --version-control.
|
||
(main): Make -V warn then fall through into --backup case.
|
||
[--backup case]: Handle optional arg.
|
||
|
||
Accept new option: --target-directory=DIR
|
||
* src/cp.c (TARGET_DIRECTORY_OPTION): Define.
|
||
(SPARSE_OPTION): Define.
|
||
(usage): Describe it.
|
||
(do_copy): Change meanings/names of first two parameters: use `n_files'
|
||
in place of `argc - optind', and `file' instead of `argv + optind'.
|
||
Add parameter, target_directory.
|
||
(main): Pass new arg, target_directory.
|
||
|
||
1999-10-16 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/cp/backup-is-src: Remove use of cp's now-deprecated -V option.
|
||
Use --b=simple instead of -b -V simple.
|
||
* tests/cp/backup-1: Replace use of cp's now-deprecated
|
||
--version-control option with use of --backup=simple.
|
||
|
||
* src/cp.c: Convert --backup to take an optional argument.
|
||
Deprecate --version-control (-V) in comments.
|
||
(usage): Remove mention of --version-control.
|
||
(main): Make -V warn then fall through into --backup case.
|
||
[--backup case]: Handle optional arg.
|
||
|
||
* tests/cp/Makefile.am (TESTS): Add cp-mv-backup.
|
||
* tests/cp/cp-mv-backup: New file.
|
||
|
||
1999-10-11 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/getopt.c: Merge changes from latest glibc.
|
||
* lib/getopt.h: Likewise.
|
||
* lib/getopt1.c: Likewise.
|
||
|
||
1999-10-09 Jim Meyering <meyering@ascend.com>
|
||
|
||
Accept new option: --target-directory=DIR
|
||
* src/ln.c (TARGET_DIRECTORY_OPTION): Define.
|
||
(usage): Describe it.
|
||
(main): Implement it.
|
||
Make code clearer: use new variable `n_files' in place of
|
||
`argc - optind'. Use `file' instead of `argv + optind'.
|
||
|
||
1999-10-04 Jim Meyering <meyering@ascend.com>
|
||
|
||
* depcomp: New file, for automake's new dependency support.
|
||
* missing: New version, from automake's user-dep-gen-branch.
|
||
|
||
* lib/xalloc.h (__attribute__): Apply 1999-10-03 change here, too.
|
||
* src/sys2.h (__attribute__): Likewise.
|
||
Wrap with #ifndef __attribute__.
|
||
|
||
1999-10-03 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* getdate.y (__attribute__): Define to empty if GCC claims to
|
||
be before 2.8; this is needed for OPENStep 4.2 cc. Also,
|
||
define to empty if strict ANSI.
|
||
|
||
1999-10-03 Jim Meyering <meyering@ascend.com>
|
||
|
||
Accept new option: --target-directory=DIR
|
||
* src/mv.c (TARGET_DIRECTORY_OPTION): Define.
|
||
(usage): Describe it.
|
||
(main): Implement it.
|
||
Remove unused variable, stdin_tty.
|
||
Make code clearer: use new variable `n_files' in place of
|
||
`argc - optind'. Use `file' instead of `argv + optind'.
|
||
|
||
1999-09-28 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/system.h: Do s/#ifdef HAVE_/#if HAVE_/ -- solely for aesthetics.
|
||
Do the same for other config.h macros like CLOSEDIR_VOID and MAJOR_*.
|
||
* src/sys2.h: Likewise.
|
||
|
||
* lib/xalloc.h (__attribute__): Protect against redefinition.
|
||
From Akim Demaille.
|
||
|
||
1999-09-26 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/xmalloc.c (xalloc_die): Rename from xalloc_fail and
|
||
update callers.
|
||
Use explicit exit to help avoid warnings.
|
||
From Akim Demaille.
|
||
|
||
* lib/path-concat.c (DIRECTORY_SEPARATOR): Define.
|
||
(ISSLASH): Define.
|
||
(path_concat): Allow parameter DIR to be NULL.
|
||
(xpath_concat): New function.
|
||
From Akim Demaille.
|
||
|
||
* lib/xalloc.h (__attribute__): Define.
|
||
(ATTRIBUTE_NORETURN): Define.
|
||
(xalloc_die): Declare.
|
||
(NEW): Define as yet unused macro.
|
||
(XFREE): Likewise
|
||
(CCLONE): Likewise.
|
||
(CLONE): Likewise.
|
||
From Akim Demaille.
|
||
|
||
* lib/basename.c (base_name): Add prototype. From Akim Demaille.
|
||
|
||
1999-09-19 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/lchown.c [STAT_MACROS_BROKEN] (S_ISLNK): Undefine.
|
||
(S_ISLNK): Define if necessary.
|
||
This is necessary on a NEC SX-4 with SUPER-UX 9.1.
|
||
Based on a patch from Holger Berger.
|
||
|
||
* src/dd.c (siginfo_handler): Mark parameter with ATTRIBUTE_UNUSED.
|
||
Change many counter and index variables to be of unsigned type.
|
||
(dd_copy): Add new unsigned variable, n_bytes_read, in place of
|
||
many uses of `nread'.
|
||
|
||
* src/sys2.h (__attribute__): Define.
|
||
(ATTRIBUTE_NORETURN): Remove #else clause.
|
||
(ATTRIBUTE_UNUSED): Define.
|
||
|
||
1999-09-17 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (AC_REPLACE_FUNCS): Remove strdup, now that this
|
||
is done in m4/jm-macros.m4.
|
||
|
||
1999-09-09 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/touch.c (usage): Remove misleading sentence in --help output.
|
||
From Karl Heuer.
|
||
|
||
* src/Makefile.am (EXTRAdir): Remove unused variable.
|
||
|
||
1999-09-03 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/lchown.h (ENOSYS): Don't use ENOMSG; it's not in NeXTStep3.3.
|
||
Use EINVAL instead.
|
||
|
||
1999-09-01 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/cp.c: Remove declaration of xstrdup.
|
||
* src/df.c: Likewise.
|
||
* src/ls.c: Likewise.
|
||
|
||
1999-09-01 Akim Demaille <akim@epita.fr>
|
||
|
||
* lib/xmalloc.c (xalloc_fail_func): Use `PARAMS'.
|
||
* lib/xalloc.h (xalloc_fail_func): Likewise.
|
||
(xstrdup): Add protoype.
|
||
|
||
* lib/version-etc.c (version_etc_copyright): Default copyright string.
|
||
(version_etc): Use it.
|
||
* lib/version-etc.h: Declare it.
|
||
|
||
1999-08-29 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (AC_YACC): Remove use, now that we require bison.
|
||
|
||
* src/dircolors.hin: Add .rpm, .png, and .fli.
|
||
From Andres Soolo.
|
||
|
||
1999-08-28 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* getdate.y: Add copyright notice.
|
||
|
||
(number): Handle `Nov 11 1996' example; see Risks Digest 20.55
|
||
http://catless.ncl.ac.uk/Risks/20.55.html#subj18
|
||
(1999-08-27)
|
||
|
||
(<stdio.h>): Include only if testing.
|
||
(ISUPPER): Remove.
|
||
(ISLOWER, PC): New macros.
|
||
(<string.h>): Include if HAVE_STRING_H, not USG.
|
||
(bcopy): Remove.
|
||
(yymaxdepth, ..., yycheck): Don't bother to redefine, since we assume
|
||
bison.
|
||
(EPOCH_YEAR): Renamed from EPOCH.
|
||
(table): Renamed from TABLE.
|
||
(meridian): Now an anonymous enum.
|
||
(struct parser_control): New type.
|
||
(YYLEX_PARAM, YYPARSE_PARAM, YYSTYPE): New macros.
|
||
(yyInput, ..., yyRelYear): Migrated into struct parser_control.
|
||
(%pure_parser): Added, so that the parser is pure.
|
||
(%union): Removed; the type is now just plain int.
|
||
All %type directives removed.
|
||
(tLOCAL_ZONE): New %token.
|
||
(month_day_table): Renamed from MonthDayTable.
|
||
(gmtime, localtime, mktime, time): Declare only if not defined.
|
||
(meridian_table): New table.
|
||
(dst_table): New table.
|
||
(units_table): renamed from UnitsTable.
|
||
(relative_time_table): Renamed from OtherTable.
|
||
(time_zone_table): Renamed from TimezoneTable. Modernized data.
|
||
(military_table): Renamed from MilitaryTable.
|
||
(to_hour): Renamed from ToHour.
|
||
(to_year): Renamed from ToYear.
|
||
(lookup_zone): New function.
|
||
(LookupWord): Renamed from lookup_word.
|
||
Use lookup_zone for time zones.
|
||
(yylex): Now reentrant. All callers changed.
|
||
(get_date): Add support for local time zone abbreviations.
|
||
Make it reentrant.
|
||
|
||
1999-08-22 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/sys2.h (IF_LINT): Define new macro.
|
||
* src/df.c (main): Rename locals i and j.
|
||
Use IF_LINT macro instead of #ifdef lint...
|
||
|
||
* src/dd.c (parse_integer): Add `const' to char* parameter and
|
||
add a separate `suffix' variable.
|
||
|
||
1999-08-20 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/chown.c (usage): Tweak --help output to make it more consistent
|
||
with that of chgrp.
|
||
* src/chgrp.c (usage): Tweak --help output to make it more consistent
|
||
with that of chown.
|
||
|
||
1999-08-17 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in: Remove check for rename and the code that would
|
||
enable building of the `mvdir' program.
|
||
* src/Makefile.am (libexec_PROGRAMS): Remove reference to @MVDIR@.
|
||
(EXTRA_PROGRAMS): Remove obsolete mvdir.
|
||
* lib/rename.c: Remove obsolete file. (it had a bug, too)
|
||
* src/mvdir.c: Remove obsolete file.
|
||
* po/POTFILES.in: Remove mvdir.c
|
||
|
||
* doc/fileutils.texi (chown, chgrp invocation): Make these sections
|
||
consistent with each other.
|
||
|
||
1999-08-16 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/chown.c (groupname): Declare to be `const'.
|
||
(change_dir_owner): Declare statp parameter to be `const'.
|
||
(usage): Make the output be more consistent with that from chgrp.
|
||
|
||
This change is nearly identical to the chown.c change of 1998-05-24
|
||
* src/chgrp.c: Accept new option, --dereference.
|
||
--no-dereference is now the default. Include lchown.h.
|
||
(enum Change_status) [CH_NOT_APPLIED]: New member.
|
||
(change_symlinks): Enable this by default, now.
|
||
(describe_change): Handle new case.
|
||
(change_file_group): Add new parameter: cmdline_arg. Update callers.
|
||
Reorganize to reflect changed semantics.
|
||
(LCHOWN): Remove definitions.
|
||
From Bruno Haible.
|
||
|
||
1999-08-10 Jim Meyering <meyering@ascend.com>
|
||
|
||
* po/POTFILES.in: Add lib/quotearg.c.
|
||
|
||
1999-08-09 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* NEWS, doc/fileutils.texi, src/ls.c (usage):
|
||
Add ls --quoting-style=locale.
|
||
|
||
* lib/argmatch.c (ARGMATCH_QUOTING_STYLE):
|
||
Change from escape_quoting_style to locale_quoting_style.
|
||
(argmatch_invalid): Use new quotearg_style primitive for simplicity.
|
||
Also, use ARGMATCH_QUOTING_STYLE to quote, instead of quoting ourselves.
|
||
|
||
* lib/quotearg.h (locale_quoting_style): New enum value.
|
||
(quotearg_n_style, quotearg_style): New decls.
|
||
|
||
* lib/quotearg.c: Include <libintl.h> if ENABLE_NLS.
|
||
(_): New macro.
|
||
(quoting_style_args, quoting_style_v, quotearg_buffer): Add support
|
||
for locale_quoting_style, using _("`") and _("'") for open and close
|
||
quote symbols.
|
||
Do not quote spaces in escape_quoting_style.
|
||
(quotearg_n_style, quotearg_style): New functions.
|
||
|
||
1999-08-08 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/touch.c (usage): Clarify description of --time=WORD.
|
||
From Karl Berry.
|
||
|
||
* lib/savedir.c (savedir): Change type of name_size parameter to off_t.
|
||
* lib/savedir.h (savedir): Update prototype.
|
||
* src/chmod.c (change_dir_mode): Remove cast of savedir arg.
|
||
* src/chown.c (change_dir_owner): Likewise.
|
||
* src/chgrp.c (change_dir_group): Likewise.
|
||
* src/copy.c (copy_dir): Likewise.
|
||
* src/du.c (count_entry): Likewise.
|
||
Suggestion from Bob Proulx.
|
||
|
||
1999-08-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* po/POTFILES.in: Add lots of lib/*.c files.
|
||
Remove src/cp-hash.c, since it doesn't use _().
|
||
|
||
1999-08-04 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in: Remove getline-testing code. Now it's in m4/.
|
||
|
||
1999-08-01 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* configure.in (AC_SYS_LARGEFILE): Renamed from AC_LFS.
|
||
|
||
1999-07-30 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/ls.c (usage): Explain about default wrt --hide-control-chars and
|
||
--show-control-chars. Reported by Germano Leichsenring.
|
||
|
||
1999-07-28 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (ALL_LINGUAS): Add Brazilian Portuguese (pt_BR).
|
||
|
||
1999-07-24 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/dd.c (PTR_ALIGN, ROUND_UP_OFFSET): New macros.
|
||
(dd_copy): Use those to page-align both the input and output buffers.
|
||
|
||
1999-06-01 Volker Borchert <bt@teknon.de>
|
||
|
||
* tests/Makefile.am: Make envvar-check depend on check-recursive rather
|
||
than on `check' so that its tests are performed before any real tests.
|
||
|
||
1999-07-15 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/dd.c: Include getpagesize.h.
|
||
(dd_copy): Page-align the input buffer.
|
||
Based on a patch from Scott Lurndal.
|
||
|
||
* getpagesize.h: New file.
|
||
* lib/Makefile.am (noinst_HEADERS): Add getpagesize.h.
|
||
|
||
* lib/fsusage.c (get_fs_usage) [STATFS_TRUNCATES_BLOCK_COUNTS]:
|
||
Work around SunOS botch also when block size is different from 1k.
|
||
From J<>rgen Fluk.
|
||
|
||
1999-07-10 Jim Meyering <meyering@ascend.com>
|
||
|
||
* man/help2man: Import version 1.012.
|
||
|
||
1999-07-04 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/xstrtol.c [!defined strtoumax]: Declare strtoumax.
|
||
|
||
1999-07-04 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/xstrtol.c (__strtol): Remove decl; it doesn't work if __strtol
|
||
expands to a macro, which occurs in HP-UX 10.20 with strtoumax.
|
||
(strtol, strtoul): New decls (for pre-ANSI hosts), to replace
|
||
the above decl.
|
||
|
||
1999-06-27 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Fix some incompatibilities between `df -P' and POSIX.2.
|
||
|
||
* lib/human.h (enum human_inexact_style): New enum.
|
||
(human_readable_inexact): New decl.
|
||
|
||
* lib/human.c (human_readable): New function.
|
||
(human_readable_inexact): Renamed from human_readable, with new arg
|
||
INEXACT_STYLE. Add support for ceiling and floor.
|
||
|
||
* src/df.c (print_header): Conform to POSIX if posix_format).
|
||
(df_readable): Take ceiling if posix_format.
|
||
(ceil_percent): New function.
|
||
(show_dev): Take ceiling of percent if posix_format.
|
||
Align with POSIX-conforming header if posix_format.
|
||
|
||
* doc/fileutils.texi: Document these changes.
|
||
|
||
1999-05-27 Volker Borchert <bt@teknon.de>
|
||
|
||
* tests/Makefile.am: Qualify .env-warn with $(srcdir)/ prefix.
|
||
|
||
1999-05-23 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/copy.c (copy_internal): Don't apply the umask in move_mode.
|
||
Otherwise, `mv' would not preserve the permissions when copying
|
||
between partitions. Reported by David Godfrey
|
||
|
||
* Version 4.0i.
|
||
|
||
* tests/cp/same-file: Correct erroneous expected output from
|
||
the `cp -f foo foo' tests.
|
||
* po/POTFILES.in: Add same.c.
|
||
* lib/same.h: New file.
|
||
* lib/same.c: New file (function extracted from ln.c).
|
||
* lib/Makefile.am (libfu_a_SOURCES): Add same.c.
|
||
(noinst_HEADERS): Add same.h.
|
||
* src/copy.c: Include same.h.
|
||
* src/ln.c (same_name): Remove function.
|
||
<same.h>: Include this instead.
|
||
<dirname.h>: No longer include this.
|
||
* tests/mv/force: Be sure we still allow `mv -f FILE LINK-TO-FILE'.
|
||
|
||
* src/copy.c (copy_internal): Make it so `cp/mv -f FILE FILE' does not
|
||
remove FILE. Suggestion from Chris Yeo.
|
||
* tests/mv/force: New test, for the above fix.
|
||
* tests/mv/Makefile.am (TESTS): Add force.
|
||
(TESTS_ENVIRONMENT): Change PATH to be absolute.
|
||
|
||
* tests/mv/force (mv): New test.
|
||
|
||
1999-05-17 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/getdate.y (get_date): Let mktime deduce tm_isdst if we
|
||
have an absolute timestamp, or if the relative timestamp
|
||
mentions days, months, or years. Reported by Volker Borchert.
|
||
|
||
* lib/human.c (human_readable): Allow from_block_size to be zero.
|
||
|
||
1999-05-14 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/Makefile.am (envvar-check): Renamed from check-local.
|
||
(check): Depend on envvar-check so the envvar check is performed
|
||
before all other tests. Reported by Volker Borchert.
|
||
* tests/.env-warn: Use `%%' place-holder that Makefile.am rule expects,
|
||
so CDPATH is mentioned in the message. Reported by Volker Borchert.
|
||
|
||
* src/df.c (main): When asking for info on an explicit file name,
|
||
just warn rather than failing if the table of mounted filesystems
|
||
cannot be read. Based on a patch from Mark Kettenis.
|
||
|
||
* lib/version-etc.c (version_etc): Put version info and author names
|
||
on the first two lines respectively rather than putting the three
|
||
lines of copyright info between them.
|
||
|
||
* src/touch.c (open_maybe_create): Handle Solaris' failure mode when
|
||
FILE is a directory. Reported by Vin Shelton.
|
||
|
||
* lib/human.c: Include <string.h> or <strings.h> for strlen prototype.
|
||
* lib/getline.h [__GLIBC__ >= 2]: #if-out prototypes.
|
||
* src/remove.c (pop_dir): Cast length to `int' to avoid a warning on
|
||
64-bit systems. From Ulrich Drepper.
|
||
|
||
1999-05-12 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/shred.c (main): Put `u' for -u in getopt_long's string argument.
|
||
Remove the `R'.
|
||
|
||
1999-05-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0h.
|
||
|
||
* tests/touch/dir-1: New test.
|
||
* tests/touch/Makefile.am (TESTS_ENVIRONMENT): Remove individual
|
||
upper-case program names. Add a definition of PATH.
|
||
(TESTS): Add dir-1.
|
||
|
||
* src/mkdir.c (main): Use better wording in diagnostic: `cannot
|
||
create directory' rather than `cannot make directory'. The former
|
||
also matches the one in makepath.c.
|
||
|
||
* src/dd.c: (apply_translations): Use TOUPPER and TOLOWER,
|
||
not toupper and tolower.
|
||
|
||
1999-05-05 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/makepath.c (make_dir): When reporting a mkdir failure and the
|
||
target cannot be `stat'ed, use the errno from the failed mkdir call,
|
||
not the one from the stat call. Before this change, running
|
||
`mkdir -p /no-dir/no-dir' as an unprivileged user would wrongly
|
||
elicit `No such file or directory' instead of `Permission denied'.
|
||
|
||
* lib/strtol.c (TYPE_SIGNED, TYPE_MAXIMUM, TYPE_MINIMUM): Define.
|
||
(ULONG_LONG_MAX, LONG_LONG_MAX, LONG_LONG_MIN): Define if not defined.
|
||
Based on a patch from Kaveh Ghazi.
|
||
|
||
* src/ls.c (USE_ACL): Define this only #if
|
||
(HAVE_SYS_ACL_H && HAVE_ACL && defined GETACLCNT).
|
||
Use `USE_ACL' in place of `HAVE_ACL' everywhere else. From Kaveh Ghazi.
|
||
|
||
1999-05-04 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/makepath.c: Include makepath.h libintl.h, not after it.
|
||
Otherwise, we'd get the wrong definition of PARAMS from libintl.h.
|
||
(The method of defining PARAMS in libintl.h doesn't check PROTOTYPES,
|
||
which is necessary on Irix4 since cc doesn't define __STDC__.)
|
||
From Kaveh Ghazi.
|
||
|
||
1999-04-30 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Makefile.maint: Define several tag-related make variables.
|
||
(cvs-dist): Use the make variables instead of shell ones.
|
||
(announcement): Automatically generate diffs for all ChangeLog files,
|
||
not just the top level one.
|
||
|
||
1999-04-30 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/dup2.c: New file.
|
||
|
||
1999-04-30 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/touch.c (touch): Only do the fstat if we need to.
|
||
Resort to calling stat for directories, but only when necessary.
|
||
(usage): Mention --no-create.
|
||
|
||
* src/copy.c (copy_internal): Move the one-file-system test so that
|
||
it follows the `if (new_dst || !S_ISDIR (dst_sb.st_mode))' block.
|
||
Prior to this change, `cp --one-file-system' would traverse a file-
|
||
system boundary if the destination directory existed. From Ton Hospel.
|
||
|
||
1999-04-27 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/dd.c: Always use STDIN_FILENO for input and STDOUT_FILENO
|
||
for output, to avoid confusion with closed input and output fds.
|
||
(input_fd, output_fd): Remove; all uses changed to STDIN_FILENO
|
||
and STDOUT_FILENO.
|
||
(open_fd): New function.
|
||
(main): Use it, instead of open, to ensure that file descriptors
|
||
don't get confused.
|
||
|
||
1999-04-26 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/ls.c (decode_switches): Use STDIN_FILENO, STDOUT_FILENO instead
|
||
of 0, 1.
|
||
|
||
* src/dd.c (skip): Don't fstat the input file; the result is
|
||
no longer used.
|
||
|
||
1999-04-26 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/mv/into-self-2: Update to reflect this change by reversing
|
||
the order of arguments so the symlink is the source, not the
|
||
destination (otherwise, the mv command would now succeed).
|
||
|
||
* src/copy.c (copy_internal): Don't make `mv foo symlink-to-foo' fail.
|
||
That is, even though source and destination are `the same,' don't fail
|
||
if the destination is a symlink. From Peter Samuelson.
|
||
|
||
1999-04-26 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/dd.c (main): If you can't open an output file (with
|
||
seek=...) read-write, then open it for write and report an
|
||
error if we can't seek.
|
||
|
||
* lib/filemode.c (setst, ftypelet, mode_string):
|
||
* lib/mkdir.c (mkdir):
|
||
* lib/makepath.c (make_path):
|
||
* lib/modechange.c (make_node_op_equals, mode_compile,
|
||
mode_create_from_ref, mode_adjust):
|
||
* lib/modechange.h (mode_adjust):
|
||
* src/chmod.c (describe_change, change_file_mode):
|
||
* src/copy.c (copy_reg, copy_internal):
|
||
* src/copy.h (struct cp_options.umask_kill):
|
||
* src/cp.c (do_copy, cp_option_init, main):
|
||
* src/dd.c (main):
|
||
* src/install.c (mode, cp_option_init, DIR_MODE):
|
||
* src/mkdir.c (main):
|
||
* src/mkfifo.c (main):
|
||
* src/mknod.c (main):
|
||
* src/mv.c (cp_option_init):
|
||
* src/touch.c (open_maybe_create):
|
||
Use proper mode_t types and macros.
|
||
Don't assume the traditional Unix values for mode bits.
|
||
|
||
* lib/filemode.c (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH,
|
||
S_IXOTH): Define if not defined.
|
||
(rwx): Remove.
|
||
* lib/mkdir.c (S_IRWXU, S_IRWXG, S_IRWXO): Define if not defined.
|
||
* lib/makepath.c (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRWXU):
|
||
Define if not defined.
|
||
* src/system.h (S_ISUID, S_ISGID, S_ISVTX, S_IRWXU, S_IRWXG, S_IRWXO):
|
||
Define if not defined.
|
||
(CHMOD_MODE_BITS): New macro.
|
||
* src/install.c (isodigit): Remove unused macro.
|
||
|
||
* src/mkfifo.c, src/mknod.c (usage):
|
||
Use symbolic mode as default, not octal.
|
||
|
||
* lib/utime.c (utime_null):
|
||
Don't pass 0666 to open; it's not needed and isn't
|
||
guaranteed to be portable.
|
||
|
||
* lib/filemode.h: <config.h>, <sys/types.h>: Include for mode_t.
|
||
(mode_string): Now takes mode_t.
|
||
|
||
* lib/modechange.h: Include <config.h>, <sys/types.h> for mode_t.
|
||
(struct mode_change): Members affected and value are now mode_t instead
|
||
of unsigned short.
|
||
|
||
* doc/fileutils.texi, doc/perm.texi:
|
||
Don't assume traditional Unix mode numbering.
|
||
|
||
* lib/modechange.c: modechange.h now includes sys/types.h.
|
||
Include xstrtol.h.
|
||
(isodigit, oatoi): Remove.
|
||
(S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR, S_IRGRP,
|
||
S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRWXU, S_IRWXG,
|
||
S_IRWXO): Define if not defined.
|
||
(CHMOD_MODE_BITS): New macro.
|
||
(mode_compile): Convert from octal with xstrtoul, not our own routine.
|
||
|
||
1999-04-24 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0g.
|
||
|
||
1999-04-22 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/shred.c (word32): Don't use `#error'; it runs afoul of
|
||
SunOS 4.1.4 cc. From Paul Eggert.
|
||
|
||
* lib/strtoull.c: Guard strong_alias and weak_alias with #ifdef _LIBC.
|
||
|
||
1999-04-20 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Replace our temporary hack implementation of strtoumax with
|
||
something very close to the real code in glibc.
|
||
|
||
* lib/xstrtoumax.c: Remove the temporary strtoumax replacement;
|
||
we now have a true replacement in strtoumax.c.
|
||
(__strtol): Always define to strtoumax.
|
||
(<stdlib.h>): No need to include.
|
||
(PARAMS): Remove.
|
||
(my_strtoumax): Move this to strtoumax.c,
|
||
rename it to strtoumax, and simplify.
|
||
|
||
* lib/strtoull.c, lib/strtoumax.c: New files.
|
||
|
||
* lib/strtol.c: Update to glibc 2.1.1 version.
|
||
|
||
1999-04-20 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/Makefile.am (EXTRA_DIST): s/posix-warn/env-warn/.
|
||
(check-local): Also test and warn if CDPATH is set.
|
||
|
||
1999-04-20 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* configure.in (AC_CANONICAL_HOST): Add; needed for new AC_LFS's
|
||
cross-compilation.
|
||
* config.guess: New file (from autoconf).
|
||
* config.sub: New file (from autoconf).
|
||
|
||
* src/shred.c <config.h>: Include first, since it can do
|
||
things like #define const, and this must be done before
|
||
including any system headers.
|
||
|
||
* lib/xstrtoumax.c (my_strtoumax): Fix typo in computing
|
||
whether overflow occurred. Improve overflow-detection to use
|
||
only one conditional branch total, rather than 2N+1
|
||
conditional branches for an N-digit number.
|
||
|
||
1999-04-18 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (AC_CHECK_FUNCS): Remove strtoull, strtoumax, and
|
||
strtouq, now that they're checked in m4/xstrtoumax.m4.
|
||
|
||
1999-04-18 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* doc/fileutils.texi, src/shred.c (main, longopts):
|
||
Use -u instead of -R for --remove, so that we can preserve
|
||
future compatibility with rm.
|
||
|
||
1999-04-18 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/shred.c [!HAVE_CONFIG_H] (ST_BLKSIZE): Define to 65536.
|
||
(do_wipefd): Use ST_BLKSIZE instead of referring to the st_blksize
|
||
member directly.
|
||
|
||
1999-04-18 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Fix shred to do the right thing with off_t longer than long.
|
||
Merge large-integer parsing code with similar code in dd.c,
|
||
and put the resulting in lib/xstrtoumax.c so that other programs
|
||
can use it. Instead of adding a new lib/xstrtoumax.h I thought
|
||
it cleaner to put all the xstroto* declarations into a single
|
||
header, which for now is lib/xstrtol.h for lack of a better place.
|
||
(Mayby lib/xstdlib.h would be better? :-)
|
||
|
||
I thought of several other problems with shredding regular files;
|
||
shredding devices is much more reliable. So I changed the defaults
|
||
to be more suitable for shredding devices; this should help encourage
|
||
users to do the right thing.
|
||
|
||
pfstatus isn't portable to environments with varying width
|
||
fonts, or with internationalized environments where the byte
|
||
count of the message is not the same as its print width.
|
||
Rather than deal with this, I just simplified it to not do
|
||
tricks with carriage-returns and spaces. (I'm also worried
|
||
that vprintf may not return the right value on some hosts; I
|
||
vaguelly recall this being a problem.) As a result, -v and -
|
||
no longer conflict.
|
||
|
||
When removing a special file, try to truncate it first, but don't
|
||
worry if this reports an error.
|
||
|
||
Try to find the size of a non-regular file by seeking to its end.
|
||
|
||
Various porting fixes, mostly because of a port to SunOS 4.1.4 cc.
|
||
|
||
Some other minor bug fixes.
|
||
|
||
* lib/xstrtoul.h: Remove this file.
|
||
* lib/xstrtoumax.c: New file.
|
||
|
||
* configure.in (AC_CHECK_FUNCS): Add strtoull, strtoumax, strtouq.
|
||
|
||
* lib/xstrtoul.c (STRING_TO_UNSIGNED): Remove.
|
||
(__strtol, __strtol_t, __xstrtol): New macros.
|
||
|
||
* lib/xstrtol.c (__strtol, __strtol_t, __xstrtol):
|
||
New macros to specify the
|
||
underlying function, its returned type, and our function. Default to
|
||
values suitable for xstrtol.
|
||
|
||
Include <ctype.h>, since we use its macros.
|
||
|
||
(ULONG_MAX, LONG_MAX, ISBLANK): Remove: no longer needed.
|
||
(ISSPACE): New macro.
|
||
|
||
(bkm_scale, bkm_scale_by_power, __xstrtol, main): __unsigned long int
|
||
-> __strtol_t.
|
||
|
||
(__xstrtol): Depend on whether __strtol_t is an unsigned type, not on
|
||
whether STRING_TO_UNSIGNED is defined. Skip isspace chars, not
|
||
isblank chars, to match strtol. When returning
|
||
LONGINT_INVALID_SUFFIX_CHAR, store the value that we computed into
|
||
*val.
|
||
|
||
* lib/xstrtol.h (__xstrtol, __strtol, __unsigned): Remove macro decls.
|
||
<inttypes.h>: Include if HAVE_INTTYPES_H.
|
||
(_DECLARE_XSTRTOL): New macro.
|
||
(xstrtol, xstrtoul, xstrtoumax): Declare all three functions, so that
|
||
we need only one include file, not three.
|
||
(_STRTOL_ERROR): Do not undef, as this is no longer needed.
|
||
Reword overflow message so that it's independent of type.
|
||
|
||
* lib/Makefile.am (libfu_a_SOURCES): Add xstrtoumax.c.
|
||
(noinst_HEADERS): Remove xstrtoul.h.
|
||
|
||
* lib/xmalloc.c (xalloc_fail):
|
||
Pass xalloc_msg_memory_exhausted through gettext.
|
||
|
||
* lib/getdate.y:
|
||
<stdlib.h>: Include if HAVE_STDLIB_H, since bison 1.27 invokes "free".
|
||
(LookupWord, yylex): Don't pass negative char to ctype macros.
|
||
|
||
* doc/fileutils.texi:
|
||
Explain why shredding devices is more reliable, and why the
|
||
default options are more suitable for devices.
|
||
|
||
Remove withdrawn options -b or --no-contents, -c or --freed-contents,
|
||
-C or --all-contents, -k or --no-links, -l or --ordinary-links, -L or
|
||
--all-links.
|
||
|
||
Add -R or --remove, -s or --size.
|
||
|
||
-v can no longer be doubled.
|
||
|
||
`file system' --> `filesystem' uniformly.
|
||
|
||
* src/chgrp.c: Include xstrtol.h, not obsolete file xstrtoul.h.
|
||
|
||
* src/shred.c: Include xstrtol.h, not obsolete file xstrtoul.h.
|
||
"human.h", "xalloc.h": Include.
|
||
(attribute): Remove; no longer needed.
|
||
(xstrdup): New decl.
|
||
(STDOUT_FILENO): New macro.
|
||
(O_NOCTTY): Make sure it's always defined, even if HAVE_CONFIG_H.
|
||
|
||
The following changes have effect only if !HAVE_CONFIG_H.
|
||
<ctype.h>: New include.
|
||
(RETSIGTYPE): Remove bogus semicolon at end.
|
||
(STDOUT_FILENO, uintmax_t, human_readable, LONGEST_HUMAN_READABLE):
|
||
New macros.
|
||
(xstrtoumax): Renamed from xstrtoul, with corresponding type changes.
|
||
Handle suffixes like the real routine does.
|
||
(error): Remove bogus assignment of errno to errnum.
|
||
(xmalloc, xstrdup): New functions.
|
||
|
||
(O_NOCTTY): Define even if !HAVE_CONFIG_H.
|
||
(S_ISFIFO, S_ISSOCK): New macros, if not already defined.
|
||
(OUTPUT_BLOCK_SIZE): New macro.
|
||
(struct Options.verbose): Now a boolean, since we no longer have two
|
||
levels of verbosity.
|
||
(long_opts, usage, main): Remove -D or --device option. Invert -p or
|
||
--preserve option, and rename it to -R or --remove.
|
||
(usage): Describe G suffix.
|
||
(usage): "-" no longer conflicts with -v.
|
||
(UCHAR_MAX): Indent `#error' so that SunOS 4.1.4 cc doesn't reject it.
|
||
(ind): Portability fixes: return word32, not unsigned; multiply by
|
||
sizeof (word32) instead of shifting left by 2.
|
||
(isaac_refill, isaac_mix): Comment out size of array parameter, as
|
||
ansi2knr mishandles this.
|
||
(status_visible, status_pos, pfstatus, flushstatus): Remove, since
|
||
pfstatus isn't portable to users with varying width fonts, or
|
||
internationalized messages, and vfprintf is problematic. All callers
|
||
of pfstatus changed to use error instead; this removes incompatibility
|
||
of -v with -. All calls to flushstatus removed.
|
||
(dopass, do_wipefd): Do not translate non-English msgs with gettext.
|
||
|
||
(dopass): Cast lseek constant arguments to (off_t) for benefit
|
||
of pre-ANSI compilers; fix one lseek call whose args were interchanged.
|
||
Remove unnecessary casts to (off_t). Do not check for EIO
|
||
when determining file size; this was just my earlier wild guess.
|
||
Use human_readable to print off_t, instead of casting to unsigned long
|
||
(which doesn't work in Solaris 2.6, where off_t is longer than long).
|
||
Output human-readable sizes, instead of always using "K".
|
||
Check for offset overflow (it happened to me in SunOS 4.1.4).
|
||
(do_wipefd): Do not insist on regular files, but do check for special
|
||
files that cannot possibly be shredded.
|
||
Use xmalloc instead of malloc + check.
|
||
Do not inspect st_size for non-regular files.
|
||
Try to find the size of a non-regular file by seeking to its end.
|
||
Do not assume that a regular file of size-0 has unknown size.
|
||
Check for regular files with negative sizes,
|
||
and for overflow after rounding to next block.
|
||
Always try to truncate, even for special files, but do not report an
|
||
error if truncation fails on a special file.
|
||
|
||
(dopass, wipefile): Do not return 1 for special files; the caller
|
||
doesn't care any more.
|
||
|
||
(wipefd): Remove unnecessary (and nonportable) check for
|
||
whether the file descriptor is read-only. Remove
|
||
no-longer-needed check for `-v -'.
|
||
|
||
(incname): Return 1 for carry bit, like the documentation says.
|
||
|
||
(wipename, wipefile): Accept new argument, specifying the
|
||
quoted file name. All callers changed.
|
||
|
||
(wipename): Use xstrdup instead of strdup+error check.
|
||
|
||
(wipefile): Check for ENOTDIR when opening /dev/fd/NNN. Check for
|
||
errors in NNN more carefully. Restore errno after the check.
|
||
Check for errors when closing the file descriptor.
|
||
Use more consistent wording when unable to remove a file.
|
||
|
||
(main): Do not remove files by default.
|
||
Use xstrtoumax instead of xstrtoul uniformly, since xstrtoul won't
|
||
exist if !HAVE_CONFIG_H.
|
||
In diagnostics, quote invalid operands to -n and -s options.
|
||
Allow T, P, E, Z, and Y suffixes in -s operand.
|
||
flags.verbose is now a boolean, not a counter.
|
||
Use STDOUT_FILENO instead of 1, for clarity.
|
||
|
||
* lib/human.c:
|
||
Include xstrtol.h, not xstrtoul.h, since xstrtol.h now defines all the
|
||
xstrto... functions.
|
||
|
||
* src/dd.c: Include xstrtol.h.
|
||
(parse_integer): Migrate most of the work into the new xstrtoumax fn.
|
||
|
||
* lib/xstrtoumax.c: New file.
|
||
|
||
1999-04-18 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/dd.c (main): Open the output file with *read* access
|
||
only if we might need to read to satisfy a `seek=' request.
|
||
From Matthias Urlichs.
|
||
|
||
1999-04-10 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Makefile.maint (alpha): Add trailing slash for ncftp.
|
||
|
||
* Version 4.0f.
|
||
|
||
* configure.in (AC_OUTPUT): Add tests/dd/Makefile.
|
||
* tests/Makefile.am (SUBDIRS): Add dd.
|
||
* tests/dd: New directory
|
||
* tests/dd/misc: New file.
|
||
|
||
`ls --color' would segfault
|
||
* src/ls.c: Include assert.h.
|
||
(color_indicator[]): Add an entry for the type, `door.'
|
||
(main): Assert that the lengths of the color_indicator and
|
||
indicator_name arrays are appropriately related.
|
||
Reported by John Gotts.
|
||
|
||
* src/dd.c (scanargs): Fix bug introduced with last change: now that
|
||
the loop is gone, manually decrement argc and increment argv.
|
||
Reported by Andreas Jaeger and jvogel@linkny.com.
|
||
|
||
1999-04-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/getdate.y (difftm): Protoize.
|
||
|
||
1999-04-06 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/strftime.c: Update from master source in libc.
|
||
|
||
1999-04-04 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/ln/misc: Comment out the test added on 1999-01-31.
|
||
|
||
* Makefile.maint (url_dir_list): Define properly.
|
||
(real_dir_list): Likewise.
|
||
|
||
* src/shred.c: Don't include string.h.
|
||
[!HAVE_CONFIG_H]: Include string.h here.
|
||
[!HAVE_CONFIG_H]: Hard-code RETSIGTYPE to `int'.
|
||
(sigill_handler): Change return type and type of local `oldhandler' to
|
||
RETSIGTYPE.
|
||
(isaac_seed_machdep): Change and type of local `oldhandler' to
|
||
RETSIGTYPE.
|
||
From Colin Plumb.
|
||
|
||
* Version 4.0e
|
||
|
||
* tests/cp/same-file: Change the sed command used to extract the
|
||
filename from ls -l output, to accommodate the change in format.
|
||
|
||
* src/ls.c (print_long_format): Add a space between %s and %3u. This
|
||
assures that even when modebuf has the trailing `+' and there are more
|
||
than 99 hard links to a file, the permissions string and the link count
|
||
will be separated.
|
||
|
||
1999-04-03 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/shred.c (dopass): add curly braces to avoid warning about
|
||
ambiguous `else'.
|
||
(wipefd): Add parentheses suggested by gcc.
|
||
(do_wipefd): Remove declaration of unused local.
|
||
|
||
1999-04-02 Colin Plumb <colin@nyx.net>
|
||
|
||
* shred.c [!HAVE_CONFIG_H] (xstrtoul, error, close_stdout): Added stubs
|
||
to allow standalone compilation.
|
||
|
||
(wipefile): Added support for emulating /dev/fd/# files even if
|
||
the OS doesn't support them. From Paul Eggert.
|
||
|
||
(main, usage): Changed --device short option to -D.
|
||
|
||
(wipefd, do_wipefd): Renamed function to do_wipefd and added
|
||
separate wipefd that performs sanity checks on externally-opened file
|
||
descriptors, such as not append-only. From Paul Eggert.
|
||
|
||
(do_wipefd, isaac_seedfd): Do not read file for any reason.
|
||
if the file is low-entropy, it's a security hole.
|
||
(wipefile) Changed to open O_WRONLY and chmod to write-only when
|
||
forcing.
|
||
(isaac_seedfd) Function deleted as unnecessary.
|
||
From Paul Eggert.
|
||
|
||
(dopass): Dynamically fall back to fsync() if fdatasync() fails,
|
||
since POSIX, in their infinitesimal wisdom, encourage implementations
|
||
that return constant -1, making compile-time testing useless.
|
||
From Paul Eggert.
|
||
|
||
(dopass): Changed to support a size of -1 to mean "unknown".
|
||
This entailed changing to a counting-up offset rather than couting-down
|
||
cursize for the central state variable. Also changed size argument to
|
||
be call-by-reference so that it can be passed back once known.
|
||
(sizer) Function deleted as unnecessary.
|
||
(wipefd): Changed to match. From Paul Eggert
|
||
|
||
(dopass): Try to skip over bad blocks in destination files.
|
||
Also added ftruncate() for more complete destruction of metadata.
|
||
|
||
(main, usage): Changed "-" to stand for standard output.
|
||
(wipefd): Added error message to detect conflict with -v.
|
||
|
||
(dopass): Added periodic fsync() calls to keep the pass progress
|
||
display in sync with reality. Hopefully they're sufficiently far spaced
|
||
that throughput isn't affected. It might be a good thing to do even in
|
||
non-verbose mode, to avoid filling up the kernel caches with dirty data.
|
||
Also added ftruncate() for more complete destruction of metadata.
|
||
|
||
(quotearg_colon): New function to print
|
||
pathological filenames properly.
|
||
[!HAVE_CONFIG_H] (quotearg_colon_buf) New internal helper function
|
||
that does most of the work.
|
||
(wipefd, do_wipefd, dopass) Now take a qname (pre-quoted name) argument.
|
||
(wipename, wipefile, main) Changed diagnostics to use quotearg_colon.
|
||
Error messages are also in a more uniform format.
|
||
From Paul Eggert.
|
||
|
||
(struct Options, main, do_wipefd): Added -s/--size=N flag.
|
||
(xstrtoul): Added support for valid_suffixes to help this.
|
||
(usage) Documented it.
|
||
|
||
(error): Changed some arguments from N_() to _(), since error()
|
||
does not translate its argument. I think this is a bug.
|
||
|
||
(struct Options do_wipefd, wipefd, wipefile, main): moved passes
|
||
argument into the Options structure as n_iterations, which is now a
|
||
size_t. From Paul Eggert.
|
||
|
||
(isaac_seed_start, isaac_seed_data, isaac_seed_finish): New functions
|
||
to manage seeding of RNG with arbitrary-sized data.
|
||
(isaac_init): commented out as dead code.
|
||
(isaac_seed): changed to use new functions to prevent any possibility of
|
||
a buffer overflow.
|
||
|
||
(isaac_seed): Added support for Solaris' gethrtime()
|
||
configure.in: Corresponding feature test. From Paul Eggert.
|
||
|
||
(wipename): Change remove() to unlink() for speed & portability.
|
||
Use lstat() instead of access() to see if a filename is taken. This
|
||
works even on dangling symlinks and avoids the suid problems of
|
||
access(2). From Paul Eggert.
|
||
|
||
(isaac_seed_machdep): New function for reading cycle counters
|
||
|
||
1999-04-02 Paul Eggert <eggert@shade.twinsun.com>
|
||
|
||
* configure.in (AC_CHECK_FUNCS): Add gethrtime.
|
||
|
||
* src/shred.c (isaac_seed): Don't overrun the s->mm buffer.
|
||
Use gethrtime if available. Don't assume that clock_gettime succeeds.
|
||
Put most random sources first.
|
||
|
||
1999-04-02 Paul Eggert <eggert@twinsun.com>
|
||
|
||
shred: Add new options -bcCklL and fix some porting problems.
|
||
Remove options -dp. Do not read output files.
|
||
|
||
* src/shred.c (long_opts, usage, main, wipefile): Adjust to
|
||
new options.
|
||
("human.h", "quotearg.h"): New includes.
|
||
(struct Options): New members contents, links, n_iterations.
|
||
Remove allow_devices, remove_file. Change n_iterations to size_t.
|
||
All uses changed.
|
||
(output_block_size): New var.
|
||
(usage): Declare __noreturn__ attribute.
|
||
(fdatasync): Define to -1 if not present, since we need to invoke both
|
||
fdatasync and fsync if both are present. All invokers of fdatasync
|
||
now try fdatasync, then fsync.
|
||
(MIXIN): New macro.
|
||
(isaac_seed): Use it to mix in values. Add uid, gid to mix.
|
||
Don't use gettimeofday, as it has too many porting problems.
|
||
(isaac_seedfd): Remove, since we no longer read the output files.
|
||
(sizefd): Remove; we now determine size by writing sequentially.
|
||
(dopass, wipename, wipefile, main): Clean up error messages.
|
||
(dopass): Keep track of offset relative to start of file, not
|
||
end, since we may not know how large the file is. If size is
|
||
negative, write until we fall off the end of the file.
|
||
(wipefd): Do not read output file.
|
||
Return 0 if successful, -1 if not; do not make a special case for
|
||
non-regular files, since our callers have that info now.
|
||
(wipename): Now static. Return errno if error.
|
||
(main): "-" now stands for standard output.
|
||
Do not shred append-only standard output.
|
||
(wipefile): Do not grant read permission to file when wiping it.
|
||
Use symbolic permission (S_IWUSR), not octal.
|
||
|
||
* src/system.h (S_IWUSR): Define if not already defined.
|
||
|
||
* configure.in (AC_SEARCH_LIBS): Prefer rt to posix4, for Solaris 7.
|
||
(AC_CHECK_FUNCS): Remove gettimeofday.
|
||
|
||
* doc/fileutils.texi: Document recent changes.
|
||
|
||
1999-04-01 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (AC_CHECK_FUNCS): Add acl.
|
||
(AC_CHECK_HEADERS): Add sys/acl.h.
|
||
* src/ls.c [HAVE_SYS_ACL_H]: Include sys/acl.h.
|
||
(struct fileinfo): New member `have_acl'.
|
||
(gobble_file): Initialize it.
|
||
(print_long_format): Use it.
|
||
Mostly from Alen Muzinic.
|
||
|
||
* src/touch.c (open_maybe_create): New function.
|
||
(touch): Rewrite not to use `creat' and to eliminate a race
|
||
condition that could make touch truncate a nonempty file.
|
||
Report and suggestions from Andrew Tridgell.
|
||
|
||
1999-03-31 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/du.c: Remove prototypes and tsort function definitions.
|
||
|
||
* src/chown.c (main): Move the declaration of `e' into the scope
|
||
where it's used and make it `const'.
|
||
|
||
* src/install.c (main): Qualify a char* with the `const' keyword.
|
||
(install_file_in_dir): Likewise.
|
||
* src/ln.c (main): Likewise.
|
||
* src/mkdir.c (main): Likewise.
|
||
* src/mkfifo.c (main): Likewise.
|
||
* src/mknod.c (main): Likewise.
|
||
* src/mv.c (main): Likewise.
|
||
* src/touch.c (touch): Likewise.
|
||
|
||
1999-03-30 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/*.c: Don't include closeout.h or version-etc.h explicitly.
|
||
Now, they're included via sys2.h.
|
||
|
||
1999-03-29 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (GNU_PACKAGE): Remove related code -- now it's in
|
||
the catch-all for shared autoconf code, m4/jm-macros.m4.
|
||
(jm_CHECK_ALL_TYPES): Remove explicit AC_TYPE_* macros and use
|
||
this instead.
|
||
|
||
1999-03-29 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Minor lint removal in code that forks and execs.
|
||
|
||
* lib/mkdir.c (mkdir): Use pid_t instead of int; check status
|
||
against zero. This is to improve portability.
|
||
* lib/rename.c (rename): Likewise.
|
||
* lib/rmdir.c (rmdir): Likewise.
|
||
|
||
* lib/rename.c (rename):
|
||
(rename): Do not print any error messages, so that the messages
|
||
are internationalized properly.
|
||
|
||
* src/install.c (strip): Use standard "cannot fork" message.
|
||
Check for strip nonzero exit status.
|
||
|
||
1999-03-28 Jim Meyering <meyering@ascend.com>
|
||
|
||
`chmod =OP' did not properly apply the umask
|
||
* lib/modechange.c (make_node_op_equals): New function.
|
||
(mode_append_entry): Likewise.
|
||
(mode_compile): When none of [ugoa] is specified in an `=OP' change
|
||
mode request, insert a `=0' entry into the linked list so that all
|
||
bits are cleared first. Use the new functions.
|
||
Reported by Andrew Dalke.
|
||
|
||
New test for the above.
|
||
* configure.in (AC_OUTPUT): Add tests/chmod/Makefile.
|
||
* tests/Makefile.am (SUBDIRS): Add chmod.
|
||
* tests/chmod: New directory
|
||
* tests/chmod/equal-x: New file.
|
||
|
||
1999-03-27 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/modechange.c (mode_compile): Upon allocation failure, free
|
||
everything starting with the head, not the tail.
|
||
|
||
* src/install.c (strip): Use pid_t, not int. From John Bley.
|
||
|
||
1999-03-26 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/dd.c (PROGRAM_NAME, AUTHORS): Define
|
||
(long_options): Remove unused struct.
|
||
(scanargs): Remove useless loop.
|
||
(main): Use PROGRAM_NAME and AUTHORS in call to parse_long_options.
|
||
* src/mvdir.c: Likewise.
|
||
* src/sync.c (PROGRAM_NAME, AUTHORS): Define and use.
|
||
|
||
1999-03-25 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/Makefile.am (libfu_a_SOURCES): Add version-etc.c.
|
||
(noinst_HEADERS): Add version-etc.h.
|
||
|
||
* lib/long-options.c (parse_long_options): Remove version-, copyright-,
|
||
and author-printing code. Do it via version_etc.
|
||
|
||
* lib/version-etc.c: New file.
|
||
* lib/version-etc.h: Prototype for same.
|
||
|
||
* src/sys2.h (GETOPT_HELP_CHAR): Define.
|
||
(GETOPT_VERSION_CHAR): Define.
|
||
(GETOPT_HELP_OPTION_DECL): Define.
|
||
(GETOPT_VERSION_OPTION_DECL): Define.
|
||
(case_GETOPT_HELP_CHAR): Define.
|
||
(case_GETOPT_VERSION_CHAR): Define.
|
||
|
||
* src/chgrp.c: No longer include long-options.h.
|
||
Include version-etc.h instead.
|
||
(PROGRAM_NAME, AUTHORS): Define.
|
||
[long_options]: Add entries for --help and --version.
|
||
Remove parse_long_options call.
|
||
(main) [getopt switch]: Add a case for each of --help and --version.
|
||
* src/chgrp.c: Likewise.
|
||
* src/chmod.c: Likewise.
|
||
* src/cp.c: Likewise.
|
||
* src/df.c: Likewise.
|
||
* src/dircolors.c: Likewise.
|
||
* src/du.c: Likewise.
|
||
* src/install.c: Likewise.
|
||
* src/ln.c: Likewise.
|
||
* src/ls.c: Likewise.
|
||
* src/mkdir.c: Likewise.
|
||
* src/mkfifo.c: Likewise.
|
||
* src/mknod.c: Likewise.
|
||
* src/mv.c: Likewise.
|
||
* src/rm.c: Likewise.
|
||
* src/rmdir.c: Likewise.
|
||
* src/shred.c: Likewise.
|
||
* src/touch.c: Likewise.
|
||
|
||
1999-03-24 Jim Meyering <meyering@ascend.com>
|
||
|
||
* man/help2man: Import version 1.010.
|
||
|
||
1999-03-22 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/chmod.c (usage): Add one-liner. Suggestion from Karl Berry.
|
||
|
||
1999-03-19 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/automake-wrap: Rewrite the automake-generated rule for
|
||
clean-binPROGRAMS so that it removes rm even with a losing PATH on a
|
||
losing system (PATH with `.' before /bin on a system where you can't
|
||
unlink a running executable). Reported by William Bader.
|
||
|
||
* configure.in: Use jm_WINSIZE_IN_PTEM.
|
||
* src/ls.c [WINSIZE_IN_PTEM]: Include sys/stream.h and sys/ptem.h.
|
||
Required by SCO ODT 2.0 systems. Reported by William Bader.
|
||
|
||
1999-03-18 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/remove.c (remove_cwd_entries): Reflect changes in hash_insert.
|
||
(remove_init): Call hash_initialize with one more argument.
|
||
|
||
1999-03-15 Jim Meyering <meyering@ascend.com>
|
||
|
||
Revamp to allow fine-tuning to control when and by how
|
||
much the table grows and shrinks.
|
||
* lib/hash.c (next_prime): Don't assert.
|
||
(hash_reset_tuning): New function.
|
||
(check_tuning): New function.
|
||
(hash_initialize): Accept and use new tuning parameter.
|
||
(hash_rehash): Rewrite, updating for tuning.
|
||
(hash_insert): Honor tuning semantics.
|
||
(hash_delete): Likewise.
|
||
From Fran<61>ois Pinard.
|
||
|
||
* lib/hash.h (struct hash_tuning): Define.
|
||
(struct hash_table) [tuning]: Add member.
|
||
(hash_initialize): Add `tuning' parameter.
|
||
|
||
* lib/hash.c (hash_insert): Remove last parameter and change semantics.
|
||
* lib/hash.h (hash_insert): Update prototype.
|
||
|
||
* lib/hash.c (hash_insert): Don't increment n_entries unconditionally --
|
||
otherwise, we'd do so even when the insertion failed.
|
||
From Fran<61>ois Pinard.
|
||
|
||
1999-03-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/xmalloc.c (xalloc_fail): Use "%s" format so the message doesn't
|
||
have to be scanned for % signs. Suggestion from Fran<61>ois Pinard.
|
||
|
||
* Makefile.maint: Add two more URLs and the loops to use them.
|
||
|
||
* lib/long-options.c (parse_long_options): Include `Copyright...' line
|
||
in --version output.
|
||
Add the `...NO warranty...' message.
|
||
|
||
1999-03-03 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/long-options.c (_): Define it.
|
||
(parse_long_options): Accept new parameter, authors, and print it.
|
||
|
||
* lib/long-options.h: Update prototype.
|
||
|
||
* src/chgrp.c: Include long-options.h
|
||
[long_options]: Remove the "help" and "version" entries.
|
||
(main): Use parse_long_options, including author name(s).
|
||
Remove the show_version and show_help blocks.
|
||
* src/chmod.c: Likewise.
|
||
* src/chown.c: Likewise.
|
||
* src/cp.c: Likewise.
|
||
* src/dd.c: Likewise.
|
||
* src/df.c: Likewise.
|
||
* src/dircolors.c: Likewise.
|
||
* src/du.c: Likewise.
|
||
* src/install.c: Likewise.
|
||
* src/ln.c: Likewise.
|
||
* src/ls.c: Likewise.
|
||
* src/mkdir.c: Likewise.
|
||
* src/mkfifo.c: Likewise.
|
||
* src/mknod.c: Likewise.
|
||
* src/mv.c: Likewise.
|
||
* src/mvdir.c: Likewise.
|
||
* src/rm.c: Likewise.
|
||
* src/rmdir.c: Likewise.
|
||
* src/shred.c: Likewise.
|
||
* src/sync.c: Likewise.
|
||
* src/touch.c: Likewise.
|
||
|
||
1999-02-18 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* getdate.y: <alloca.h>: Include if HAVE_ALLOCA_H, not FORCE_ALLOCA_H.
|
||
The FORCE_ALLOCA_H was a relic of the bad old pre-autoconf Emacs days.
|
||
|
||
1999-02-17 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/shred.c (wipename): Fix string thinko. Now, shredding files
|
||
in subdirectories works (dir/file). From Janos Farkas.
|
||
|
||
1999-02-13 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/dircolors.c (dc_parse_stream): Don't try to dereference
|
||
NULL if there's an error in our built-in list.
|
||
Suggestion from Fran<61>ois Pinard.
|
||
|
||
1999-02-13 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
|
||
|
||
* src/install.c (main): Set x.backup_type only if backups are requested.
|
||
(cp_option_init): Initialize backup_type.
|
||
(backup_type): Remove unused variable.
|
||
|
||
* doc/fileutils.texi: Fix use of @item vs @itemx.
|
||
|
||
1999-02-08 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/dircolors.c (slack_codes): Add "DOOR".
|
||
(ls_codes): Add corresponding "do".
|
||
Reported by John Gotts.
|
||
|
||
* configure.in (ALL_LINGUAS): Add Italian (it).
|
||
|
||
1999-02-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0d (aka 4.1-b4).
|
||
|
||
* Makefile.maint (my-distcheck): Don't depend on dist, now that this
|
||
is hooked up to the distcheck rule.
|
||
* Makefile.am (distcheck-hook): New target and rule -- link to shared
|
||
rule, my-distcheck, in Makefile.maint.
|
||
|
||
* doc/fileutils.texi (shred invocation): New section. From Colin Plumb.
|
||
|
||
* configure.in (jm_FUNC_GETGROUPS): Move the test into a new file,
|
||
group-member.m4, and just use this new macro.
|
||
Use `.$ac_objext', not the literal `.o'.
|
||
|
||
1999-02-02 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/ls.c (S_ISLNK, S_ISFIFO, S_ISSOCK, S_ISCHR, S_ISBLK, S_ISDOOR):
|
||
Define to zero if not already defined.
|
||
(HAVE_SYMLINKS): Define.
|
||
(gobble_file): Remove #ifdef.
|
||
(get_link_name, make_link_path): Guard these with #if HAVE_SYMLINKS
|
||
rather than #ifdef S_ISLNK.
|
||
(print_type_indicator): Remove #ifdefs and reorganize.
|
||
(print_color_indicator): Remove #ifdefs.
|
||
(length_of_file_name_and_frills): Likewise.
|
||
|
||
1999-02-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||
|
||
* src/dircolors.hin: Handle DOOR.
|
||
|
||
* src/ls.c (print_type_indicator): Print doors as '>'.
|
||
(length_of_file_name_and_frills): Account for this.
|
||
(indicator_no): Define C_DOOR.
|
||
(indicator_name): Add corresponding name.
|
||
|
||
* lib/filemode.c (ftypelet): Handle doors.
|
||
|
||
* lib/filemode.c, src/system.h (S_ISDOOR): Define if missing.
|
||
|
||
1999-02-01 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/strcasecmp.c (STRXCASECMP_FUNCTION): Don't increment within macro
|
||
argument list. From Akim Demaille.
|
||
|
||
1999-01-31 Jim Meyering <meyering@ascend.com>
|
||
|
||
* doc/fileutils.texi: Wrap the @top node in @ifnottex instead of
|
||
@ifinfo so `makeinfo --html ...' works. From Karl Berry.
|
||
|
||
* tests/ln/misc: Add test for this.
|
||
* src/ln.c (do_link): Allow creation of a hard link to a dangling
|
||
symlink. Reported by Alexey Solovyov.
|
||
|
||
* src/copy.c (copy_internal): Describe any backup-related renaming
|
||
operations when in verbose mode.
|
||
(copy_internal): Likewise.
|
||
Based on changes from Marty Leisner.
|
||
|
||
* lib/lchown.c: Declare chown.
|
||
|
||
1999-01-30 Jim Meyering <meyering@ascend.com>
|
||
|
||
* acconfig.h: Remove uintmax and STAT* #undefs.
|
||
* configure.in: Require autoconf 2.13.
|
||
Remove test for AFS.
|
||
Use 3-argument form of AC_DEFINE*.
|
||
|
||
1999-01-28 Jim Meyering <meyering@ascend.com>
|
||
|
||
* po/POTFILES.in: Add src/shred.c.
|
||
|
||
* src/system.h: Use TIME_WITH_SYS_TIME-based #if test rather than
|
||
TM_IN_SYS_TIME based one (for shred).
|
||
|
||
* acconfig.h: Remove lots of `#undef's, now that we use the
|
||
3-argument forms of AC_DEFINE* macros.
|
||
|
||
1999-01-25 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (fdatasync): Use AC_CHECK_FUNCS instead of
|
||
AC_REPLACE_FUNCS.
|
||
(AC_CHECK_FUNCS): Add clock_gettime.
|
||
|
||
* src/shred.c (isaac_seed): Guard clock_gettime with test of
|
||
HAVE_CLOCK_GETTIME, not CLOCK_REALTIME.
|
||
(wipename): Rename local dirfd to dir_fd to avoid shadowing the
|
||
function declared in Linux's dirent.h.
|
||
|
||
1999-01-25 Akim Demaille <demaille@inf.enst.fr>
|
||
|
||
* lib/argmatch.h (ARRAY_CARDINALITY): Define.
|
||
(ARGMATCH_ASSERT): New macro.
|
||
|
||
* lib/argmatch.c (program_name): Remove dcl.
|
||
Include error.h.
|
||
(argmatch_invalid): Use error rather than fprintf.
|
||
|
||
1999-01-24 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/ansi2knr.c: Exit nonzero upon failed write to stdout.
|
||
New version from L. Peter Deutsch.
|
||
|
||
* lib/quotearg.c (quotearg_n_options): Revert type of parameter `n'
|
||
(and hence that of the local `n1', too) to `int' at Paul's request.
|
||
|
||
* lib/closeout.c: Add comments.
|
||
|
||
* src/shred.c (fdatasync): Remove function. instead, ...
|
||
(fdatasync) [! HAVE_FDATASYNC]: Define to fsync.
|
||
From Colin Plumb.
|
||
|
||
1999-01-23 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/Makefile.am (bin_PROGRAMS): Add shred.
|
||
* src/shred.c: New file.
|
||
Portability tweaks.
|
||
Internationalize.
|
||
(wipename): Print the `FILE: deleted' and `FILE: deleting' messages
|
||
only when in verbose mode.
|
||
(fdatasync) [! HAVE_FDATASYNC]: New function.
|
||
|
||
* man/Makefile.am (man_MANS): Add shred.1.
|
||
* man/Makefile.summ (shred-summary): Define.
|
||
* man/shred.x: New file.
|
||
|
||
* src/shred.c: New file. From Colin Plumb.
|
||
Include config.h, getopt.h, system.h and error.h.
|
||
Use #else/#if, not #elif.
|
||
|
||
1998-11-05 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/mktime.c (__mktime_internal): Adopt the traditional (and
|
||
problematic) notion of what to do when tm_isdst doesn't match.
|
||
|
||
1999-01-17 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/cp/Makefile.am (TESTS_ENVIRONMENT): Set PATH here, rather
|
||
than setting RM and CP.
|
||
* tests/cp/*: Now that PATH is set properly, use rm and cp rather
|
||
than $RM and $CP.
|
||
|
||
* tests/ln/Makefile.am (TESTS): Add backup-1.
|
||
(TESTS_ENVIRONMENT): Set PATH here, rather than setting LN.
|
||
* tests/ln/*: Now that PATH is set properly, use ln rather than $LN.
|
||
* tests/ln/backup-1: New test for this.
|
||
* src/ln.c (do_link): Try to remove DEST even after renaming it.
|
||
This fixes a bug reported by Jamie Lokier.
|
||
|
||
* src/ln.c (same_name): Use SAME_INODE rather than open coding it.
|
||
|
||
1999-01-16 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/argmatch.c (ARGMATCH_DIE_DECL): Use it.
|
||
|
||
* acconfig.h: Remove @BOTTOM@ section.
|
||
Instead, add the define and decl via m4/jm-macros.m4.
|
||
|
||
* src/ls.c: Don't declare base_name.
|
||
Use function-style XARGMATCH once again.
|
||
* src/touch.c: Likewise.
|
||
* acconfig.h: Add a @BOTTOM@ section.
|
||
(ARGMATCH_DIE) [@BOTTOM@]: Define to usage(1).
|
||
Declare usage.
|
||
From Akim Demaille.
|
||
|
||
* src/cp.c: Remove declarations of base_name and get_version.
|
||
(main): Don't call getenv ("VERSION_CONTROL"); xget_version does it.
|
||
Use xget_version and function-style XARGMATCH.
|
||
* src/mv.c (main): Likewise.
|
||
* src/ln.c (main): Likewise.
|
||
* src/install.c (main): Likewise.
|
||
* lib/quotearg.c (quotearg_n_options): Declare n1 to be of type
|
||
unsigned int, not just int.
|
||
* lib/backupfile.h (get_version): Adjust prototype.
|
||
(xget_version): Add prototype.
|
||
(base_name): Remove prototype.
|
||
* lib/backupfile.c [!HAVE_DECL_GETENV]: Declare getenv.
|
||
(backup_args): Reorder enum members.
|
||
(backup_types): Likewise.
|
||
(get_version): Take an additional parameter, `context'.
|
||
(xget_version): Like get_version, but if the `version' argument is NULL,
|
||
use the value of the envvar VERSION_CONTROL.
|
||
(base_name): Declare.
|
||
Mostly from Akim Demaille.
|
||
|
||
* lib/addext.c: (base_name): Declare.
|
||
* src/sys2.h: Add prototype for base_name.
|
||
|
||
* lib/argmatch.c: s/argmatch_exit_failure/argmatch_die/
|
||
* lib/argmatch.h: Likewise.
|
||
|
||
* lib/argmatch.h (XARGMATCH): Define to return a value once again.
|
||
(XARGCASEMATCH): Likewise.
|
||
|
||
* lib/argmatch.c (EXIT_FAILURE): Define.
|
||
(ARGMATCH_DIE): Provide default.
|
||
(__xargmatch_internal): New function.
|
||
s/rogram_name/program_name.
|
||
From Akim Demaille.
|
||
|
||
1999-01-14 Akim Demaille <demaille@inf.enst.fr>
|
||
|
||
* src/touch.c (usage): Don't make it static so that it can be
|
||
called from libfu.a by xargmatch.
|
||
* src/chgrp.c (usage): Likewise
|
||
* src/chmod.c (usage): Likewise
|
||
* src/chown.c (usage): Likewise
|
||
* src/cp.c (usage): Likewise
|
||
* src/dd.c (usage): Likewise
|
||
* src/df.c (usage): Likewise
|
||
* src/dircolors.c (usage): Likewise
|
||
* src/du.c (usage): Likewise
|
||
* src/install.c (usage): Likewise
|
||
* src/ln.c (usage): Likewise
|
||
* src/ls.c (usage): Likewise
|
||
* src/mkdir.c (usage): Likewise
|
||
* src/mkfifo.c (usage): Likewise
|
||
* src/mknod.c (usage): Likewise
|
||
* src/mv.c (usage): Likewise
|
||
* src/mvdir.c (usage): Likewise
|
||
* src/rm.c (usage): Likewise
|
||
* src/rmdir.c (usage): Likewise
|
||
* src/sync.c (usage): Likewise
|
||
|
||
1999-01-12 Akim Demaille <demaille@inf.enst.fr>
|
||
|
||
* lib/backupfile.c (get_version): added the parameters KIND.
|
||
(xget_version): like get_version, but if argument is NULL, honor
|
||
the envvar VERSION_CONTROL.
|
||
* src/cp.c: Remove declarations of base_name and get_version.
|
||
(main): Use xget_version.
|
||
* src/mv.c (main): Likewise.
|
||
* src/ln.c (main): Likewise.
|
||
* src/install.c (main): Likewise.
|
||
|
||
1999-01-12 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (ALL_LINGUAS): Add Greek (el).
|
||
* po/el.po: New file.
|
||
|
||
* install-sh: New version from autoconf.
|
||
* missing: New version from automake.
|
||
* src/ansi2knr.c: Likewise.
|
||
* lib/getopt.c: New version from glibc.
|
||
* lib/getopt.h: Likewise.
|
||
* lib/getopt1.c: Likewise.
|
||
* lib/regex.c: Likewise.
|
||
* lib/regex.h: Likewise.
|
||
* lib/ylwrap: Remove unused file.
|
||
|
||
1999-01-10 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0c (aka 4.1-b3).
|
||
|
||
* Upgrade to autoconf-2.13 and automake-1.3b.
|
||
|
||
* src/copy.c (copy_internal): Handle two more values of errno from
|
||
failed rename of a directory into a subdirectory of itself.
|
||
Thanks to Volker Borchert for testing many types and combinations
|
||
of systems.
|
||
|
||
* lib/argmatch.c (ARGMATCH_QUOTING_STYLE): Change from c_quoting_style
|
||
to escape_quoting_style.
|
||
(argmatch_invalid): Now that the quoted quantity is no longer double
|
||
quoted, remove the code that removed leading and trailing double quotes.
|
||
|
||
* src/ls.c (decode_switches): Now that escape_quoting_style no longer
|
||
escapes the SPACE character, arrange for SPACEs to be quoted here.
|
||
* lib/quotearg.c (quotearg_buffer): Change escape_quoting_style so that
|
||
it no longer escapes ` '.
|
||
Suggestion from Paul Eggert.
|
||
|
||
1999-01-05 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (space): Add `for' in message of statvfs check.
|
||
From Ulrich Drepper.
|
||
|
||
1999-01-04 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.1-b2.
|
||
|
||
1999-01-02 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/argmatch.c (argmatch_invalid): Remove double quotes from the
|
||
offending quoted argument before using it in explanatory diagnostic.
|
||
Use a single fprintf stmt.
|
||
|
||
* lib/argmatch.h (XARGMATCH): Don't return a value; instead,
|
||
modify a parameter. Add a `Die_stmt' parameter.
|
||
Add parentheses.
|
||
* lib/argmatch.c (__xargmatch_internal): Remove now-unused function.
|
||
(argmatch_to_argument): Add `const' attribute to first parameter.
|
||
|
||
* configure.in (AC_REPLACE_FUNCS): Remove strcasecmp (now it's
|
||
done in m4/jm-macros.m4).
|
||
|
||
* lib/backupfile.c (get_version): Adapt to use new interface to
|
||
XARGMATCH.
|
||
* src/cp.c: Likewise.
|
||
* src/ls.c: Likewise.
|
||
* src/touch.c: Likewise.
|
||
|
||
1999-01-01 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/makepath.c (make_dir): New function, factored out of make_path.
|
||
(make_path): Use make_dir rather than open-coding it twice.
|
||
This effectively reverses the order of the latter pair of stat/mkdir
|
||
calls and fixes a race condition bug whereby one of two concurrent
|
||
`mkdir -p' processes could fail with EEXIST.
|
||
Include locale.h and libintl.h, and define `_()'.
|
||
Mark translatable strings.
|
||
|
||
* lib/xmalloc.c: Add comments.
|
||
(xcalloc, xmalloc, xrealloc): Remove prototypes.
|
||
(xcalloc): Remove `#ifdef NOT_USED' that used to hide this function.
|
||
* lib/xalloc.h: Add comments.
|
||
(PARAMS, XMALLOC, XCALLOC, XREALLOC): Define.
|
||
(xcalloc, xmalloc, xrealloc): Add prototypes here.
|
||
Based on changes from Akim Demaille.
|
||
|
||
* lib/quotearg.c (quotearg_buffer): Cast -1 to size_t before comparing.
|
||
(quotearg_n): Change type of 1st parameter from int to unsigned int.
|
||
(quotearg_n_options): Likewise.
|
||
* lib/quotearg.h (quoting_style_vals): New public array.
|
||
From Akim Demaille.
|
||
(quotearg_n_options): Declare `options' parameter to be `const'.
|
||
|
||
* lib/human.c (humblock): Use ARGMATCH in place of argmatch.
|
||
|
||
* lib/backupfile.c (get_version): Use XARGMATCH in place of
|
||
argmatch & co.
|
||
|
||
1998-12-31 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/ls.c (indicator_style_types): New variable.
|
||
(format_types): Rename from `formats'.
|
||
(color_args): Remove unnecessary `no' string.
|
||
(color_types): Remove corresponding `color_never' entry.
|
||
(main): Use ARGMATCH_TO_ARGUMENT.
|
||
(decode_switches): Use ARGMATCH instead of argmatch code
|
||
in each of several cases.
|
||
From Akim Demaille.
|
||
|
||
* src/cp.c (main): Use XARGMATCH in place of argmatch & co.
|
||
* src/touch.c (main): Likewise.
|
||
* lib/backupfile.c (get_version): Likewise.
|
||
From Akim Demaille.
|
||
|
||
* lib/strncasecmp.c: New file.
|
||
* lib/strcasecmp.c: Add #ifdefs so it can be used for strncasecmp, too.
|
||
* lib/argmatch.c (strncasecmp): Move to a separate file.
|
||
Add curly braces around some one-stmt-but-multiline blocks.
|
||
|
||
* lib/argmatch.c: Improvements from Akim Demaille.
|
||
* lib/argmatch.h: Likewise.
|
||
|
||
* lib/addext.c (addext): Protoize.
|
||
Indent cpp directives to match nesting.
|
||
|
||
Fix warnings from gcc -W -Wall
|
||
* lib/posixtm.c (posix_time_parse): Change type of index `i' from
|
||
int to unsigned int.
|
||
* lib/getdate.y (__attribute__): Define.
|
||
(ATTRIBUTE_UNUSED): Define.
|
||
(yyerror): Mark parameter as unused with ATTRIBUTE_UNUSED.
|
||
(MonthDayTable): Add initializers for last entry.
|
||
(UnitsTable): Likewise.
|
||
(OtherTable): Likewise.
|
||
(MilitaryTable): Likewise.
|
||
|
||
1998-12-22 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.1-b1.
|
||
|
||
* configure.in (ALL_LINGUAS): Add chinese (zh).
|
||
|
||
1998-12-19 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/ln/misc: Use absolute path for final rm.
|
||
|
||
* Makefile.maint (my-distcheck): Run make with
|
||
CFLAGS='-Wformat -Werror'.
|
||
|
||
1998-12-18 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/copy.c (copy_internal): Remove errnoeous `%s: ' prefix
|
||
from format string. From Michiel Bacchiani.
|
||
|
||
* src/chgrp.c (MAXGID): Define.
|
||
Use gid_t (not int) as the type for `group' variables.
|
||
(parse_group): Use MAXGID, not INT_MAX.
|
||
|
||
* src/install.c (UID_T_MAX, GID_T_MAX): Remove definitions.
|
||
* src/sys2.h (UID_T_MAX, GID_T_MAX): Define them here instead.
|
||
|
||
1998-12-13 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/Makefile.am (EXTRA_DIST): Add xstat.in.
|
||
|
||
1998-12-12 Jim Meyering <meyering@ascend.com>
|
||
|
||
1998-10-15 Akim Demaille <demaille@inf.enst.fr>
|
||
* src/ls.c: Group DIRED's code together.
|
||
(full_time, inhibit_group, col_ext_type): Declare static.
|
||
(dired_dump_obstack): Apply sizeof to variable, instead of its type.
|
||
(parse_ls_color): Rename ext2 as e2. Move into the block where it
|
||
is used.
|
||
|
||
1998-10-15 Akim Demaille <demaille@inf.enst.fr>
|
||
* src/ls.c: In order to distinguish col(umn|or):
|
||
(init_column_info): Renamed from init_col_info.
|
||
(struct column_info): Renamed from struct col_info.
|
||
(struct color_ext_type): Renamed from struct col_ext_type.
|
||
|
||
1998-12-11 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/Makefile.am (lstat.c): Add rule to generate this from xstat.in.
|
||
(stat.c): Likewise.
|
||
* lib/stat.c: Remove file.
|
||
* lib/lstat.c: Remove file.
|
||
* lib/xstat.in (xstat@): New file.
|
||
|
||
* lib/quotearg.c (quotearg_buffer): Use `7' as the mask, not `3'.
|
||
From Bruno Haible.
|
||
* tests/ls-2/tests: Add a test for this.
|
||
|
||
* man/help2man: import version 1.006.
|
||
|
||
1998-12-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/copy.c: Use dir_name, not dirname. Include dirname.h.
|
||
* src/cp.c: Likewise.
|
||
* src/df.c: Likewise.
|
||
* src/install.c: Likewise.
|
||
* src/ln.c: Likewise.
|
||
* src/mvdir.c: Likewise.
|
||
|
||
* lib/dirname.c (dir_name): Rename from dirname.
|
||
Make argument `const'. Include "dirname.h"
|
||
* lib/dirname.h: New file.
|
||
* lib/Makefile.am (noinst_HEADERS): Add dirname.h.
|
||
|
||
1998-12-06 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/rpmatch.c (rpmatch) [!ENABLE_NLS]: Hard-code tests to use
|
||
`^[yY]' and `^[nN]' (avoiding regex). From Karl Heuer.
|
||
|
||
* lib/*.c: Ansideclify.
|
||
|
||
Fix `ls -R .' formatting bug that broke mktexlsr.
|
||
* src/ls.c: Include path-concat.h.
|
||
(basename_is_dot_or_dotdot): New function, derived from
|
||
is_not_dot_or_dotdot.
|
||
(is_not_dot_or_dotdot): Remove function.
|
||
(extract_dirs_from_files): Use `!basename_is_dot_or_dotdot'
|
||
instead of is_not_dot_or_dotdot and use path_concat instead of attach.
|
||
|
||
* tests/ls-2/tests: New file (renamed from quoting),
|
||
with new test for the `ls -R .' fix.
|
||
* tests/ls-2/quoting: Remove file.
|
||
* tests/ls-2/Makefile.am (TESTS): s/quoting/tests/.
|
||
|
||
1998-11-29 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/remove.c (DOT_OR_DOTDOT): Move definition from this file...
|
||
* src/sys2.h (DOT_OR_DOTDOT): ...to this one.
|
||
|
||
* src/dd.c (dd_copy): Rename function from `copy'.
|
||
|
||
* src/cp.c (do_copy): Rename local: s/unused/copy_into_self/.
|
||
|
||
Per Kristian Hove reported that a certain move-directory-into-self
|
||
wasn't properly diagnosed.
|
||
|
||
* tests/mv/into-self-3: New file.
|
||
* tests/mv/Makefile.am (TESTS): Add into-self-3.
|
||
* src/copy.c (copy_internal): Remove earlier (but less effective)
|
||
test for move/copy-into-self.
|
||
Instead, deduce the move-into-self condition from errno==EINVAL
|
||
after a failed rename.
|
||
* src/mv.c (do_move): Don't arrange to remove DEST in the
|
||
copied-into-self case.
|
||
|
||
1998-11-15 Jim Meyering <meyering@ascend.com>
|
||
|
||
Bob McCracken reported that mv couldn't handle certain combinations
|
||
of hard linked source files.
|
||
|
||
* tests/mv/hard-link-1: New file.
|
||
* tests/mv/Makefile.am (TESTS): Add hard-link-1.
|
||
* src/mv.c (movefile): Don't free new_dest.
|
||
|
||
* lib/error.c (error): Don't use strerror_r's return value.
|
||
From Johan Danielsson.
|
||
|
||
1998-11-14 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0.
|
||
|
||
* Makefile.maint (cvs-dist): Search for `$tag:' rather than just $tag
|
||
to avoid matching a prefix of another tag.
|
||
|
||
1998-11-10 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (ALL_LINGUAS): Add Greek (el).
|
||
* po/el.po: New file.
|
||
|
||
1998-11-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0-b7.
|
||
|
||
Accommodate the Hurd (defining lstat to rpl_lstat via config.h didn't
|
||
work on Hurd systems because of an inline definition of lstat in a
|
||
system header file). This also makes it so that you may run `ls '' '
|
||
on systems that let l?stat operate on the empty string.
|
||
|
||
* src/remove.c [HAVE_LSTAT_EMPTY_STRING_BUG]: Define lstat to rpl_lstat
|
||
and declare the latter.
|
||
* lib/stat.c [stat]: Remove #undef.
|
||
(rpl_stat): Protoize.
|
||
* lib/lstat.c [lstat]: Remove #undef.
|
||
(rpl_lstat): Protoize. Use ENOENT, not EINVAL, to be consistent
|
||
with lib/stat.c.
|
||
* acconfig.h: Remove #undef's for lstat and stat.
|
||
|
||
1998-10-31 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/rm/Makefile.am (TESTS): Add new test `empty-name',
|
||
but comment it out.
|
||
* tests/rm/empty-name: New file.
|
||
|
||
* acconfig.h (stat): New #undef.
|
||
This omission was uncovered when Mark Kettenis reported that
|
||
`rm -r ''' got a failed assertion on the Hurd. This change
|
||
doesn't fix *that* problem -- see above.
|
||
|
||
1998-10-25 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0-b6.
|
||
|
||
* README: Man pages will now be supported to the extent that
|
||
people send patches.
|
||
|
||
* tests/rm/unreadable: Two new tests.
|
||
* tests/rm/Makefile.am (TESTS): Add new test `unreadable'. But comment
|
||
it out since we're so close to release and since the test compares the
|
||
text of diagnostics that are likely to vary between systems.
|
||
(TEST_ENVIRONMENT): Add required framework.
|
||
|
||
* src/remove.c (remove_cwd_entries): Don't apply CLOSEDIR to a NULL
|
||
pointer. (provoke with `mkdir -m 0100 x; rm -rf x')
|
||
Upon CLOSEDIR failure, set `status' to RM_ERROR, not RM_OK.
|
||
(remove_dir): Return `status', rather than always RM_OK.
|
||
|
||
1998-10-18 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0-b5.
|
||
|
||
* lib/mktime.c: Update from libc with this additional change from Paul.
|
||
* lib/strftime.c: Likewise.
|
||
|
||
1998-10-17 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Don't invoke localtime_r or gmtime_r unless it's the GNU C
|
||
library's localtime_r and gmtime_r; there are too many buggy
|
||
implementations of localtime_r and gmtime_r out there, and
|
||
it's not worth keeping track of all the different bugs.
|
||
|
||
* mktime.c (__EXTENSIONS__, HAVE_LOCALTIME_R): Remove.
|
||
(my_mktime_localtime_r): Renamed from localtime_r; all uses changed.
|
||
Base it on localtime unless _LIBC.
|
||
|
||
* strftime.c (__EXTENSIONS__): Remove.
|
||
(my_strftime_gmtime_r): Renamed from gmtime_r; all uses changed.
|
||
(my_strftime_localtime_r): Renamed from localtime_r; all uses changed.
|
||
Base them on localtime/gmtime if not _LIBC.
|
||
|
||
1998-10-17 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0-b4.
|
||
|
||
* lib/mktime.c: Declare localtime_r if necessary.
|
||
* lib/strftime.c: Likewise.
|
||
|
||
* tests/Fetish.pm (run_tests): Run $prog with --version only
|
||
if $verbose.
|
||
|
||
1998-10-11 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0-b3.
|
||
|
||
1998-10-08 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* mktime.c (__mktime_internal): When the requested time falls
|
||
in a spring-forward gap of size DT, return a time that is DT
|
||
away from the requested time, preferring a time whose tm_isdst
|
||
differs from the requested value. Bump the max number of
|
||
probes from 4 to 6 to account for the extra probes needed to
|
||
discover a spring-forward gap in the worst case.
|
||
|
||
1998-10-08 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* mktime.c (my_mktime_localtime_r): Renamed from localtime_r.
|
||
Define also if HAVE_LOCALTIME_R && defined (localtime_r), with
|
||
a body that merely expands localtime_r; this works around a
|
||
bug in Digital Unix 4.0A and 4.0D.
|
||
|
||
1998-10-05 Jim Meyering <meyering@ascend.com>
|
||
|
||
* po/Makefile.in.in (uninstall): Remove (historical?) command that
|
||
removed po-Makefile.in.in. From Akim Demaille.
|
||
|
||
* src/install.c (long_options): Add entry for --suffix=SUFFIX option.
|
||
From aldomel.
|
||
|
||
1998-10-04 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/mv/Makefile.am (TESTS_ENVIRONMENT): Define PERL.
|
||
From Kaveh Ghazi.
|
||
|
||
1998-10-03 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0-b2.
|
||
|
||
* tests/mv/Makefile.am (TESTS_ENVIRONMENT): Add PATH.
|
||
|
||
* man/Makefile.maint ($(man_MANS)): Don't depend on actual executables.
|
||
Instead, depend on corresponding source file and on configure.in.
|
||
Based on suggestion and code from Akim Demaille.
|
||
Factor out irregular men into Makefile.summ.
|
||
|
||
* man/Makefile.am (EXTRA_DIST): Add Makefile.summ.
|
||
|
||
* man/Makefile.summ: New file.
|
||
* man/Makefile.maint: Include it.
|
||
|
||
* tests/Fetish.pm: Make `DEBUG' be a little more verbose.
|
||
|
||
* tests/mv/Makefile.am (TESTS): Add i-1.
|
||
* tests/mv/i-1: New test.
|
||
|
||
1998-10-02 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/ls-2/Makefile.am (EXTRA_DIST): Remove run-test.
|
||
* tests/ls-2/run-test: Remove file.
|
||
* tests/ls-2/quoting: Include /bin/sh driver framework.
|
||
|
||
* tests/dircolors/simple: Remove file.
|
||
* tests/dircolors/run-test: Embed it here instead.
|
||
* tests/dircolors/simple: Rename from run-test.
|
||
|
||
1998-10-01 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/Makefile.am (EXTRA_DIST): Remove README.
|
||
From Akim Demaille.
|
||
|
||
1998-09-28 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 4.0-pre1.
|
||
|
||
* Use automake-1.3b. See notes in README.
|
||
|
||
* src/copy.c (copy_internal): Do honor `n' reply in move-mode.
|
||
Otherwise, `touch a b; echo n|mv -i a b' would remove b.
|
||
From Bernd Leibing.
|
||
|
||
1998-09-27 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 3.16z.
|
||
|
||
* Makefile.maint (alpha): New target.
|
||
(my-distcheck): Tweak.
|
||
|
||
* lib/backupfile.h: Protect against multiple inclusion.
|
||
From Akim Demaille.
|
||
|
||
* configure.in: Remove use of AC_FUNC_FNMATCH and associated code.
|
||
Now, it is invoked through jm_MACROS.
|
||
|
||
* lib/strftime.c (my_strftime): Update from FSF.
|
||
|
||
1998-09-26 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/copy.c (copy_internal): Don't preserve hard-linked directories
|
||
to avoid damaging the destination filesystem when copying from a
|
||
Netapp snapshot directory. With code from Kjetil Torgrim Hollstein
|
||
and Paul Eggert.
|
||
|
||
1998-09-24 Jim Meyering <meyering@ascend.com>
|
||
|
||
* man/Makefile.maint ($(man_MANS)): Correct typo: s/-tmp/-t/.
|
||
From Akim Demaille.
|
||
|
||
1998-09-21 Jim Meyering <meyering@ascend.com>
|
||
|
||
* man/Makefile.maint ($(man_MANS)): Remove `echo'.
|
||
|
||
1998-09-20 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 3.16y.
|
||
|
||
* src/install.c (install_file_to_path) [-D]: Create any leading
|
||
directories with permissions of 0755.
|
||
|
||
1998-09-19 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/install.c (install_file_to_path): Copy the file after creating
|
||
any leading directories.
|
||
(main) [case 'v']: Set `x.verbose' to 1, not 0.
|
||
Reported by Marty Leisner.
|
||
|
||
* man/Makefile.am (transform): Define.
|
||
(man_MANS): Include ginstall.1, not install.1, to match the name
|
||
of the executable in ../src.
|
||
* man/ginstall.x: New file.
|
||
* man/install.x: Remove file.
|
||
* man/Makefile.maint (ginstall-summary): Renamed from install-summary.
|
||
|
||
* man/Makefile.am (EXTRA_DIST): Add Makefile.maint and GNUmakefile.
|
||
Reported by Akim Demaille.
|
||
|
||
* lib/modechange.c: Fix post-protoization typo.
|
||
|
||
* lib/posixtm.h (PARAMS): Define and use.
|
||
From Kaveh Ghazi.
|
||
|
||
1998-09-12 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 3.16x.
|
||
|
||
* src/remove.c (remove_cwd_entries): Declare to be static.
|
||
|
||
Automatically generate man pages from combination of --help
|
||
output and the contents of new, man/*.x files.
|
||
* man/Makefile.am (HELP2MAN): Define.
|
||
(man_aux): Define.
|
||
(EXTRA_DIST): Add $(HELP2MAN) and $(man_aux).
|
||
(MAINTAINERCLEANFILES): Add $(man_MANS).
|
||
* man/*.x: New files.
|
||
* man/GNUmakefile: New file.
|
||
* man/Makefile.maint: New file.
|
||
* man/help2man: New file.
|
||
|
||
1998-09-09 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/modechange.c: Protoize.
|
||
|
||
1998-09-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 3.16w.
|
||
|
||
* src/df.c (show_dev) [!posix_format]: When using --print-type,
|
||
let the device path and the file system type share a single (wider)
|
||
field if their combined lengths allow it. From Andries Brouwer.
|
||
|
||
* tests/touch/empty-file: Upon failure, suggest how to rerun the test
|
||
with longer delay, in case NFS clock skew was the cause of the failure.
|
||
Reported by Kaveh Ghazi.
|
||
|
||
* tests/ls-2/quoting: Add tests.
|
||
* tests/Fetish.pm (run_tests): Add simple PRE/POST hooks.
|
||
(_create_file): Don't include $$ in temp file name.
|
||
(run_tests): Use shorter suffixes for temp file names.
|
||
|
||
1998-09-06 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/touch.c: Include posixtm.h.
|
||
(usage): Correct the description of the format of the
|
||
date string argument to -t option.
|
||
(main): Update to use rewritten posixtime function.
|
||
Reported by Andries Brouwer.
|
||
|
||
* lib/Makefile.am (libfu_a_SOURCES): Change posixtm.y to posixtm.c.
|
||
(noinst_HEADERS): Add posixtm.h.
|
||
|
||
* lib/posixtm.h: New file.
|
||
* lib/posixtm.c: New file. Rewritten based on posixtm.y.
|
||
* lib/posixtm.y: Remove file.
|
||
|
||
1998-09-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||
|
||
* src/ls.c (print_dir_name): Put back.
|
||
(print_dir): Also print directory name header if print_dir_name is
|
||
true.
|
||
|
||
1998-08-29 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 3.16v.
|
||
|
||
* src/du.c (long_options): Use corresponding short-option character
|
||
in place of `1', and `NULL' in place of pointer in initialization.
|
||
* src/cp.c (long_opts): Likewise.
|
||
* src/ln.c (long_options): Likewise.
|
||
* src/mkdir.c (longopts): Likewise.
|
||
* src/rmdir.c (longopts): Likewise.
|
||
* src/chown.c: Replace 12 and 13 with CHAR_MAX + 1 and CHAR_MAX + 2
|
||
respectively.
|
||
* src/chmod.c (long_options): Replace 12 with CHAR_MAX + 1.
|
||
* src/chgrp.c (long_options): Replace 12 with CHAR_MAX + 1.
|
||
|
||
* tests/Fetish.pm: New file -- moved from ls-2/.
|
||
* configure.in (AC_OUTPUT): Add tests/dircolors/Makefile.
|
||
* tests/Makefile.am (SUBDIRS): Add dircolors.
|
||
(EXTRA_DIST): Add Fetish.pm.
|
||
* tests/dircolors: New directory
|
||
|
||
* src/ls.c (print_dir_name): Remove global variable.
|
||
(print_dir): When trace_dirs is set, always print the directory
|
||
name header.
|
||
|
||
1998-08-26 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/dircolors.c (dc_parse_stream): Don't segfault when a line
|
||
contains only one token. Reported by Olav Morkrid.
|
||
|
||
1998-08-24 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/system.h (CHAR_MIN, CHAR_MAX):
|
||
Renamed from SCHAR_MIN, SCHAR_MAX, since these
|
||
macros apply to char, not signed char.
|
||
|
||
* src/df.c, src/du.c, src/touch.c (long_options, main):
|
||
Don't assume ASCII.
|
||
|
||
1998-08-18 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Port nanosecond-resolution times to UnixWare 2.1.2 and
|
||
pedantic Solaris 2.6.
|
||
|
||
* configure.in (AC_STRUCT_ST_MTIM_NSEC): Renamed from AC_STRUCT_ST_MTIM.
|
||
* acconfig.h (ST_MTIM_NSEC): New #undef.
|
||
* src/system.h: (ST_TIME_CMP_NS, ATIME_CMP, CTIME_CMP, MTIME_CMP):
|
||
Use new ST_MTIM_NSEC macro.
|
||
|
||
1998-08-16 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/filemode.h (PARAMS): Define and use.
|
||
From Kaveh Ghazi.
|
||
|
||
1998-08-15 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 3.16u.
|
||
|
||
* Makefile.maint (announcement): New target.
|
||
|
||
* tests/mv/into-self: Update to reflect changed behavior of mv.
|
||
* src/mv.c (do_move): Fail upon attempt to move a directory into itself.
|
||
With prodding from Fran<61>ois Pinard :-)
|
||
|
||
* tests/ls-2/Fetish.pm: New file
|
||
* tests/ls-2/run-test: New file
|
||
|
||
* src/copy.c (copy_internal) [one-file-system]: Do copy mount point
|
||
directories (but none of their entries). This makes `cp --archive
|
||
--one-file-system' use the same policy `tar --one-file-system' does.
|
||
From Marty Leisner.
|
||
|
||
* src/ls.c (qmark_funny_chars): Add comment from Paul eggert.
|
||
|
||
1998-08-14 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/mv/setup: Work around another bug in Ultrix4.3a's /bin/sh.
|
||
Reported by Christian von Roques.
|
||
|
||
* configure.in (AC_OUTPUT): Add tests/ls-2/Makefile.
|
||
* tests/Makefile.am (SUBDIRS): Add ls-2.
|
||
* tests/ls-2: New directory
|
||
|
||
1998-08-14 Christian von Roques <roques@pond.sub.org>
|
||
|
||
* lib/mountlist.c (read_filesystem_list) [MOUNTED_GETMNT]: Don't
|
||
infloop on getmnt(2) returning 0.
|
||
|
||
* tests/cp/backup-is-src: Avoid bug in Ultrix4.3a /bin/sh,
|
||
not initializing output redirection of : command.
|
||
* tests/mv/backup-is-src: Likewise.
|
||
* tests/rm/i-1: Likewise.
|
||
|
||
1998-08-12 Jim Meyering <meyering@ascend.com>
|
||
|
||
* po/Makefile.in.in: Provide automake-style DESTDIR support.
|
||
From Johan Danielsson.
|
||
(DISTFILES): Remove ChangeLog.
|
||
po/ChangeLog: Remove empty file.
|
||
|
||
* configure.in (AC_STRUCT_ST_DM_MODE): Use it.
|
||
|
||
* src/ls.c: Include filemode.h.
|
||
* src/chmod.c: Likewise.
|
||
|
||
* lib/filemode.c (ftypelet): Add comments for Cray DMF support.
|
||
From Johan Danielsson.
|
||
Protoize. Tsort function definitions and remove prototypes of
|
||
static functions.
|
||
(mode_string): Remove prototype.
|
||
* lib/filemode.h (mode_string): New file.
|
||
* lib/Makefile.am (noinst_HEADERS): Add filemode.h.
|
||
|
||
1998-08-09 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 3.16t.
|
||
|
||
1998-07-31 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Add support for filesystems whose timestamps have better resolution
|
||
than 1 second (e.g. Solaris 2.6, recent Linux kernels).
|
||
|
||
* configure.in (AC_STRUCT_ST_MTIM): Add.
|
||
|
||
* src/copy.c (copy_internal): Compare time stamps with
|
||
subsecond resolution if available.
|
||
|
||
* src/ls.c (compare_ctime, rev_cmp_ctime, compare_mtime,
|
||
rev_cmp_mtime, compare_atime, rev_cmp_atime): Compare time
|
||
stamps with subsecond resolution if available.
|
||
|
||
* src/system.h: (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP,
|
||
CTIME_CMP, MTIME_CMP): New macros.
|
||
|
||
1998-08-01 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (ALL_LINGUAS): Add slovak (sk) and norwegian (no).
|
||
|
||
1998-07-28 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/mountlist.c (read_filesystem_list): Remove all_fs
|
||
argument, but put the necessary information into the result so
|
||
that the caller can ignore filesystems that he's not
|
||
interested in.
|
||
|
||
* lib/mountlist.h (struct mount_entry):
|
||
New members me_dummy, me_remote.
|
||
(read_filesystem_list): Remove all_fs argument.
|
||
(REMOTE_FS_TYPE): Remove.
|
||
(ME_DUMMY, ME_REMOTE): New macros.
|
||
|
||
* lib/xstrtol.c: Remove duplicate include of <stdio.h>.
|
||
|
||
* src/df.c (show_all_fs):
|
||
Revert to boolean value; the old negative value is
|
||
now in show_local_fs.
|
||
(show_local_fs): New variable.
|
||
(show_dev): New args me_dummy and me_class. Use show_local_fs
|
||
and boolean show_all_fs in combination with these new args
|
||
to decide whether to show a device.
|
||
(show_disk): Pass flags to show_dev.
|
||
(show_point): Use a non-dummy mount entry if possible.
|
||
(show_all_entries): Pass flags to show_dev.
|
||
(main): --local sets show_local_fs now. Ask for file system types if
|
||
show_local_fs is nonzero, since ME_REMOTE might need them.
|
||
|
||
1998-07-27 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/install/Makefile.am (TESTS_ENVIRONMENT): Set LS, MKDIR, and RM.
|
||
|
||
* tests/install/basic-1: Add a test for this.
|
||
* src/install.c: Make copy create each destination file initially
|
||
with mode 0600 so strip will work, then apply specified mode.
|
||
Arne Henrik Juul reported that `./ginstall -s -c -m 555 dd /tmp' failed.
|
||
|
||
1998-07-25 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/mv.c (chown): Remove unused definition.
|
||
Reported by Kaveh Ghazi.
|
||
|
||
* src/rmdir.c (main): rmdir fails with EEXIST on some systems.
|
||
Handle that, so --ignore-fail-on-non-empty works.
|
||
(EEXIST): Define to zero if not defined.
|
||
(ENOTEMPTY): Likewise.
|
||
|
||
* tests/cp/same-file: Remove `diff' I'd put in for debugging.
|
||
Exit with the status from cmp.
|
||
|
||
* Version 3.16s.
|
||
|
||
* tests/cp/same-file: Skip three more unportable tests.
|
||
These failed on SunOS4.1.4.
|
||
|
||
* src/copy.c (SAME_INODE): Remove definition.
|
||
* src/sys2.h (SAME_INODE): Define it here instead.
|
||
|
||
* src/remove.c (same_file): New function.
|
||
(remove_dir): Use it to give a better diagnostic when rmdir fails
|
||
because it can't remove the current directory.
|
||
|
||
* src/df.c (long_options): Changes table entries not to use this form:
|
||
{"all", no_argument, &show_all_fs, 1},
|
||
but rather this form:
|
||
{"all", no_argument, NULL, 'a'},
|
||
Using the latter, all the option handling in one place: the getopt loop.
|
||
|
||
* lib/mountlist.c (read_filesystem_list) [MOUNTED_GETMNTINFO]:
|
||
Use fsp_to_string.
|
||
(fsp_to_string): Don't xmalloc return value (yet).
|
||
(xatoi): Ansideclify.
|
||
(fstype_to_string): Ansideclify.
|
||
* lib/mountlist.h: Define and use PARAMS macro.
|
||
|
||
* lib/utime.c: New file.
|
||
* src/touch.c (utime_now): Moved into m4/utimes.m4.
|
||
(touch) [!HAVE_UTIME_NULL]: Remove #ifdef and the use of utime_now
|
||
in the if-block.
|
||
|
||
* configure.in (jm_FUNC_UTIME): Use this, not AC_FUNC_UTIME.
|
||
|
||
1998-07-22 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/human.c (human_readable): amt -> damt, to fix typo when
|
||
computing which power to use after overflow occurs during
|
||
multiplication.
|
||
|
||
* lib/xstrtol.c: Include <stdio.h> if NDEBUG is not defined;
|
||
needed on SunOS 4.
|
||
|
||
1998-07-21 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Add df -l or --local option.
|
||
* doc/fileutils.texi: Document it.
|
||
* lib/mountlist.h (REMOTE_FS_TYPE): New macro.
|
||
* lib/mountlist.c (read_filesystem_list):
|
||
If all_fs is negative, omit non-local filesytems.
|
||
|
||
* src/df.c (show_dev): Omit local devices if show_all_fs is negative.
|
||
(show_all_fs): If negative, omit non-local filesystems.
|
||
All uses of (all_fs != 0) changed to (all_fs > 0).
|
||
(long_options, usage, main): Add -l or --local option.
|
||
(main): When asking for df of an explicit file name, get all
|
||
the mount points, so that we're more likely to find it when
|
||
we look it up.
|
||
|
||
1998-07-18 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/copy.c (copy_internal): Add another exclusion from the
|
||
sameness test: when --force has been specified, the destination
|
||
is unlinked before any copy.
|
||
(copy_internal): Add yet another: when both src and dest are symlinks.
|
||
|
||
* tests/touch: New subdir.
|
||
* tests/Makefile.am (SUBDIRS): Add touch.
|
||
* configure.in (AC_OUTPUT): Add tests/touch/Makefile.
|
||
|
||
* tests/mv/into-self-2: New test.
|
||
* tests/mv/Makefile.am (TESTS): Add into-self-2.
|
||
|
||
1998-07-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||
|
||
* lib/mountlist.c (read_filesystem_list): Fix more memory leaks on
|
||
failure.
|
||
|
||
1998-07-16 Jim Meyering <meyering@ascend.com>
|
||
|
||
Work around failure of chown calls on m68k-motorola-sysv systems.
|
||
* src/chown.c: Include lchown.h.
|
||
* lib/Makefile.am (noinst_HEADERS): Add lchown.h.
|
||
* lib/lchown.h: New file, just to define ENOSYS on systems that lack it.
|
||
* lib/lchown.c: Include lchown.h.
|
||
Reported by and with suggestions from Manfred Hollstein.
|
||
|
||
1998-07-12 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* src/df.c (print_header): Print "1k-blocks", not "1.0k-blocks".
|
||
|
||
1998-07-07 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/sys2.h [HAVE_FCLOSE_UNLOCKED]: Remove unnecessary block.
|
||
Suggestion from Ulrich Drepper.
|
||
|
||
1998-07-04 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/safe-read.c (safe_read): Change type of pointer parameter to
|
||
`void' to avoid Irix4 cc errors. Reported by Kaveh Ghazi.
|
||
* lib/safe-read.h: Update prototype.
|
||
|
||
* src/dircolors.c (parse_line): Add casts to avoid errors from
|
||
Irix4's `cc' C compiler. From Kaveh Ghazi.
|
||
|
||
* lib/xstrtol.c: Include stdio.h. Required on some systems when
|
||
using assert. From Kaveh Ghazi.
|
||
|
||
* tests/mv/backup-is-src: Use cmp, not diff.
|
||
Reported by Kaveh Ghazi.
|
||
|
||
1998-07-03 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 3.16r.
|
||
|
||
* src/remove.c (remove_dir): Use fprintf (not error) to avoid
|
||
newline in prompt.
|
||
|
||
1998-06-30 Paul Eggert <eggert@shade.twinsun.com>
|
||
|
||
* lib/mountlist.c: (read_filesystem_list):
|
||
Don't leak memory on failure.
|
||
Don't create a dummy struct mount_entry entry;
|
||
use the address-of-the-tail-address method instead.
|
||
Preserve errno if possible on failure, setting it to 0 if inapplicable.
|
||
Close file descriptor leak if the F_SETLKW failed.
|
||
Report an error if SVR4 lock file cannot be opened for some reason
|
||
other than a nonexistent lock file.
|
||
|
||
1998-07-03 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (AM_WITH_REGEX): Remove. Now the replacement
|
||
macro, jm_WITH_REGEX, is bundled with the rest in jm_MACROS.
|
||
* acconfig.h (WITH_REGEX): Remove undef.
|
||
* lib/Makefile.am (noinst_HEADERS): Add regex.h.
|
||
* lib/rpmatch.c: Remove #ifdef around <regex.h> inclusion.
|
||
* lib/rx.c: Remove file.
|
||
* lib/rx.h: Remove file.
|
||
|
||
* src/df.c (df_readable): Rename local so as not to shadow global.
|
||
|
||
* src/copy.c (SAME_INODE): New macro.
|
||
Use it to replace open-coded equivalents.
|
||
(copy_internal): Rename variable and reverse sense of tests
|
||
to make the code a little clearer.
|
||
|
||
1998-07-02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||
|
||
* src/copy.c (copy_internal): Try harder identifying a relative
|
||
symbolic link in the current directory.
|
||
|
||
* src/copy.c (copy_internal): Don't skip test for same file if
|
||
creating a hardlink from symlink over a non-symlink while making
|
||
backups.
|
||
* tests/cp/same-file: Skip tests that depend on link(2) not
|
||
following symlinks.
|
||
|
||
1998-07-02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||
|
||
* src/copy.c (copy_internal): Don't call chown on a symlink.
|
||
|
||
1998-07-01 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/xstrtol.c: Don't define NDEBUG here, now that it's done via
|
||
configure's --disable-assert option.
|
||
|
||
1998-06-29 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/mountlist.c (read_filesystem_list):
|
||
Plug file descriptor leak on failure.
|
||
Report failure if lock file can't be opened for some reason
|
||
other than nonexistence.
|
||
|
||
1998-06-29 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 3.16q.
|
||
|
||
* lib/mountlist.c (read_filesystem_list) [MOUNTED_GETMNTENT2]:
|
||
Always close stream and file descriptor before returning.
|
||
|
||
* src/df.c (main): Move the test of the result of the
|
||
read_filesystem_list call up out of if-block -- code in the
|
||
else-block depends on it too.
|
||
|
||
1998-06-29 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/mountlist.c: (read_filesystem_list): If SVR4, lock
|
||
/etc/.mnttab.lock if available, to avoid race conditions
|
||
(e.g. with the automounter on Solaris 2.6).
|
||
|
||
Include <errno.h>, <fcntl.h>, <unistd.h>.
|
||
|
||
1998-06-29 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/mountlist.c (fstype_to_string): Guard with
|
||
#if ! HAVE_F_FSTYPENAME_IN_STATFS.
|
||
|
||
1998-06-28 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Add support for new --block-size option and
|
||
BLOCK_SIZE. DF_BLOCK_SIZE, etc. variables to `df', `du', and `ls'.
|
||
Adjust df output slightly to accommodate larger filesystems.
|
||
|
||
* lib/human.c, lib/human.h (human_readable): Coalesce last two args
|
||
into one, for convenience. All callers changed.
|
||
(human_block_size): New function.
|
||
* lib/human.c: Include <config.h> only if HAVE_CONFIG_H.
|
||
Include <stdlib.h> if HAVE_STDLIB_H;
|
||
declare getenv unless HAVE_DECL_GETENV.
|
||
(_): New macro.
|
||
Include <argmatch.h>, <error.h>, <xstrtoul.h>.
|
||
(DEFAULT_BLOCK_SIZE): New macro.
|
||
(block_size_args, block_size_types): New constants.
|
||
(humblock): New function.
|
||
* lib/xstrtol.h (__ZLONG_MAX): Remove.
|
||
* lib/xstrtol.c (bkm_scale): Don't assume that you can convert
|
||
unsigned long to double without losing information.
|
||
(bkm_scale_by_power): New function.
|
||
|
||
* lib/xstrtol.c (__xstrtol), src/dd.c (parse_integer):
|
||
Add support for SI-like suffixes like "GB" and "TD".
|
||
* src/dd.c (usage): Describe it.
|
||
|
||
* src/df.c, src/du.c, src/ls.c (human_readable_base, output_units):
|
||
Remove; replace with new variable output_block_size. All uses changed.
|
||
(long_options, usage, main): Add --block-size.
|
||
(main, decode_switches): Use new human_block_size function to
|
||
initialize output block size consistently with other programs.
|
||
|
||
* src/df.c (print_header, show_dev): Shrink some columns and expand
|
||
others, to squeeze in support for today's larger filesystems.
|
||
(print_header): Print output block size using power-of-1024 SI format.
|
||
(df_readable): Coalesce last two args into one, for convenience.
|
||
All callers changed.
|
||
(main): Remove check for portable output format and larger
|
||
or human-readable block sizes.
|
||
|
||
* NEWS, doc/fileutils.texi: Describe above changes.
|
||
|
||
1998-06-28 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/ls.c (usage): Make --kilobytes description consistent with
|
||
that in du and df. From G<>ran Uddeborg.
|
||
|
||
* lib/mountlist.c (fsp_to_string): Clean out some crufty #ifdefs
|
||
now that we're using the jm_FSTYPENAME autoconf macro.
|
||
James Tanis reported the old version didn't compile on BSDI3.
|
||
|
||
* configure.in: Move big block of list_mounted_fs checks into
|
||
new jm_LIST_MOUNTED_FILESYSTEMS macro.
|
||
Use new jm_FSTYPENAME macro.
|
||
|
||
* src/sys2.h: Add macro definitions for GNU libc *_unlocked wrappers.
|
||
* src/ls.c: Add DIRED_ prefix to the macros: PUTCHAR, FPUTS, and
|
||
FPUTS_LITERAL
|
||
|
||
1998-06-27 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/copy.c (copy_reg): Detect identical source and dest here.
|
||
(copy_internal): Make the test symmetric.
|
||
|
||
* tests/cp/same-file: New file.
|
||
* tests/cp/Makefile.am (TESTS): Add it.
|
||
|
||
1998-06-26 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/remove.c (remove_file): Remove `non-directory' part of
|
||
`removing non-directory FILE' verbose message.
|
||
|
||
1998-06-23 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/df.c (show_dev): Increase field width for blocks, used,
|
||
and available columns from 7 to 8.
|
||
|
||
1998-06-21 Jim Meyering <meyering@ascend.com>
|
||
|
||
* aclocal.m4: Regenerate with fixed gettext.m4 installed.
|
||
See README-alpha for details.
|
||
|
||
1998-06-02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||
|
||
* src/automake-wrap: Quote `&' in sed replacement text.
|
||
|
||
1998-05-31 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 3.16p.
|
||
|
||
* src/install.c (main): Fix argv-handling bug in my 1998-05-09 change.
|
||
Reported by Don Parsons.
|
||
|
||
1998-05-30 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/ls/time-1: Clean up ctime test. Note that it fails also
|
||
on Solaris5.5.1 tmpfs file systems.
|
||
|
||
Solve the `rm -f rm' problem more cleanly.
|
||
* src/.rm-warning: Remove file.
|
||
* src/automake-wrap: New file.
|
||
* src/Makefile.am (AUTOMAKE): Define to use automake-wrap.
|
||
(Makefile.in): Depend on automake-wrap.
|
||
(EXTRA_DIST): Add automake-wrap.
|
||
(DISTCLEANFILES): Remove definition.
|
||
(rm_DEPENDENCIES): Likewise.
|
||
(.rm-warn-stamp): Remove rule.
|
||
|
||
1998-05-27 Jim Meyering <meyering@ascend.com>
|
||
|
||
* tests/ls/Makefile.am (TESTS): s/cr-1/rt-1/
|
||
* tests/ls/rt-1: New file, renamed from cr-1.
|
||
|
||
1998-05-26 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||
|
||
* src/Makefile.am (.rm-warn-stamp): Cope with $(srcdir) != ".".
|
||
|
||
* tests/ls/cr-1: Don't use the ctime for testing, it is impossible
|
||
to set it reliably.
|
||
|
||
1998-05-25 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (_GNU_SOURCE): AC_DEFINE it here.
|
||
* acconfig.h (_GNU_SOURCE): Remove definition from @TOP@ section.
|
||
[!_GNU_SOURCE]: Add #undef instead.
|
||
|
||
1998-05-24 Jim Meyering <meyering@ascend.com>
|
||
|
||
* Version 3.16o.
|
||
|
||
* src/ansi2knr.c: Use new version from automake-1.3.
|
||
|
||
* src/chown.c: Accept new option, --dereference.
|
||
--no-dereference is now the default.
|
||
(enum Change_status) [CH_NOT_APPLIED]: New member.
|
||
(change_symlinks): Enable this by default, now.
|
||
(describe_change): Handle new case.
|
||
(change_file_owner): Add new parameter: cmdline_arg. Update callers.
|
||
Reorganize to reflect changed semantics.
|
||
(LCHOWN): Remove definitions.
|
||
|
||
* lib/lchown.c: New file.
|
||
|
||
1998-05-21 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in (ALL_LINGUAS): Add russian (ru).
|
||
|
||
1998-05-16 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/remove.c (hash_compare_strings): Return true or false, not 1/0.
|
||
(remove_cwd_entries): Use RM_OK, not equivalent literal `1'.
|
||
|
||
* lib/hash.c (is_prime): Ansideclify.
|
||
(next_prime): Ansideclify. Add an assertion.
|
||
|
||
* lib/Makefile.am (EXTRA_DIST): Remove. Automake groks the `LIBOBJS='
|
||
lines from the m4/*.m4 macros, so the hack of including some
|
||
custom-replaced C source file names here is no longer needed.
|
||
|
||
* configure.in (jm_MACROS): New wrapper macro.
|
||
Remove uses of most jm_* macros.
|
||
|
||
* acconfig.h (HAVE_STRUCT_UTIMBUF): Remove #undef. Now it's handled
|
||
as part of utimbuf.m4.
|
||
(memcmp): Add #undef.
|
||
|
||
1998-05-12 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in: Use my replacement AC_ISC_POSIX rather than
|
||
open-coding it.
|
||
|
||
* src/copy.c (copy_internal): Plug a small leak.
|
||
|
||
1998-05-10 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/mv.c (do_move): Remove lots of code that was duplicated in
|
||
copy.c (copy), now that copy() has better support for mv. This fixes
|
||
a bug with cross-filesystem `mv -i' whereby you could get two prompts
|
||
for the same destination file and eventually remove the destination
|
||
file even though one of the responses was negative.
|
||
Reported by Dirk Lattermann.
|
||
|
||
* src/copy.h: Better support for mv:
|
||
[struct cp_options] (move_mode): New member.
|
||
* src/copy.c (copy_internal): Use new move_mode member.
|
||
Add parameter.
|
||
(copy): Add parameter.
|
||
|
||
* tests/cp/Makefile.am (TESTS): Add backup-is-src.
|
||
* tests/mv/Makefile.am (TESTS): Likewise.
|
||
|
||
* lib/userspec.c: Don't declare strdup if it's defined as a macro.
|
||
Reported by Lorne Baker.
|
||
|
||
* src/Makefile.am (ginstall_SOURCES): Add copy.c and cp-hash.c.
|
||
|
||
* src/mv.c (cp_option_init): Initialize new members.
|
||
* src/cp.c (cp_option_init): Likewise.
|
||
(main): Set new preserve_* options.
|
||
|
||
1998-05-09 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/copy.h: Support for install:
|
||
[struct cp_options] (failed_unlink_is_fatal): New member.
|
||
(preserve_owner_and_group): New member.
|
||
(preserve_chmod_bits): New member.
|
||
(preserve_timestamps): New member.
|
||
(preserve): Remove member.
|
||
(set_mode): New member.
|
||
(mode): New member.
|
||
* src/copy.c (new_nondir_mode): New function. Use where appropriate.
|
||
Use more-specific preserve_* members in place of removed `preserve'.
|
||
(copy_internal): Honor failed_unlink_is_fatal.
|
||
|
||
* src/install.c (main): Rewrite argv-handling to be clearer.
|
||
(copy_file): Rewrite to use copy.c (copy).
|
||
(change_attributes): Get rid of now-(with chown wrapper)-unnecessary
|
||
`no_need_to_chown' parameter. Fix caller.
|
||
(install_file_in_file): Remove now-unnecessary `to_created' parameter.
|
||
(cp_option_init): New function.
|
||
Update several functions to take new parameter specifying copy options.
|
||
|
||
* tests/install: New subdir, with one basic test.
|
||
* tests/Makefile.am (SUBDIRS): Add install.
|
||
* configure.in (AC_OUTPUT): Add tests/install/Makefile.
|
||
|
||
* src/dd.c: Include safe-read.h.
|
||
Don't declare safe_read.
|
||
* src/touch.c: Likewise.
|
||
|
||
* configure.in (jm_TYPE_SSIZE_T): Use it.
|
||
* acconfig.h (ssize_t): Add undef.
|
||
|
||
1998-05-03 Jim Meyering <meyering@ascend.com>
|
||
|
||
* po/: Update from gettext-0.10.35.
|
||
* intl/: Likewise.
|
||
* configure.in: Remove use of AC_LINK_FILES.
|
||
(AC_OUTPUT): Remove po/Makefile-generating sed command.
|
||
|
||
1998-04-28 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/dircolors.c (parse_line): Use ISSPACE, not isspace.
|
||
Use unsigned char * pointers, not potentially signed ones, to avoid
|
||
sign extension.
|
||
|
||
1998-04-26 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in: Use jm_ASSERT.
|
||
* acconfig.h: Add NDEBUG.
|
||
|
||
* src/mv.c: Don't define NDEBUG.
|
||
* src/cp.c: Likewise.
|
||
|
||
1998-04-14 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/.rm-warning: New file.
|
||
* src/Makefile.am (EXTRA_DIST): Add .rm-warning
|
||
(DISTCLEANFILES): Add .rm-warn-stamp.
|
||
(rm_DEPENDENCIES): Depend on .rm-warn-stamp.
|
||
(.rm-warn-stamp): New rule.
|
||
(rm_prep): Comment out rule.
|
||
|
||
* src/df.c (main): Use STREQ in string equality tests, not strcmp.
|
||
* src/dircolors.c (dc_parse_stream): Likewise.
|
||
(dc_parse_file): Likewise.
|
||
* src/du.c (main): Likewise.
|
||
* src/ls.c (decode_switches): Likewise.
|
||
* src/remove.c (hash_compare_strings): Likewise.
|
||
* src/touch.c (main): Likewise.
|
||
|
||
1998-04-13 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/Makefile.am (noinst_HEADERS): Add safe-read.h.
|
||
|
||
1998-04-11 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/hash.c: Add curly braces around statements in
|
||
if/else/while/do/etc. that span more than a line -- even around
|
||
multiline simple statements or single-line simple statements
|
||
preceded by a comment line.
|
||
|
||
1998-04-09 Jim Meyering <meyering@ascend.com>
|
||
|
||
* configure.in: Don't use AC_PATH_PROG to check for perl, now that
|
||
we use jm_PERL.
|
||
|
||
1998-04-06 Jim Meyering <meyering@ascend.com>
|
||
|
||
* src/cp-hash.c (cph_hash_insert): Rename from now-conflicting
|
||
hash_insert. Also declare to be static.
|
||
* src/cp-hash.h (hash_insert): Remove declaration.
|
||
|
||
* lib/hash.c: Lots of minor spec and name changes, and new comments.
|
||
(hash_rehash): Rewrite to be easier on the allocator.
|
||
From Fran<61>ois Pinard.
|
||
* lib/hash.h: More comments.
|
||
* src/remove.c: Change names/usage of hash-related functions to work
|
||
with the above.
|
||
|
||
1998-04-05 Jim Meyering <meyering@ascend.com>
|
||
|
||
* lib/regex.c (WIDE_CHAR_SUPPORT): Define.
|
||
This now depends on HAVE_BTOWC so systems that lack btowc (like
|
||
solaris-2.5.1) don't lose.
|
||
|
||
1998-04-04 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* GNUmakefile: Add conditionals so that running `make' in an
|
||
unconfigured source directory will get a reasonable diagnostic.
|
||
|
||
* Makefile.am (ACLOCAL_AMFLAGS): Define this, so automake/aclocal
|
||
know about the m4/ subdirectory.
|
||
* Makefile.maint (aclocal-files): Remove now-unnecessary (with
|
||
automake-1.2h and the above change) aclocal-related rules and includes.
|
||
|
||
1998-04-01 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* tests/ls/cr-1: New file.
|
||
* tests/ls/Makefile.am (TESTS): Add cr-1.
|
||
|
||
1998-03-31 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* src/system.h (TYPE_MAXIMUM): Cast result to `(t)' so this macro
|
||
works with `unsigned char'.
|
||
From Greg Wooledge.
|
||
(SCHAR_MIN, SCHAR_MAX, SHRT_MIN, SHRT_MAX, LONG_MAX, ULONG_MAX): Define.
|
||
|
||
* lib/xstrtol.c: Merge with the version from textutils.
|
||
|
||
* lib/memcmp.c (rpl_memcmp): Rename from memcmp.
|
||
|
||
1998-03-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||
|
||
* src/ls.c (compare_ctime, rev_cmp_ctime, compare_mtime,
|
||
rev_cmp_mtime, compare_atime, rev_cmp_atime, compare_size,
|
||
rev_cmp_size): Use file name as secondary sort key to get
|
||
consistent sorting.
|
||
|
||
1998-03-28 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* src/copy.c: Add copyright.
|
||
* src/remove.c: Add copyright.
|
||
[_AIX]: Add #pragma alloca.
|
||
|
||
1998-03-27 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* Makefile.maint ($(ACLOCAL_M4)): Replace old rule with this
|
||
dependency and the := assignment of ACLOCAL to make the default
|
||
rule use the `-I m4' option.
|
||
|
||
* Makefile.am (AUTOMAKE_OPTIONS): Require 1.2h.
|
||
|
||
1998-03-23 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* acconfig.h: Remove HAVE_INTTYPES_H, now that m4/inttypes_h.m4
|
||
automatically handles it.
|
||
|
||
1998-03-21 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* lib/quotearg.h: Update from patch-2.5.3.
|
||
* lib/quotearg.c: Likewise.
|
||
* src/ls.c (decode_switches): Pass a null pointer instead of address
|
||
of quotearg_quoting_options.
|
||
|
||
1998-03-19 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/fsusage.h (struct fs_usage): New member
|
||
fsu_bavail_top_bit_set.
|
||
* lib/fsusage.c: Include <limits.h>.
|
||
(CHAR_BIT, EXTRACT_TOP_BIT, PROPAGATE_TOP_BIT): New macros.
|
||
(get_fs_usage): If top bit of system variable corresponding to
|
||
fsu_bavail is set, then set fsu_bavail_top_bit_set, and
|
||
sign-extend the value when storing it into fsu_bavail.
|
||
* src/df.c (show_dev): If fsu_bavail_top_bit_set is nonzero,
|
||
assume the original value corresponding to fsu_bavail was negative.
|
||
Reported by Arne Juul.
|
||
|
||
1998-03-18 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* src/Makefile.am (rm-prep): Add dependency and rule to save users
|
||
with `.' too early in their PATH from the `rm: cannot unlink `rm':
|
||
Text file busy' error. Suggestion from Philippe De Muyter.
|
||
|
||
1998-03-15 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* Version 3.16n.
|
||
|
||
* lib/chown.c: Use #if, not #ifdef with HAVE_ macros.
|
||
* lib/closeout.c: Likewise.
|
||
* lib/dirname.c: Likewise.
|
||
* lib/euidaccess.c: Likewise.
|
||
* lib/fileblocks.c: Likewise.
|
||
* lib/filemode.c: Likewise.
|
||
* lib/ftruncate.c: Likewise.
|
||
* lib/group-member.c: Likewise.
|
||
* lib/isdir.c: Likewise.
|
||
* lib/long-options.c: Likewise.
|
||
* lib/mountlist.c: Likewise.
|
||
* lib/path-concat.c: Likewise.
|
||
* lib/save-cwd.c: Likewise.
|
||
* lib/savedir.c: Likewise.
|
||
* lib/strcasecmp.c: Likewise.
|
||
* lib/strdup.c: Likewise.
|
||
* lib/userspec.c: Likewise.
|
||
* lib/yesno.c:: Likewise.
|
||
|
||
* src/chgrp.c: Use #if, not #ifdef with HAVE_ macros.
|
||
Use #if !, not #ifndef with HAVE_ macros.
|
||
* src/chown.c: Likewise.
|
||
* src/copy.c: Likewise.
|
||
* src/dd.c: Likewise.
|
||
* src/dircolors.c: Likewise.
|
||
* src/install.c: Likewise.
|
||
* src/ls.c: Likewise.
|
||
* src/mv.c: Likewise.
|
||
* src/touch.c: Likewise.
|
||
|
||
* configure.in: Use jm_PREREQ.
|
||
|
||
1998-03-14 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
Revert most `getdate.h -> get-date.h' changes of 1998-02-20.
|
||
With automake-1.2f, that hack is no longer needed.
|
||
|
||
* src/remove.c: Use `virtual memory exhausted' message, not
|
||
`Memory exhausted' to be consistent with the majority of other
|
||
such messages.
|
||
Say `removing all...', not `removing any...'.
|
||
* src/rmdir.c (remove_parents): Be consistent with documentation of
|
||
--verbose option and with remove.c in saying `removing...' before
|
||
the operation is attempted.
|
||
(main): Likewise.
|
||
Suggestions from Santiago Vila.
|
||
|
||
* src/copy.c (copy_dir): Add new parameter, copy_into_self, and set it.
|
||
(copy_internal): Likewise.
|
||
(copy): Likewise.
|
||
Update all callers.
|
||
* src/copy.h (copy): Update prototype.
|
||
* src/cp.c (do_copy): Add unused arg in calls to copy.
|
||
* src/mv.c (do_move): Add ©_into_self arg in call to copy.
|
||
Don't remove source directory when copy_into_self is nonzero.
|
||
Reported by Arne Henrik Juul.
|
||
|
||
* tests/mv/into-self: Test for the above.
|
||
* tests/mv/Makefile.am (TESTS): Add into-self.
|
||
|
||
1998-02-28 Eli Zaretskii <eliz@is.elta.co.il>
|
||
|
||
* userspec.c (parse_user_spec) [__DJGPP__]: Make function know
|
||
about any arbitrary user and group by pretending to be the user
|
||
and to belong to the group specified in `spec_arg' argument.
|
||
|
||
* idcache.c (getuidbyname) [__DJGPP__]: Make function know about
|
||
any arbitrary user name.
|
||
(getgidbyname) [__DJGPP__]: Make function know about any arbitrary
|
||
group name.
|
||
|
||
1998-02-24 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* lib/xstrtol.c (TYPE_SIGNED): Define.
|
||
(TYPE_MAXIMUM): Define.
|
||
(ULONG_MAX): Use TYPE_MAXIMUM.
|
||
(LONG_MAX): Use TYPE_MAXIMUM.
|
||
|
||
* lib/fnmatch.c: Update from libit.
|
||
* lib/idcache.c: Update from libit.
|
||
|
||
1998-02-23 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/quotearg.h, lib/quotearg.c: New files.
|
||
* lib/Makefile.am (libfu_a_SOURCES): Add quotearg.c.
|
||
(noinst_HEADERS): Add quotearg.h.
|
||
|
||
* src/ls.c: Include new file quotearg.h.
|
||
(enum indicator_style): Rename all to classify, and not_programs
|
||
to file_type, to match option spellings. All users changed.
|
||
(indicator_style_args): New constant.
|
||
(quote_funny_chars, quote_as_string, quote_shell): Remove;
|
||
(filename_quoting_options, dirname_quoting_options): Use these
|
||
variables instead.
|
||
(long_options): Add --indicator-style, --quoting-style,
|
||
--show-control-chars. Remove --quote-shell.
|
||
(dired_dump_obstack): Remove style parameter and don't output style.
|
||
(main): Go back to previous method of outputting //DIRED//
|
||
and //SUBDIRED// lines, without style. But add a new
|
||
//DIRED-OPTIONS// line that does output style.
|
||
(decode_switches, usage): Add --indicator-style, --quoting-style,
|
||
--show-control-chars. Remove --quote-shell.
|
||
(decode_switches): Default from QUOTING_STYLE environment variable.
|
||
Set new quoting vars.
|
||
(quote_name): Renamed from quote_filename.
|
||
Take new arg specifying quoting options.
|
||
Always print; do not have a special case for null FILE * argument.
|
||
All callers changed.
|
||
Move the guts of this function to new file quotearg.c.
|
||
(length_of_file_name_and_frills): Use quotearg_buffer instead
|
||
of (old) quote_filename to find length of file name.
|
||
|
||
(decode_switches, parse_ls_color, print_dir, gobble_file,
|
||
get_link_name): Quote output in diagnostics.
|
||
|
||
* NEWS, doc/fileutils.texi: Describe above changes.
|
||
* doc/fileutils.texi: Mention that control characters are output
|
||
as question marks if output is a terminal.
|
||
|
||
1998-02-22 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* Version 3.16m.
|
||
|
||
* ChangeLog-1997: New file.
|
||
* Makefile.am (EXTRA_DIST): Add ChangeLog-1997.
|
||
|
||
1998-02-21 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* configure.in (AC_OUTPUT): Add tests/mv/Makefile.
|
||
* tests/Makefile.am (SUBDIRS): Add mv.
|
||
* tests/mv: New directory
|
||
* tests/mv/mv-special-1: New test.
|
||
|
||
1998-02-20 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* src/touch.c: Include get-date.h.
|
||
Remove get_date decl.
|
||
|
||
* lib/getdate.h: Removed. Could cause confusion with an
|
||
automake-generated `.y.h' rule.
|
||
* lib/get-date.h: Renamed from getdate.h.
|
||
* lib/getdate.y: s/getdate.h/get-date.h/
|
||
* lib/Makefile.am (noinst_HEADERS): s/getdate.h/get-date.h/
|
||
|
||
1998-02-19 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
1997-10-17 Eli Zaretskii <eliz@is.elta.co.il>
|
||
* lib/fileblocks.c [__DJGPP__]: Add missing typedef for daddr_t.
|
||
|
||
1998-02-13 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* src/mv.c (cp_option_init): Set copy_as_regular to 0, not 1.
|
||
Otherwise, mv tries to open special files.
|
||
Reported by Kjetil Torgrim Homme.
|
||
|
||
1998-02-08 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* Makefile.maint (cvs-dist): Update po/ to clear modified status
|
||
of *.po files before running cvs tag -c.
|
||
|
||
* src/ln.c (usage): Reword to use `TARGET' and `LINK_NAME' in
|
||
description.
|
||
|
||
1998-02-07 Jim Meyering <meyering@eng.ascend.com>
|
||
|
||
* GNUmakefile: New file.
|
||
* Makefile.am (EXTRA_DIST): Add GNUmakefile.
|
||
Don't include Makefile.maint from here. It's included from GNUmakefile.
|
||
|
||
* configure.in: Don't use AM_MAINTAINER_MODE.
|
||
(jm_PERL): Use this.
|
||
|
||
* src/Makefile.am (EXTRA_DIST): Remove dcgen.pl. Add dcgen.
|
||
(CLEANFILES): Remove dcgen.
|
||
(dircolors.h): Use $(PERL).
|
||
(.pl): Remove rule.
|
||
|
||
1998-02-01 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* POTFILES.in: Add remove.c. Reported by Santiago Vila.
|
||
|
||
1998-01-28 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* src/df.c (print_header): Tweak format to align heading over
|
||
last column of `df -i' output. From Andreas Schwab.
|
||
|
||
1998-01-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||
|
||
* Makefile.am: Include Makefile.maint from $(srcdir).
|
||
|
||
1998-01-25 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* Version 3.16l.
|
||
|
||
* Makefile.maint: New file.
|
||
* Makefile.am: Move rules common to textutils, fileutils, sh-utils
|
||
into Makefile.maint.
|
||
Include Makefile.maint.
|
||
(EXTRA_DIST): Add Makefile.maint.
|
||
|
||
* src/cp.c (re_protect): Don't fail for non-root when chown fails
|
||
due not only to lack of permission (EPERM), but also to lack of
|
||
support (EINVAL). Reported by Bengt Martensson.
|
||
* src/copy.c (DO_CHOWN): Likewise.
|
||
|
||
1998-01-24 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* tests/ls/time-1 (test_failure): Rename does not update ctime;
|
||
link does -- so use ln, not mv.
|
||
Note that the SunOS4.1.4 failure of the ctime test is expected.
|
||
|
||
* src/system.h (TYPE_MINIMUM): Add extra outer cast to work around
|
||
bug in Cray C 5.0.3.0 when T == time_t.
|
||
|
||
* tests/rm/r-1: Adjust expected output for changed format of
|
||
`rm --verbose'.
|
||
* tests/rm/r-2: Likewise.
|
||
|
||
1998-01-23 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* lib/mktime.c (__mktime_internal): Work around bug in Irix4.0.5's
|
||
C compiler. From Kaveh Ghazi.
|
||
(TYPE_MINIMUM): Define.
|
||
(TYPE_MAXIMUM): Define.
|
||
(TIME_T_MIN): Use TYPE_MINIMUM.
|
||
(TIME_T_MAX): Use TYPE_MAXIMUM.
|
||
|
||
1998-01-22 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* src/dd.c: Reorder functions to obviate forward dcls.
|
||
(quit): Declare to be inline to stifle compile warning.
|
||
|
||
* src/cp.c (do_copy): Add unreachable `return 0' to stifle warning.
|
||
|
||
* tests/rm/sunos-1: Don't use -f. Do adjust $RM if it's a
|
||
relative path.
|
||
|
||
* tests/ls/time-1: Use GNU touch to work around problems with NFS
|
||
caching and/or clock skew. Reported by Kaveh Ghazi.
|
||
|
||
* tests/ls/Makefile.am (TESTS_ENVIRONMENT): Add TOUCH.
|
||
|
||
* src/Makefile.am (noinst_HEADERS): Add remove.h.
|
||
(mv_SOURCES): Define.
|
||
(rm_SOURCES): Define.
|
||
|
||
1998-01-21 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* src/install.c: Declare new global, backup_type.
|
||
(main): Initialize backup_type unconditionally.
|
||
(copy_file): Call find_backup_file_name with new argument, backup_type.
|
||
* src/ln.c: Declare new global, backup_type.
|
||
(main): Initialize backup_type unconditionally.
|
||
(do_link): Call find_backup_file_name with new argument, backup_type.
|
||
|
||
* src/copy.c (copy_internal): Use x->backup_type, not the global.
|
||
(valid_options): Use VALID_BACKUP_TYPE and VALID_SPARSE_MODE.
|
||
|
||
* src/copy.h: (VALID_SPARSE_MODE): Define.
|
||
[struct cp_options] (backup_type): New member.
|
||
|
||
* src/cp.c [NDEBUG]: Comment out definition.
|
||
(do_copy): Use x->backup_type, not the global.
|
||
|
||
* src/remove.c: New file. Contains guts of old rm.c.
|
||
(remove_init): New function.
|
||
(remove_fini): New function.
|
||
(rm): Take third argument, specifying options.
|
||
* src/remove.h: New file. Associated dcls.
|
||
* src/rm.c: Remove and minimally librarify guts for use in mv.c.
|
||
(main): Pass options (`&x') to rm.
|
||
Call remove_init and remove_fini instead of open-coding them.
|
||
|
||
* src/mv.c (rm_option_init): New function.
|
||
(cp_option_init): New function.
|
||
(copy_reg): Remove now-unused function.
|
||
(do_move): Set up for and use `copy.c (copy)' in place of copy_reg.
|
||
Set up for and use `remove.c (rm)' in place of unlink.
|
||
|
||
1998-01-20 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* lib/backupfile.c: Use ANSI function definitions.
|
||
Remove global declaration of backup_type.
|
||
(simple_backup_suffix): Default to `~', not `.orig'.
|
||
Use PARAMS, not __BACKUPFILE_P.
|
||
(find_backup_file_name): Add parameter, backup_type.
|
||
* lib/backupfile.h: Remove extern declaration of backup_type.
|
||
Use PARAMS, not __BACKUPFILE_P.
|
||
(VALID_BACKUP_TYPE): Define.
|
||
(find_backup_file_name): Adjust prototype.
|
||
|
||
1998-01-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||
|
||
* src/df.c (print_header): Fix inode format header to line it up
|
||
with the rest of the output.
|
||
|
||
1998-01-13 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* lib/stat.c: Set errno to ENOENT, not EINVAL. This is consistent
|
||
with most other implementations.
|
||
|
||
1998-01-12 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* lib/fileblocks.c: Include sys/param.h only #if HAVE_SYS_PARAM_H.
|
||
Move function-spanning `#if ...BSIZE' directive to follow inclusion
|
||
of sys/param.h since BSIZE is sometimes defined in sys/param.h.
|
||
Reported by Philippe De Muyter.
|
||
|
||
1998-01-10 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* Version 3.16k.
|
||
|
||
* src/install.c (install_file_to_path): New function.
|
||
FIXME: update fileutils.texi.
|
||
(main): Handle new option, -D.
|
||
Based on a patch from Marty Leisner.
|
||
(usage): Describe -D.
|
||
|
||
* src/ls.c (decode_switches) [-u]: Fix bug whereby -u worked only
|
||
with -l or -t. Now, -u (like -c) implies --sort=time.
|
||
(usage): Correct descriptions of --sort, --time, and -t.
|
||
Suggestions from Andreas Schwab.
|
||
|
||
Add test for the above fix.
|
||
* configure.in (AC_OUTPUT): Add tests/ls/Makefile.
|
||
* tests/Makefile.am (SUBDIRS): Add ls.
|
||
* tests/ls: New directory.
|
||
* tests/ls/Makefile.am: New file.
|
||
* tests/ls/time-1: New file.
|
||
|
||
* lib/makepath.c (make_path): Reformat 3 if-stmts to test
|
||
`if (newly_created_dir)' only once. Suggestion from Andreas Schwab.
|
||
|
||
1998-01-06 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* lib/getdate.y: Move inclusion of getdate.h and dependent extern
|
||
declarations down so getdate.h's prototype follows the sometimes-
|
||
enabled definition of `const' to nothing. Otherwise, the prototype
|
||
wouldn't match the definition because of the defined-away `const'.
|
||
From Kaveh Ghazi.
|
||
(get_date): ANSI-fy definition.
|
||
Add %expect directive.
|
||
|
||
1998-01-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
|
||
|
||
* lib/makepath.c (make_path): Put only newly created directories
|
||
on the LEADING_DIRS list.
|
||
|
||
1998-01-05 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* lib/fsusage.c (PROPAGATE_ALL_ONES): New macro.
|
||
(get_fs_usage): If a value consists entirely of 1 bits,
|
||
propagate this info to the output by setting it to (uintmax_t) -1.
|
||
* src/df.c (df_readable): New function.
|
||
(show_dev): If a value consists entirely of 1 bits, or is derived
|
||
from some other value that consists entirely of 1 bits, report "-".
|
||
Check inode and block counts more carefully for plausibility,
|
||
to avoid arithmetic overflow when computing percentages.
|
||
|
||
1998-01-04 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* Version 3.16j.
|
||
|
||
* lib/Makefile.in: Regenerated with patched automake-1.2d.
|
||
See README-alpha.
|
||
|
||
* src/chgrp.c: Use a single enumerated type, Verbosity, instead of
|
||
the two booleans, verbose and changes_only. This fixes a bug whereby
|
||
--change had the same effect as --verbose.
|
||
* src/chmod.c: Likewise.
|
||
* src/chown.c: Likewise.
|
||
Reported by Paul Eggert.
|
||
|
||
1998-01-04 Paul Eggert <eggert@twinsun.com>
|
||
|
||
Check for write errors more carefully.
|
||
|
||
* lib/Makefile.am (libfu_a_SOURCES): Add closeout.c.
|
||
(noinst_HEADERS): Add closeout.h.
|
||
* lib/closeout.c, lib/closeout.h: New files.
|
||
* lib/long-options.c (parse_long_options),
|
||
src/chgrp.c, src/chmod.c, src/chown.c, src/cp.c, src/dd.c,
|
||
src/df.c, src/dircolors.c, src/du.c, src/install.c, src/ln.c,
|
||
src/ls.c, src/mkdir.c, src/mkfifo.c, src/mknod.c, src/mv.c,
|
||
src/mvdir.c, src/rm.c, src/rmdir.c, src/sync.c, src/touch.c
|
||
(main, usage): Check for write error to stdout before exiting.
|
||
Include "closeout.h".
|
||
|
||
1998-01-03 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* src/df.c (show_dev): Treat `fsu.fsu_bavail == (unsigned long) -1'
|
||
just like `fsu.fsu_blocks == 0' as an indicator that usage information
|
||
is invalid. This happens with Solaris-5.5.1 CD-ROM mount points.
|
||
|
||
* lib/save-cwd.h: Guard PARAMS-enabling definition with
|
||
`defined PROTOTYPES || (defined __STDC__ && __STDC__)' to avoid
|
||
problems with Irix4's cc. From Kaveh Ghazi.
|
||
* lib/getdate.h: Likewise, but just to be consistent.
|
||
|
||
* configure.in: Convert the .o suffix on files in LIBOBJS to $U.o so
|
||
those files will be built via the ANSI2KNR-filtering rules if necessary.
|
||
Reported by Kaveh Ghazi.
|
||
|
||
1998-01-02 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* Version 3.16i.
|
||
|
||
Fix problem with `install -d'. Reported by Marty Leisner.
|
||
|
||
* src/install.c (get_ids): When otherwise unspecified,
|
||
set uid and gid to -1.
|
||
* lib/makepath.c (make_path): Try to change ownership only if we've
|
||
just created the directory. Fix latent bug (s/&&/||/ in two places --
|
||
also, note that it could not be exercised via install or mkdir)
|
||
whereby chown would not be invoked when only one of owner/group is
|
||
not -1.
|
||
|
||
1998-01-01 Jim Meyering <meyering@na-net.ornl.gov>
|
||
|
||
* src/rm.c (remove_cwd_entries): Initialize the entry-name obstack
|
||
only once and never free it.
|
||
|
||
Local Variables:
|
||
version-control: never
|
||
End:
|