diff options
author | Karl Heuer <kwzh@gnu.org> | 1997-11-23 02:17:36 +0000 |
---|---|---|
committer | Karl Heuer <kwzh@gnu.org> | 1997-11-23 02:17:36 +0000 |
commit | 7af8146c4c025bfd36930aa639dc63f9eb13dce3 (patch) | |
tree | f002e92d9e8f4a65db5d819da675f568064885cd /lib-src | |
parent | 3efac0936dff243c22c0861427e6d2da3af67007 (diff) | |
download | emacs-7af8146c4c025bfd36930aa639dc63f9eb13dce3.tar.gz |
Include getopt.h.
(main): Use getopt_long to handle --version and --help.
Diffstat (limited to 'lib-src')
-rw-r--r-- | lib-src/b2m.c | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/lib-src/b2m.c b/lib-src/b2m.c index 2eb6a0354b8..6aea2270a51 100644 --- a/lib-src/b2m.c +++ b/lib-src/b2m.c @@ -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 @@ void fatal (); 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 @@ main (argc, argv) #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); |