From: Phil Blundell <pb@pbcl.net>
To: Martin Jansa <martin.jansa@gmail.com>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: is sstate-cache really deterministic together with shlibs providers?
Date: Fri, 07 Jun 2013 21:14:09 +0100 [thread overview]
Message-ID: <1370636049.4141.22.camel@pb-ThinkPad-R50e> (raw)
In-Reply-To: <20130607192007.GL22710@jama>
On Fri, 2013-06-07 at 21:20 +0200, Martin Jansa wrote:
> Imagine this process
>
> foo.bb DEPENDS on libabc.bb to provide libabc.1.so
>
> evil recipe bar.bb installs some binary crap in /opt/crap and because it's
> picky about libabc version it bundles own compy of libabc.so.1 and
> installs it to /opt/crap/lib/libabc.so.1
>
> At the time of first build nobody notices libabc.1.so and foo, bar and
> libabc are happily populated to sysroot.
>
> foo.bb is rebuilt because of some unrelated change, but this times it
> uses bar as shlibs provider for libabc.so.1
It sounds like the real bug here is that the shlibdeps code doesn't
issue a diagnostic when it encounters this kind of ambiguous situation.
It ought to be perfectly capable of figuring out that there are two
copies of libabc.so.1 at large which belong to different packages and,
absent additional guidance, it has no reliable way of knowing which one
of those is going to satisfy the DT_NEEDED in any random binary.
If shlibdeps stopped with an error in that situation, which arguably it
ought to, then the erroneous dependency would never get into sstate and
the scenario that you describe would not be able to happen.
p.
next prev parent reply other threads:[~2013-06-07 20:14 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-07 19:20 is sstate-cache really deterministic together with shlibs providers? Martin Jansa
2013-06-07 20:11 ` Richard Purdie
2013-06-07 20:14 ` Phil Blundell [this message]
2013-06-07 20:43 ` Martin Jansa
2013-06-08 13:23 ` Phil Blundell
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=1370636049.4141.22.camel@pb-ThinkPad-R50e \
--to=pb@pbcl.net \
--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