[oe] [RFC] get rid of legacy staging

Frans Meulenbroeks fransmeulenbroeks at gmail.com
Sat Jul 24 17:22:44 UTC 2010


2010/7/24 Chris Larson <clarson at kergoth.com>

> 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
>

That is what actually what I wanted to say but apparently failed to express
properly
It is indeed the machinery that does the work, not the user itself.

Frans.

> 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
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>



More information about the Openembedded-devel mailing list