From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Martin Jansa <martin.jansa@gmail.com>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: RDEPENDS of packages created by PACKAGES_DYNAMIC not built before image rootfs
Date: Wed, 28 Nov 2012 05:35:20 +0000 [thread overview]
Message-ID: <1354080920.21863.119.camel@ted> (raw)
In-Reply-To: <20121127202356.GJ3692@jama.jama.net>
On Tue, 2012-11-27 at 21:23 +0100, Martin Jansa wrote:
> On Tue, Nov 27, 2012 at 08:11:42PM +0000, Richard Purdie wrote:
> > On Tue, 2012-11-27 at 16:41 +0100, Martin Jansa wrote:
> > So basically, you need to decide whether you want consolekit enabled or
> > not and build accordingly, there is nothing you can do within bitbake to
> > "mind read" what the image is going to want...
>
> No, you know that you will need pulseaudio-module-console-kit because
> pulseaudio-server RDEPENDs on it (not on any pulseaudio-module-* but
> pulseaudio-module-console-kit exactly). So it's not really mind reading.
Bitbake sees "pulseaudio-module-console-kit" and is has to ask "Which
recipe provides this". To answer that question, it looks first at
PACKAGES and then at PACKAGES_DYNAMIC. In this case it will find a match
for PACKAGES_DYNAMIC but bitbake considers this a fuzzy match.
We only match dynamic packages right at the end of processing and they
are "fuzzy". Basically, they are just a sanity check in bitbake to
ensure there is some chance of the thing getting built.
I can see in this case that a dependency exists that BitBake could use
to enhance its knowledge, the trouble is that is would have to first
decide which provider is providing PACKAGES_DYNAMIC, and then search
that package for extra RDEPENDS. In this case its "easier" since its all
the same package but with our generic providers mechanism, this could
just as easily be split between two recipes which makes the problem at
lot more complex and the code has to be written for the general case.
> If it's not possible with current code-base then we should document it
> and add some work around in pulseaudio (I'm fine with building
> consolekit even when it's not used later).
I suspect we'll just have to add this. I agree it would be possible to
try and figure out this corner case but whether its worth the complexity
and extra parse time I'm not sure. The risk of adding further bugs
trying to add this functionality would worry me, as would the extra
complexity and the time taken to do it...
As such I'd probably mark the bug report "LATER" and suggest working
around this. If we were hitting this on many recipes, fine but we're not
as far as I know.
Cheers,
Richard
prev parent reply other threads:[~2012-11-28 5:49 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-27 15:41 RDEPENDS of packages created by PACKAGES_DYNAMIC not built before image rootfs Martin Jansa
2012-11-27 17:08 ` Otavio Salvador
2012-11-27 20:11 ` Richard Purdie
2012-11-27 20:23 ` Martin Jansa
2012-11-27 21:07 ` Mark Hatle
2012-11-28 5:26 ` Richard Purdie
2012-11-28 16:24 ` Mark Hatle
2012-11-28 5:35 ` Richard Purdie [this message]
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=1354080920.21863.119.camel@ted \
--to=richard.purdie@linuxfoundation.org \
--cc=martin.jansa@gmail.com \
--cc=openembedded-core@lists.openembedded.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