summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorAnthony King <anthonydking@slimroms.net>2015-10-31 14:54:16 -0400
committerTom Powell <zifnab@zifnab06.net>2016-01-04 10:53:28 -0800
commit48e4d3893b1015764fee71e676dc3de30dd3a64b (patch)
tree7fff269d3f5842eb3e9521b4f7ba05c0b16e4f54 /tools
parente168200bbb4b14242c60a940b39e83560744a9c0 (diff)
downloadbuild-48e4d3893b1015764fee71e676dc3de30dd3a64b.zip
build-48e4d3893b1015764fee71e676dc3de30dd3a64b.tar.gz
build-48e4d3893b1015764fee71e676dc3de30dd3a64b.tar.bz2
py3: merge-event-log-tags
Change-Id: I875d48c67efa129e800bcc834f41d39fc25a62e4
Diffstat (limited to 'tools')
-rwxr-xr-xtools/merge-event-log-tags.py39
1 files changed, 26 insertions, 13 deletions
diff --git a/tools/merge-event-log-tags.py b/tools/merge-event-log-tags.py
index 64bad3f..65580f6 100755
--- a/tools/merge-event-log-tags.py
+++ b/tools/merge-event-log-tags.py
@@ -24,7 +24,8 @@ and fails if they do.
-h to display this usage message and exit.
"""
-import cStringIO
+from __future__ import print_function
+
import getopt
try:
import hashlib
@@ -33,8 +34,20 @@ except ImportError:
import struct
import sys
+try:
+ from cStringIO import StringIO
+except ImportError:
+ from io import StringIO
+
import event_log_tags
+
+def itermitems(obj):
+ if hasattr(obj, 'iteritems'):
+ return obj.iteritems()
+ return obj.items()
+
+
errors = []
warnings = []
@@ -48,21 +61,21 @@ ASSIGN_LIMIT = 1000000
try:
opts, args = getopt.getopt(sys.argv[1:], "ho:m:")
-except getopt.GetoptError, err:
- print str(err)
- print __doc__
+except getopt.GetoptError as err:
+ print(str(err))
+ print(__doc__)
sys.exit(2)
for o, a in opts:
if o == "-h":
- print __doc__
+ print(__doc__)
sys.exit(2)
elif o == "-o":
output_file = a
elif o == "-m":
pre_merged_file = a
else:
- print >> sys.stderr, "unhandled option %s" % (o,)
+ print("unhandled option %s" % (o,), file=sys.stderr)
sys.exit(1)
# Restrictions on tags:
@@ -133,12 +146,12 @@ for fn in args:
if errors:
for fn, ln, msg in errors:
- print >> sys.stderr, "%s:%d: error: %s" % (fn, ln, msg)
+ print("%s:%d: error: %s" % (fn, ln, msg), file=sys.stderr)
sys.exit(1)
if warnings:
for fn, ln, msg in warnings:
- print >> sys.stderr, "%s:%d: warning: %s" % (fn, ln, msg)
+ print("%s:%d: warning: %s" % (fn, ln, msg), file=sys.stderr)
# Python's hash function (a) isn't great and (b) varies between
# versions of python. Using md5 is overkill here but is the same from
@@ -154,14 +167,14 @@ def hashname(str):
# If we were provided pre-merged tags (w/ the -m option), then don't
# ever try to allocate one, just fail if we don't have a number
-for name, t in sorted(by_tagname.iteritems()):
+for name, t in sorted(iteritems(by_tagname)):
if t.tagnum is None:
if pre_merged_tags:
try:
t.tagnum = pre_merged_tags[t.tagname]
except KeyError:
- print >> sys.stderr, ("Error: Tag number not defined for tag `%s'."
- +" Have you done a full build?") % t.tagname
+ print("Error: Tag number not defined for tag `%s'."
+ " Have you done a full build?" % t.tagname, file=sys.stderr)
sys.exit(1)
else:
while True:
@@ -174,8 +187,8 @@ for name, t in sorted(by_tagname.iteritems()):
# by_tagnum should be complete now; we've assigned numbers to all tags.
-buffer = cStringIO.StringIO()
-for n, t in sorted(by_tagnum.iteritems()):
+buffer = StringIO()
+for n, t in sorted(iteritems(by_tagnum)):
if t.description:
buffer.write("%d %s %s\n" % (t.tagnum, t.tagname, t.description))
else: