Drop the argparse requirement for make-event-names.py
authorPeter Hutterer <peter.hutterer@who-t.net>
Tue, 14 Jan 2014 04:18:06 +0000 (14:18 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Tue, 14 Jan 2014 22:01:31 +0000 (08:01 +1000)
We only take one option (path to linux/input.h) anyway so drop the argparse
requirement. This way libevdev builds on RHEL6 too which doesn't ship
argparse.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
configure.ac
libevdev/make-event-names.py

index 57cd56c..fa24c03 100644 (file)
@@ -117,8 +117,6 @@ AS_IF([test "x$enable_gcov" != "xno"],
 )
 
 AM_PATH_PYTHON([2.6])
-AS_IF([$($PYTHON -c "import argparse")], [:],
-       AC_MSG_ERROR([python argparse module is missing]))
 
 AM_CONDITIONAL([GCOV_ENABLED], [test "x$enable_gcov" != "xno"])
 AC_SUBST([GCOV_CFLAGS])
index ab643f7..149f093 100755 (executable)
@@ -7,7 +7,6 @@
 from __future__ import print_function
 import re
 import sys
-import argparse
 
 class Bits(object):
        pass
@@ -190,12 +189,14 @@ def parse(fp):
 
        return bits
 
+def usage(prog):
+       print("Usage: %s /path/to/linux/input.h" % prog)
+
 if __name__ == "__main__":
-       parser = argparse.ArgumentParser()
-       parser.add_argument('source', metavar="/path/to/linux/input.h",
-                           type=argparse.FileType('r'),
-                           help='source file to parse')
-
-       args = parser.parse_args(sys.argv[1:])
-       bits = parse(args.source)
-       print_mapping_table(bits)
+       if len(sys.argv) != 2:
+               usage(sys.argv[0])
+               sys.exit(2)
+
+       with open(sys.argv[1]) as f:
+               bits = parse(f)
+               print_mapping_table(bits)