scripts/build/elf_parser.py: add __lt__() method to base class
This allows sorting objects consistently without having to specific a
key.
No functional change yet.
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
diff --git a/scripts/build/elf_parser.py b/scripts/build/elf_parser.py
index bd7a970..07ca6f0 100644
--- a/scripts/build/elf_parser.py
+++ b/scripts/build/elf_parser.py
@@ -24,6 +24,9 @@
self.sym = sym
self.data = self.elf.symbol_data(sym)
+ def __lt__(self, other):
+ return self.sym.entry.st_value < other.sym.entry.st_value
+
def _data_native_read(self, offset):
(format, size) = self.elf.native_struct_format
return struct.unpack(format, self.data[offset:offset + size])[0]
@@ -238,8 +241,8 @@
self.devices.append(Device(self, sym))
self._object_find_named('__device_', _on_device)
- # Sort the device array by address for handle calculation
- self.devices = sorted(self.devices, key = lambda k: k.sym.entry.st_value)
+ # Sort the device array by address (st_value) for handle calculation
+ self.devices = sorted(self.devices)
# Assign handles to the devices
for idx, dev in enumerate(self.devices):