+
+/**
+ the application
+ -- in theory this code can be used as a library... but this is the standard command line version...
+*/
+
+namespace JSDOC
+{
+ // --------------- <<<<<<< <MAIN HERE....
+ public static int main(string[] args)
+ {
+ new PackerRun(args);
+ return 0;
+ }
+
+
+ class PackerRun : Application
+ {
+ const OptionEntry[] options = {
+
+
+ { "target", 0, 0, OptionArg.STRING, ref opt_target, "Target File to write (eg. roojs.js)", null },
+ { "debug-target", 0, 0, OptionArg.STRING, ref opt_debug_target, "Target File to write debug code (eg. roojs-debug.js)", null },
+ { "tmpdir", 0, 0, OptionArg.STRING, ref opt_tmpdir, "Temporary Directory to use", null },
+ { "file", 0, 0, OptionArg.STRING_ARRAY, ref opt_files ,"add a file to compile", null },
+ { "files-from", 0, 0, OptionArg.STRING, ref opt_files_from ,"a text file listing files to compile", null },
+
+ { "debug", 0, 0, OptionArg.NONE, ref opt_debug, "Show debug messages", null },
+ { null }
+ };
+ public static string opt_target = "";
+ public static string opt_debug_target = "";
+ public static string opt_tmpdir = "";
+
+
+ public static string[] opt_files = {};
+ public static string opt_files_from = "";
+ public static bool opt_debug = false;
+
+
+
+
+ public PackerRun (string[] args)
+ {
+
+ Object(
+ application_id: "org.roojs.jsdoc.packerrun",
+ flags: ApplicationFlags.FLAGS_NONE
+ );
+
+
+ var opt_context = new OptionContext ("JSDOC Packer");
+
+ try {
+ opt_context.set_help_enabled (true);
+ opt_context.add_main_entries (options, null);
+ opt_context.parse (ref args);
+
+
+ } catch (OptionError e) {
+ stdout.printf ("error: %s\n", e.message);
+ stdout.printf ("Run '%s --help' to see a full list of available command line options.\n %s",
+ args[0], opt_context.get_help(true,null));
+ GLib.Process.exit(Posix.EXIT_FAILURE);
+
+ }
+ // what's required...
+
+
+ // now run the Packer...
+ var p = new Packer(opt_target, opt_debug_target);
+
+ }
+
+
+ }
+
+}
\ No newline at end of file