+\f
+
+/* This is used to mark options with no short value. */
+#define LONG_OPT(Num) ((Num) + 128)
+
+#define OPT_classpath LONG_OPT (0)
+#define OPT_CLASSPATH OPT_classpath
+#define OPT_bootclasspath LONG_OPT (1)
+#define OPT_extdirs LONG_OPT (2)
+#define OPT_HELP LONG_OPT (3)
+#define OPT_VERSION LONG_OPT (4)
+#define OPT_JAVAP LONG_OPT (5)
+
+static const struct option options[] =
+{
+ { "classpath", required_argument, NULL, OPT_classpath },
+ { "bootclasspath", required_argument, NULL, OPT_bootclasspath },
+ { "extdirs", required_argument, NULL, OPT_extdirs },
+ { "CLASSPATH", required_argument, NULL, OPT_CLASSPATH },
+ { "help", no_argument, NULL, OPT_HELP },
+ { "verbose", no_argument, NULL, 'v' },
+ { "version", no_argument, NULL, OPT_VERSION },
+ { "javap", no_argument, NULL, OPT_JAVAP },
+ { "print-main", no_argument, &flag_print_main, 1 },
+ { NULL, no_argument, NULL, 0 }
+};
+
+static void
+usage ()
+{
+ fprintf (stderr, "Try `jcf-dump --help' for more information.\n");
+ exit (1);
+}
+
+static void
+help ()
+{
+ printf ("Usage: jcf-dump [OPTION]... CLASS...\n\n");
+ printf ("Display contents of a class file in readable form.\n\n");
+ printf (" -c Disassemble method bodies\n");
+ printf (" --javap Generate output in `javap' format\n");
+ printf ("\n");
+ printf (" --classpath PATH Set path to find .class files\n");
+ printf (" -IDIR Append directory to class path\n");
+ printf (" --bootclasspath PATH Override built-in class path\n");
+ printf (" --extdirs PATH Set extensions directory path\n");
+ printf (" -o FILE Set output file name\n");
+ printf ("\n");
+ printf (" --help Print this help, then exit\n");
+ printf (" --version Print version number, then exit\n");
+ printf (" -v, --verbose Print extra information while running\n");
+ printf ("\n");
+ printf ("For bug reporting instructions, please see:\n");
+ printf ("%s.\n", GCCBUGURL);
+ exit (0);
+}
+
+static void
+version ()
+{
+ printf ("jcf-dump (GCC) %s\n\n", version_string);
+ printf ("Copyright (C) 2002 Free Software Foundation, Inc.\n");
+ printf ("This is free software; see the source for copying conditions. There is NO\n");
+ printf ("warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n");
+ exit (0);
+}
+