X-Git-Url: http://git.hcoop.net/bpt/emacs.git/blobdiff_plain/5326c1d6879b987a9aa921ab49fda3421b54d18b..a127d423b58e6b51d670891eb314bfa7bdc340ee:/lib-src/b2m.c diff --git a/lib-src/b2m.c b/lib-src/b2m.c index 2eb6a0354b..05caa1424e 100644 --- a/lib-src/b2m.c +++ b/lib-src/b2m.c @@ -1,12 +1,13 @@ /* * b2m - a filter for Babyl -> Unix mail files + * The copyright on this file has been disclaimed. * * usage: b2m < babyl > mailbox * * I find this useful whenever I have to use a * system which - shock horror! - doesn't run - * Gnu emacs. At least now I can read all my - * Gnumacs Babyl format mail files! + * GNU Emacs. At least now I can read all my + * GNU Emacs Babyl format mail files! * * it's not much but it's free! * @@ -18,13 +19,6 @@ /* Made conformant to the GNU coding standards January, 1995 by Francesco Potorti` . */ -#include -#include -#include -#ifdef MSDOS -#include -#endif - #ifdef HAVE_CONFIG_H #include /* On some systems, Emacs defines static as nothing for the sake @@ -32,6 +26,14 @@ #undef static #endif +#include +#include +#include +#include +#ifdef MSDOS +#include +#endif + #undef TRUE #define TRUE 1 #undef FALSE @@ -78,6 +80,16 @@ void fatal (); char *progname; +struct option longopts[] = +{ + { "help", no_argument, NULL, 'h' }, + { "version", no_argument, NULL, 'V' }, + { 0 } +}; + +extern int optind; + +int main (argc, argv) int argc; char **argv; @@ -101,11 +113,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 unixmailbox\n", progname); + exit (GOOD); + } + } + + if (optind != argc) { fprintf (stderr, "Usage: %s unixmailbox\n", progname); exit (GOOD); } + labels_saved = printing = header = FALSE; ltoday = time (0); today = ctime (<oday); @@ -136,7 +168,7 @@ main (argc, argv) p = strtok (data.buffer, " ,\r\n\t"); labels = "X-Babyl-Labels: "; - while (p = strtok (NULL, " ,\r\n\t")) + while ((p = strtok (NULL, " ,\r\n\t"))) labels = concat (labels, p, ", "); p = &labels[strlen (labels) - 2]; @@ -158,6 +190,8 @@ main (argc, argv) if (printing) puts (data.buffer); } + + return 0; } @@ -261,6 +295,7 @@ xrealloc (ptr, size) void fatal (message) + char *message; { fprintf (stderr, "%s: %s\n", progname, message); exit (BAD);