[oe] [RFC] get rid of legacy staging

Chris Larson clarson at kergoth.com
Sat Jul 24 16:12:36 UTC 2010


On Sat, Jul 24, 2010 at 9:08 AM, Frans Meulenbroeks <
fransmeulenbroeks at gmail.com> wrote:

> 2010/7/24 Detlef Vollmann <dv at vollmann.ch>
>
> > On 07/24/10 16:35, Frans Meulenbroeks wrote:
> >
> >> 2010/7/24 Martyn Welch <martyn at welchs.me.uk>
> >>
> >>  Can anyone point me to any documentation that describes what legacy
> >>> staging
> >>> is and roughly what needs to be done to remove it?
> >>>
> >>
> >
> >> There was a post half a year or so ago from Koen, but I can't find it.
> >> Basically it boils down to removing do_stage from a recipe in which case
> >> do_install is used to install things in staging
> >> in some cases do_install need to be modified to deal with peculiarities
> >> that
> >> were done in do_stage
> >>
> >> For native recipes NATIVE_INSTALL_WORKS = "1" may need to be added.
> >>
> > That's not really much of an explanation.
> > Let's take an example.  I have two out of tree kernel modules A and B.
> > B depends on A.
> > With "legacy" staging, in A_1.0.bb I have a do_install, that copies
> > the kernel object, and a do_stage, that copies the header file at
> > a place where B_1.0.bb can find it.
> >
> > How do I do that with non-"legacy" staging?
> >
>
> Apologies if my explanation was too brief. Didn't have too much time (and
> still haven't)
> I hope Koen's explanation below helps.
> The way I perceive it is that the non-legacy staging is performed by doing
> a
> do_install with the staging dir as target directory.
> Guess someone will correct this if I am wrong.


You never touch a staging directory from do_install, ever.  You install into
the usual paths, relative to ${D}, and the machinery in the classes will
automatically populate staging from that.  If you need to mangle a file
differently in staging from how you want it in your package, you can install
a hook that will be called at staging population time.
-- 
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics



More information about the Openembedded-devel mailing list