[OE-core] static busybox?

Mark Hatle mark.hatle at windriver.com
Wed Aug 1 19:05:30 UTC 2012


On 8/1/12 1:59 PM, McClintock Matthew-B29882 wrote:
> On Wed, Aug 1, 2012 at 11:36 AM, Mark Hatle <mark.hatle at windriver.com> wrote:
>> On 8/1/12 11:21 AM, Stuart Yoder wrote:
>>>
>>> On Tue, Jul 31, 2012 at 3:07 PM, Bruce Ashfield
>>> <bruce.ashfield at gmail.com> wrote:
>>>>
>>>> On Tue, Jul 31, 2012 at 3:59 PM, Mark Hatle <mark.hatle at windriver.com>
>>>> wrote:
>>>>>
>>>>> On 7/31/12 1:14 PM, Stuart Yoder wrote:
>>>>>>
>>>>>>
>>>>>> We are doing some work with LXC (containers) and one of the templates
>>>>>> is for busybox.  For LXC, the busybox package needs to be built
>>>>>> statically
>>>>>> and
>>>>>> there is a config option for this.
>>>>>>
>>>>>> A couple possible approaches:
>>>>>>
>>>>>>       -create a new 'busybox_static' recipe that the lxc package
>>>>>>        depends on that turns on the needed build options.   Pretty
>>>>>>        straightforward, but now there are 2 variants of the busybox
>>>>>>        package.
>>>>>>
>>>>>>       -somehow propagate some configuration options through to
>>>>>>        the standard busybox recipe so it turns on the config
>>>>>>        option to build things statically.   Not sure how to
>>>>>>        do this, and seems like it could get pretty messy.
>>>>>>
>>>>>> Any thoughts?
>>>>>
>>>>>
>>>>>
>>>>> We've been talking about this as well..  I'm currently of the opinion
>>>>> that
>>>>> the kernel's config fragement processing be added to busybox.  This way
>>>>> someone can simply add a configuration fragment via a bbappend, or other
>>>>> approach and it'll pick it up.   That same can be used to specify how to
>>>>> enable other optional pieces of busybox.
>>>>
>>>>
>>>> merge_config.pl can be yanked out of the kernel source tree (it's
>>>> upstream) and
>>>> packaged as something for use by busy box.
>>>>
>>>> I wouldn't recommend all the scaffolding that the kernel has (it's
>>>> overkill, since
>>>> there are more configs, patches and git manipulations in play for the
>>>> kernel), but a\
>>>> simple scheme to collect the fragments from the SRC_URI and fire them
>>>> through
>>>> merge_config.pl would be a pretty simple python routine.
>>>
>>>
>>> So how would this work from the user's point of view?   I somehow
>>> need to get busybox's CONFIG_STATIC config option set.   Does the lxc
>>> recipe somehow
>>> specify this?   Or does the lxc recipe reference a busybox-static
>>> dependency that sets the option?
>>
>>
>> You would be able to add a .bbappend that would have a configuration
>> fragment in it.  This fragment would be added to the busybox configuration
>> to override any built in items.
>>
>> So you'd need to simply have a file that says:
>>
>> CONFIG_STATIC = y
>
> This is one approach, to change busybox completely for a specific
> added layer. But, what if we only want to make this change to busybox
> if the lxc recipe is included in the image? What about other packages
> also requesting changes?

There is no method within OE to change a configuration of one item, if another 
item is included or not.

The way to do this is use the PACKAGECONFIG options, and then pass via a 
per-recipe configuration if you want lxc support enabled or not.. (or possible 
lxc becomes a distro flag?)

--Mark

> -M
>
>> --Mark
>>
>>
>>> Stuart
>>>
>>> _______________________________________________
>>> Openembedded-core mailing list
>>> Openembedded-core at lists.openembedded.org
>>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>>>
>>
>>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>





More information about the Openembedded-core mailing list