Hello,

this is done for reasons of discoverability and consistency with
machine and distro definitions: they all should be under
meta-somelayer/conf/. This way both tools and humans can easily find
the config templates, and be certain that this is the only location..

Alex

On Wed, 14 Sept 2022 at 05:27, ChenQi <[email protected]> wrote:
>
> Hi Alex,
>
> Why must TEMPLATECONF be under a layer?
>
> Regards,
> Qi
>
> On 8/31/22 19:13, Alexander Kanavin wrote:
> > specifically that ../../layer.conf exists, and that second-from-last
> > component in the path is 'templates'.
> >
> > This requires tweaking template.conf creation in eSDK bbclass, as
> > we need to ensure that the path in it is valid, and exists
> > (which may not be the case if the SDK is poky-based).
> >
> > Signed-off-by: Alexander Kanavin <[email protected]>
> > ---
> >   meta/classes-recipe/populate_sdk_ext.bbclass | 3 ++-
> >   scripts/oe-setup-builddir                    | 5 +++++
> >   2 files changed, 7 insertions(+), 1 deletion(-)
> >
> > diff --git a/meta/classes-recipe/populate_sdk_ext.bbclass 
> > b/meta/classes-recipe/populate_sdk_ext.bbclass
> > index 56e24c4eed..925cb313fc 100644
> > --- a/meta/classes-recipe/populate_sdk_ext.bbclass
> > +++ b/meta/classes-recipe/populate_sdk_ext.bbclass
> > @@ -438,7 +438,8 @@ python copy_buildsystem () {
> >       else:
> >           # Write a templateconf.cfg
> >           with open(baseoutpath + '/conf/templateconf.cfg', 'w') as f:
> > -            f.write('meta/conf\n')
> > +            f.write('meta/conf/templates/default\n')
> > +        os.makedirs(os.path.join(baseoutpath, core_meta_subdir, 
> > 'conf/templates/default'), exist_ok=True)
> >
> >       # Ensure any variables set from the external environment (by way of
> >       # BB_ENV_PASSTHROUGH_ADDITIONS) are set in the SDK's configuration
> > diff --git a/scripts/oe-setup-builddir b/scripts/oe-setup-builddir
> > index 5d644168cb..bf832ee0ca 100755
> > --- a/scripts/oe-setup-builddir
> > +++ b/scripts/oe-setup-builddir
> > @@ -61,6 +61,11 @@ if [ -n "$TEMPLATECONF" ]; then
> >               echo >&2 "Error: TEMPLATECONF value points to nonexistent 
> > directory '$TEMPLATECONF'"
> >               exit 1
> >           fi
> > +        templatesdir=$(python3 -c "import sys; 
> > print(sys.argv[1].strip('/').split('/')[-2])" $TEMPLATECONF)
> > +        if [ ! -f "$TEMPLATECONF/../../layer.conf" -o $templatesdir != 
> > "templates" ]; then
> > +            echo >&2 "Error: TEMPLATECONF value (which is $TEMPLATECONF) 
> > must point to meta-some-layer/conf/templates/template-name"
> > +            exit 1
> > +        fi
> >       fi
> >       OECORELAYERCONF="$TEMPLATECONF/bblayers.conf.sample"
> >       OECORELOCALCONF="$TEMPLATECONF/local.conf.sample"
> >
> > 
> >
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#170631): 
https://lists.openembedded.org/g/openembedded-core/message/170631
Mute This Topic: https://lists.openembedded.org/mt/93368468/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to