glapi: glX_server_table.py: use argparse instead of getopt
authorDylan Baker <baker.dylan.c@gmail.com>
Sat, 14 Feb 2015 00:41:03 +0000 (16:41 -0800)
committerMatt Turner <mattst88@gmail.com>
Fri, 22 May 2015 18:31:28 +0000 (11:31 -0700)
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
Acked-by: Matt Turner <mattst88@gmail.com>
src/mapi/glapi/gen/glX_server_table.py

index 47aa11116be923c3071baa4a2380938f7158ae42..2d21f4e4ee11a03a5d905606073cb70789d4d07b 100644 (file)
@@ -25,8 +25,9 @@
 # Authors:
 #    Ian Romanick <idr@us.ibm.com>
 
+import argparse
+
 import gl_XML, glX_XML, glX_proto_common, license
-import sys, getopt
 
 
 def log2(value):
@@ -383,28 +384,19 @@ class PrintGlxDispatchTables(glX_proto_common.glx_print_proto):
         return
 
 
-if __name__ == '__main__':
-    file_name = "gl_API.xml"
-
-    try:
-        (args, trail) = getopt.getopt(sys.argv[1:], "f:m")
-    except Exception,e:
-        show_usage()
-
-    mode = "table_c"
-    for (arg,val) in args:
-        if arg == "-f":
-            file_name = val
-        elif arg == "-m":
-            mode = val
+def _parser():
+    """Parse arguments and return namespace."""
+    parser = argparse.ArgumentParser()
+    parser.add_argument('-f',
+                        dest='filename',
+                        default='gl_API.xml',
+                        help='An XML file describing an API.')
+    return parser.parse_args()
 
-    if mode == "table_c":
-        printer = PrintGlxDispatchTables()
-    else:
-        show_usage()
-
-
-    api = gl_XML.parse_GL_API( file_name, glX_XML.glx_item_factory() )
 
+if __name__ == '__main__':
+    args = _parser()
+    printer = PrintGlxDispatchTables()
+    api = gl_XML.parse_GL_API(args.filename, glX_XML.glx_item_factory())
 
-    printer.Print( api )
+    printer.Print(api)