summaryrefslogtreecommitdiffstats
path: root/meta/lib
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2022-02-06 22:53:11 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-02-08 14:19:33 +0000
commitfac984b99fdb46949879516cb87153860f402c75 (patch)
treead087dc5a0664eebdefcbe5f2c7d5d76f2dcff52 /meta/lib
parent0b00410161e3a0d3c9a9631ae3544f42e36cc1b7 (diff)
downloadopenembedded-core-contrib-fac984b99fdb46949879516cb87153860f402c75.tar.gz
insane.bbclass: use multiprocessing for collecting 'objdump -p' output
This was prompted by ltp's unreasonably long package_qa times; it has a massive amount of executables and insane runs objdump for all of them, serially. This reduces the time from 4 minutes to 1m20s on my machine. Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib')
-rw-r--r--meta/lib/oe/qa.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/meta/lib/oe/qa.py b/meta/lib/oe/qa.py
index efab7e8564..89acd3ead0 100644
--- a/meta/lib/oe/qa.py
+++ b/meta/lib/oe/qa.py
@@ -48,6 +48,9 @@ class ELFFile:
return self
def __exit__(self, exc_type, exc_value, traceback):
+ self.close()
+
+ def close(self):
if self.data:
self.data.close()
@@ -128,6 +131,9 @@ class ELFFile:
"""
return self.getShort(ELFFile.E_MACHINE)
+ def set_objdump(self, cmd, output):
+ self.objdump_output[cmd] = output
+
def run_objdump(self, cmd, d):
import bb.process
import sys