diff options
author | Ross Burton <ross@burtonini.com> | 2020-09-03 13:43:19 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2020-09-17 12:51:24 +0100 |
commit | 7724cd224af01f565a019629094b9b455ee3d3e4 (patch) | |
tree | 94e1570b3bf22e5ba976d04f506a57da188eaf7e /meta | |
parent | b06a1c090a6365ff2fab1c6e54ac0f9f9eaea2eb (diff) | |
download | poky-7724cd224af01f565a019629094b9b455ee3d3e4.tar.gz |
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.
(From OE-Core rev: 0b6f03752e6581a15e5fb900a8de7aef78709ef6)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c63af30d3b6350361daff94a59d4f14d7c5395e1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/insane.bbclass | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass index c595080bdf..46d386a38b 100644 --- a/meta/classes/insane.bbclass +++ b/meta/classes/insane.bbclass | |||
@@ -708,12 +708,13 @@ def package_qa_walk(warnfuncs, errorfuncs, package, d): | |||
708 | warnings = {} | 708 | warnings = {} |
709 | errors = {} | 709 | errors = {} |
710 | for path in pkgfiles[package]: | 710 | for path in pkgfiles[package]: |
711 | elf = oe.qa.ELFFile(path) | 711 | elf = None |
712 | try: | 712 | if os.path.isfile(path): |
713 | elf.open() | 713 | elf = oe.qa.ELFFile(path) |
714 | except (IOError, oe.qa.NotELFFileError): | 714 | try: |
715 | # IOError can happen if the packaging control files disappear, | 715 | elf.open() |
716 | elf = None | 716 | except oe.qa.NotELFFileError: |
717 | elf = None | ||
717 | for func in warnfuncs: | 718 | for func in warnfuncs: |
718 | func(path, package, d, elf, warnings) | 719 | func(path, package, d, elf, warnings) |
719 | for func in errorfuncs: | 720 | for func in errorfuncs: |