| Summary: | Suggested additions to the dependencies section | ||
|---|---|---|---|
| Product: | [Documentation] BitBake User Manual | Reporter: | ulfalizer |
| Component: | bitbake-manual | Assignee: | Scott Rifenbark <srifenbark> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | enhancement | ||
| Priority: | Medium | CC: | bluelightning, sgw, srifenbark |
| Version: | 2.2 | ||
| Target Milestone: | 2.2 M3 | ||
| Hardware: | x86 | ||
| OS: | Multiple | ||
| Whiteboard: | 16 July 2016: RESOLVED | ||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | Done (doc changes complete) | |
|
Description
ulfalizer
2016-06-30 22:47:50 UTC
Hi, I updated the 3.9 section based on your information. I formed it a bit differently but think I got the details. If not let me know. See http://www.yoctoproject.org/docs/2.2/bitbake-user-manual/bitbake-user-manual.html#dependencies The second part of the bug you noted for section 3.9.4 for recursive dependencies I need some further explanation. I don't have a full example. So if you could provide some code snippits I could get them in there. Also, regarding the term "inter-task" -- Both section 3.9.4 and 3.9.5 use that term. See http://www.yoctoproject.org/docs/2.2/bitbake-user-manual/bitbake-user-manual.html#recursive-dependencies and http://www.yoctoproject.org/docs/2.2/bitbake-user-manual/bitbake-user-manual.html#inter-task-dependencies. Section 3.9.5 seems to imply that inter-task means "interdependency checks between specific tasks and further clarifies it by adding "rather than checks for the data in DEPENDS." I don't understand this but that is clearly some sort of definition for "inter-task". Maybe you or someone can tell me if that is the right definition for "inter-task" in this case. Once I know that, I can attempt to clear things up a bit for those two sections. Thanks, Scott (In reply to comment #1) > I updated the 3.9 section based on your information. I formed it a bit > differently but think I got the details. If not let me know. See > http://www.yoctoproject.org/docs/2.2/bitbake-user-manual/bitbake-user-manual. > html#dependencies Looks nice. My version was a bit run-on. :) Could we also add the following note to the end of '3.9.1. Dependencies Internal to the .bb File'? It sorts out some confusion I've seen. "Recipes are built by having their do_build (not to be confused with do_compile) tasks executed. For a task to run when a recipe is built, it must therefore be a direct or indirect dependency of do_build. The following examples illustrate this: * 'addtask mytask before do_build' causes mytask to run when the recipe is built. In this example it is run at an unspecified time relative to other tasks within the recipe, since no 'after' is given. * 'addtask mytask after do_configure' by itself does *not* cause mytask to run when the recipe is built. The task can still be run manually with $ bitbake <recipe> -c mytask , and could also be declared as a dependency of some other task. In both cases, it will run after do_configure." To make the task and dependency information in the BitBake User Manual easier to find, I suggest adding the following, "For more information on tasks and dependencies, see the [3.5. Tasks] and [3.9 Dependencies] sections of the BitBake User Manual." , to the following places in the Yocto Project Reference Manual: * Right before '8.1. Normal Recipe Build Tasks'. * Near the end of the glossary entries for DEPENDS and RDEPENDS. We could return to recrdeptask and "inter-task" later. (Maybe in a separate ticket, so this one doesn't get too big.) I would need to do some digging to figure stuff out at least. Would be nice if someone more familiar with it could jump in too. Hi, Here is the new note added to the BB manual: http://www.yoctoproject.org/docs/2.2/bitbake-user-manual/bitbake-user-manual.html#dependencies-internal-to-the-bb-file. Check it out for me and let me know of any problems or changes. The additional notes in the ref-manual can be found at the following variable descriptions near the bottom of each variable: * http://www.yoctoproject.org/docs/2.2/ref-manual/ref-manual.html#var-DEPENDS * http://www.yoctoproject.org/docs/2.2/ref-manual/ref-manual.html#var-RDEPENDS Thanks, Scott Just one nit: ...since "after" is not used... could use code highlighting and no quotation marks instead for "after". I also think I came up with something useful to add to '3.9.4. Recursive Dependencies', that explains its purpose. I'd add this in a separate paragraph after "iterative passes continue until all dependencies are discovered and added": recrdeptask is most commonly used in high-level recipes that need to wait for some task to finish "globally". For example, image.bbclass has the following: do_rootfs[recrdeptask] += "do_packagedata" This says that the do_packagedata task of all recipes reachable (via dependencies) from the image recipe must run before the do_rootfs task can run. Ulf, Here is the formatting change in the note for "after" - http://www.yoctoproject.org/docs/2.2/bitbake-user-manual/bitbake-user-manual.html#dependencies-internal-to-the-bb-file Also, here is the link for that additional paragraph you suggested: http://www.yoctoproject.org/docs/2.2/bitbake-user-manual/bitbake-user-manual.html#recursive-dependencies. Let me know how this works. Thanks, Scott Looks good to me. Thanks! Thanks, Setting to RESOLVED and putting the doc flag to "Done." Scott |