bitbake: cooker: Rewrite dependency dot file generation

The package-depends.dot and pn-depends.dot files are inaccurate, missing
out key dependencies such those made via the [depends] flags. As such
they can be misleading to the user.

They mainly exist for historical reasons, coming from a time before
we had task based execution.

This commit removes the two dated file formats and replaces them with
a recipe-depends.dot which is a flattened version of task-depends.dot.

The old format files are removed if present so that the user can't get
confused about why data might not match between files.

The code is also rewritten to use 'with f: f.write()' syntax as is more
commonly used now.

Also update the docs to match the change.

(Bitbake rev: d3e182bc18ff2894f1efc8aad3d508dd432c996e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2017-02-12 19:23:09 +00:00
parent 701ae7d1f4
commit 6cfc1c83b9
2 changed files with 47 additions and 60 deletions

View File

@@ -666,19 +666,14 @@
</para>
<para>
When you generate a dependency graph, BitBake writes four files
When you generate a dependency graph, BitBake writes three files
to the current working directory:
<itemizedlist>
<listitem><para><emphasis><filename>package-depends.dot</filename>:</emphasis>
Shows BitBake's knowledge of dependencies between
runtime targets.
</para></listitem>
<listitem><para><emphasis><filename>pn-depends.dot</filename>:</emphasis>
Shows dependencies between build-time targets
(i.e. recipes).
<listitem><para><emphasis><filename>recipe-depends.dot</filename>:</emphasis>
Shows dependencies between recipes (a collapsed version of task-depends.dot).
</para></listitem>
<listitem><para><emphasis><filename>task-depends.dot</filename>:</emphasis>
Shows dependencies between tasks.
Shows dependencies between tasks. This matches bitbake's internal task execution list.
</para></listitem>
<listitem><para><emphasis><filename>pn-buildlist</filename>:</emphasis>
Shows a simple list of targets that are to be built.