[bitbake-devel] [PATCH] cooker: Drop package-depends.dot and pn-depends.dot generation

Tobias Hagelborn tobias.hagelborn at axis.com
Fri Feb 3 13:18:11 UTC 2017


On 01/25/2017 08:17 PM, Paul Eggleton wrote:
> On Wednesday, 25 January 2017 11:12:57 AM NZDT Richard Purdie wrote:
>> On Wed, 2017-01-25 at 11:05 +0000, Peter Kjellerstedt wrote:
>>> pn-dependes.dot when visualizing the dependencies between packages.
>>> Even though task-depends.dot is more complete, trying to render it
>>> is near impossible given the sheer number of nodes and edges it
>>> contains. Already visualizing pn-depends.dot is hard but possible
>>> with some gvpr and tred filtering. Here are some statistics from
>>> one of my typical builds:
>>>
>>>                         Nodes  Edges
>>>                         -----  ------
>>> pn-depends.dot           1183   12087
>>> package-depends.dot      5939   55615
>>> task-depends.dot        13756  125870
>>>
>>> As can be seen, the number of nodes and edges in task-depends.dot
>>> is a magnitude greater than in pn-depends.dot.
>>
>> Its certainly simpler, but the data is just plain buggy. I'm not sure
>> I'd trust anything those files told me, even if they are easier to
>> view.
>>
>> I appreciate task-depends is hard to load graphically, it is helpful
>> even as a text file though, I do use it a lot since its a near direct
>> dump of bitbake's internal parsed task dependencies.
>
> What if we collapsed down task-depends.dot to PNs only in order to produce
> pn-depends.dot? Then at least it would be reasonably accurate.
>
> Cheers,
> Paul
>

Hi,

It is a great initiative to make the dependency graphs more correct.
I just wanted to note that I have found very good use of the 
pn-buildlist as a measure to force a certain task on, for instance, all 
recipe dependencies in an image or other recipe. It is sort of a good 
input for a "for each" cmdline scripts.

ex: xargs -a pn-buildlist bitbake -c mytask

This can of cause be done by filtering stuff out from the tasks-depends 
or pn-depends but there is a risk of parse error trying to separate task 
name from packet name if not following conventions.

So, perhaps you are aware of another preferred way to achieve this or if 
you could consider still providing the pn-buildlist (although correct 
and derived from task-depends)?

Cheers
Tobias



More information about the bitbake-devel mailing list