While working on an archiver issue, it was observed that changing the task data variable in a certain class did not produce the correct behavior. It can be reproduced by changing any "addtask" line anywhere in bitbake, but this what I've been playing with: 1. Add the following in the local.conf: ARCHIVER_MODE ?= "original" ARCHIVER_MODE[type] ?= "tar" ARCHIVER_MODE[log_type] ?= "logs_with_scripts" ARCHIVER_MODE[filter] = "no" ARCHIVER_CLASS = "${@'archive-${ARCHIVER_MODE}-source' if ARCHIVER_MODE != 'none' else ''}" INHERIT += "${ARCHIVER_CLASS}" 2. in archive-original-source.bbclass, change the following line: -addtask do_dumpdata_create_diff_gz +addtask do_dumpdata_create_diff_gz before do_rootfs 3. do a bitbake -g core-image-sato 4. run `cat task-depends.dot |grep do_rootfs|grep create` Expected result: "core-image-sato.do_rootfs" -> "core-image-sato.do_dumpdata_create_diff_gz" Actual result: The command will not output anything
One additional comment: if tmp/cache directory is removed, the task dependencies will be computed correctly.
Patch merged to master: http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=6db202532122b213ae6cfce9a49ac9fad2db20f5