make python scripts python2/3 compliant

Make all the DPDK Python apps work with Python 2 or 3 to
allow them to work with whatever is the system default.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
This commit is contained in:
John McNamara 2016-12-21 15:03:48 +00:00 committed by Thomas Monjalon
parent be05eb445c
commit 54ca545dce
9 changed files with 64 additions and 69 deletions

View File

@ -1,4 +1,4 @@
#!/usr/bin/python
#!/usr/bin/env python
# BSD LICENSE
#
@ -32,7 +32,7 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Script that runs cmdline_test app and feeds keystrokes into it.
from __future__ import print_function
import cmdline_test_data
import os
import pexpect
@ -81,38 +81,38 @@ def runHistoryTest(child):
# the path to cmdline_test executable is supplied via command-line.
if len(sys.argv) < 2:
print "Error: please supply cmdline_test app path"
print("Error: please supply cmdline_test app path")
sys.exit(1)
test_app_path = sys.argv[1]
if not os.path.exists(test_app_path):
print "Error: please supply cmdline_test app path"
print("Error: please supply cmdline_test app path")
sys.exit(1)
child = pexpect.spawn(test_app_path)
print "Running command-line tests..."
print("Running command-line tests...")
for test in cmdline_test_data.tests:
print (test["Name"] + ":").ljust(30),
testname = (test["Name"] + ":").ljust(30)
try:
runTest(child, test)
print "PASS"
print(testname, "PASS")
except:
print "FAIL"
print child
print(testname, "FAIL")
print(child)
sys.exit(1)
# since last test quits the app, run new instance
child = pexpect.spawn(test_app_path)
print ("History fill test:").ljust(30),
testname = ("History fill test:").ljust(30)
try:
runHistoryTest(child)
print "PASS"
print(testname, "PASS")
except:
print "FAIL"
print child
print(testname, "FAIL")
print(child)
sys.exit(1)
child.close()
sys.exit(0)

View File

@ -1,5 +1,3 @@
#!/usr/bin/python
# BSD LICENSE
#
# Copyright(c) 2010-2014 Intel Corporation. All rights reserved.

View File

@ -1,4 +1,4 @@
#!/usr/bin/python
#!/usr/bin/env python
# BSD LICENSE
#
@ -32,15 +32,15 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Script that uses either test app or qemu controlled by python-pexpect
from __future__ import print_function
import autotest_data
import autotest_runner
import sys
def usage():
print"Usage: autotest.py [test app|test iso image]",
print "[target] [whitelist|-blacklist]"
print("Usage: autotest.py [test app|test iso image] ",
"[target] [whitelist|-blacklist]")
if len(sys.argv) < 3:
usage()
@ -63,7 +63,7 @@ if len(sys.argv) > 3:
cmdline = "%s -c f -n 4" % (sys.argv[1])
print cmdline
print(cmdline)
runner = autotest_runner.AutotestRunner(cmdline, target, test_blacklist,
test_whitelist)

View File

@ -1,5 +1,3 @@
#!/usr/bin/env python
# BSD LICENSE
#
# Copyright(c) 2010-2014 Intel Corporation. All rights reserved.

View File

@ -1,5 +1,3 @@
#!/usr/bin/python
# BSD LICENSE
#
# Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
@ -271,15 +269,16 @@ class AutotestRunner:
total_time = int(cur_time - self.start)
# print results, test run time and total time since start
print ("%s:" % test_name).ljust(30),
print result_str.ljust(29),
print "[%02dm %02ds]" % (test_time / 60, test_time % 60),
result = ("%s:" % test_name).ljust(30)
result += result_str.ljust(29)
result += "[%02dm %02ds]" % (test_time / 60, test_time % 60)
# don't print out total time every line, it's the same anyway
if i == len(results) - 1:
print "[%02dm %02ds]" % (total_time / 60, total_time % 60)
print(result,
"[%02dm %02ds]" % (total_time / 60, total_time % 60))
else:
print ""
print(result)
# if test failed and it wasn't a "start" test
if test_result < 0 and not i == 0:
@ -294,7 +293,7 @@ class AutotestRunner:
f = open("%s_%s_report.rst" %
(self.target, test_name), "w")
except IOError:
print "Report for %s could not be created!" % test_name
print("Report for %s could not be created!" % test_name)
else:
with f:
f.write(report)
@ -360,12 +359,10 @@ class AutotestRunner:
try:
# create table header
print ""
print "Test name".ljust(30),
print "Test result".ljust(29),
print "Test".center(9),
print "Total".center(9)
print "=" * 80
print("")
print("Test name".ljust(30), "Test result".ljust(29),
"Test".center(9), "Total".center(9))
print("=" * 80)
# make a note of tests start time
self.start = time.time()
@ -407,11 +404,11 @@ class AutotestRunner:
total_time = int(cur_time - self.start)
# print out summary
print "=" * 80
print "Total run time: %02dm %02ds" % (total_time / 60,
total_time % 60)
print("=" * 80)
print("Total run time: %02dm %02ds" % (total_time / 60,
total_time % 60))
if self.fails != 0:
print "Number of failed tests: %s" % str(self.fails)
print("Number of failed tests: %s" % str(self.fails))
# write summary to logfile
self.logfile.write("Summary\n")
@ -420,8 +417,8 @@ class AutotestRunner:
self.logfile.write("Failed tests: ".ljust(
15) + "%i\n" % self.fails)
except:
print "Exception occurred"
print sys.exc_info()
print("Exception occurred")
print(sys.exc_info())
self.fails = 1
# drop logs from all executions to a logfile

