From c63af30d3b6350361daff94a59d4f14d7c5395e1 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Thu, 3 Sep 2020 13:43:19 +0100 Subject: [PATCH] insane: only load real files as ELF The file path checks are passed an ELF object if the file is an ELF. It doesn't make a lot of sense to load symlinks to ELFs as if they're in the same package then the real file will be checked too. This should speed up do_package_qa slightly as libraries won't be scanned repeatedly. Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/classes/insane.bbclass | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass index d7f8f919c3..c38720afdb 100644 --- a/meta/classes/insane.bbclass +++ b/meta/classes/insane.bbclass @@ -709,12 +709,13 @@ def package_qa_walk(warnfuncs, errorfuncs, package, d): warnings = {} errors = {} for path in pkgfiles[package]: - elf = oe.qa.ELFFile(path) - try: - elf.open() - except (IOError, oe.qa.NotELFFileError): - # IOError can happen if the packaging control files disappear, - elf = None + elf = None + if os.path.isfile(path): + elf = oe.qa.ELFFile(path) + try: + elf.open() + except oe.qa.NotELFFileError: + elf = None for func in warnfuncs: func(path, package, d, elf, warnings) for func in errorfuncs: -- 2.40.1