summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDylan Baker <dylanx.c.baker@intel.com>2014-11-24 14:14:12 -0800
committerDylan Baker <baker.dylan.c@gmail.com>2015-05-21 09:44:13 -0700
commit49729326b7bb0331cfbcce174ed43c6341be749e (patch)
tree1a3fe9ece7f1b9a23add97213a950ca0ba3be8fd
parent84486e5741b6b612cc2eb7089d6044eaaca26a1b (diff)
glapi: gl_procs.py: Use argparse rather than getopt
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Acked-by: Matt Turner <mattst88@gmail.com>
-rw-r--r--src/mapi/glapi/gen/gl_procs.py42
1 files changed, 19 insertions, 23 deletions
diff --git a/src/mapi/glapi/gen/gl_procs.py b/src/mapi/glapi/gen/gl_procs.py
index d5ffb9286e..cf6d2de8a4 100644
--- a/src/mapi/glapi/gen/gl_procs.py
+++ b/src/mapi/glapi/gen/gl_procs.py
@@ -25,8 +25,7 @@
# Authors:
# Ian Romanick <idr@us.ibm.com>
-import sys
-import getopt
+import argparse
import license
import gl_XML
@@ -164,31 +163,28 @@ typedef struct {
return
-def show_usage():
- print "Usage: %s [-f input_file_name] [-c]" % sys.argv[0]
- print "-c Enable compatibility with OpenGL ES."
- sys.exit(1)
+def _parser():
+ """Parse arguments and return a namepsace."""
+ api_type = lambda x: gl_XML.parse_GL_API(x, glX_XML.glx_item_factory())
+
+ parser = argparse.ArgumentParser()
+ parser.add_argument('-f', '--filename',
+ type=api_type,
+ default='gl_API.xml',
+ metavar="input_file_name",
+ dest='api',
+ help="Path to an XML description of OpenGL API.")
+ parser.add_argument('-c', '--es-version',
+ dest='es',
+ action="store_true",
+ help="filter functions for es")
+ return parser.parse_args()
def main():
"""Main function."""
- file_name = "gl_API.xml"
-
- try:
- args, _ = getopt.getopt(sys.argv[1:], "f:c")
- except Exception:
- show_usage()
-
- es = False
- for arg, val in args:
- if arg == "-f":
- file_name = val
- elif arg == "-c":
- es = True
-
- api = gl_XML.parse_GL_API(file_name, glX_XML.glx_item_factory())
- printer = PrintGlProcs(es)
- printer.Print(api)
+ args = _parser()
+ PrintGlProcs(args.es).Print(args.api)
if __name__ == '__main__':