summaryrefslogtreecommitdiff
path: root/src/python
diff options
context:
space:
mode:
authorAndreas Sandberg <andreas.sandberg@arm.com>2019-01-26 09:54:00 +0000
committerAndreas Sandberg <andreas.sandberg@arm.com>2019-02-22 15:38:27 +0000
commit174ef8a73e384379f8f818d049bf5a1e0c1f349a (patch)
treec4c071172106155d2acfa7cb082a4dd1f5a2859e /src/python
parent5de8626abc9aca4dbae5b81b819475945a2736c8 (diff)
downloadgem5-174ef8a73e384379f8f818d049bf5a1e0c1f349a.tar.xz
python: Add fallbacks for packages that have been renamed
Python 3 has restructured some packages. Specifically, __builtin__ has been renamed to builtins and urlparse has been included in urllib. Change-Id: I81f8f3942471db1043006a36abbad6e5a49e0a43 Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/15994 Reviewed-by: Juha Jäykkä <juha.jaykka@arm.com>
Diffstat (limited to 'src/python')
-rw-r--r--src/python/m5/stats/__init__.py12
-rw-r--r--src/python/m5/util/code_formatter.py10
2 files changed, 17 insertions, 5 deletions
diff --git a/src/python/m5/stats/__init__.py b/src/python/m5/stats/__init__.py
index acb62f13e..019c7ebb8 100644
--- a/src/python/m5/stats/__init__.py
+++ b/src/python/m5/stats/__init__.py
@@ -71,7 +71,11 @@ def _url_factory(func):
@wraps(func)
def wrapper(url):
- from urlparse import parse_qs
+ try:
+ from urllib.parse import parse_qs
+ except ImportError:
+ # Python 2 fallback
+ from urlparse import parse_qs
from ast import literal_eval
qs = parse_qs(url.query, keep_blank_values=True)
@@ -135,7 +139,11 @@ def addStatVisitor(url):
"""
- from urlparse import urlsplit
+ try:
+ from urllib.parse import urlsplit
+ except ImportError:
+ # Python 2 fallback
+ from urlparse import urlsplit
parsed = urlsplit(url)
diff --git a/src/python/m5/util/code_formatter.py b/src/python/m5/util/code_formatter.py
index c845c9021..21bbcd7a8 100644
--- a/src/python/m5/util/code_formatter.py
+++ b/src/python/m5/util/code_formatter.py
@@ -26,7 +26,11 @@
from __future__ import print_function
-import __builtin__
+try:
+ import builtins
+except ImportError:
+ # Python 2 fallback
+ import __builtin__ as builtins
import inspect
import os
import re
@@ -66,8 +70,8 @@ class lookup(object):
if self.formatter.globals and item in self.frame.f_globals:
return self.frame.f_globals[item]
- if item in __builtin__.__dict__:
- return __builtin__.__dict__[item]
+ if item in builtins.__dict__:
+ return builtins.__dict__[item]
try:
item = int(item)