The isELF and is_elf function share a common ancestry, but have diverged. Let's use the implementation from oe.package.
Signed-off-by: Olof Johansson <[email protected]> --- meta/classes/package.bbclass | 40 +++++++++------------------------------- 1 file changed, 9 insertions(+), 31 deletions(-) diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index 2053d46395..f65596126d 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass @@ -857,6 +857,12 @@ python fixup_perms () { python split_and_strip_files () { import stat, errno + import oe.package + + def is_elf(path): + return oe.package.is_elf( + path, lambda msg: package_qa_handle_error("split-strip", msg, d) + ) dvar = d.getVar('PKGD') pn = d.getVar('PN') @@ -892,34 +898,6 @@ python split_and_strip_files () { sourcefile = d.expand("${WORKDIR}/debugsources.list") bb.utils.remove(sourcefile) - # Return type (bits): - # 0 - not elf - # 1 - ELF - # 2 - stripped - # 4 - executable - # 8 - shared library - # 16 - kernel module - def isELF(path): - type = 0 - ret, result = oe.utils.getstatusoutput("file \"%s\"" % path.replace("\"", "\\\"")) - - if ret: - msg = "split_and_strip_files: 'file %s' failed" % path - package_qa_handle_error("split-strip", msg, d) - return type - - # Not stripped - if "ELF" in result: - type |= 1 - if "not stripped" not in result: - type |= 2 - if "executable" in result: - type |= 4 - if "shared" in result: - type |= 8 - return type - - # # First lets figure out all of the files we may have to process ... do this only once! # @@ -961,14 +939,14 @@ python split_and_strip_files () { # If it's a symlink, and points to an ELF file, we capture the readlink target if cpath.islink(file): target = os.readlink(file) - if isELF(ltarget): - #bb.note("Sym: %s (%d)" % (ltarget, isELF(ltarget))) + if is_elf(ltarget): + #bb.note("Sym: %s (%d)" % (ltarget, is_elf(ltarget))) symlinks[file] = target continue # It's a file (or hardlink), not a link # ...but is it ELF, and is it already stripped? - elf_file = isELF(file) + elf_file = is_elf(file) if elf_file & 1: if elf_file & 2: if 'already-stripped' in (d.getVar('INSANE_SKIP_' + pn) or "").split(): -- 2.11.0 -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
