From: Osama Abdelkader <osama.abdelkader@gmail.com>
To: Alexander Kanavin <alex.kanavin@gmail.com>
Cc: yocto@lists.yoctoproject.org, bitbake-devel@lists.openembedded.org
Subject: Re: [bitbake-devel] [RFC] Proposal: New tool to display recipe dependency trees
Date: Mon, 24 Nov 2025 20:42:27 +0200 [thread overview]
Message-ID: <aSSnE0X9kycDc60G@osama> (raw)
In-Reply-To: <CANNYZj85vK7o4KVDUtJ_DkW73bxs7UMA-bM6K2VRada-yCFpfA@mail.gmail.com>
On Mon, Nov 24, 2025 at 07:04:12PM +0100, Alexander Kanavin wrote:
> On Mon, 24 Nov 2025 at 18:24, Osama Abdelkader via
> lists.openembedded.org
> <osama.abdelkader=gmail.com@lists.openembedded.org> wrote:
> > Should the tool:
> >
> > cover only DEPENDS (build-time)?
> > include RDEPENDS with pkgdata?
> > resolve virtual/ providers?
> >
> > Any prior work I may have missed?
> >
> > If the idea is acceptable, I will prepare a proper implementation and send a patchset to the appropriate mailing list.
> > Thank you for your feedback!
>
Hello Alex,
> Hello Osama,
>
> DEPENDS is a somewhat unfortunate variable name that we're stuck with.
>
> It does not actually specify a recipe dependency, it specifies
> something more specific:
>
> - run A.do_populate_sysroot before B.do_prepare_recipe_sysroot (a task
> dependency)
> - within B.do_prepare_recipe_sysroot task, take the output that
> A.do_populate_sysroot produced and place that into B's sysroot (a hint
> for sysroot creation)
Yes, I know that.
>
> So I feel that any tool that aims to make things easier should
> continue to present particular tasks; there's really no such thing as
> 'recipe-level dependency'.
>
> In addition to that RDEPENDS is not specifying recipes. It is
> specifying packages that the recipes produce (which sometimes match
> the recipe names, but are otherwise distinct). You really should not
> mix them together.
>
> I guess the question we need to ask is why 'bitbake -g' output is
> difficult to understand or unhelpful in resolving questions people
> have about dependencies. How can we make that better?
Exactly.
For me, the output dot file usually is so large and not "human-friendly" to trace.
>
> Alex
My motivation actually was so simple, to know why a certain package is needed in an image.
The simple way now AFAIK is to exclude it, then bitbake prints backtrace e.g.
dnf
├── libdnf
│ ├── libsolv
│ └── json-c
└── sqlite3
dnf -> libdnf -> libsolv
libsolv is needed for dnf. so would be good to have a query command or simple tool to show that?
something like apt-rdepends output.
BR,
Osama
next prev parent reply other threads:[~2025-11-24 18:42 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-24 17:24 [RFC] Proposal: New tool to display recipe dependency trees Osama Abdelkader
2025-11-24 18:04 ` [bitbake-devel] " Alexander Kanavin
2025-11-24 18:20 ` Quentin Schulz
2025-11-24 18:48 ` Osama Abdelkader
2025-11-24 18:42 ` Osama Abdelkader [this message]
2025-11-24 18:53 ` Alexander Kanavin
2025-11-25 20:15 ` Osama Abdelkader
2025-11-24 20:49 ` [yocto] " Ross Burton
2025-11-25 20:26 ` Osama Abdelkader
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aSSnE0X9kycDc60G@osama \
--to=osama.abdelkader@gmail.com \
--cc=alex.kanavin@gmail.com \
--cc=bitbake-devel@lists.openembedded.org \
--cc=yocto@lists.yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox