[yocto] Conditional Configuration Fragments

Bruce Ashfield bruce.ashfield at windriver.com
Tue Jun 10 09:04:19 PDT 2014


On 14-06-10 11:11 AM, Pierre Yves MORDRET wrote:
> On Monday 09 June 2014 09:56:20 Paul Eggleton <paul.eggleton at linux.intel.com> wrote:
>> On Monday 09 June 2014 12:41:36 Bruce Ashfield wrote:
>>> On 14-06-09 11:26 AM, Pierre Yves MORDRET wrote:
>>>> Hello,
>>>>
>>>> I really don't know whether this is feasible or not, but I'm trying to
>>>> build a yocto image (custom image) with conditional configuration
>>>> fragments.
>>>>
>>>> Today I have 2 image type: one for deployment purpose and another for
>>>> debug purpose. Debug images is only a superset of deployment image with
>>>> additional debug capabilities: nothing else.
>>>>
>>>> However now I would like to add additional linux kernel features to this
>>>> debug image (ex: CONFIG_DEBUG_INFO=y).
>>>>
>>>> I want to add this feature into debug image, but NOT in deployment image.
>>>>
>>>> I was thinking to create a .bbappend to my linux .bb file, but again I
>>>> don't see how to use .bbappend in a conditional way (based on image name
>>>> for instance)
>>>>
>>>> Do you have any idea to perform such request ?
>>>
>>> Fragments are either just added to the SRC_URI or KERNEL_FEATURES via
>>> the normal variable assignment rules.
>>>
>>> So if you have something that you can test on (image/distro feature as
>>> an example), you can use anonymous python and do a conditional
>>> assignment.
>>>
>>> Others on the list may have more elegant suggestions!
>>
>> This can't work for what Pierre is asking for. You can't have a single recipe
>> built differently depending on what image is being built - our system does not
>> work that way. At a basic level, recipes create packages, and then the image
>> recipe selects which packages should go into the image.
>>
>> Given that the kernel does not produce named packages in our system, I'm not
>> sure we currently have a way to build two different kernel recipes and select
>> one in one image and another in another image (which is the way we normally
>> handle this kind of requirement with other recipes.) Probably the only way to
>> do this is to have two completely separate build directories.
>
> Many Thanks for your answers.
> Thus I was thinking of making 2 separate linux.bb, one for deployment and the other for debug (i.e. linux-debug.bb) and update PREFERRED_PROVIDER_virtual/kernel accordingly.
> But is there an automatic way to select proper .bb (linux.bb or linux-debug.bb) file like setting this variable(PREFERRED_PROVIDER_virtual/kernel) within the .bb image file ? Won't it work ?
>
> Another option which is coming on top of my mind:
> SRC_URI_append_<image-name> = " file://configuration_segment.cfg"
> Is it something realistic and working ?

The image name would have to be an OVERRIDE value for variables.
Last I checked it wasn't, but perhaps Paul can straighten out that
point as well :)

Cheers,

Bruce

>
> Please advise
> Many thanks in advance
>




More information about the yocto mailing list