mirror of
https://git.yoctoproject.org/poky
synced 2026-06-08 03:20:47 +00:00
scripts: python3 fixes and new tool ksum
'ksum.py' generates a combined summary of vmlinux and module sizes for a built kernel, as a quick tool for comparing the overall effects of systemic tinification changes. Execute from the base directory of the kernel build you want to summarize. Setting the 'verbose' flag will display the sizes for each file included in the summary. (From OE-Core rev: 016b19c2589582d7ec3c8cac9cfa75a1edc716fe) Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
9d0b36d9ff
commit
1cae998af9
+12
-5
@@ -41,7 +41,7 @@ def usage():
|
||||
class Sizes:
|
||||
def __init__(self, glob):
|
||||
self.title = glob
|
||||
p = Popen("size -t " + glob, shell=True, stdout=PIPE, stderr=PIPE)
|
||||
p = Popen("size -t " + str(glob), shell=True, stdout=PIPE, stderr=PIPE)
|
||||
output = p.communicate()[0].splitlines()
|
||||
if len(output) > 2:
|
||||
sizes = output[-1].split()[0:4]
|
||||
@@ -62,18 +62,18 @@ class Report:
|
||||
r = Report(filename, title)
|
||||
path = os.path.dirname(filename)
|
||||
|
||||
p = Popen("ls " + path + "/*.o | grep -v built-in.o",
|
||||
p = Popen("ls " + str(path) + "/*.o | grep -v built-in.o",
|
||||
shell=True, stdout=PIPE, stderr=PIPE)
|
||||
glob = ' '.join(p.communicate()[0].splitlines())
|
||||
oreport = Report(glob, path + "/*.o")
|
||||
oreport.sizes.title = path + "/*.o"
|
||||
oreport = Report(glob, str(path) + "/*.o")
|
||||
oreport.sizes.title = str(path) + "/*.o"
|
||||
r.parts.append(oreport)
|
||||
|
||||
if subglob:
|
||||
p = Popen("ls " + subglob, shell=True, stdout=PIPE, stderr=PIPE)
|
||||
for f in p.communicate()[0].splitlines():
|
||||
path = os.path.dirname(f)
|
||||
r.parts.append(Report.create(f, path, path + "/*/built-in.o"))
|
||||
r.parts.append(Report.create(f, path, str(path) + "/*/built-in.o"))
|
||||
r.parts.sort(reverse=True)
|
||||
|
||||
for b in r.parts:
|
||||
@@ -116,6 +116,13 @@ class Report:
|
||||
self.deltas["data"], self.deltas["bss"]))
|
||||
print("\n")
|
||||
|
||||
def __lt__(this, that):
|
||||
if that is None:
|
||||
return 1
|
||||
if not isinstance(that, Report):
|
||||
raise TypeError
|
||||
return this.sizes.total < that.sizes.total
|
||||
|
||||
def __cmp__(this, that):
|
||||
if that is None:
|
||||
return 1
|
||||
|
||||
Reference in New Issue
Block a user