[OE-core] [PATCH v3] distro_features_check.bbclass: Allow checking of required/conflicting features

Otavio Salvador otavio at ossystems.com.br
Sat Aug 3 18:37:59 UTC 2013


On Sat, Aug 3, 2013 at 3:26 PM, Chris Larson <clarson at kergoth.com> wrote:
>
> On Sat, Aug 3, 2013 at 9:55 AM, Otavio Salvador <otavio at ossystems.com.br>
> wrote:
>>
>> On Fri, Aug 2, 2013 at 6:16 PM, Chris Larson <clarson at kergoth.com> wrote:
>> > On Thu, Aug 1, 2013 at 3:13 PM, Otavio Salvador
>> > <otavio at ossystems.com.br>
>> > wrote:
>> >>
>> >> This add support to list required/confliting distro features for a
>> >> recipe; this avoids user mistake when building recipes/images which
>> >> would not work depending on DISTRO_FEATURES option set.
>> >>
>> >> Adding:
>> >>
>> >> ,----[ Use example ]
>> >> | inherit distro_features_check
>> >> |
>> >> | REQUIRED_DISTRO_FEATURES = "x11"
>> >> | CONFLICT_DISTRO_FEATURES_mx6 = "wayland"
>> >
>> >
>> > I wonder if it would be worth doing this like PNBLACKLIST to let the
>> > recipe
>> > provide its reasoning as a message, or if that would add too much
>> > overhead.
>> > I don't know enough about this use case, but something to consider if it
>> > hasn't been already.
>>
>> I did a look now on PNBLACKLIST and while I see the value of a custom
>> message I didn't come up with a way to do it using overrides as well.
>> So, as the example in the commit log, it'd be harder to make a mx6
>> specific conflict.
>>
>> CONFLICT_DISTRO_FEATURES[wayland]_mx6 = "Vivante GPU driver for
>> Wayland is incompatible with X11"
>>
>> Would the above work with current BitBake code?
>
>
> That's a good point, unfortunately I don't think flags propagate for
> overrides today :(. I think it would be something like
> CONFLICT_DISTRO_FEATURES_mx6[wayland], but I don't think that folds into the
> main variable when the overrides are applied (the semantics of that may be
> unclear0. Oh well, nevermind :)

Yes; or done using code to set it only for specific cases. So I think
it is better to let this as is and put a comment on the code where
using the class /why/ it conflicts/requires it.

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://projetos.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750



More information about the Openembedded-core mailing list