Ross Burton 272f2083d4 layer.conf: change layer priority to match oe-core
Layer priority is the ultimate decider of what recipe is used: if layer
A has recipe foo_1 and layer B has recipe foo_2, if layer A's priority
is higher than B then foo_1 will be used, even though the version in B
is higher, and even if PREFERRED_VERSION_foo is set to 2.

This complicates recipes moving between layers, for example when a newer
version of a recipe (say, python3-wheel) is taken from a layer with a
higher priority (say, meta-python) and moved to a layer with a lower
priority (say, oe-core) then it has to be removed before it is added:
there is no way to have it in both layers and work correctly.

Higher priorities are useful in distribution layers where you may want
to override specific recipes without any other fuss.  However as all of
the layers in meta-oe simply add more recipes in defined areas, there's
no need to have a higher layer priority.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2022-02-28 08:39:26 -08:00

109 lines
3.8 KiB
Plaintext

# It really depends on order of the layers appearing in BBLAYERS
# variable in toplevel bblayers.conf file, where bitbake will search
# for .inc files and others where bitbake uses BBPATH since it will
# search the directories from first to last as specified in BBPATH
# Therefore if you want a given layer to be considered high priority
# for the .inc and .conf etc. then consider it adding at the beginning
# of BBPATH. For bblayers bitbake will use BBFILES_PRIORITY to resolve
# the recipe contention so the order of directories in BBFILES does
# not matter.
# We have a conf and classes directory, append to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have a recipes directory, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "openembedded-layer"
BBFILE_PATTERN_openembedded-layer := "^${LAYERDIR}/"
# Define the priority for recipes (.bb files) from this layer,
# choosing carefully how this layer interacts with all of the
# other layers.
BBFILE_PRIORITY_openembedded-layer = "5"
# only activates content when identified layers are present,
# to ensure yocto compatibility check pass
BBFILES_DYNAMIC += " \
meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bb \
meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bbappend \
networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/recipes-*/*/*.bb \
networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/recipes-*/*/*.bbappend \
gnome-layer:${LAYERDIR}/dynamic-layers/gnome-layer/recipes-*/*/*.bb \
gnome-layer:${LAYERDIR}/dynamic-layers/gnome-layer/recipes-*/*/*.bbappend \
perl-layer:${LAYERDIR}/dynamic-layers/perl-layer/recipes-*/*/*.bb \
perl-layer:${LAYERDIR}/dynamic-layers/perl-layer/recipes-*/*/*.bbappend \
"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers
LAYERVERSION_openembedded-layer = "1"
LAYERDEPENDS_openembedded-layer = "core"
LAYERSERIES_COMPAT_openembedded-layer = "kirkstone"
LICENSE_PATH += "${LAYERDIR}/licenses"
PREFERRED_RPROVIDER_libdevmapper = "lvm2"
PREFERRED_PROVIDER_android-tools-conf ?= "android-tools-conf"
SIGGEN_EXCLUDERECIPES_ABISAFE += " \
fbset-modes \
gpsd-machine-conf \
distro-feed-configs \
ca-certificates \
pointercal \
"
SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
android-tools->android-tools-conf \
usb-modeswitch-data->usb-modeswitch \
lmsensors->lmsensors-config \
phoronix-test-suite->bash \
phoronix-test-suite->python3 \
phoronix-test-suite->php \
phoronix-test-suite->lsb-release \
phoronix-test-suite->util-linux \
phoronix-test-suite->busybox \
phoronix-test-suite->shared-mime-info \
phoronix-test-suite->desktop-file-utils \
"
# ttf.inc inherits fontcache which adds fontconfig-utils to RDEPENDS
SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
terminus-font->fontconfig \
ttf-abyssinica->fontconfig \
ttf-arphic-uming->fontconfig \
ttf-dejavu->fontconfig \
ttf-droid->fontconfig \
ttf-gentium->fontconfig \
ttf-hunkyfonts->fontconfig \
ttf-inconsolata->fontconfig \
ttf-ipa->fontconfig \
ttf-liberation->fontconfig \
ttf-liberation-sans-narrow->fontconfig \
ttf-lklug->fontconfig \
ttf-lohit->fontconfig \
ttf-noto-emoji->fontconfig \
ttf-pt-sans->fontconfig \
ttf-roboto->fontconfig \
ttf-mplus->fontconfig \
ttf-sazanami->fontconfig \
ttf-takao->fontconfig \
ttf-tlwg->fontconfig \
ttf-ubuntu-font-family->fontconfig \
ttf-vlgothic->fontconfig \
ttf-wqy-zenhei->fontconfig \
source-han-sans-cn-fonts->fontconfig \
source-han-sans-jp-fonts->fontconfig \
source-han-sans-kr-fonts->fontconfig \
source-han-sans-tw-fonts->fontconfig \
source-code-pro-fonts->fontconfig \
"
DEFAULT_TEST_SUITES:pn-meta-oe-ptest-image = " ${PTESTTESTSUITE}"
NON_MULTILIB_RECIPES:append = " crash"