All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [OE-core] [RFC PATCH] package_ipk/deb/rpm: Drop recursive do_build task dependencies
       [not found] <16A633F8E639735E.6604@lists.openembedded.org>
@ 2021-09-19 11:03 ` Richard Purdie
  2021-09-19 18:06   ` Peter Kjellerstedt
  0 siblings, 1 reply; 8+ messages in thread
From: Richard Purdie @ 2021-09-19 11:03 UTC (permalink / raw)
  To: openembedded-core

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 <richard.purdie@linuxfoundation.org>
> ---
>  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



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [OE-core] [RFC PATCH] package_ipk/deb/rpm: Drop recursive do_build task dependencies
  2021-09-19 11:03 ` [OE-core] [RFC PATCH] package_ipk/deb/rpm: Drop recursive do_build task dependencies Richard Purdie
@ 2021-09-19 18:06   ` Peter Kjellerstedt
  2021-09-19 18:36     ` Richard Purdie
  0 siblings, 1 reply; 8+ messages in thread
From: Peter Kjellerstedt @ 2021-09-19 18:06 UTC (permalink / raw)
  To: Richard Purdie, openembedded-core

> -----Original Message-----
> From: openembedded-core@lists.openembedded.org <openembedded-
> core@lists.openembedded.org> On Behalf Of Richard Purdie
> Sent: den 19 september 2021 13:03
> To: openembedded-core@lists.openembedded.org
> 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 <richard.purdie@linuxfoundation.org>
> > ---
> >  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>`?

//Peter


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [OE-core] [RFC PATCH] package_ipk/deb/rpm: Drop recursive do_build task dependencies
  2021-09-19 18:06   ` Peter Kjellerstedt
@ 2021-09-19 18:36     ` Richard Purdie
  2021-09-20  7:45       ` Quentin Schulz
  0 siblings, 1 reply; 8+ messages in thread
From: Richard Purdie @ 2021-09-19 18:36 UTC (permalink / raw)
  To: Peter Kjellerstedt, openembedded-core

On Sun, 2021-09-19 at 18:06 +0000, Peter Kjellerstedt wrote:
> > -----Original Message-----
> > From: openembedded-core@lists.openembedded.org <openembedded-
> > core@lists.openembedded.org> On Behalf Of Richard Purdie
> > Sent: den 19 september 2021 13:03
> > To: openembedded-core@lists.openembedded.org
> > 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 <richard.purdie@linuxfoundation.org>
> > > ---
> > >  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.

The patch does need a fix highlighted in autobuilder testing so I'll send v2
soon.

Cheers,

Richard


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [OE-core] [RFC PATCH] package_ipk/deb/rpm: Drop recursive do_build task dependencies
  2021-09-19 18:36     ` Richard Purdie
@ 2021-09-20  7:45       ` Quentin Schulz
  2021-09-20  8:55         ` Richard Purdie
  0 siblings, 1 reply; 8+ messages in thread
From: Quentin Schulz @ 2021-09-20  7:45 UTC (permalink / raw)
  To: Richard Purdie; +Cc: Peter Kjellerstedt, openembedded-core

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: openembedded-core@lists.openembedded.org <openembedded-
> > > core@lists.openembedded.org> On Behalf Of Richard Purdie
> > > Sent: den 19 september 2021 13:03
> > > To: openembedded-core@lists.openembedded.org
> > > 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 <richard.purdie@linuxfoundation.org>
> > > > ---
> > > >  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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [OE-core] [RFC PATCH] package_ipk/deb/rpm: Drop recursive do_build task dependencies
  2021-09-20  7:45       ` Quentin Schulz
@ 2021-09-20  8:55         ` Richard Purdie
  0 siblings, 0 replies; 8+ messages in thread
From: Richard Purdie @ 2021-09-20  8:55 UTC (permalink / raw)
  To: Quentin Schulz; +Cc: Peter Kjellerstedt, openembedded-core

On Mon, 2021-09-20 at 09:45 +0200, Quentin Schulz wrote:
> 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: openembedded-core@lists.openembedded.org <openembedded-
> > > > core@lists.openembedded.org> On Behalf Of Richard Purdie
> > > > Sent: den 19 september 2021 13:03
> > > > To: openembedded-core@lists.openembedded.org
> > > > 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 <richard.purdie@linuxfoundation.org>
> > > > > ---
> > > > >  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?

