Re: [OE-core] [PATCH 0/6] Add opengl to REQUIRED_DISTRO_FEATURES for some recipes

2017-01-05 Thread Patrick Ohly
On Thu, 2017-01-05 at 08:51 +, Richard Purdie wrote:
> On Thu, 2017-01-05 at 08:32 +0100, Patrick Ohly wrote:
> > On Wed, 2017-01-04 at 23:49 +, Burton, Ross wrote:
> > > 
> > > 
> > > On 4 January 2017 at 22:57, Christopher Larson 
> > > wrote:
> > > These aren't buildable without it, and adding it fixes oe-
> > > core
> > > world builds
> > > with nodistro (which does not have the opengl feature by
> > > default).
> > > 
> > > 
> > > Am I still the only person who thinks skipping of recipes should be
> > > recursive, so if say libx11 throws a SkipRecipe then everything
> > > else
> > > that depends on it is also magically skipped?
> > Not at all, I'd also prefer that. If recipe "foo" has some obscure
> > conditions when it can be built, then repeating those conditions in
> > any
> > recipe depending on "foo" is a maintenance headache.
> > 
> > Last time I brought this up, it was mentioned as advantage of the
> > current approach that conditions are explicit and thus less
> > surprising.
> > There's some truth to that, but I don't believe that it outweighs the
> > disadvantages.
> 
> Imagine for example that we accidentally add some condition which
> results in 50% of the recipes being skipped. "bitbake world" would pass
> if this auto-skipping functionality was implemented. I worry that it
> would make it really easy to hide some subset of completely a non-
> buildable recipes which we can't even easily identify other than
> directly trying to build each target. We added something to avoid that
> (the world target).

Shouldn't it be caught by QA when expected functionality suddenly
disappears? But I guess that would only work in a perfect world; in
practice, QA coverage isn't sufficient and some recipes are indeed
merely in a "we know it compiles" state.

> The second problem is the actual implementation of it. I've never come
> up with a sane way to address this problem and give errors where people
> would want them yet hide the cases where people really don't want to be
> bothered, its very hard to make it work well at the bitbake level and
> the code is already complex/fragile enough.

How about a compromise: instead of repeating some (potentially complex)
checks in every recipe affected by this, could we have a "skip recipe
foo if dependencies are unavailable" check?

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.



-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 0/6] Add opengl to REQUIRED_DISTRO_FEATURES for some recipes

2017-01-05 Thread Richard Purdie
On Wed, 2017-01-04 at 23:49 +, Burton, Ross wrote:
> 
> On 4 January 2017 at 22:57, Christopher Larson 
> wrote:
> > These aren't buildable without it, and adding it fixes oe-core
> > world builds
> > with nodistro (which does not have the opengl feature by default).
> > 
> Am I still the only person who thinks skipping of recipes should be
> recursive, so if say libx11 throws a SkipRecipe then everything else
> that depends on it is also magically skipped?

Just to highlight the challenge here, the provider of virtual/libc
raises a SkipRecipe, therefore every target recipe which isn't allarch
gets skipped and "bitbake world" returns success. We have SkipRecipe
code in the libcs so this isn't even that unlikely. I suspect you'd
argue that is broken.

How do you tell the difference between this case which is a clear error
and your case of X11 being disabled?

Cheers,

Richard

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 0/6] Add opengl to REQUIRED_DISTRO_FEATURES for some recipes

2017-01-05 Thread Richard Purdie
On Thu, 2017-01-05 at 08:32 +0100, Patrick Ohly wrote:
> On Wed, 2017-01-04 at 23:49 +, Burton, Ross wrote:
> > 
> > 
> > On 4 January 2017 at 22:57, Christopher Larson 
> > wrote:
> > These aren't buildable without it, and adding it fixes oe-
> > core
> > world builds
> > with nodistro (which does not have the opengl feature by
> > default).
> > 
> > 
> > Am I still the only person who thinks skipping of recipes should be
> > recursive, so if say libx11 throws a SkipRecipe then everything
> > else
> > that depends on it is also magically skipped?
> Not at all, I'd also prefer that. If recipe "foo" has some obscure
> conditions when it can be built, then repeating those conditions in
> any
> recipe depending on "foo" is a maintenance headache.
> 
> Last time I brought this up, it was mentioned as advantage of the
> current approach that conditions are explicit and thus less
> surprising.
> There's some truth to that, but I don't believe that it outweighs the
> disadvantages.

Imagine for example that we accidentally add some condition which
results in 50% of the recipes being skipped. "bitbake world" would pass
if this auto-skipping functionality was implemented. I worry that it
would make it really easy to hide some subset of completely a non-
buildable recipes which we can't even easily identify other than
directly trying to build each target. We added something to avoid that
(the world target).

The second problem is the actual implementation of it. I've never come
up with a sane way to address this problem and give errors where people
would want them yet hide the cases where people really don't want to be
bothered, its very hard to make it work well at the bitbake level and
the code is already complex/fragile enough.

Considering this, marking things up explicitly has always seemed like
the right thing to do ever time I've looked further into this. If
someone has the time and wants to propose a solution, sure, but I think
there are other more important/pressing things to do.

Cheers,

Richard
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 0/6] Add opengl to REQUIRED_DISTRO_FEATURES for some recipes

2017-01-04 Thread Patrick Ohly
On Wed, 2017-01-04 at 23:49 +, Burton, Ross wrote:
> 
> On 4 January 2017 at 22:57, Christopher Larson 
> wrote:
> These aren't buildable without it, and adding it fixes oe-core
> world builds
> with nodistro (which does not have the opengl feature by
> default).
> 
> 
> Am I still the only person who thinks skipping of recipes should be
> recursive, so if say libx11 throws a SkipRecipe then everything else
> that depends on it is also magically skipped?

