[yocto] distro.conf and LOCALCONF_VERSION, LAYER_CONF_VERSION, OELAYOUT_ABI

Christopher Larson clarson at kergoth.com
Tue Aug 12 13:17:19 PDT 2014


On Tue, Aug 12, 2014 at 12:31 PM, Rudolf Streif <rstreif at linuxfoundation.org
> wrote:

> The Poky distro configuration distro.conf includes assignments to
> LOCALCONF_VERSION, LAYER_CONF_VERSION, OELAYOUT_ABI to set the expected
> version numbers for local.conf, bblayers.conf and the directory layout of
> ${TMPDIR}.
>
> From a user perspective this is somewhat confusing as these variables
> really have nothing to do with the distro policy but only with the
> compatibility between the build system and a build environment. For Poky it
> may somewhat make sense to put them there. However if I write my own
> distro.conf and put it in a layer I would want to use this layer with
> different version of the build system. I think it would make more sense to
> assign these variables in poky-sanity.bbclass.
>
> The second little gripe is about the inconsistent naming of these
> variables and the ones they relate to:
>
> LOCALCONF_VERSION (expected value) <-> CONF_VERSION (actual value)
> LAYER_CONF_VERSION (expected value) <-> LCONF_VERSION (actual value)
> OELAYOUT_ABI (expected value) <-> actual value retrieved from
> tmp/abi_version
>
> Adding to the confusion is LAYERVERSION which refers to the version of the
> conf/layer.conf file of a layer. That is in contrast to LAYER_CONF_VERSION
> / LCONF_VERSION which are for conf/bblayers.conf in the build enviroment.
>
> Changing stuff that has been established for years is of course a pain but
> it has been done and can be done in a backward compatible way.
>
> My suggestions:
>
>    1. Rename LOCALCONF_VERSION to LOCAL_CONF_VERSION_SET
>    2. Rename LAYER_CONF_VERSION to BBLAYERS_CONF_VERSION_SET
>    3. Rename CONF_VERSION to LOCAL_CONF_VERSION
>    4. Rename LCONF_VERSION to BBLAYERS_CONF_VERSION
>    5. Rename OELAYOUT_ABI to OELAYOUT_VERSION_SET
>    6. Provide values for LOCAL_CONF_VERSION_SET,
>    BBLAYERS_CONF_VERSION_SET, OELAYOUT_VERSION_SET in poky-sanity.bbclass and
>    remove the settings from the distro configuration.
>
> You would also want to change LAYERVERSION to LAYER_CONF_VERSION to be
> consistent. But that cannot be done backwards compatible as it conflicts
> with the currently used version variable for bblayers.conf.
>

LAYERVERSION is about the version of the layer, which LAYERDEPENDS can
reference, e.g. backwards-incompatible changes going into the layer, not
the version of the layer's layer.conf specifically. _SET is a weird way to
indicate an expected value, also, I'd called it _REQUIRED or something, but
that's minor. In general, I agree that things are rather inconsistent with
regard to variable naming, but that's true everywhere, not just for these
variables :)
-- 
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20140812/303173b5/attachment.html>


More information about the yocto mailing list