No, "bitbake <recipe>" would build each of the package formats, as would
"bitbake world".

Cheers,

Richard


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [OE-core] [RFC PATCH] package_ipk/deb/rpm: Drop recursive do_build task dependencies
  2021-09-20 13:54   ` Richard Purdie
@ 2021-09-21 14:56     ` Saul Wold
  0 siblings, 0 replies; 8+ messages in thread
From: Saul Wold @ 2021-09-21 14:56 UTC (permalink / raw)
  To: openembedded-core



On 9/20/21 6:54 AM, Richard Purdie wrote:
> On Mon, 2021-09-20 at 08:27 -0500, Joshua Watt wrote:
>> On Sun, Sep 19, 2021 at 5:57 AM Richard Purdie
>> <richard.purdie@linuxfoundation.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.
>>
>> Faster builds in the common cases seems like a great idea!
>>
>> If someone really needs the old behavior, is there a mechanism to do
>> the equivalent to what it was doing?
> 
> In this context, "bitbake XXX --runall build" would be equivalent to the current
> "bitbake XXX".
> 
This is good, since it can be used to catch packaging issues when not 
all packages formats are getting built.  Will this be the default for 
the Autobuilder?  That would ensure packaging issues are caught?

The --runall should be required for anyone doing updates to ensure that 
all package formats are being generated correctly for the update.

Sau!

> Cheers,
> 
> Richard
> 
> 
> 
> 
> 

-- 
Sau!

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [OE-core] [RFC PATCH] package_ipk/deb/rpm: Drop recursive do_build task dependencies
  2021-09-20 13:27 ` [OE-core] " Joshua Watt
@ 2021-09-20 13:54   ` Richard Purdie
  2021-09-21 14:56     ` Saul Wold
  0 siblings, 1 reply; 8+ messages in thread
From: Richard Purdie @ 2021-09-20 13:54 UTC (permalink / raw)
  To: Joshua Watt; +Cc: OE-core

On Mon, 2021-09-20 at 08:27 -0500, Joshua Watt wrote:
> On Sun, Sep 19, 2021 at 5:57 AM Richard Purdie
> <richard.purdie@linuxfoundation.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.
> 
> Faster builds in the common cases seems like a great idea!
> 
> If someone really needs the old behavior, is there a mechanism to do
> the equivalent to what it was doing?

In this context, "bitbake XXX --runall build" would be equivalent to the current
"bitbake XXX".

Cheers,

Richard


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [OE-core] [RFC PATCH] package_ipk/deb/rpm: Drop recursive do_build task dependencies
  2021-09-19 10:57 Richard Purdie
@ 2021-09-20 13:27 ` Joshua Watt
  2021-09-20 13:54   ` Richard Purdie
  0 siblings, 1 reply; 8+ messages in thread
From: Joshua Watt @ 2021-09-20 13:27 UTC (permalink / raw)
  To: Richard Purdie; +Cc: OE-core

On Sun, Sep 19, 2021 at 5:57 AM Richard Purdie
<richard.purdie@linuxfoundation.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.

Faster builds in the common cases seems like a great idea!

If someone really needs the old behavior, is there a mechanism to do
the equivalent to what it was doing?

>
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> ---
>  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"
> --
> 2.32.0
>
>
> 
>

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-09-21 14:56 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <16A633F8E639735E.6604@lists.openembedded.org>
2021-09-19 11:03 ` [OE-core] [RFC PATCH] package_ipk/deb/rpm: Drop recursive do_build task dependencies Richard Purdie
2021-09-19 18:06   ` Peter Kjellerstedt
2021-09-19 18:36     ` Richard Purdie
2021-09-20  7:45       ` Quentin Schulz
2021-09-20  8:55         ` Richard Purdie
2021-09-19 10:57 Richard Purdie
2021-09-20 13:27 ` [OE-core] " Joshua Watt
2021-09-20 13:54   ` Richard Purdie
2021-09-21 14:56     ` Saul Wold

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.