]> Dogcows Code - chaz/tar/commitdiff
(BACKUP_OPTION, DELETE_OPTION, EXCLUDE_OPTION, GROUP_OPTION,
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 2 Jul 1999 21:33:51 +0000 (21:33 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 2 Jul 1999 21:33:51 +0000 (21:33 +0000)
MODE_OPTION, NEWER_MTIME_OPTION, NO_RECURSE_OPTION, NULL_OPTION,
OWNER_OPTION, POSIX_OPTION, PRESERVE_OPTION, RECORD_SIZE_OPTION,
RSH_COMMAND_OPTION, SUFFIX_OPTION, USE_COMPRESS_PROGRAM_OPTION,
VOLNO_FILE_OPTION, OBSOLETE_ABSOLUTE_NAMES, OBSOLETE_BLOCK_COMPRESS,
OBSOLETE_BLOCKING_FACTOR, OBSOLETE_BLOCK_NUMBER,
OBSOLETE_READ_FULL_RECORDS, OBSOLETE_TOUCH, OBSOLETE_VERSION_CONTROL):
Make sure they can't be valid chars, so they don't overlap with char codes.
Use an enum instead of a lot of #defines.
(long_options, main, usage): Remove --ending-file option.
(OPTION_STRING): Remove -E.

src/tar.c

index 35d8dd8c793c7cdc4095f3fd697f5066ba2b83ef..9b73de3cce8c23b9570356fd95a481de9b4fa88d 100644 (file)
--- a/src/tar.c
+++ b/src/tar.c
@@ -106,39 +106,40 @@ confirm (const char *message_action, const char *message_name)
    do it.  For the others, we share the code for the equivalent short
    named option, the name of which is stored in the otherwise-unused `val'
    field of the `struct option'; for long options that have no equivalent
-   short option, we use nongraphic characters as pseudo short option
-   characters, starting at 2 and going upwards.  */
-
-#define BACKUP_OPTION                  2
-#define DELETE_OPTION                  3
-#define EXCLUDE_OPTION                 4
-#define GROUP_OPTION                   5
-#define MODE_OPTION                    6
-#define NEWER_MTIME_OPTION             7
-#define NO_RECURSE_OPTION              8
-#define NULL_OPTION                    9
-#define OWNER_OPTION                   10
-#define POSIX_OPTION                   11
-#define PRESERVE_OPTION                        12
-#define RECORD_SIZE_OPTION             13
-#define RSH_COMMAND_OPTION             14
-#define SUFFIX_OPTION                  15
-#define USE_COMPRESS_PROGRAM_OPTION    16
-#define VOLNO_FILE_OPTION              17
-
-/* Some cleanup is being made in GNU tar long options.  Using old names is
-   allowed for a while, but will also send a warning to stderr.  Take old
-   names out in 1.14, or in summer 1997, whichever happens last.  We use
-   nongraphic characters as pseudo short option characters, starting at 31
-   and going downwards.  */
-
-#define OBSOLETE_ABSOLUTE_NAMES                31
-#define OBSOLETE_BLOCK_COMPRESS                30
-#define OBSOLETE_BLOCKING_FACTOR       29
-#define OBSOLETE_BLOCK_NUMBER          28
-#define OBSOLETE_READ_FULL_RECORDS     27
-#define OBSOLETE_TOUCH                 26
-#define OBSOLETE_VERSION_CONTROL       25
+   short option, we use non-characters as pseudo short options,
+   starting at CHAR_MAX + 1 and going upwards.  */
+
+enum
+{
+  BACKUP_OPTION = CHAR_MAX + 1,
+  DELETE_OPTION,
+  EXCLUDE_OPTION,
+  GROUP_OPTION,
+  MODE_OPTION,
+  NEWER_MTIME_OPTION,
+  NO_RECURSE_OPTION,
+  NULL_OPTION,
+  OWNER_OPTION,
+  POSIX_OPTION,
+  PRESERVE_OPTION,
+  RECORD_SIZE_OPTION,
+  RSH_COMMAND_OPTION,
+  SUFFIX_OPTION,
+  USE_COMPRESS_PROGRAM_OPTION,
+  VOLNO_FILE_OPTION,
+
+  /* Some cleanup is being made in GNU tar long options.  Using old names is
+     allowed for a while, but will also send a warning to stderr.  Take old
+     names out in 1.14, or in summer 1997, whichever happens last.  */
+
+  OBSOLETE_ABSOLUTE_NAMES,
+  OBSOLETE_BLOCK_COMPRESS,
+  OBSOLETE_BLOCKING_FACTOR,
+  OBSOLETE_BLOCK_NUMBER,
+  OBSOLETE_READ_FULL_RECORDS,
+  OBSOLETE_TOUCH,
+  OBSOLETE_VERSION_CONTROL
+};
 
 /* If nonzero, display usage information and exit.  */
 static int show_help = 0;
@@ -170,7 +171,6 @@ struct option long_options[] =
   {"dereference", no_argument, NULL, 'h'},
   {"diff", no_argument, NULL, 'd'},
   {"directory", required_argument, NULL, 'C'},
-  {"ending-file", required_argument, NULL, 'E'},
   {"exclude", required_argument, NULL, EXCLUDE_OPTION},
   {"exclude-from", required_argument, NULL, 'X'},
   {"extract", no_argument, NULL, 'x'},
@@ -351,7 +351,6 @@ Local file selection:\n\
   -h, --dereference            dump instead the files symlinks point to\n\
       --no-recursion           avoid descending automatically in directories\n\
   -l, --one-file-system        stay in local file system when creating archive\n\
-  -E, --ending-file=NAME       end reading the archive before file NAME\n\
   -K, --starting-file=NAME     begin at file NAME in the archive\n"),
             stdout);
 #if !MSDOS
@@ -406,13 +405,13 @@ Report bugs to <tar-bugs@gnu.org>.\n"),
 | Parse the options for tar.  |
 `----------------------------*/
 
-/* Available option letters are DHIJQY and aejnqy.  Some are reserved:
+/* Available option letters are DEHIJQY and aejnqy.  Some are reserved:
 
    y  per-file gzip compression
    Y  per-block gzip compression */
 
 #define OPTION_STRING \
-  "-01234567ABC:E:F:GK:L:MN:OPRST:UV:WX:Zb:cdf:g:hiklmoprstuvwxz"
+  "-01234567ABC:F:GK:L:MN:OPRST:UV:WX:Zb:cdf:g:hiklmoprstuvwxz"
 
 static void
 set_subcommand_option (enum subcommand subcommand)
@@ -583,10 +582,6 @@ decode_options (int argc, char *const *argv)
        set_subcommand_option (DIFF_SUBCOMMAND);
        break;
 
-      case 'E':
-       ending_file_option = optarg;
-       break;
-
       case 'f':
        if (archive_names == allocated_archive_names)
          {
This page took 0.033831 seconds and 4 git commands to generate.