I have a weird one.
git clone of openembedded HEAD, then checkout to origin/stable/2009. Using
ftp://ftp.linux4sam.org/pub/oe/linux4sa ... t91sam.tgz for the AT91 specific stuff.
If I build console-at91sam9-image with local.conf MACHINE="at91sam9g45ekes" it works. Great. I want to use at91sam9g45ekes.conf as a starting point for my own board.
$ cp conf/machines/at91sam9g45ekes.conf conf/machines/my_new_board.conf
$ cp -a recipes/linux/linux-2.6.30/at91sam9g45ekes recipes/linux/linux-2.6.30/my_new_board
edit conf/local.conf so that MACHINE="my_new_board"
$ bitbake -cclean console-at91sam9-image
$ bitmake console-at91sam9-image
I get an error when the linux recipe is run:
| arm-angstrom-linux-gnueabi-ld: no machine record defined
| arm-angstrom-linux-gnueabi-ld: no machine record defined
| make: *** [.tmp_vmlinux1] Error 1
Now here's the REALLY WEIRD part.
$ mv conf/machines/at91sam9g45ekes.conf conf/machines/blah.conf
$ mv conf/machines/my_new_board.conf at91sam9g45ekes.conf
edit the conf/local.conf so that MACHINE="at91sam9g45ekes"
$ bitbake -cclean console-at91sam9-image
$ bitmake console-at91sam9-image
This time it builds just fine and I get my jffs2 filesystem and kernel uImage for u-boot.
Why does the name of the machine matter?