/* A tar (tape archiver) program.
- Copyright 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1999, 2000, 2001 Free
- Software Foundation, Inc.
+ Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1999, 2000, 2001
+ Free Software Foundation, Inc.
Written by John Gilmore, starting 1985-08-25.
#define GLOBAL
#include "common.h"
+#include <print-copyr.h>
#include <localedir.h>
#include <prepargs.h>
#include <quotearg.h>
NO_WILDCARDS_MATCH_SLASH_OPTION,
NULL_OPTION,
OVERWRITE_OPTION,
+ OVERWRITE_DIR_OPTION,
OWNER_OPTION,
POSIX_OPTION,
PRESERVE_OPTION,
{"old-archive", no_argument, 0, 'o'},
{"one-file-system", no_argument, 0, 'l'},
{"overwrite", no_argument, 0, OVERWRITE_OPTION},
+ {"overwrite-dir", no_argument, 0, OVERWRITE_DIR_OPTION},
{"owner", required_argument, 0, OWNER_OPTION},
{"portability", no_argument, 0, 'o'},
{"posix", no_argument, 0, POSIX_OPTION},
--remove-files remove files after adding them to the archive\n\
-k, --keep-old-files don't replace existing files when extracting\n\
--overwrite overwrite existing files when extracting\n\
+ --overwrite-dir overwrite directory metadata when extracting\n\
-U, --unlink-first remove each file prior to extracting over it\n\
--recursive-unlink empty hierarchies prior to extracting directory\n\
-S, --sparse handle sparse files efficiently\n\
old_files_option = OVERWRITE_OLD_FILES;
break;
+ case OVERWRITE_DIR_OPTION:
+ old_files_option = OVERWRITE_OLD_DIRS;
+ break;
+
case OWNER_OPTION:
if (! (strlen (optarg) < UNAME_FIELD_SIZE
&& uname_to_uid (optarg, &owner_option)))
if (show_version)
{
- printf ("tar (GNU %s) %s\n%s\n%s\n%s\n", PACKAGE, VERSION,
- "Copyright 2001 Free Software Foundation, Inc.",
- _("\
+ printf ("tar (GNU %s) %s\n", PACKAGE, VERSION);
+ print_copyright ("2001 Free Software Foundation, Inc.");
+ puts (_("\
This program comes with NO WARRANTY, to the extent permitted by law.\n\
You may redistribute it under the terms of the GNU General Public License;\n\
-see the file named COPYING for details."),
- _("Written by John Gilmore and Jay Fenlason."));
+see the file named COPYING for details."));
+
+ puts (_("Written by John Gilmore and Jay Fenlason."));
+
exit (TAREXIT_SUCCESS);
}