diff options
Diffstat (limited to 'scripts/tiny/ksize.py')
| -rwxr-xr-x | scripts/tiny/ksize.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/scripts/tiny/ksize.py b/scripts/tiny/ksize.py index b9d2b192cf..ea1ca7ff23 100755 --- a/scripts/tiny/ksize.py +++ b/scripts/tiny/ksize.py | |||
| @@ -41,7 +41,7 @@ def usage(): | |||
| 41 | class Sizes: | 41 | class Sizes: |
| 42 | def __init__(self, glob): | 42 | def __init__(self, glob): |
| 43 | self.title = glob | 43 | self.title = glob |
| 44 | p = Popen("size -t " + glob, shell=True, stdout=PIPE, stderr=PIPE) | 44 | p = Popen("size -t " + str(glob), shell=True, stdout=PIPE, stderr=PIPE) |
| 45 | output = p.communicate()[0].splitlines() | 45 | output = p.communicate()[0].splitlines() |
| 46 | if len(output) > 2: | 46 | if len(output) > 2: |
| 47 | sizes = output[-1].split()[0:4] | 47 | sizes = output[-1].split()[0:4] |
| @@ -62,18 +62,18 @@ class Report: | |||
| 62 | r = Report(filename, title) | 62 | r = Report(filename, title) |
| 63 | path = os.path.dirname(filename) | 63 | path = os.path.dirname(filename) |
| 64 | 64 | ||
| 65 | p = Popen("ls " + path + "/*.o | grep -v built-in.o", | 65 | p = Popen("ls " + str(path) + "/*.o | grep -v built-in.o", |
| 66 | shell=True, stdout=PIPE, stderr=PIPE) | 66 | shell=True, stdout=PIPE, stderr=PIPE) |
| 67 | glob = ' '.join(p.communicate()[0].splitlines()) | 67 | glob = ' '.join(p.communicate()[0].splitlines()) |
| 68 | oreport = Report(glob, path + "/*.o") | 68 | oreport = Report(glob, str(path) + "/*.o") |
| 69 | oreport.sizes.title = path + "/*.o" | 69 | oreport.sizes.title = str(path) + "/*.o" |
| 70 | r.parts.append(oreport) | 70 | r.parts.append(oreport) |
| 71 | 71 | ||
| 72 | if subglob: | 72 | if subglob: |
| 73 | p = Popen("ls " + subglob, shell=True, stdout=PIPE, stderr=PIPE) | 73 | p = Popen("ls " + subglob, shell=True, stdout=PIPE, stderr=PIPE) |
| 74 | for f in p.communicate()[0].splitlines(): | 74 | for f in p.communicate()[0].splitlines(): |
| 75 | path = os.path.dirname(f) | 75 | path = os.path.dirname(f) |
| 76 | r.parts.append(Report.create(f, path, path + "/*/built-in.o")) | 76 | r.parts.append(Report.create(f, path, str(path) + "/*/built-in.o")) |
| 77 | r.parts.sort(reverse=True) | 77 | r.parts.sort(reverse=True) |
| 78 | 78 | ||
| 79 | for b in r.parts: | 79 | for b in r.parts: |
| @@ -116,6 +116,13 @@ class Report: | |||
| 116 | self.deltas["data"], self.deltas["bss"])) | 116 | self.deltas["data"], self.deltas["bss"])) |
| 117 | print("\n") | 117 | print("\n") |
| 118 | 118 | ||
| 119 | def __lt__(this, that): | ||
| 120 | if that is None: | ||
| 121 | return 1 | ||
| 122 | if not isinstance(that, Report): | ||
| 123 | raise TypeError | ||
| 124 | return this.sizes.total < that.sizes.total | ||
| 125 | |||
| 119 | def __cmp__(this, that): | 126 | def __cmp__(this, that): |
| 120 | if that is None: | 127 | if that is None: |
| 121 | return 1 | 128 | return 1 |
