Hi Richard,

On Sun, Sep 19, 2021 at 07:36:56PM +0100, Richard Purdie wrote:
> On Sun, 2021-09-19 at 18:06 +0000, Peter Kjellerstedt wrote:
> > > -----Original Message-----
> > > From: [email protected] <openembedded-
> > > [email protected]> On Behalf Of Richard Purdie
> > > Sent: den 19 september 2021 13:03
> > > To: [email protected]
> > > Subject: Re: [OE-core] [RFC PATCH] package_ipk/deb/rpm: Drop recursive
> > > do_build task dependencies
> > > 
> > > On Sun, 2021-09-19 at 11:57 +0100, Richard Purdie via 
> > > lists.openembedded.org
> > > wrote:
> > > > This is a controversial change which removes the recursive dependencies
> > > > from the do_build target of packaging tasks of recipes.
> > > > 
> > > > Currently this means when you "bitbake <image>" or "bitbake <recipe>",
> > > > the packaging tasks run for all packaging backends enabled for all 
> > > > recipes
> > > > in the dependency chain. The same therefore then applies to images.
> > > > 
> > > > We don't actually need that, it is a convinience thing. Removing it
> > > > massively simplifies the task graph and causes much fewer tasks to 
> > > > execute
> > > > in many common scenarios. It also means less sstate is fetched for
> > > > example when building an image.
> > > > 
> > > > Signed-off-by: Richard Purdie <[email protected]>
> > > > ---
> > > >  meta/classes/package_deb.bbclass | 2 --
> > > >  meta/classes/package_ipk.bbclass | 2 --
> > > >  meta/classes/package_rpm.bbclass | 2 --
> > > >  3 files changed, 6 deletions(-)
> > > > 
> > > > diff --git a/meta/classes/package_deb.bbclass
> > > > b/meta/classes/package_deb.bbclass
> > > > index eca43e17876..8f0eadbcd2e 100644
> > > > --- a/meta/classes/package_deb.bbclass
> > > > +++ b/meta/classes/package_deb.bbclass
> > > > @@ -320,5 +320,3 @@ addtask package_write_deb after do_packagedata
> > > > do_package
> > > > 
> > > >  PACKAGEINDEXDEPS += "dpkg-native:do_populate_sysroot"
> > > >  PACKAGEINDEXDEPS += "apt-native:do_populate_sysroot"
> > > > -
> > > > -do_build[recrdeptask] += "do_package_write_deb"
> > > > diff --git a/meta/classes/package_ipk.bbclass
> > > > b/meta/classes/package_ipk.bbclass
> > > > index c3b53854e8b..756744279e1 100644
> > > > --- a/meta/classes/package_ipk.bbclass
> > > > +++ b/meta/classes/package_ipk.bbclass
> > > > @@ -278,5 +278,3 @@ addtask package_write_ipk after do_packagedata
> > > > do_package
> > > > 
> > > >  PACKAGEINDEXDEPS += "opkg-utils-native:do_populate_sysroot"
> > > >  PACKAGEINDEXDEPS += "opkg-native:do_populate_sysroot"
> > > > -
> > > > -do_build[recrdeptask] += "do_package_write_ipk"
> > > > diff --git a/meta/classes/package_rpm.bbclass
> > > > b/meta/classes/package_rpm.bbclass
> > > > index 88d861c0e75..9f415b234de 100644
> > > > --- a/meta/classes/package_rpm.bbclass
> > > > +++ b/meta/classes/package_rpm.bbclass
> > > > @@ -752,5 +752,3 @@ addtask package_write_rpm after do_packagedata
> > > > do_package
> > > > 
> > > >  PACKAGEINDEXDEPS += "rpm-native:do_populate_sysroot"
> > > >  PACKAGEINDEXDEPS += "createrepo-c-native:do_populate_sysroot"
> > > > -
> > > > -do_build[recrdeptask] += "do_package_write_rpm"
> > > 
> > > Just to add a bit more context to this, the bigger impact will be on CI
> > > setups
> > > including our autobuilder since "bitbake XXX" will no longer do quite what
> > > it
> > > did before. I'm starting to think we should move to the new behaviour and
> > > apapt
> > > the CI targets as/where needed.
> > > 
> > > I have a build running on the autobuilder to see what impact this has on 
> > > the
> > > automated tests. I'd welcome other people's thoughts on this.
> > > 
> > > FWIW we have removed a lot of these recursive dependencies, this one is 
> > > one
> > > of
> > > the few left on do_build but it has been left as it has the biggest user
> > > visible
> > > impact.
> > > 
> > > Cheers,
> > > 
> > > Richard
> > 
> > You write that this is a controversial change with big user visible impact.
> > At the same time you write that we do not need the removed dependencies.
> > What I don't see in your commit message, nor in the follow up mail, is 
> > _what_ 
> > the impact actually is. What will I no longer get when I run `bitbake
> > <image>`?
> 
> For this change, "bitbake <image>" will no longer generate packages you're not
> using. So for example if ipk is you main format but you've enabled deb and rpm
> as well, only the ipk will be generated after this whilst before, the others
> would too. That may be a big deal for some CI systems, hopefully less so in 
> real
> world use.
> 

Does this mean that technically PACKAGE_CLASSES will basically only ever
make Bitbake use the first one in the list and do nothing with the
others?

Cheers,
Quentin
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#156166): 
https://lists.openembedded.org/g/openembedded-core/message/156166
Mute This Topic: https://lists.openembedded.org/mt/85715723/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to