generic-poky/meta
Richard Purdie 493e8b46fd bitbake.conf: Stop providing ${P} and ${PF} by default
For a long time we've provided PN-PV and PN-PV-PR by tweaking PROVIDES. This looks
nice at first glance however it turns out to be a bit problematic. Taking make as an
example where there are two versions, 3.81 and 3.82, what should "bitbake make-3.81" do?

Currently it builds make-3.81 and make-3.82 and breaks in interesting ways. Is that
a bitbake bug? Well, it certainly shouldn't try and run the build. Why is it building
3.82 though? Its due to finding a dependency on "make-dev" and then trying to figure
out what provides it? The answer is "make" and the default version of "make" is 3.82.

So arguably, finding "make-3.81" should infer PREFERRED_VERSION_make = "3.81". Doing
so resolved the above problem since now "make" resolves to "make-3.81".

So what about if we have Recipe A:
DEPENDS = "make-3.81"
and Recipe B:
DEPENDS = "make-3.82"

That is clearly an error, easy. So finally what about if we have Recipe A:
DEPENDS = "make-3.81"
and Recipe B:
DEPENDS = "make"

The first recipe infers the PREFERRED_VERSION_make = "3.81" and then forces that
version on everything else. Is that desired? Probably not in most cases, at least not
silently.

As mitigation, we could print a WARNING about this happening. The final part of the problem
is that we can ony figure this out within bitbake itself. That means we'd have to teach bitbake
about the PN-PV format of PROVIDES which is breaking the separation between bitbake and the
metadata. We can't win :(.

Nobody that I know of is using or relying on this functionality so perhaps we should
just remove it instead which is what this patch does. Opinions?

(From OE-Core rev: a87c205bb6cefd5e1a41b8e7ef02b5bfa380e3b6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-14 08:20:59 +01:00
..
classes sstate.bbclass: fix parallel building issue 2013-09-14 08:20:59 +01:00
conf bitbake.conf: Stop providing ${P} and ${PF} by default 2013-09-14 08:20:59 +01:00
files device_table-minimal.txt: use user/group names instead of uid/gid 2013-08-16 11:14:34 +01:00
lib lib/oeqa/runtime: smart: limit channel add to useful ones 2013-09-11 23:31:00 +01:00
recipes-bsp u-boot, u-boot-fw-utils-cross, u-boot-mkimage: Upgrade to 2013.07 2013-09-10 16:02:23 +01:00
recipes-connectivity bluez4/5: Add EXCLUDE_FROM_WORLD = 1 2013-09-11 23:31:00 +01:00
recipes-core uclibc: Add missing DEPENDS on kern-tools-native 2013-09-11 11:05:05 +01:00
recipes-devtools python-smartpm: Add an attempt install mode 2013-09-11 11:06:11 +01:00
recipes-extended libnewt-python: Don't write a whiptail package 2013-09-12 08:23:42 +01:00
recipes-gnome gtk+3: pull forward the gtk+2 hardcoded libtool patch 2013-08-30 16:23:47 +01:00
recipes-graphics weston: as weston-launch depends on PAM, control it with a PACKAGECONFIG 2013-09-11 23:35:45 +01:00
recipes-kernel linux-yocto/3.10: bump kver to 3.10.11 2013-09-10 22:58:32 +01:00
recipes-lsb4 libpng12: rename libpng_1.2.50 to libpng12 2013-04-09 13:16:53 +01:00
recipes-multimedia gstreamer-plugins: Change anonymous python structure 2013-09-10 22:58:33 +01:00
recipes-qt meta-toolchain-qt: include the proper cross-canadian package 2013-09-10 22:58:33 +01:00
recipes-rt rt-tests: add Upstream-Status for cyclictest patch 2013-07-29 13:09:03 +01:00
recipes-sato midori: excluded from mips64 temporarily 2013-09-11 11:05:05 +01:00
recipes-support ptest-runner: trivial fixes and refine 2013-09-11 11:07:59 +01:00
site apr_cv_mutex_recursive=yes added to apr_1.4.6.bb to make rosnodes work 2013-07-05 15:34:22 +01:00
COPYING.MIT
recipes.txt meta/recipes.txt: add recipes-lsb4 2013-04-10 09:23:17 +01:00