[OE-core] [PATCH] base.bbclass: Fix matching of SOC_FAMILY in COMPATIBLE_MACHINE

Otavio Salvador otavio at ossystems.com.br
Mon Apr 8 13:44:11 UTC 2013


On Mon, Apr 8, 2013 at 10:37 AM, Eric Bénard <eric at eukrea.com> wrote:
> Hi Otavio,
>
> Le Mon, 8 Apr 2013 10:31:17 -0300,
> Otavio Salvador <otavio at ossystems.com.br> a écrit :
>
>> On Sun, Apr 7, 2013 at 2:37 AM, Eric Bénard <eric at eukrea.com> wrote:
>> > Le Sat, 6 Apr 2013 17:58:30 -0300,
>> > Otavio Salvador <otavio at ossystems.com.br> a écrit :
>> >
>> >> On Sat, Apr 6, 2013 at 3:02 PM, Eric Bénard <eric at eukrea.com> wrote:
>> >> > Hi Otavio,
>> >> >
>> >> > Le Sat,  6 Apr 2013 14:17:48 -0300,
>> >> > Otavio Salvador <otavio at ossystems.com.br> a écrit :
>> >> >> +            compat_machines = [d.getVar('MACHINE', True)]
>> >> >> +            compat_machines.extend((d.getVar('SOC_FAMILY', True) or "").split(":"))
>> >> >> +            for this_machine in compat_machines:
>> >> >> +                if re.match(need_machine, this_machine):
>> >> >> +                    break
>> >> >> +            else:
>> >> >> +                raise bb.parse.SkipPackage("incompatible with machine %s (not in COMPATIBLE_MACHINE)" % this_machine)
>> >> >>
>> >> > aren't you breaking this log here vs what is was supposed to
>> >> > print before ?
>> >>
>> >> The 'else' is used when no 'break' is done inside of for loop.
>> >>
>> > but will this_machine contain the value of the MACHINE variable ?
>>
>> Yes, check:
>>
>> ...
>> +            compat_machines = [d.getVar('MACHINE', True)]
>> +            compat_machines.extend((d.getVar('SOC_FAMILY', True) or
>> "").split(":"))
>> ...
>>
> I'm not very experienced in python so sorry is that's a stupid
> remark but after these lines you are using this_machine to go
> through the content of compat_machines so in the end, when it reach the
> log message it will contain the last value in compat_machine (and thus
> the last one in SOC_FAMILY instead of the machine name) ?

Indeed this is indeed a bug. I will follow-up with a proper fix for it.

--
Otavio Salvador                             O.S. Systems
E-mail: otavio at ossystems.com.br  http://www.ossystems.com.br
Mobile: +55 53 9981-7854              http://projetos.ossystems.com.br




More information about the Openembedded-core mailing list