Hi! I have inherited our custom distro layer (heavily based on poky), but I am not sure whether it has been coded correctly. It produces working images, but certain weird symptoms when working with bitbake made me to double-check the code.
I'm reading https://www.yoctoproject.org/docs/2.4.2/mega-manual/mega-manual.html#creating-your-own-distribution It says: > Create the distribution configuration file: The distribution > configuration file needs to be created in the conf/distro directory > of your layer. You need to name it using your distribution name > (e.g. mydistro.conf). That seems clear to me. It continues: > Note: The DISTRO variable in your local.conf file determines the > name of your distribution. I find that statement somewhat ambiguous. Didn't we just read above that the name of the distro is determined by the distro/<name>.conf file? And in general case you have several of them. So at least I would find it easier to understand if the note read something like The DISTRO variable in your local.conf file selects which distro to build. The wording in the manual might make sense if you think of the distribution as a build product. But it doesn't make any sense to me when thinking about distro metadata. And that's what the reader of that section is likely to look at/edit in this moment. Or do I miss something here? The confusion continues. The manual says > Your configuration file needs to set the following required variables: > DISTRO_NAME > DISTRO_VERSION If I look into https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta-poky/conf/distro/poky-tiny.conf?h=rocko it does not set a DISTRO_NAME. Well, it gets a DISTRO_NAME from > require conf/distro/poky.conf So assuming that poky-tiny and poky are diffferent distros, should they really share the same name? Maybe there is something like a distro and a distro variant, but I could not find any such concept in the manual. Sometimes I see references to a poky-based distro, though. I assume the DISTRO_NAME is mostly cosmetic / for humans. So not that much to worry about? But the DISTRO variable seems to be central for the build process. There is a test in script yocto-check-layer that the distro config file does not set the DISTRO variable. When running yocto-check-layer on our own distro layer I got a failure for setting DISTRO. So I treid to remove the variable setting. But that results in my DISTRO variable ending up being set to "yocto". I think it goes like this 1.) my local.conf sets DISTRO to my own one 2.) in consequence my own distro conf file gets processed 3.) it does "require" of yocto.conf and that resets the DISTRO value to "yocto" 4.) (originally our own distro config file reset the value to our own name after the "require". So the name was "correct" in the end. But yocto-check-layer did not like that) So what is wrong here? Why does the poky code violate the test condition of not setting DISTRO? Or is nobody supposed to "require" poky.conf? I could of course copy the contents, but copying code is usually not a good idea. Thanks for reading until here, couldn't formulate it shorter... Uwe Geuder Neuro Event Labs Oy Tampere, Finland uwe.gex...@neuroeventlabs.com (Bot check: fix one obvious typo) -- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto