It seems that bitbake assumes recipe RPROVIDES PN by default, but this would cause problems: Steps to reproduce: $ echo IMAGE_INSTALL_append += \"dhcp\" >> conf/local.conf $ bitbake dhcp $ bitbake -g core-image-minimal (works well) $ bitbake core-image-minimal There would be the error: | Error: dhcp not found in the base feeds (qemuarm armv5te armv5e armv5t armv5 armv4t armv4 arm noarch any all). | WARNING: /buildarea/lyang1/doratest6/tmp/work/qemuarm-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/run.do_rootfs.20784:1 exit 1 from | exit 1 NOTE: The dhcp is in its PACKAGES, but it doesn't matter, we will still get the error if is not in its PACKAGES.
The problem is that the dhcp recipe has dhcp in PACKAGES, but it is empty so doesn't actually get generated. Bitbake can't know this, so it is doing the right thing. (a proper fix would be to stop the dhcp recipe from claiming it produces a dhcp package)
Hm, no, sorry didn't read the report correctly. If you do PACKAGES_remove=$PN then bitbake still tries to build an image.
cache.py, CoreRecipeInfo constructor: if not self.pn in self.packages: self.packages.append(self.pn) if PN isn't in the PACKAGES list, add PN. Simply commenting out that line breaks the cache as native packages don't have PACKAGES. Maybe native should just set PACKAGES=PN?
Patch on the list
Fixed in bitbake df31a88786ce5bd7708ff14e1379dc2a58a8c0cf.