Hello, I think the note I added to the end of '3.9.1. Dependencies Internal to the .bb File' is a bit misleading in retrospect. The problem is that it implies that the do_build task of a recipe always runs provided any task within it runs, which is false. Just as for other tasks, the do_build task only runs if something depends on it. As a practical example, if foo.bb has a DEPENDS on bar.bb, then 'bitbake foo' will usually only run tasks up to bar:do_populate_sysroot and not run bar:do_build. Below is a suggested rewriting that should hopefully be less misleading. It also adds some information and consistently refers to the task with the "do_" prefix. It's just 'addtask' that lets you leave off the "do_". ... (Beginning same as before.) In this example, the do_printdate task depends on the completion of the do_fetch task, and the do_build task depends on the completion of the do_printdate task. Note { For a task to run, it must be a direct or indirect dependency of some other task that's scheduled to run. For illustration, here are some examples: * The directive 'addtask mytask before do_configure' causes do_mytask to run before do_configure runs. Note that do_mytask will still only run if its [input checksum](http://www.yoctoproject.org/docs/2.2/bitbake-user-manual/bitbake-user-manual.html#checksums) has changed since the last time it was run. Changes to the input signature of do_mytask also indirectly cause do_configure to run. * The directive 'addtask mytask after do_configure' by itself never causes do_mytask to run. do_mytask can still be run manually as follows: $ bitbake recipe -c mytask Declaring do_mytask as a dependency of some other task that's scheduled to run will also cause it to run. Regardless, it will run after do_configure. Cheers, Ulf
That note was added in https://bugzilla.yoctoproject.org/show_bug.cgi?id=9861 by the way.
Hi Ulf, See http://www.yoctoproject.org/docs/2.2/bitbake-user-manual/bitbake-user-manual.html#dependencies-internal-to-the-bb-file for the updates and let me know. Scott
"Checksums value" sounds a bit weird to me. I think I found a better way to put it too, that avoids potential confusion over "checksum" vs. "input signature" (which are the same thing). I'd replace Be aware that do_mytask still runs only if its checksums value has changed since the last time the task was run. Changes to the input signature of do_mytask also indirectly cause do_configure to run. with Be aware that do_mytask still only runs if its [input checksum] has changed since the last time it was run. Changes to the input checksum of do_mytask also indirectly cause do_configure to run. Cheers, Ulf
Ulf, See http://www.yoctoproject.org/docs/2.2/bitbake-user-manual/bitbake-user-manual.html#dependencies-internal-to-the-bb-file and let me know. Scott
Looks good to me now. Thanks, Ulf
Setting the RESOLVED and putting doc flag to "done." Scott