11372: allow to set varflags in image_* classes
cover 11372: allow to set varflags in image_* classes
Hi,
This patchset fixes Bug 11372 - image.bbclass forces some flags for do_image_X tasks by replacing setVarFlag calls with appendVarFlag for prefuncs, postfuncs and subimages flags. This should allow to modify these flags in image_* classes.
The patchset contains a little bit of code cleanup and a small fix for setting vardeps flag.
The following changes since commit 7aae19322ad34fa471550b70e223a702449320a2:
buildhistory-diff: exclude paths from the output (2017-06-13 17:28:07 +0300)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib ed/wip
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=ed/wip
Ed Bartosh (3):
image.bbclass: cleanup: add new variable "task"
image.bbclass: improve setup of flags
image.bbclass: fix setting of vardeps flag
meta/classes/image.bbclass | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-)
--
Regards,
Ed
PATCH 1/3 image.bbclass: cleanup: add new variable "task"
Replaced repeated expression "do_image_%s" % t with a variable 'task' to simplify the code and increase readability.
--- meta/classes/image.bbclass | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-)
meta/classes/image.bbclass +13 -13
@@ -491,19 +491,19 @@ python () { for dep in typedeps[t]: after += ' do_image_%s' % dep.replace("-", "_").replace(".", "_") - t = t.replace("-", "_").replace(".", "_") - - d.setVar('do_image_%s' % t, '\n'.join(cmds)) - d.setVarFlag('do_image_%s' % t, 'func', '1') - d.setVarFlag('do_image_%s' % t, 'fakeroot', '1') - d.setVarFlag('do_image_%s' % t, 'prefuncs', debug + 'set_image_size') - d.setVarFlag('do_image_%s' % t, 'postfuncs', 'create_symlinks') - d.setVarFlag('do_image_%s' % t, 'subimages', ' '.join(subimages)) - d.appendVarFlag('do_image_%s' % t, 'vardeps', ' '.join(vardeps)) - d.appendVarFlag('do_image_%s' % t, 'vardepsexclude', 'DATETIME') - - bb.debug(2, "Adding type %s before %s, after %s" % (t, 'do_image_complete', after)) - bb.build.addtask('do_image_%s' % t, 'do_image_complete', after, d) + task = "do_image_%s" % t.replace("-", "_").replace(".", "_") + + d.setVar(task, '\n'.join(cmds)) + d.setVarFlag(task, 'func', '1') + d.setVarFlag(task, 'fakeroot', '1') + d.setVarFlag(task, 'prefuncs', debug + 'set_image_size') + d.setVarFlag(task, 'postfuncs', 'create_symlinks') + d.setVarFlag(task, 'subimages', ' '.join(subimages)) + d.appendVarFlag(task, 'vardeps', ' '.join(vardeps)) + d.appendVarFlag(task, 'vardepsexclude', 'DATETIME') + + bb.debug(2, "Adding task %s before %s, after %s" % (task, 'do_image_complete', after)) + bb.build.addtask(task, 'do_image_complete', after, d) } #
Signature · 1 line
2.1.4
PATCH 2/3 image.bbclass: improve setup of flags
In reply to Ed BartoshReplaced setVarFlag calls to appendVarFlag to allow modification of prefuncs, postfuncs and subimages flags in inherited image classes.
[YOCTO #11372]
--- meta/classes/image.bbclass | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
meta/classes/image.bbclass +4 -3
@@ -496,9 +496,10 @@ python () { d.setVar(task, '\n'.join(cmds)) d.setVarFlag(task, 'func', '1') d.setVarFlag(task, 'fakeroot', '1') - d.setVarFlag(task, 'prefuncs', debug + 'set_image_size') - d.setVarFlag(task, 'postfuncs', 'create_symlinks') - d.setVarFlag(task, 'subimages', ' '.join(subimages)) + + d.appendVarFlag(task, 'prefuncs', ' ' + debug + ' set_image_size') + d.appendVarFlag(task, 'postfuncs', ' create_symlinks') + d.appendVarFlag(task, 'subimages', ' ' + ' '.join(subimages)) d.appendVarFlag(task, 'vardeps', ' '.join(vardeps)) d.appendVarFlag(task, 'vardepsexclude', 'DATETIME')
Signature · 1 line
2.1.4
PATCH 3/3 image.bbclass: fix setting of vardeps flag
In reply to Ed BartoshAdded leading space to vardeps to avoid flag value to be added to the existing value without a separator.
--- meta/classes/image.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/classes/image.bbclass +1 -1
@@ -500,7 +500,7 @@ python () { d.appendVarFlag(task, 'prefuncs', ' ' + debug + ' set_image_size') d.appendVarFlag(task, 'postfuncs', ' create_symlinks') d.appendVarFlag(task, 'subimages', ' ' + ' '.join(subimages)) - d.appendVarFlag(task, 'vardeps', ' '.join(vardeps)) + d.appendVarFlag(task, 'vardeps', ' ' + ' '.join(vardeps)) d.appendVarFlag(task, 'vardepsexclude', 'DATETIME') bb.debug(2, "Adding task %s before %s, after %s" % (task, 'do_image_complete', after))
Signature · 1 line
2.1.4