Message ID | 20250623165507.1633860-1-alex.kanavin@gmail.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [1/2] meta-poky/conf/templates/default/bblayers.conf.sample: do not assume integrated poky repo | expand |
On Mon, 2025-06-23 at 18:55 +0200, Alexander Kanavin via lists.yoctoproject.org wrote: > From: Alexander Kanavin <alex@linutronix.de> > > The list of layers was written assuming the template is used with > the 'integrated' poky checkout, where content of meta-yocto is > 'overlaid' on content of openembedded-core, and the layers are > all in the same top level poky repository directory. > > This doesn't work when oe-core and meta-yocto are cloned separately, > where relative path that starts from oe-core would have to go one > level above oe-core and then go into meta-yocto, assuming the > separate repo clones are in the same top level directory. > > This requires a custom tweak to bblayers.conf when it makes its way > from meta-yocto into poky that would strip the ../meta-yocto/ part in > BBLAYERS. As there are already numerous other tweaks of similar > nature, I think this is feasible. Which other tweaks of a similar nature are made? I'm not aware of any file contents changing between repos... Cheers, Richard
On Tue, 24 Jun 2025 at 15:11, Richard Purdie <richard.purdie@linuxfoundation.org> wrote: > > This requires a custom tweak to bblayers.conf when it makes its way > > from meta-yocto into poky that would strip the ../meta-yocto/ part in > > BBLAYERS. As there are already numerous other tweaks of similar > > nature, I think this is feasible. > > Which other tweaks of a similar nature are made? I'm not aware of any > file contents changing between repos... Right, this refers to the poky integration process that cherry-picks files and directories from original repos, e.g. the default template from oe-core (meta/conf/templates/default) does not make it into poky at all. The patch follows the suggestion that such a tweak is possible: https://lists.openembedded.org/g/openembedded-architecture/message/2129 Alex
On Tue, 2025-06-24 at 15:42 +0200, Alexander Kanavin wrote: > On Tue, 24 Jun 2025 at 15:11, Richard Purdie > <richard.purdie@linuxfoundation.org> wrote: > > > This requires a custom tweak to bblayers.conf when it makes its > > > way > > > from meta-yocto into poky that would strip the ../meta-yocto/ > > > part in > > > BBLAYERS. As there are already numerous other tweaks of similar > > > nature, I think this is feasible. > > > > Which other tweaks of a similar nature are made? I'm not aware of > > any > > file contents changing between repos... > > Right, this refers to the poky integration process that cherry-picks > files and directories from original repos, e.g. the default template > from oe-core (meta/conf/templates/default) does not make it into poky > at all. > > The patch follows the suggestion that such a tweak is possible: > https://lists.openembedded.org/g/openembedded-architecture/message/2129 Ah, that is a bit different. There aren't tweaks of a similar nature. I'll need to give this more thought... Cheers, Richard
On Tue, 24 Jun 2025 at 15:58, Richard Purdie <richard.purdie@linuxfoundation.org> wrote: > > > > The patch follows the suggestion that such a tweak is possible: > > https://lists.openembedded.org/g/openembedded-architecture/message/2129 > > Ah, that is a bit different. There aren't tweaks of a similar nature. > I'll need to give this more thought... No problem. I'll adjust the commit message meanwhile. Alex
On Tue, 24 Jun 2025 at 15:58, Richard Purdie <richard.purdie@linuxfoundation.org> wrote: > > Right, this refers to the poky integration process that cherry-picks > > files and directories from original repos, e.g. the default template > > from oe-core (meta/conf/templates/default) does not make it into poky > > at all. > > > > The patch follows the suggestion that such a tweak is possible: > > https://lists.openembedded.org/g/openembedded-architecture/message/2129 > > Ah, that is a bit different. There aren't tweaks of a similar nature. > I'll need to give this more thought... I want to put my thoughts (and a proposal) forward: the real issue here is that BBLAYERS is a list of full paths, and thus is not relocatable. And there's lots of awkwardness around changing that list relative to ##OEROOT## and back in templates (and ##OEROOT##-prefixed paths are still not relocatable). I tried to think of a way to specify layer identifiers instead, and have some kind of 'magic' figuring out where the layers are in the filesystem. One option is something like this: BBLAYERS_SEARCH_PATHS = "/path/to/where/layers/are /some/other/path/with/layers" BBLAYERS_IDS = "core yocto intel" e.g. bitbake would walk the filesystem starting from those paths (they would be set by bitbake-setup or other tools performing layer checkouts), and add any matching layers to the build. I think that's actually not too horrible. Should I try to prototype this? One nice consequence is that it makes templates optional for those who do not like them: one could instead set the build entirely from just a list of fragments (machine/distro built-ins at a minimum :) and layer ids. Having to maintain templates for any possible layer combination doesn't scale, same way as on-disk fragments for machines/distros wouldn't scale. Alex
diff --git a/meta-poky/conf/templates/default/bblayers.conf.sample b/meta-poky/conf/templates/default/bblayers.conf.sample index 8b1cbdfc5c4..d34b552cb71 100644 --- a/meta-poky/conf/templates/default/bblayers.conf.sample +++ b/meta-poky/conf/templates/default/bblayers.conf.sample @@ -7,6 +7,6 @@ BBFILES ?= "" BBLAYERS ?= " \ ##OEROOT##/meta \ - ##OEROOT##/meta-poky \ - ##OEROOT##/meta-yocto-bsp \ + ##OEROOT##/../meta-yocto/meta-poky \ + ##OEROOT##/../meta-yocto/meta-yocto-bsp \ "