[oe] Eliminating dependency race-conditions

Esben Haabendal eha at doredevelopment.dk
Wed Mar 16 05:47:57 UTC 2011


On Tue, 2011-03-15 at 18:03 -0400, Denys Dmytriyenko wrote:
> On Tue, Mar 15, 2011 at 10:08:37AM +0100, Esben Haabendal wrote:
> > On Fri, 2011-03-11 at 12:04 +0100, Steffen Sledz wrote:
> > > which occurred sometimes depending on build order (not in clean
> > > package only builds).
> > 
> > I would like to raise awareness of the underlying problem here.
> > 
> > The current dependency/staging model of OE basically has this feature
> > that a build can be influenced not only by it's own dependencies, but
> > also what has been build before it (or not).
> > 
> > I strongly believe that this has to be fixed on the architectural level,
> > and not just on a case-by-case level as is currently needed.
> > 
> > I haven't received much feedback on the preivous posting about the
> > per-recipe staging principle implemented in OE-lite, but I decided to
> > take this opportunity to re-iterate the fact that the OE-lite
> > implementation of staging and build dependencies eliminates this
> > problem.
> > 
> > I am still very much interested in discussing how to move this
> > technology from OE-lite to OE, but as it impacts all recipe metadata
> > (build dependencies has to be redefined), OE community at a large really
> > needs to value the benefits of solving this problem.
> 
> Esben,
> 
> Thanks for raising this issue and making people aware of it!
> 
> This has previously been discussed several times, including last time during 
> the Yocto Summit in December, where I brought up the question of per-package 
> staging/dependency to Richard's attention, when he introduced the new Shared 
> State (sstate). While per-package dependency wasn't considered a critical 
> must-have feature right away, it was acknowledged as something worthwhile 
> looking at and, according to Richard, should be easy to accomplish with the 
> new sstate functionality...

There is two different objectives in this.

Per-recipe staging and per-package build-time dependencies.  While I
assume per-recipe staging will be doable to build on top of sstate,
per-package build-time dependencies is not really related to sstate, but
is mostly a meta-data issue (man-hours wise), while also requiring
changes to tbe BitBake cooker.

The final thing that I have found while solving the above issues, is how
simple (KISS!) all this can be addressed when going from per-recipe
build-time dependencies to per-package.  And I really think that we need
more KISS in OE ;-)

/Esben







More information about the Openembedded-devel mailing list