[OE-core] [pull-oe-uboot 1/2] u-boot: remove UBOOT_MACHINE and COMPATIBLE_MACHINES

Darren Hart dvhart at linux.intel.com
Fri May 27 15:06:43 UTC 2011



On 05/27/2011 07:04 AM, Phil Blundell wrote:
> On Thu, 2011-05-26 at 10:46 -0700, Darren Hart wrote:
>> Right, it just starts to look rather ugly in the recipe, especially for
>> BSPs supporting more than just a couple of machines. I also think that
>> having to use machine overrides is an indicator that the mechanism is
>> not working for the purpose it was designed for.
> 
> Yes, agreed.  But the point I was making in my first mail is that you
> don't actually need to use machine overrides at all; just appending to
> COMPATIBLE_MACHINE will work fine.
> 
> So, to be clear, in the core u-boot.bb you could have:
> 
> # These machines are supported by upstream u-boot
> COMPATIBLE_MACHINE = "(beagleboard$|at91sam9260ek$)"
> 
> and then, in some putative meta-dec overlay, you could have a
> u_boot.bbappend which does:
> 
> # This patch adds PDP-11 support to u-boot
> SRC_URI += "pdp11.patch"
> COMPATIBLE_MACHINE .= "|pdp11$"

Ah good point, and if you have multiple machines:
COMPATIBLE_MACHINE .= "|(pdp11$|pdp11/20$)"

In fact... why are the parens used at all?

I think we would likely get a lot of bug reports on the lists if we used
this approach, using regex's here seems rather non-intuitive to me (and
I'm rather fond of regexes).

> 
> and everything ought to work out just fine.  The only bit that is
> slightly non-obvious is what to do if you don't want the core version of
> u-boot to admit any MACHINEs at all but, as I mentioned to Richard, you
> can achieve that by setting
> 
> COMPATIBLE_MACHINE = "(?!^)"
> 
> or something similar.


All this said, do you have any objection to using UBOOT_MACHINE in the
machine.conf with the anon python check for it in the inc file? I think
you said not, but I want to be sure.

-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel




More information about the Openembedded-core mailing list