[oe] [PATCH] classes/base.bbclass: add INCOMPATIBLE_MACHINE

Phil Blundell philb at gnu.org
Wed Jul 7 18:57:15 UTC 2010


On Wed, 2010-07-07 at 20:49 +0200, Frans Meulenbroeks wrote:
> 2010/7/7 Frans Meulenbroeks <fransmeulenbroeks at gmail.com>:
> > added INCOMPATIBLE_MACHINE
> > we have COMPATIBLE_MACHINE but that does not allow to say that
> > a package is supported by all except a certain machine.
> > a regexp like "(?!arch)"
> > This mechanism can be used to exclude certain machines.
> > Idea is that in binutils and gcc you can use this to specify that
> > a certain version does not support a certain machine
> 
> actually what I wanted to say in the commit message is that a regexp
> like (?!arch) does not work.
> \b(?!arch) or ^(?!arch) didn't work either and consulting #python did

This might just be an accident of wording, but you do realise that
COMPATIBLE_MACHINE is tested against ${MACHINE} (i.e. not any of the
${xx_ARCH} variables), right?  If you want to test arches then you want
${COMPATIBLE_ARCH}.

I just did a quick test with (?!foo) in C_M and it seemed to work ok for
me.  Specifically:

MACHINE = goodmach
COMPATIBLE_MACHINE = "(?!badmach)"

works, whereas

MACHINE = badmach
COMPATIBLE_MACHINE = "(?!badmach)"

is rejected.  What exactly goes wrong for you?

p.






More information about the Openembedded-devel mailing list