Not at all, I'd also prefer that. If recipe "foo" has some obscure
conditions when it can be built, then repeating those conditions in any
recipe depending on "foo" is a maintenance headache.

Last time I brought this up, it was mentioned as advantage of the
current approach that conditions are explicit and thus less surprising.
There's some truth to that, but I don't believe that it outweighs the
disadvantages.

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.



-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 0/6] Add opengl to REQUIRED_DISTRO_FEATURES for some recipes

2017-01-04 Thread Khem Raj
On Wed, Jan 4, 2017 at 5:13 PM, Christopher Larson  wrote:
>
> On Wed, Jan 4, 2017 at 4:49 PM, Burton, Ross  wrote:
>>
>> On 4 January 2017 at 22:57, Christopher Larson  wrote:
>>>
>>> These aren't buildable without it, and adding it fixes oe-core world
>>> builds
>>> with nodistro (which does not have the opengl feature by default).
>>
>>
>> Am I still the only person who thinks skipping of recipes should be
>> recursive, so if say libx11 throws a SkipRecipe then everything else that
>> depends on it is also magically skipped?
>
>
> I’d agree with that. It’d be a nice improvement. The user would see an
> explicit error if they try to build it, as is always the case with skipped
> recipes, but it’d be silently excluded from world the way skipped recipes
> usually are.

excluding from world builds is a fair argument.

> --
> Christopher Larson
> kergoth at gmail dot com
> Founder - BitBake, OpenEmbedded, OpenZaurus
> Senior Software Engineer, Mentor Graphics
>
> --
> ___
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 0/6] Add opengl to REQUIRED_DISTRO_FEATURES for some recipes

2017-01-04 Thread Christopher Larson
On Wed, Jan 4, 2017 at 4:49 PM, Burton, Ross  wrote:

> On 4 January 2017 at 22:57, Christopher Larson  wrote:
>
>> These aren't buildable without it, and adding it fixes oe-core world
>> builds
>> with nodistro (which does not have the opengl feature by default).
>>
>
> Am I still the only person who thinks skipping of recipes should be
> recursive, so if say libx11 throws a SkipRecipe then everything else that
> depends on it is also magically skipped?


I’d agree with that. It’d be a nice improvement. The user would see an
explicit error if they try to build it, as is always the case with skipped
recipes, but it’d be silently excluded from world the way skipped recipes
usually are.
-- 
Christopher Larson
kergoth at gmail dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Senior Software Engineer, Mentor Graphics
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 0/6] Add opengl to REQUIRED_DISTRO_FEATURES for some recipes

2017-01-04 Thread Khem Raj
On Wed, Jan 4, 2017 at 3:49 PM, Burton, Ross  wrote:
>
> On 4 January 2017 at 22:57, Christopher Larson  wrote:
>>
>> These aren't buildable without it, and adding it fixes oe-core world
>> builds
>> with nodistro (which does not have the opengl feature by default).
>
>
> Am I still the only person who thinks skipping of recipes should be
> recursive, so if say libx11 throws a SkipRecipe then everything else that
> depends on it is also magically skipped?

Somewhere, we need to flag that user is shooting his own foot by
skipping a given recipe.

>
> Ross
>
> --
> ___
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 0/6] Add opengl to REQUIRED_DISTRO_FEATURES for some recipes

2017-01-04 Thread Burton, Ross
On 4 January 2017 at 22:57, Christopher Larson  wrote:

> These aren't buildable without it, and adding it fixes oe-core world builds
> with nodistro (which does not have the opengl feature by default).
>

Am I still the only person who thinks skipping of recipes should be
recursive, so if say libx11 throws a SkipRecipe then everything else that
depends on it is also magically skipped?

Ross
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 0/6] Add opengl to REQUIRED_DISTRO_FEATURES for some recipes

2017-01-04 Thread Christopher Larson
From: Christopher Larson 

These aren't buildable without it, and adding it fixes oe-core world builds
with nodistro (which does not have the opengl feature by default).

The following changes since commit 425afe2484707640ac71194885fdb263e95e9950:

  lib/oe/utils: Drop python2 compatibility code (2016-12-22 08:50:21 +)

are available in the git repository at:

  git://github.com/kergoth/openembedded-core without-opengl-fixes
  https://github.com/kergoth/openembedded-core/tree/without-opengl-fixes

Christopher Larson (6):
  waffle: add opengl to REQUIRED_DISTRO_FEATURES
  piglit: add opengl to REQUIRED_DISTRO_FEATURES
  libglu: add opengl to REQUIRED_DISTRO_FEATURES
  eglinfo-x11: add opengl to REQUIRED_DISTRO_FEATURES
  packagegroup-self-hosted: add opengl to REQUIRED_DISTRO_FEATURES
  packagegroup-core-lsb: add opengl to REQUIRED_DISTRO_FEATURES

 meta/recipes-core/packagegroups/packagegroup-self-hosted.bb  | 3 +++
 meta/recipes-extended/packagegroups/packagegroup-core-lsb.bb | 3 +++
 meta/recipes-graphics/eglinfo/eglinfo-x11_1.0.0.bb   | 3 ++-
 meta/recipes-graphics/mesa/libglu_9.0.0.bb   | 2 +-
 meta/recipes-graphics/piglit/piglit_git.bb   | 3 +++
 meta/recipes-graphics/waffle/waffle_1.5.2.bb | 3 +++
 6 files changed, 15 insertions(+), 2 deletions(-)

-- 
2.8.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core