From: Ross Burton Date: Tue, 30 Apr 2024 13:57:16 +0000 (+0000) Subject: insane: handle dangling symlinks in the libdir QA check X-Git-Tag: uninative-4.5~111 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f044290f98ea66f2cecfbffd7d392dbc3d986da9;p=thirdparty%2Fopenembedded%2Fopenembedded-core.git insane: handle dangling symlinks in the libdir QA check The "libdir" QA check tries to open every file it finds as an ELF. If it finds a dangling symlink that looks like a library by the filename it will try to open it and fail with FileNotFoundError error. As this dangling symlink probably points to a real file, silently absorb the error. [ YOCTO #13949 ] Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- diff --git a/meta/classes-global/insane.bbclass b/meta/classes-global/insane.bbclass index e963001d09a..c32dfffd836 100644 --- a/meta/classes-global/insane.bbclass +++ b/meta/classes-global/insane.bbclass @@ -298,7 +298,7 @@ def package_qa_check_libdir(d): try: elf.open() messages.append("%s: found library in wrong location: %s" % (package, rel_path)) - except (oe.qa.NotELFFileError): + except (oe.qa.NotELFFileError, FileNotFoundError): pass if exec_re.match(rel_path): if libdir not in rel_path and libexecdir not in rel_path: @@ -307,7 +307,7 @@ def package_qa_check_libdir(d): try: elf.open() messages.append("%s: found library in wrong location: %s" % (package, rel_path)) - except (oe.qa.NotELFFileError): + except (oe.qa.NotELFFileError, FileNotFoundError): pass if messages: