mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 12:59:02 +02:00
bitbake: data: emit filename/lineno information for shell functions
Make it easier for users to debug shell task failure by including some breadcrumbs in the emitted .run file that (hopefully) points to the .bb/.bbclass file where the shell function was defined. Unfortunately this won't work with functions with _append or _prepends, since BitBake wipes the filename/lineno information. This shouldn't be too hard to fix; for now, you'll just see comments like this for such functions: [YOCTO #7877] (Bitbake rev: 9747211cbb45401cbf4dd0409e9c80c648a178c6) Signed-off-by: Chris Laplante <chris.laplante@agilent.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
1752a47664
commit
f664ecb910
|
@ -161,6 +161,12 @@ def emit_var(var, o=sys.__stdout__, d = init(), all=False):
|
|||
return True
|
||||
|
||||
if func:
|
||||
# Write a comment indicating where the shell function came from (line number and filename) to make it easier
|
||||
# for the user to diagnose task failures. This comment is also used by build.py to determine the metadata
|
||||
# location of shell functions.
|
||||
o.write("# line: {0}, file: {1}\n".format(
|
||||
d.getVarFlag(var, "lineno", False),
|
||||
d.getVarFlag(var, "filename", False)))
|
||||
# NOTE: should probably check for unbalanced {} within the var
|
||||
val = val.rstrip('\n')
|
||||
o.write("%s() {\n%s\n}\n" % (varExpanded, val))
|
||||
|
|
Loading…
Reference in New Issue
Block a user