View File

@ -1,5 +1,3 @@
#!/usr/bin/python
# BSD LICENSE
#
# Copyright(c) 2010-2014 Intel Corporation. All rights reserved.

View File

@ -1,4 +1,5 @@
#! /usr/bin/python
#!/usr/bin/env python
#
# BSD LICENSE
#
@ -31,7 +32,7 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
from __future__ import print_function
import sys
sockets = []
@ -55,7 +56,7 @@ for line in lines:
for core in core_details:
for field in ["processor", "core id", "physical id"]:
if field not in core:
print "Error getting '%s' value from /proc/cpuinfo" % field
print("Error getting '%s' value from /proc/cpuinfo" % field)
sys.exit(1)
core[field] = int(core[field])
@ -68,29 +69,30 @@ for core in core_details:
core_map[key] = []
core_map[key].append(core["processor"])
print "============================================================"
print "Core and Socket Information (as reported by '/proc/cpuinfo')"
print "============================================================\n"
print "cores = ", cores
print "sockets = ", sockets
print ""
print("============================================================")
print("Core and Socket Information (as reported by '/proc/cpuinfo')")
print("============================================================\n")
print("cores = ", cores)
print("sockets = ", sockets)
print("")
max_processor_len = len(str(len(cores) * len(sockets) * 2 - 1))
max_core_map_len = max_processor_len * 2 + len('[, ]') + len('Socket ')
max_core_id_len = len(str(max(cores)))
print " ".ljust(max_core_id_len + len('Core ')),
output = " ".ljust(max_core_id_len + len('Core '))
for s in sockets:
print "Socket %s" % str(s).ljust(max_core_map_len - len('Socket ')),
print ""
output += " Socket %s" % str(s).ljust(max_core_map_len - len('Socket '))
print(output)
print " ".ljust(max_core_id_len + len('Core ')),
output = " ".ljust(max_core_id_len + len('Core '))
for s in sockets:
print "--------".ljust(max_core_map_len),
print ""
output += " --------".ljust(max_core_map_len)
output += " "
print(output)
for c in cores:
print "Core %s" % str(c).ljust(max_core_id_len),
output = "Core %s" % str(c).ljust(max_core_id_len)
for s in sockets:
print str(core_map[(s, c)]).ljust(max_core_map_len),
print ""
output += " " + str(core_map[(s, c)]).ljust(max_core_map_len)
print(output)

View File

@ -1,4 +1,4 @@
#! /usr/bin/python
#! /usr/bin/env python
#
# BSD LICENSE
#

View File

@ -1,9 +1,11 @@
#!/usr/bin/env python
# -------------------------------------------------------------------------
#
# Utility to dump PMD_INFO_STRING support from an object file
#
# -------------------------------------------------------------------------
from __future__ import print_function
import json
import os
import platform
@ -54,7 +56,7 @@ class Vendor:
self.devices[devID] = Device(deviceStr)
def report(self):
print self.ID, self.name
print(self.ID, self.name)
for id, dev in self.devices.items():
dev.report()
@ -80,7 +82,7 @@ class Device:
self.subdevices = {}
def report(self):
print "\t%s\t%s" % (self.ID, self.name)
print("\t%s\t%s" % (self.ID, self.name))
for subID, subdev in self.subdevices.items():
subdev.report()
@ -126,7 +128,7 @@ class SubDevice:
self.name = name
def report(self):
print "\t\t%s\t%s\t%s" % (self.vendorID, self.deviceID, self.name)
print("\t\t%s\t%s\t%s" % (self.vendorID, self.deviceID, self.name))
class PCIIds:
@ -154,7 +156,7 @@ class PCIIds:
"""Reports the vendors
"""
for vid, v in self.vendors.items():
print v.ID, v.name
print(v.ID, v.name)
def report(self, vendor=None):
"""
@ -185,7 +187,7 @@ class PCIIds:
def parse(self):
if len(self.contents) < 1:
print "data/%s-pci.ids not found" % self.date
print("data/%s-pci.ids not found" % self.date)
else:
vendorID = ""
deviceID = ""
@ -435,7 +437,7 @@ class ReadElf(object):
for tag in dynsec.iter_tags():
if tag.entry.d_tag == 'DT_NEEDED':
rc = tag.needed.find("librte_pmd")
rc = tag.needed.find(b"librte_pmd")
if (rc != -1):
library = search_file(tag.needed,
runpath + ":" + ldlibpath +