[OE-core] Whitespace not allowed in COMPATIBLE_MACHINE

Chris Larson clarson at kergoth.com
Tue Nov 29 14:47:56 UTC 2011


On Tue, Nov 29, 2011 at 7:09 AM, Ulf Samuelsson
<openembedded-core at emagii.com> wrote:
>
>>> Working:
>>> COMPATIBLE_MACHINE = "machine1"
>>> COMPATIBLE_MACHINE = "machine1|machine2"
>>> COMPATIBLE_MACHINE = "(machine1)"
>>> COMPATIBLE_MACHINE = "(machine1|machine2)"
>>>
>>> COMPATIBLE_MACHINE = "machine1"
>>> COMPATIBLE_MACHINE += "|machine2"
>>
>> I'm slightly surprised that this last example would work.  It ought to
>> be equivalent to...
>>
>
> It seems to work for me.
>
> I have in my U-Boot recipe:
> COMPATIBLE_MACHINE     =
> "at91sam9260ek|at91sam9xeek|at91sam9g20ek|at91sam9g20ek_2mmc"
> COMPATIBLE_MACHINE    += "|at91sam9261ek|at91sam9g10ek"
> COMPATIBLE_MACHINE    += "|at91sam9263ek"
> COMPATIBLE_MACHINE    +=
> "|at91sam9g45ek|at91sam9g45ekes|at91sam9m10ekes|at91sam9m10g45ek"
> COMPATIBLE_MACHINE    +=
> "|at91sam9g15ek|at91sam9g25ek|at91sam9g35ek|at91sam9x25ek|at91sam9x35ek"
> COMPATIBLE_MACHINE    += "|at91sam9rlek"
>
> MACHINE =  "at91sam9g35ek"
> If I add a space in the COMPATIBLE_MACHINE definition somewhere,
> then the recipe is not used.

As Phil points out, += results in a space separator. If you want
direct concatenation without a separator, use .=.
-- 
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics




More information about the Openembedded-core mailing list