mirror of
https://git.yoctoproject.org/poky
synced 2026-06-02 13:29:49 +00:00
insane.bbclass: Make do_qa_staging check shebangs
As reported in the bug report [1], there was no check for shebang sizes on native scripts and now this is fixed. The path scope of the qa_staging was increased from just checking libdir to all the relevant SYSROOT_DIRS. It is possible to skip this check through INSANE_SKIP. [1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=11053 (From OE-Core rev: 377fe11bc0d6939ab1aaebab1bf4e55adca1ab15) Signed-off-by: Paulo Neves <ptsneves@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
241a27ea80
commit
82589b5936
@@ -630,6 +630,11 @@ def qa_check_staged(path,d):
|
||||
bb.note("Recipe %s skipping qa checking: pkgconfig" % d.getVar('PN'))
|
||||
skip_pkgconfig = True
|
||||
|
||||
skip_shebang_size = False
|
||||
if 'shebang-size' in skip:
|
||||
bb.note("Recipe %s skipping qa checkking: shebang-size" % d.getVar('PN'))
|
||||
skip_shebang_size = True
|
||||
|
||||
# find all .la and .pc files
|
||||
# read the content
|
||||
# and check for stuff that looks wrong
|
||||
@@ -651,6 +656,13 @@ def qa_check_staged(path,d):
|
||||
error_msg = "%s failed sanity test (tmpdir) in path %s" % (file,root)
|
||||
oe.qa.handle_error("pkgconfig", error_msg, d)
|
||||
|
||||
if not skip_shebang_size:
|
||||
errors = {}
|
||||
package_qa_check_shebang_size(path, "", d, None, errors)
|
||||
for e in errors:
|
||||
oe.qa.handle_error(e, errors[e], d)
|
||||
|
||||
|
||||
# Run all package-wide warnfuncs and errorfuncs
|
||||
def package_qa_package(warnfuncs, errorfuncs, package, d):
|
||||
warnings = {}
|
||||
@@ -1139,7 +1151,9 @@ addtask do_package_qa_setscene
|
||||
|
||||
python do_qa_staging() {
|
||||
bb.note("QA checking staging")
|
||||
qa_check_staged(d.expand('${SYSROOT_DESTDIR}${libdir}'), d)
|
||||
sysroot_destdir = d.expand('${SYSROOT_DESTDIR}')
|
||||
for sysroot_dir in d.expand('${SYSROOT_DIRS}').split():
|
||||
qa_check_staged(sysroot_destdir + sysroot_dir, d)
|
||||
oe.qa.exit_with_message_if_errors("QA staging was broken by the package built above", d)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user