[OE-core] Issues with PREFERRED_VERSION/PREFERRED_PROVIDER for the kernel
Ulf Samuelsson
angstrom-dev at emagii.com
Fri Oct 18 15:59:07 UTC 2013
1. If you define something in the <MACHINE>.conf and in <DISTRO>.conf
then <DISTRO>.conf has higher priority.
This is really non-intuitive.
2. If you define a PREFERRED_VERSION which does not have a corresponding
".bb" file
you do not get a warning, and the latest PREFERRED_PROVIDER is used.
3. If you define a PREFERRED_PROVIDER which does not have a
corresponding ".bb" file
you *do* get a warning, with a list of possible providers, and
bitbake will bake the
first in the list.
It will also bake the *latest* version, even if that provider has a
PREFERRED_VERSION.
4. If I define PREFERRED_PROVIDER_virtual/kernel = "linux-x" in
<machine>.conf,
bitbake will bake "linux-x" using the latest version
5. If I define PREFERRED_VERSION_virtual/kernel = "3.7.0", this is ignored.
6. If I define PREFERRED_VERSION_linux-x = "3.7.0", this is accepted and
linux-x_3.7.0.bb is used.
-------------------------------------------
Questions:
You need to parse <machine>.conf before you parse the DISTRO since
some things in the distro is machine dependent.
I.E: PREFERRED_VERSION_binutils_avr32 = "2.17"
(1) Would it be possible to reparse <machine>.conf
after DISTRO has been parsed, resetting some stuff, overridden by
the DISTRO?
(2) Why no warning, if the PREFERRED_VERSION cannot be found.
It would be good to have which versions are available.
For the Beaglebone, you have a linux-mainline_3.7.bb, but if you set
PREFERRED_VERSION_linux-mainline = "3.7"
you still get "3.8.13" built, because "linux-mainline_3.7.bb"
contains PV = "3.7.0"
A warning would have been helpful!
(3) Why is PREFERRED_VERSION_virtual/kernel accepted without error
message, but ignored?
(4) If bitbake cannot find a recommended PROVIDER, and selects something
else,
why not use the PREFERRED_VERSION if it exists?
BR
Ulf Samuelsson
More information about the Openembedded-core
mailing list