"Fossies" - the Fresh Open Source Software Archive

Member "rush-1.9/src/rwopt.h" (19 Apr 2019, 15328 Bytes) of package /linux/privat/rush-1.9.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "rwopt.h" see the Fossies "Dox" file reference documentation and the latest Fossies "Diffs" side-by-side code changes report: 1.8_vs_1.9.

    1 /* -*- buffer-read-only: t -*- vi: set ro:
    2    THIS FILE IS GENERATED AUTOMATICALLY.  PLEASE DO NOT EDIT.
    3 */
    4 
    5 #line 1 "rwopt.opt"
    6 /* This file is part of GNU Rush.                  
    7    Copyright (C) 2008-2019 Sergey Poznyakoff
    8 
    9    GNU Rush is free software; you can redistribute it and/or modify
   10    it under the terms of the GNU General Public License as published by
   11    the Free Software Foundation; either version 3, or (at your option)
   12    any later version.
   13 
   14    GNU Rush is distributed in the hope that it will be useful,
   15    but WITHOUT ANY WARRANTY; without even the implied warranty of
   16    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   17    GNU General Public License for more details.
   18 
   19    You should have received a copy of the GNU General Public License
   20    along with GNU Rush.  If not, see <http://www.gnu.org/licenses/>. */
   21 
   22 #line 17 "rwopt.opt"
   23 
   24 #line 17
   25 void print_help(void);
   26 #line 17
   27 void print_usage(void);
   28 #line 38 "rwopt.opt"
   29 
   30 #line 38
   31 /* Option codes */
   32 #line 38
   33 enum {
   34 #line 38
   35     _OPTION_INIT=255,
   36 #line 38
   37     #line 38 "rwopt.opt"
   38 
   39 #line 38
   40     OPTION_USAGE,
   41 #line 38 "rwopt.opt"
   42 
   43 #line 38
   44     OPTION_VERSION,
   45 
   46 #line 38 "rwopt.opt"
   47     MAX_OPTION
   48 #line 38
   49 };
   50 #line 38
   51 static struct option long_options[] = {
   52 #line 38
   53     #line 20 "rwopt.opt"
   54 
   55 #line 20
   56     { "format", required_argument, 0, 'F' },
   57 #line 26 "rwopt.opt"
   58 
   59 #line 26
   60     { "file", required_argument, 0, 'f' },
   61 #line 32 "rwopt.opt"
   62 
   63 #line 32
   64     { "no-header", no_argument, 0, 'H' },
   65 #line 38 "rwopt.opt"
   66 
   67 #line 38
   68     { "help", no_argument, 0, 'h' },
   69 #line 38 "rwopt.opt"
   70 
   71 #line 38
   72     { "usage", no_argument, 0, OPTION_USAGE },
   73 #line 38 "rwopt.opt"
   74 
   75 #line 38
   76     { "version", no_argument, 0, OPTION_VERSION },
   77 
   78 #line 38 "rwopt.opt"
   79     {0, 0, 0, 0}
   80 #line 38
   81 };
   82 #line 38
   83 static struct opthelp {
   84 #line 38
   85         const char *opt;
   86 #line 38
   87         const char *arg;
   88 #line 38
   89         int is_optional;
   90 #line 38
   91         const char *descr;
   92 #line 38
   93 } opthelp[] = {
   94 #line 38
   95     #line 22 "rwopt.opt"
   96 
   97 #line 22
   98     { "-F, --format", N_("STRING"), 0, N_("Use STRING instead of the default format.") },
   99 #line 28 "rwopt.opt"
  100 
  101 #line 28
  102     { "-f, --file", N_("DIR"), 0, N_("Look for database files in DIR.") },
  103 #line 34 "rwopt.opt"
  104 
  105 #line 34
  106     { "-H, --no-header", NULL, 0, N_("Do not display header line.") },
  107 #line 38 "rwopt.opt"
  108 
  109 #line 38
  110     { NULL, NULL, 0, N_("Other options") },
  111 #line 38 "rwopt.opt"
  112 
  113 #line 38
  114     { "-h, --help", NULL, 0, N_("Give this help list") },
  115 #line 38 "rwopt.opt"
  116 
  117 #line 38
  118     { "--usage", NULL, 0, N_("Give a short usage message") },
  119 #line 38 "rwopt.opt"
  120 
  121 #line 38
  122     { "--version", NULL, 0, N_("Print program version") },
  123 
  124 #line 38 "rwopt.opt"
  125 };
  126 #line 17 "rwopt.opt"
  127 
  128 #line 17
  129 const char *program_version = "rushwho" " (" PACKAGE_STRING ")";
  130 #line 17
  131 static char doc[] = N_("rushwho - show listing of online Rush users.");
  132 #line 17
  133 static char args_doc[] = N_("");
  134 #line 17
  135 const char *program_bug_address = "<" PACKAGE_BUGREPORT ">";
  136 #line 17
  137             
  138 #line 17
  139 #define DESCRCOLUMN 30
  140 #line 17
  141 #define RMARGIN 79
  142 #line 17
  143 #define GROUPCOLUMN 2
  144 #line 17
  145 #define USAGECOLUMN 13
  146 #line 17
  147             
  148 #line 17
  149 static void
  150 #line 17
  151 indent (size_t start, size_t col)
  152 #line 17
  153 {
  154 #line 17
  155   for (; start < col; start++)
  156 #line 17
  157     putchar (' ');
  158 #line 17
  159 }
  160 #line 17
  161             
  162 #line 17
  163 static void
  164 #line 17
  165 print_option_descr (const char *descr, size_t lmargin, size_t rmargin)
  166 #line 17
  167 {
  168 #line 17
  169   while (*descr)
  170 #line 17
  171     {
  172 #line 17
  173       int s = 0;
  174 #line 17
  175       int i;
  176 #line 17
  177       size_t width = rmargin - lmargin;
  178 #line 17
  179 
  180 #line 17
  181       for (i = 0; ; i++)
  182 #line 17
  183     {
  184 #line 17
  185       if (descr[i] == 0 || isspace (descr[i]))
  186 #line 17
  187         {
  188 #line 17
  189           if (i > width)
  190 #line 17
  191         break;
  192 #line 17
  193           s = i;
  194 #line 17
  195           if (descr[i] == 0)
  196 #line 17
  197         break;
  198 #line 17
  199         }
  200 #line 17
  201     }
  202 #line 17
  203       printf ("%*.*s\n", s, s, descr);
  204 #line 17
  205       descr += s;
  206 #line 17
  207       if (*descr)
  208 #line 17
  209     {
  210 #line 17
  211       indent (0, lmargin);
  212 #line 17
  213       descr++;
  214 #line 17
  215     }
  216 #line 17
  217     }
  218 #line 17
  219 }
  220 #line 17
  221 
  222 #line 17
  223 void
  224 #line 17
  225 print_help(void)
  226 #line 17
  227 {
  228 #line 17
  229   unsigned i;
  230 #line 17
  231   
  232 #line 17
  233   printf ("%s %s [%s]...", _("Usage:"), "rushwho", _("OPTION"));
  234 #line 17
  235   if (args_doc[0])
  236 #line 17
  237       printf(" %s", gettext(args_doc));
  238 #line 17
  239   printf("\n");
  240 #line 17
  241   if (doc[0])
  242 #line 17
  243     print_option_descr(gettext (doc), 0, RMARGIN);
  244 #line 17
  245   putchar ('\n');
  246 #line 17
  247 
  248 #line 17
  249   for (i = 0; i < sizeof (opthelp) / sizeof (opthelp[0]); i++)
  250 #line 17
  251     {
  252 #line 17
  253       unsigned n;
  254 #line 17
  255       if (opthelp[i].opt)
  256 #line 17
  257     {
  258 #line 17
  259       n = printf ("  %s", opthelp[i].opt);
  260 #line 17
  261       if (opthelp[i].arg)
  262 #line 17
  263         {
  264 #line 17
  265           char *cb, *ce;
  266 #line 17
  267           if (strlen (opthelp[i].opt) == 2)
  268 #line 17
  269         {
  270 #line 17
  271           if (!opthelp[i].is_optional)
  272 #line 17
  273             {
  274 #line 17
  275               putchar (' ');
  276 #line 17
  277               n++;
  278 #line 17
  279             }
  280 #line 17
  281         }
  282 #line 17
  283           else
  284 #line 17
  285         {
  286 #line 17
  287           putchar ('=');
  288 #line 17
  289           n++;
  290 #line 17
  291         }
  292 #line 17
  293           if (opthelp[i].is_optional)
  294 #line 17
  295         {
  296 #line 17
  297           cb = "[";
  298 #line 17
  299           ce = "]";
  300 #line 17
  301         }
  302 #line 17
  303           else
  304 #line 17
  305         cb = ce = "";
  306 #line 17
  307           n += printf ("%s%s%s", cb, gettext (opthelp[i].arg), ce);
  308 #line 17
  309         }
  310 #line 17
  311       if (n >= DESCRCOLUMN)
  312 #line 17
  313         {
  314 #line 17
  315           putchar ('\n');
  316 #line 17
  317           n = 0;
  318 #line 17
  319         }
  320 #line 17
  321       indent (n, DESCRCOLUMN);
  322 #line 17
  323       print_option_descr (gettext (opthelp[i].descr), DESCRCOLUMN, RMARGIN);
  324 #line 17
  325     }
  326 #line 17
  327       else
  328 #line 17
  329     {
  330 #line 17
  331       if (i)
  332 #line 17
  333         putchar ('\n');
  334 #line 17
  335       indent (0, GROUPCOLUMN);
  336 #line 17
  337       print_option_descr (gettext (opthelp[i].descr),
  338 #line 17
  339                   GROUPCOLUMN, RMARGIN);
  340 #line 17
  341       putchar ('\n');
  342 #line 17
  343     }
  344 #line 17
  345     }
  346 #line 17
  347   
  348 #line 17
  349   putchar ('\n');
  350 #line 17
  351   print_option_descr (_("Mandatory or optional arguments to long options are also mandatory or optional for any corresponding short options."), 0, RMARGIN);
  352 #line 17
  353   putchar ('\n');
  354 #line 17
  355   printf (_("Report bugs to %s.\n"), program_bug_address);
  356 #line 17
  357 }
  358 #line 17
  359 
  360 #line 17
  361 static int
  362 #line 17
  363 cmpidx_short(const void *a, const void *b)
  364 #line 17
  365 {
  366 #line 17
  367     struct opthelp const **opta = (struct opthelp const **)a;
  368 #line 17
  369     struct opthelp const **optb = (struct opthelp const **)b;
  370 #line 17
  371 
  372 #line 17
  373     return (*opta)->opt[1] - (*optb)->opt[1];
  374 #line 17
  375 }
  376 #line 17
  377   
  378 #line 17
  379 static int
  380 #line 17
  381 cmpidx_long(const void *a, const void *b)
  382 #line 17
  383 {
  384 #line 17
  385     struct opthelp const **ap = (struct opthelp const **)a;
  386 #line 17
  387     struct opthelp const **bp = (struct opthelp const **)b;
  388 #line 17
  389     char const *opta, *optb;
  390 #line 17
  391     size_t lena, lenb;
  392 #line 17
  393 
  394 #line 17
  395     if ((*ap)->opt[1] == '-')
  396 #line 17
  397         opta = (*ap)->opt;
  398 #line 17
  399     else
  400 #line 17
  401         opta = (*ap)->opt + 4;
  402 #line 17
  403     lena = strcspn(opta, ",");
  404 #line 17
  405   
  406 #line 17
  407     if ((*bp)->opt[1] == '-')
  408 #line 17
  409         optb = (*bp)->opt;
  410 #line 17
  411     else
  412 #line 17
  413         optb = (*bp)->opt + 4;
  414 #line 17
  415     lenb = strcspn(optb, ",");
  416 #line 17
  417     return strncmp(opta, optb, lena > lenb ? lenb : lena);
  418 #line 17
  419 }
  420 #line 17
  421 
  422 #line 17
  423 void
  424 #line 17
  425 print_usage(void)
  426 #line 17
  427 {
  428 #line 17
  429     unsigned i;
  430 #line 17
  431     unsigned n;
  432 #line 17
  433     char *buf;
  434 #line 17
  435     size_t bufsize;
  436 #line 17
  437     unsigned nidx;
  438 #line 17
  439     struct opthelp **optidx;
  440 #line 17
  441     size_t optcount = sizeof(opthelp) / sizeof(opthelp[0]);
  442 #line 17
  443   
  444 #line 17
  445 #define FLUSH do {                      buf[n] = 0;                 printf("%s\n", buf);                n = USAGECOLUMN;                memset(buf, ' ', n);            }  while (0)
  446 #line 17
  447 #define ADDC(c) do { if (n == RMARGIN) FLUSH; buf[n++] = c; } while (0)
  448 #line 17
  449 
  450 #line 17
  451     optidx = calloc(optcount, sizeof(optidx[0]));
  452 #line 17
  453     if (!optidx)
  454 #line 17
  455         abort();
  456 #line 17
  457     bufsize = RMARGIN + 1;
  458 #line 17
  459     buf = malloc(bufsize);
  460 #line 17
  461     if (!buf)
  462 #line 17
  463         abort();
  464 #line 17
  465     
  466 #line 17
  467     n = snprintf(buf, bufsize, "%s %s ", _("Usage:"), "rushwho");
  468 #line 17
  469     
  470 #line 17
  471     /* Print a list of short options without arguments. */
  472 #line 17
  473     for (i = nidx = 0; i < optcount; i++)
  474 #line 17
  475         if (opthelp[i].opt &&
  476 #line 17
  477             opthelp[i].descr &&
  478 #line 17
  479             opthelp[i].opt[1] != '-' &&
  480 #line 17
  481             opthelp[i].arg == NULL)
  482 #line 17
  483             optidx[nidx++] = opthelp + i;
  484 #line 17
  485 
  486 #line 17
  487     if (nidx) {
  488 #line 17
  489         qsort(optidx, nidx, sizeof(optidx[0]), cmpidx_short);
  490 #line 17
  491 
  492 #line 17
  493         ADDC('[');
  494 #line 17
  495         ADDC('-');
  496 #line 17
  497         for (i = 0; i < nidx; i++) {
  498 #line 17
  499             ADDC(optidx[i]->opt[1]);
  500 #line 17
  501         }
  502 #line 17
  503         ADDC(']');
  504 #line 17
  505     }
  506 #line 17
  507 
  508 #line 17
  509     /* Print a list of short options with arguments. */
  510 #line 17
  511     for (i = nidx = 0; i < optcount; i++) {
  512 #line 17
  513         if (opthelp[i].opt &&
  514 #line 17
  515             opthelp[i].descr &&
  516 #line 17
  517             opthelp[i].opt[1] != '-' &&
  518 #line 17
  519             opthelp[i].arg)
  520 #line 17
  521             optidx[nidx++] = opthelp + i;
  522 #line 17
  523     }
  524 #line 17
  525 
  526 #line 17
  527     if (nidx) {
  528 #line 17
  529         qsort(optidx, nidx, sizeof(optidx[0]), cmpidx_short);
  530 #line 17
  531     
  532 #line 17
  533         for (i = 0; i < nidx; i++) {
  534 #line 17
  535             struct opthelp *opt = optidx[i];
  536 #line 17
  537             size_t len = 5 + strlen(opt->arg)
  538 #line 17
  539                        + (opt->is_optional ? 2 : 1);
  540 #line 17
  541       
  542 #line 17
  543             if (n + len > RMARGIN)
  544 #line 17
  545                 FLUSH;
  546 #line 17
  547             buf[n++] = ' ';
  548 #line 17
  549             buf[n++] = '[';
  550 #line 17
  551             buf[n++] = '-';
  552 #line 17
  553             buf[n++] = opt->opt[1];
  554 #line 17
  555             if (opt->is_optional) {
  556 #line 17
  557                 buf[n++] = '[';
  558 #line 17
  559                 strcpy(&buf[n], opt->arg);
  560 #line 17
  561                 n += strlen(opt->arg);
  562 #line 17
  563                 buf[n++] = ']';
  564 #line 17
  565             } else {
  566 #line 17
  567                 buf[n++] = ' ';
  568 #line 17
  569                 strcpy(&buf[n], opt->arg);
  570 #line 17
  571                 n += strlen(opt->arg);
  572 #line 17
  573             }
  574 #line 17
  575             buf[n++] = ']';
  576 #line 17
  577         }
  578 #line 17
  579     }
  580 #line 17
  581   
  582 #line 17
  583     /* Print a list of long options */
  584 #line 17
  585     for (i = nidx = 0; i < optcount; i++) {
  586 #line 17
  587         if (opthelp[i].opt && opthelp[i].descr
  588 #line 17
  589             && (opthelp[i].opt[1] == '-' || opthelp[i].opt[2] == ','))
  590 #line 17
  591             optidx[nidx++] = opthelp + i;
  592 #line 17
  593     }
  594 #line 17
  595 
  596 #line 17
  597     if (nidx) {
  598 #line 17
  599         qsort(optidx, nidx, sizeof(optidx[0]), cmpidx_long);
  600 #line 17
  601     
  602 #line 17
  603         for (i = 0; i < nidx; i++) {
  604 #line 17
  605             struct opthelp *opt = optidx[i];
  606 #line 17
  607             size_t len;
  608 #line 17
  609             const char *longopt;
  610 #line 17
  611       
  612 #line 17
  613             if (opt->opt[1] == '-')
  614 #line 17
  615                 longopt = opt->opt;
  616 #line 17
  617             else if (opt->opt[2] == ',')
  618 #line 17
  619                 longopt = opt->opt + 4;
  620 #line 17
  621             else
  622 #line 17
  623                 continue;
  624 #line 17
  625 
  626 #line 17
  627             len = 3 + strlen(longopt)
  628 #line 17
  629                 + (opt->arg ? 1 + strlen(opt->arg)
  630 #line 17
  631                 + (opt->is_optional ? 2 : 0) : 0);
  632 #line 17
  633             if (n + len > RMARGIN) {
  634 #line 17
  635                 FLUSH;
  636 #line 17
  637                 /* Make sure we have enough buffer space if
  638                                    the string cannot be split */
  639 #line 17
  640                 if (n + len > bufsize) {
  641 #line 17
  642                     bufsize = n + len;
  643 #line 17
  644                     buf = realloc(buf, bufsize);
  645 #line 17
  646                     if (!buf)
  647 #line 17
  648                         abort();
  649 #line 17
  650                 }
  651 #line 17
  652             }
  653 #line 17
  654             buf[n++] = ' ';
  655 #line 17
  656             buf[n++] = '[';
  657 #line 17
  658             strcpy(&buf[n], longopt);
  659 #line 17
  660             n += strlen(longopt);
  661 #line 17
  662             if (opt->arg) {
  663 #line 17
  664                 buf[n++] = '=';
  665 #line 17
  666                 if (opt->is_optional) {
  667 #line 17
  668                     buf[n++] = '[';
  669 #line 17
  670                     strcpy(&buf[n], opt->arg);
  671 #line 17
  672                     n += strlen(opt->arg);
  673 #line 17
  674                     buf[n++] = ']';
  675 #line 17
  676                 } else {
  677 #line 17
  678                     strcpy(&buf[n], opt->arg);
  679 #line 17
  680                     n += strlen(opt->arg);
  681 #line 17
  682                 }
  683 #line 17
  684             }
  685 #line 17
  686             buf[n++] = ']';
  687 #line 17
  688         }
  689 #line 17
  690     }
  691 #line 17
  692 
  693 #line 17
  694     /* Print argument list */
  695 #line 17
  696     if (args_doc[0]) {
  697 #line 17
  698         char const *docstr = gettext(args_doc);
  699 #line 17
  700         size_t len = strlen(docstr) + 1;
  701 #line 17
  702         if (n + len <= RMARGIN) {
  703 #line 17
  704             buf[n++] = ' ';
  705 #line 17
  706             strcpy(buf + n, docstr);
  707 #line 17
  708             n += len;
  709 #line 17
  710         } else {
  711 #line 17
  712             struct wordsplit ws;
  713 #line 17
  714 
  715 #line 17
  716             if (wordsplit(docstr, &ws, 
  717 #line 17
  718                       WRDSF_SHOWERR |
  719 #line 17
  720                       WRDSF_NOVAR |
  721 #line 17
  722                       WRDSF_NOCMD |
  723 #line 17
  724                       WRDSF_QUOTE |
  725 #line 17
  726                       WRDSF_SQUEEZE_DELIMS))
  727 #line 17
  728                 abort();
  729 #line 17
  730 
  731 #line 17
  732             for (i = 0; i < ws.ws_wordc; i++) {
  733 #line 17
  734                 len = strlen(ws.ws_wordv[i]) + 1;
  735 #line 17
  736                 if (n + len > RMARGIN) {
  737 #line 17
  738                     FLUSH;
  739 #line 17
  740                     /* Make sure we have enough buffer
  741                        space if the string cannot be
  742                        split */
  743 #line 17
  744                     if (n + len > bufsize) {
  745 #line 17
  746                         bufsize = n + len;
  747 #line 17
  748                         buf = realloc(buf, bufsize);
  749 #line 17
  750                         if (!buf)
  751 #line 17
  752                             abort();
  753 #line 17
  754                     }
  755 #line 17
  756                 }
  757 #line 17
  758                 buf[n++] = ' ';
  759 #line 17
  760                 strcpy(buf + n, ws.ws_wordv[i]);
  761 #line 17
  762                 n += len;
  763 #line 17
  764             }
  765 #line 17
  766         }   
  767 #line 17
  768     }
  769 #line 17
  770     
  771 #line 17
  772     FLUSH;
  773 #line 17
  774 
  775 #line 17
  776     free(optidx);
  777 #line 17
  778     free(buf);
  779 #line 17
  780 }
  781 #line 17
  782 
  783 #line 17
  784 const char version_etc_copyright[] =
  785 #line 17
  786   /* Do *not* mark this string for translation.  %s is a copyright
  787      symbol suitable for this locale, and %d is the copyright
  788      year.  */
  789 #line 17
  790   "Copyright %s 2008-2017 Sergey Poznyakoff";
  791 #line 17
  792 
  793 #line 17
  794 void
  795 #line 17
  796 print_version_only(const char *program_version, FILE *stream)
  797 #line 17
  798 {
  799 #line 17
  800     fprintf (stream, "%s\n", program_version);
  801 #line 17
  802     /* TRANSLATORS: Translate "(C)" to the copyright symbol
  803        (C-in-a-circle), if this symbol is available in the user's
  804        locale.  Otherwise, do not translate "(C)"; leave it as-is.  */
  805 #line 17
  806     fprintf (stream, version_etc_copyright, _("(C)"));
  807 #line 17
  808     fputc ('\n', stream);
  809 #line 17
  810 }
  811 #line 17
  812 
  813 #line 17
  814 void
  815 #line 17
  816 print_version(const char *program_version, FILE *stream)
  817 #line 17
  818 {
  819 #line 17
  820     print_version_only(program_version, stream);
  821 #line 17
  822     
  823 #line 17
  824     fputs (_("License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law.\n\n"),
  825 #line 17
  826            stream);
  827 #line 17
  828     
  829 #line 17
  830 }
  831 #line 17
  832 
  833 #line 38 "rwopt.opt"
  834 
  835 #line 38
  836 
  837 
  838 void
  839 get_options(int argc, char *argv[])
  840 {
  841     
  842 #line 43
  843  {
  844 #line 43
  845   int optchar;
  846 #line 43
  847 
  848 #line 43
  849 
  850 #line 43
  851   while ((optchar = getopt_long(argc, argv, "F:f:Hh",
  852 #line 43
  853                                 long_options, NULL)) != EOF)
  854 #line 43
  855     {
  856 #line 43
  857       switch (optchar)
  858 #line 43
  859         {
  860 #line 43
  861         default:
  862 #line 43
  863     exit(1);
  864 #line 43
  865        
  866 #line 43
  867     #line 22 "rwopt.opt"
  868      case 'F':
  869 #line 22
  870           {
  871 #line 22
  872 
  873     format = optarg;
  874 
  875 #line 24
  876              break;
  877 #line 24
  878           }
  879 #line 28 "rwopt.opt"
  880      case 'f':
  881 #line 28
  882           {
  883 #line 28
  884 
  885     base_name = optarg;
  886 
  887 #line 30
  888              break;
  889 #line 30
  890           }
  891 #line 34 "rwopt.opt"
  892      case 'H':
  893 #line 34
  894           {
  895 #line 34
  896 
  897     display_header = 0;
  898 
  899 #line 36
  900              break;
  901 #line 36
  902           }
  903 #line 38 "rwopt.opt"
  904      case 'h':
  905 #line 38
  906           {
  907 #line 38
  908 
  909 #line 38
  910         print_help ();
  911 #line 38
  912                 exit (0);
  913 #line 38
  914      
  915 #line 38
  916              break;
  917 #line 38
  918           }
  919 #line 38 "rwopt.opt"
  920      case OPTION_USAGE:
  921 #line 38
  922           {
  923 #line 38
  924 
  925 #line 38
  926         print_usage ();
  927 #line 38
  928         exit (0);
  929 #line 38
  930      
  931 #line 38
  932              break;
  933 #line 38
  934           }
  935 #line 38 "rwopt.opt"
  936      case OPTION_VERSION:
  937 #line 38
  938           {
  939 #line 38
  940 
  941 #line 38
  942         /* Give version */
  943 #line 38
  944         print_version(program_version, stdout);
  945 #line 38
  946         exit (0);
  947 #line 38
  948          
  949 #line 38
  950              break;
  951 #line 38
  952           }
  953 
  954 #line 43 "rwopt.opt"
  955         }
  956 #line 43
  957     }
  958 #line 43
  959  }   
  960 #line 43
  961 ;
  962 }
  963