A long time ago we added the capability to have versioned layer dependencies using LAYERVERSION and LAYERDEPENDS. However, LAYERVERSION is now being used by the autobuilder, leading to the version being increased more regularly; a versioned item in LAYERDEPENDS matches only that specific version and BitBake will error out if the provided version is different. Users using mis-matched layer branches has been a long-standing problem, and the latest example is meta-intel master requiring the recent tune file changes in OE-Core master. With LAYERVERSION being used as it is, we have no reliable mechanism to resolve this as things stand. One possible solution would be to add a LAYERPROVIDES; then we could add additional items whose versions (if specified) could be independent of the LAYERVERSION.
I've sent out an RFC patch to the bitbake and OE-Core lists: http://lists.openembedded.org/pipermail/bitbake-devel/2015-January/005370.html
Fix merged to master: http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=c4da9b949a09f6fcf4091f247a05cea78175571a Now we just need to start using it...