1
0
mirror of git://git.sv.gnu.org/coreutils.git synced 2026-06-26 12:06:50 +02:00
Commit Graph

201 Commits

Author SHA1 Message Date
Paul Eggert f3b9ba46f8 (struct dir_attr, flag_path, remove_trailing_slashes,
re_protect, make_path_private, target_directory_operand, do_copy,
cp_option_init, decode_preserve_arg, main): Use bool when appropriate.
(target_directory_operand): Do not clear *NEW_DST if stat
succeeds.  It's not necessary in that case, as *NEW_DST is always
false already.
(do_copy): Rewrite slightly to avoid need for "unreachable" comment.
(main): Use EXIT_SUCCESS, EXIT_FAILURE instead of 0, 1.
2004-07-30 07:57:27 +00:00
Paul Eggert 53b24fa527 (do_copy): find_backup_file_name no longer returns NULL, so don't
bother to check for this.
2004-07-27 23:14:05 +00:00
Jim Meyering ae206c4b1c (do_copy): Assume path_concat returns non-NULL.
(make_path_private): 2nd arg is now size_t, not int,
to avoid problem when path_concat dir name is longer than 2 GiB (!).
2004-07-04 17:47:09 +00:00
Jim Meyering 1b32f828b0 Add short names -t and -T for --target-directory
and --no-target-directory options, respectively.

(NO_TARGET_DIRECTORY_OPTION, TARGET_DIRECTORY_OPTION):
Remove.  All uses changed to 'T' and 't', respectively.

(long_opts, usage, do_copy, main): Add -t and -T as
aliases for --target-directory and --no-target-directory,
respectively.
2004-07-02 17:00:10 +00:00
Jim Meyering 7ed69a972c Add support for --no-target-directory option.
(NO_TARGET_DIRECTORY_OPTION): New constant.
(long_opts, usage, do_copy, main): Add support for
2004-06-30 18:38:24 +00:00
Jim Meyering 8340545c8b Use more-consistent rules among cp, ln, and mv when dealing with
last operands that are (or look like) directories.

	* src/cp.c (target_directory_operand): New, nearly-common function,
	It reports an error if the destination appears to be a directory
	(e.g., because it has a trailing slash) but is not.
	* src/cp.c (do_copy): Use it.

	* src/cp.c (do_copy): Don't assume argc is positive.
	Don't bother to lstat dest, since copy() will do that for us.
	Use "const" to avoid the need for cast.

	* src/cp.c (do_copy): Don't output a usage message because of file
	problems (e.g., an operand is not a directory).  Use it only for
	syntax.  Standardize on "target %s is not a directory" for the
	diagnostic.

	* src/cp.c (do_copy): Remove test for trailing slash, since
	target_directory_operand now does this.

	* src/cp.c (main): Reject multiple target directories.
	Check whether a specified target is a directory when parsing the
	options, using stat.  This gives more-accurate diagnostics.
2004-06-28 18:35:54 +00:00
Jim Meyering 86e30699e4 (usage): Fix copy+paste error in description of
--target-directory: s/move/copy/.  From Paul Jarc.
2004-06-28 18:31:46 +00:00
Jim Meyering 110be46897 Standardize on the diagnostics given when someone gives
too few operands ("missing operand after `xxx'") or
too many operands ("extra operand `xxx'").
Include "quote.h" and/or "error.h" if it wasn't already being included.
(do_copy): Likewise.
2004-06-21 15:02:28 +00:00
Jim Meyering ca0f9a0a29 (do_copy): Tweak wording in a diagnostic.
Suggestion from Karl Berry.
Include "quoatearg.h".
(do_copy): Use quotearg_colon (not quote) for diagnostics
that begin with `"%s:'.
2004-03-13 08:09:58 +00:00
Jim Meyering d9e9327b09 (re_protect): Use XSTAT (x, ...)' in place of *(x->xstat) (...)'.
(do_copy): Declare/use local xstat rather than x->xstat.
(main): Remove code that set x.xstat.
2004-02-07 16:01:20 +00:00
Jim Meyering 7e85d17815 (usage): Use EXIT_SUCCESS, not 0, for clarity.
(exit_status): Remove static var....
(main): Making it local here instead.  Use =, not |=, to set it.
2004-01-21 22:49:09 +00:00
Jim Meyering 68eb5f3e0d (re_protect): Use ASSIGN_STRDUPA rather than alloca and strcpy.
(make_path_private): Likewise.
2004-01-04 21:07:16 +00:00
Jim Meyering e5dda0ab93 (make_path_private): Use sizeof *var' rather than sizeof EXPLICIT_TYPE'.
The former is more maintainable and usually shorter.
2003-11-02 20:17:46 +00:00
Jim Meyering cf4fdf373f Most .c files (AUTHORS): Revert the WRITTEN_BY/AUTHORS change
of 2003-09-19.  Now, AUTHORS is a comma-separated list of strings.
Update the call to parse_long_options so that `AUTHORS, NULL' are the
last parameters.

