JSDOC/PackerRun.vala
[gnome.introspection-doc-generator] / JSDOC / PackerRun.vala
index e69de29..125a57a 100644 (file)
@@ -0,0 +1,78 @@
+
+/** 
+  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