Mercurial > emacs
diff lib-src/b2m.c @ 20328:000f4d300712
Include getopt.h.
(main): Use getopt_long to handle --version and --help.
| author | Karl Heuer <kwzh@gnu.org> |
|---|---|
| date | Sun, 23 Nov 1997 02:17:36 +0000 |
| parents | 1f3d8941aba2 |
| children | f998f239f77b |
line wrap: on
line diff
--- a/lib-src/b2m.c Sun Nov 23 02:16:13 1997 +0000 +++ b/lib-src/b2m.c Sun Nov 23 02:17:36 1997 +0000 @@ -21,6 +21,7 @@ #include <stdio.h> #include <time.h> #include <sys/types.h> +#include <getopt.h> #ifdef MSDOS #include <fcntl.h> #endif @@ -78,6 +79,15 @@ char *progname; +struct option longopts[] = +{ + { "help", no_argument, NULL, 'h' }, + { "version", no_argument, NULL, 'V' }, + { 0 } +}; + +extern int optind; + main (argc, argv) int argc; char **argv; @@ -101,11 +111,31 @@ #endif progname = argv[0]; - if (argc != 1) + while (1) + { + int opt = getopt_long (argc, argv, "hV", longopts, 0); + if (opt == EOF) + break; + + switch (opt) + { + case 'V': + printf ("%s (GNU Emacs %s)\n", "b2m", VERSION); + puts ("b2m is in the public domain."); + exit (GOOD); + + case 'h': + fprintf (stderr, "Usage: %s <babylmailbox >unixmailbox\n", progname); + exit (GOOD); + } + } + + if (optind != argc) { fprintf (stderr, "Usage: %s <babylmailbox >unixmailbox\n", progname); exit (GOOD); } + labels_saved = printing = header = FALSE; ltoday = time (0); today = ctime (<oday);
