[poky] Native vs not
Tom Rini
tom_rini at mentor.com
Fri Mar 11 09:25:14 PST 2011
On 03/11/2011 10:20 AM, Gary Thomas wrote:
> On 03/11/2011 10:13 AM, Richard Purdie wrote:
>> On Fri, 2011-03-11 at 04:34 -0700, Gary Thomas wrote:
>>> As pointed out in another thread, I'm trying to build a native
>>> package which sends "I need native" ripples throughout much of
>>> the Poky infrastructure.
>>>
>>> Does having a native version available for any given package incur a
>>> cost?
>>> If not, would patches for [all of] the packages I need be acceptable?
>>>
>>> So far, nearly all of the affected packages built fine, just adding
>>> native
>>> to BBCLASSEXTEND. Many already build nativesdk versions already.
>>
>> There is a cost incurred by doing this since it does increase parse time
>> and this is something user exposed which we do try and keep under
>> control.
>>
>> Having said that, the BBCLASSEXTEND technology has a lot less overhead
>> than some of the older approaches to native/sdk recipes.
>
> As is, I created a separate layer with a bunch of bbappend files that are
> only
> BBCLASSEXTEND += " native "
> I suppose if I never needed them, I could just not enable that layer.
>
>>
>> The main reason I've been against native everywhere is that having
>> native versions available makes it far too easy for people to add native
>> dependencies which encourage feature creep without thinking through the
>> huge additional dependency chains, the extra build time and other
>> implications. Often there are slightly more difficult but worthwhile
>> ways we can avoid the native dependency.
>
> Such as? I started down this path needing a native tool (which admittedly
> came from an OE recipe librsvg) which then cascaded into cairo-native and
> beyond, totally 22 packages!. If I knew of a short circuit for this, I'd
> certainly entertain it.
Having just skimmed the OE recipes, yeah, there we just build a ton of
stuff in librsvg-native. But I would start by looking at what we can
pass to configure to disable things as part of the host tool build.
Doing some git grep'ing I see there's just a few things in OE that need
librsvg-native so perhaps we can build a much more limited native recipe
instead and still generate what we need to.
--
Tom Rini
Mentor Graphics Corporation
More information about the poky
mailing list