* src/true.c (main): Append NULL to version_etc argument list.
* src/sys2.h (case_GETOPT_VERSION_CHAR): Likewise.
2003-10-18 10:05:47 +00:00
Jim Meyering 3d56cf5c1d Remove unnecessary casts of alloca, since now it's guaranteed to be (void *). 2003-09-28 08:23:28 +00:00
Jim Meyering bafd927f03 (WRITTEN_BY): Rename from AUTHORS.
Begin each WRITTEN_BY string with `Written by ' and end it with `.'.
Mark each WRITTEN_BY string as translatable.
2003-09-18 22:19:03 +00:00
Jim Meyering c6ec144494 revert previous change 2003-09-18 19:39:12 +00:00
Jim Meyering 3280bf4b55 Update AUTHORS definition to be a comma-separated list of strings and/or update
the call to parse_long_options so that `AUTHORS, NULL' are the last parameters.
2003-09-18 18:22:23 +00:00
Jim Meyering 40802a2fbd Include utimens.h.
(re_protect): Set file timestamps with utimens, not utime.
2003-08-09 17:46:13 +00:00
Jim Meyering 64521cfa9a It appears that the `#pragma alloca' included via "system.h" is
adequate, since join.c uses alloca, yet lacked an in-file #pragma.

Remove `#pragma alloca'.
2003-07-12 11:38:43 +00:00
Jim Meyering 89d9530643 (do_copy): Give a better diagnostic when failing due
to nonexistent destination directory.  Reported by Dmitry Rutsky.
See http://bugs.debian.org/199730 for details.
2003-07-04 10:01:35 +00:00
Jim Meyering 6bcd4b08ba (main): Call initialize_main. 2003-06-17 18:13:23 +00:00
Jim Meyering 9f70372581 Remove SPC in SPC-TAB sequence. 2003-04-11 12:38:19 +00:00
Jim Meyering 6c93bdeeaa Remove anachronistic casts of xmalloc,
xrealloc, and xcalloc return values and of xrealloc's first argument.
2003-04-11 10:51:56 +00:00
Jim Meyering 79cb935030 fix typo in comment 2003-03-09 07:56:29 +00:00
Jim Meyering 2b1a18e682 Remove everything associated with mmap-stack.c.
This reverts the two changes of 2003-02-21.
2003-03-07 20:01:35 +00:00
Jim Meyering 4d34fabc8d Include "mmap-stack.h".
(main): Invoke `run' through a macro that (when possible) runs it
with a large, mmap'd stack.
2003-02-21 10:41:27 +00:00
Jim Meyering 2bb32c98a5 (run): New function, preparing for use of
RUN_WITH_BIG_STACK_*
2003-02-17 08:39:20 +00:00
Jim Meyering d517c8fa79 (do_copy): Tweak diagnostic to be consistent with the one
from mv: s/missing file arguments/missing file argument/.
With --target-directory=DIR, cp and mv work with a single file argument.
Reported by Karl Berry.
2003-01-03 19:34:22 +00:00
Jim Meyering 7ba3e40970 Fix a bug whereby cp would fail to parse an option like
--preserve=mode,ownership.

(decode_preserve_arg): Advance `comma' to
point the character following the comma.
2002-12-11 23:44:23 +00:00
Jim Meyering 4006f4e672 Change exit (0)' to exit (EXIT_SUCCESS)',
`exit (1)' to `exit (EXIT_FAILURE)', and
`usage (1)' to `usage (EXIT_FAILURE)'.
2002-08-31 08:52:10 +00:00
Jim Meyering 7488703199 Change error (1, ...' to error (EXIT_FAILURE, ...'. 2002-08-30 23:04:53 +00:00
Jim Meyering d23970e52e (usage): Use the PACKAGE_BUGREPORT e-mail address, rather than hard-coding it. 2002-07-02 09:05:33 +00:00
Jim Meyering 071b36fd90 Change all `preserving ...' diagnostics to
`failed to preserve ...' to make the failure clearer.
2002-06-21 12:10:02 +00:00
Jim Meyering 48f998c0e8 (do_copy): Change wording in diagnostic. 2002-03-10 22:22:33 +00:00
Jim Meyering 246e147a6a (COPY_CONTENTS_OPTION): New enum value.
(long_opts): Add --copy-contents.
(usage): Describe new behavior.  Sort options.
(main): Implement new behavior.  Remove diagnostics for -a and -r;
no longer needed.
2002-03-03 22:28:48 +00:00
Jim Meyering b9d1d9e98e (main): Warn when -r is specified before --archive (-a). 2002-03-02 17:23:34 +00:00
Jim Meyering 7a5c83d8d5 (main): Revert change of 2001-12-29. With this change,
cp -r once again preserves symlinks.
(usage): Document the original (now-restored) behavior.
2002-03-02 17:15:42 +00:00
Jim Meyering baea296b94 (main): Fail if -r is specified after --archive (-a) on the command line. 2002-03-02 16:44:02 +00:00
Jim Meyering c672e2892b (main): With -r, always dereference symlinks. 2001-12-29 22:58:40 +00:00
Jim Meyering d5654c49bd (re_protect):
Include the word `fail' in some diagnostics to make it clearer
that they indicate a failure.
s/getting attributes/failed to get attributes/
2001-12-11 11:47:25 +00:00
Jim Meyering f3ac2e7839 Use new macros, HELP_OPTION_DESCRIPTION and VERSION_OPTION_DESCRIPTION
instead of hard-coding --help and --version descriptions.
2001-12-02 22:26:57 +00:00
Jim Meyering 072b27d4d2 (usage): Note that ``Mandatory arguments to long options are mandatory
for short options too.''
2001-11-23 20:29:56 +00:00
Jim Meyering b78de3e724 Split usage strings so that --help and --version
descriptions are alone in their own string.
2001-11-23 20:10:25 +00:00
Jim Meyering a5f1ced62a (usage): Split --help output into smaller pieces.
Use fputs, not printf.
2001-11-23 15:41:16 +00:00
Jim Meyering 669102ec61 (cp_option_init): Likewise.
(do_copy): Call src_info_init.
2001-11-22 19:49:01 +00:00
Jim Meyering c5ad355677 (cp_option_init): Initialize new member.
(do_copy): Remove const attribute from declaration of parameter, x.
dest_info_init now takes a parameter.
2001-11-22 10:55:40 +00:00
Jim Meyering 1e2d216c9e (main): Free hash table storage. 2001-10-24 07:38:26 +00:00
Jim Meyering af51884dac Now, -P is the same as --no-dereference, per POSIX.
Use --parents to get the old meaning.

(enum) [NO_DEREFERENCE_OPTION]: Remove member.
(long_opts): Associate --no-dereference with `-P'.
(usage): Update description of -P.
(main): Remove local, used_P_option, and code to warn
that the meaning of -P would be changing.
2001-10-14 20:54:44 +00:00
Jim Meyering ed759a47cb (enum) [NO_DEREFERENCE_OPTION]: New member.
(enum) [NO_PRESERVE_ATTRIBUTES_OPTION]: New member.
(enum) [PRESERVE_ATTRIBUTES_OPTION]: New member.
(long_opts): Separate -d and --no-dereference options.
Add `no-preserve'.
Separate -p and --preserve options.
The long-named --preserve now accepts optional arguments; -p doesn't.
(usage): Describe additions and changes.
(cp_option_init): Initialize new member, preserve_links, to 0.
(decode_preserve_arg): New function.
(main) [case 'a']: Set preserve_links to 1.
[case 'd']: Set preserve_links to 1.
Add `case' for long-named --no-dereference.
Handle long-named --no-preserve and --preserve.
2001-10-13 19:57:08 +00:00