All of lore.kernel.org
 help / color / mirror / Atom feed
* dynamic-layers?
@ 2017-05-24 10:30 Takashi Matsuzawa
  2017-05-24 14:19 ` dynamic-layers? Gary Thomas
  2017-05-24 14:19 ` dynamic-layers? Nicolas Dechesne
  0 siblings, 2 replies; 15+ messages in thread
From: Takashi Matsuzawa @ 2017-05-24 10:30 UTC (permalink / raw)
  To: yocto@yoctoproject.org

[-- Attachment #1: Type: text/plain, Size: 995 bytes --]

Hello, Yocto.
I am a bit confused with dynamic-layers included in some of the recent layers in various BSPs.

e.g.

https://github.com/Freescale/meta-freescale/blob/master/conf/layer.conf

># The .bbappend and .bb files are included if the respective layer
># collection is available.
>BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bbappend' % layer \
>               for layer in BBFILE_COLLECTIONS.split())}"
>BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bb' % layer \
>               for layer in BBFILE_COLLECTIONS.split())}"

In meta-freescale/dynamic-layers, there are browser-layer, efi-layer, etc. for conditional inclusion.
And I think they are included only their names (browser-layer, etc.) are BBFILE_COLLECIONS.

Question here is, who will be adding 'browser-layer' to BBFILE_COLLECTIONS when I want to include browser-layer in my build.

Is it something to be done in my local.conf or customized distro conf file?


[-- Attachment #2: Type: text/html, Size: 1814 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: dynamic-layers?
  2017-05-24 10:30 dynamic-layers? Takashi Matsuzawa
@ 2017-05-24 14:19 ` Gary Thomas
  2017-05-24 14:19 ` dynamic-layers? Nicolas Dechesne
  1 sibling, 0 replies; 15+ messages in thread
From: Gary Thomas @ 2017-05-24 14:19 UTC (permalink / raw)
  To: yocto

On 2017-05-24 12:30, Takashi Matsuzawa wrote:
> Hello, Yocto.
> I am a bit confused with dynamic-layers included in some of the recent layers in various BSPs.
> 
> e.g.
> 
> https://github.com/Freescale/meta-freescale/blob/master/conf/layer.conf
> 
>  ># The .bbappend and .bb files are included if the respective layer
>  ># collection is available.
>  >BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bbappend' % layer \
>  >               for layer in BBFILE_COLLECTIONS.split())}"
>  >BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bb' % layer \
>  >               for layer in BBFILE_COLLECTIONS.split())}"
> 
> In meta-freescale/dynamic-layers, there are browser-layer, efi-layer, etc. for conditional inclusion.
> And I think they are included only their names (browser-layer, etc.) are BBFILE_COLLECIONS.
> 
> Question here is, who will be adding 'browser-layer' to BBFILE_COLLECTIONS when I want to include browser-layer in my build.
> 
> Is it something to be done in my local.conf or customized distro conf file?

No, it's in <layer>/conf/layer.conf for the <layer> in question.

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: dynamic-layers?
  2017-05-24 10:30 dynamic-layers? Takashi Matsuzawa
  2017-05-24 14:19 ` dynamic-layers? Gary Thomas
@ 2017-05-24 14:19 ` Nicolas Dechesne
  2017-05-25  1:03   ` dynamic-layers? Takashi Matsuzawa
  1 sibling, 1 reply; 15+ messages in thread
From: Nicolas Dechesne @ 2017-05-24 14:19 UTC (permalink / raw)
  To: Takashi Matsuzawa; +Cc: yocto@yoctoproject.org

On Wed, May 24, 2017 at 12:30 PM, Takashi Matsuzawa <tmatsuzawa@xevo.com> wrote:
> Hello, Yocto.
> I am a bit confused with dynamic-layers included in some of the recent
> layers in various BSPs.
>
> e.g.
>
> https://github.com/Freescale/meta-freescale/blob/master/conf/layer.conf
>
>># The .bbappend and .bb files are included if the respective layer
>># collection is available.
>>BBFILES += "${@'
>> '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bbappend' % layer \
>>               for layer in BBFILE_COLLECTIONS.split())}"
>>BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bb' %
>> layer \
>>               for layer in BBFILE_COLLECTIONS.split())}"
>
> In meta-freescale/dynamic-layers, there are browser-layer, efi-layer, etc.
> for conditional inclusion.
> And I think they are included only their names (browser-layer, etc.) are
> BBFILE_COLLECIONS.
>
> Question here is, who will be adding 'browser-layer' to BBFILE_COLLECTIONS
> when I want to include browser-layer in my build.
>
> Is it something to be done in my local.conf or customized distro conf file?

what that means is that recipe from the dynamic-layers/<layer> will be
parsed/added *only if* <layer> is already added in your build
environment. e.g. if you have meta-qt5 in BBLAYERS in
<build>/conf/bblayers.conf, then the recipes from
"dynamic-layers/qt5-layer" are used as well.

This is mostly to allow a BSP layer to be used with as many
combinations of layers as possible.


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: dynamic-layers?
  2017-05-24 14:19 ` dynamic-layers? Nicolas Dechesne
@ 2017-05-25  1:03   ` Takashi Matsuzawa
  2017-05-25  6:26     ` dynamic-layers? Takashi Matsuzawa
  0 siblings, 1 reply; 15+ messages in thread
From: Takashi Matsuzawa @ 2017-05-25  1:03 UTC (permalink / raw)
  To: Nicolas Dechesne; +Cc: yocto@yoctoproject.org

[-- Attachment #1: Type: text/plain, Size: 4509 bytes --]

Hello.

>e.g. if you have meta-qt5 in BBLAYERS in <build>/conf/bblayers.conf, then the recipes from "dynamic-layers/qt5-layer" are used as well.

Thanks now I can see how it is expected to work.
My issue here now is that some dynamyc-layers/<layer> not being added to BBFILES list.

I tried '-e' switch with my build tree and here is what I can see.
I think this is caused by BBFILE_COLLECTIONS evaluation timing? - but I am still looking into to find the cause.

1) .conf files read

I think these are the conf files recognized by the build sytem.
I cansee meta-qt5 there.

#
# INCLUDE HISTORY:
#
# /home/xxx/build-root/build/conf/bblayers.conf
# /home/xxx/build-root/meta-freescale/conf/layer.conf
# /home/xxx/build-root/meta-freescale-3rdparty/conf/layer.conf
# /home/xxx/build-root/meta-freescale-distro/conf/layer.conf
# /home/xxx/build-root/meta-agl/meta-netboot/conf/layer.conf
# /home/xxx/build-root/meta-intel-iot-security/meta-security-smack/conf/layer.conf
# /home/xxx/build-root/meta-intel-iot-security/meta-security-framework/conf/layer.conf
# /home/xxx/build-root/meta-agl/meta-app-framework/conf/layer.conf
# /home/xxx/build-root/meta-qt5/conf/layer.conf
...

2) BBFILE_COLLECTIONS

And I can see 'qt5-layer' is being added to BBFILE_COLLECTIONS, so it 'qt5-layer' folder in every dynamic-layers should be picked into BBFILE list.

BBFILE_COLLECTIONS=" freescale-layer fsl-arm-extra fsl-demos
meta-netboot security-smack security-framework app-framework qt5-layer
agl-demo openembedded-layer multimedia-layer efl-layer
networking-layer meta-python ivi-common agl agl-distro aglbsp core
yocto"

3) BBFILES

But I cannot find it in BBFILES list.
Only the first 4 layers (freescale-layer/fsl-arm-extra/fsl-demos/meta-netboot) in BBFILE_COLLECTIONS are used in wildecard parameter.

BBFILES="/home/xxx/build-root/meta-freescale/recipes-*/*/*.bb
/home/xxx/build-root/meta-freescale/recipes-*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/freescale-layer/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-arm-extra/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-demos/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/meta-netboot/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/freescale-layer/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-arm-extra/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-demos/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/meta-netboot/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale-3rdparty/recipes-*/*/*.bb
/home/xxx/build-root/meta-freescale-3rdparty/recipes-*/*/*.bbappend
...


________________________________
From: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Sent: Wednesday, May 24, 2017 11:19 PM
To: Takashi Matsuzawa
Cc: yocto@yoctoproject.org
Subject: Re: [yocto] dynamic-layers?

On Wed, May 24, 2017 at 12:30 PM, Takashi Matsuzawa <tmatsuzawa@xevo.com> wrote:
> Hello, Yocto.
> I am a bit confused with dynamic-layers included in some of the recent
> layers in various BSPs.
>
> e.g.
>
> https://github.com/Freescale/meta-freescale/blob/master/conf/layer.conf

>
>># The .bbappend and .bb files are included if the respective layer
>># collection is available.
>>BBFILES += "${@'
>> '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bbappend' % layer \
>>               for layer in BBFILE_COLLECTIONS.split())}"
>>BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bb' %
>> layer \
>>               for layer in BBFILE_COLLECTIONS.split())}"
>
> In meta-freescale/dynamic-layers, there are browser-layer, efi-layer, etc.
> for conditional inclusion.
> And I think they are included only their names (browser-layer, etc.) are
> BBFILE_COLLECIONS.
>
> Question here is, who will be adding 'browser-layer' to BBFILE_COLLECTIONS
> when I want to include browser-layer in my build.
>
> Is it something to be done in my local.conf or customized distro conf file?

what that means is that recipe from the dynamic-layers/<layer> will be
parsed/added *only if* <layer> is already added in your build
environment. e.g. if you have meta-qt5 in BBLAYERS in
<build>/conf/bblayers.conf, then the recipes from
"dynamic-layers/qt5-layer" are used as well.

This is mostly to allow a BSP layer to be used with as many
combinations of layers as possible.

[-- Attachment #2: Type: text/html, Size: 6608 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: dynamic-layers?
  2017-05-25  1:03   ` dynamic-layers? Takashi Matsuzawa
@ 2017-05-25  6:26     ` Takashi Matsuzawa
  2017-05-25 14:12       ` Fw: [yocto] dynamic-layers? Takashi Matsuzawa
  2017-05-26  8:09       ` dynamic-layers? Takashi Matsuzawa
  0 siblings, 2 replies; 15+ messages in thread
From: Takashi Matsuzawa @ 2017-05-25  6:26 UTC (permalink / raw)
  To: yocto@yoctoproject.org

[-- Attachment #1: Type: text/plain, Size: 5106 bytes --]

Hello.


I further did some debugging and BBFOLE_COLLECTION when used in the following 'for' expansion contains only subset of what is avilable finally in BBFILE_COLLECTION (as appears in '-e' log).


>BBFILES += "${@'  '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bbappend' % layer \
>               for layer in BBFILE_COLLECTIONS.split())}"

I am confused if this is a normal behavior.

________________________________
From: Takashi Matsuzawa
Sent: Thursday, May 25, 2017 10:03 AM
To: Nicolas Dechesne
Cc: yocto@yoctoproject.org
Subject: Re: [yocto] dynamic-layers?


Hello.

>e.g. if you have meta-qt5 in BBLAYERS in <build>/conf/bblayers.conf, then the recipes from "dynamic-layers/qt5-layer" are used as well.

Thanks now I can see how it is expected to work.
My issue here now is that some dynamyc-layers/<layer> not being added to BBFILES list.

I tried '-e' switch with my build tree and here is what I can see.
I think this is caused by BBFILE_COLLECTIONS evaluation timing? - but I am still looking into to find the cause.

1) .conf files read

I think these are the conf files recognized by the build sytem.
I cansee meta-qt5 there.

#
# INCLUDE HISTORY:
#
# /home/xxx/build-root/build/conf/bblayers.conf
# /home/xxx/build-root/meta-freescale/conf/layer.conf
# /home/xxx/build-root/meta-freescale-3rdparty/conf/layer.conf
# /home/xxx/build-root/meta-freescale-distro/conf/layer.conf
# /home/xxx/build-root/meta-agl/meta-netboot/conf/layer.conf
# /home/xxx/build-root/meta-intel-iot-security/meta-security-smack/conf/layer.conf
# /home/xxx/build-root/meta-intel-iot-security/meta-security-framework/conf/layer.conf
# /home/xxx/build-root/meta-agl/meta-app-framework/conf/layer.conf
# /home/xxx/build-root/meta-qt5/conf/layer.conf
...

2) BBFILE_COLLECTIONS

And I can see 'qt5-layer' is being added to BBFILE_COLLECTIONS, so it 'qt5-layer' folder in every dynamic-layers should be picked into BBFILE list.

BBFILE_COLLECTIONS=" freescale-layer fsl-arm-extra fsl-demos
meta-netboot security-smack security-framework app-framework qt5-layer
agl-demo openembedded-layer multimedia-layer efl-layer
networking-layer meta-python ivi-common agl agl-distro aglbsp core
yocto"

3) BBFILES

But I cannot find it in BBFILES list.
Only the first 4 layers (freescale-layer/fsl-arm-extra/fsl-demos/meta-netboot) in BBFILE_COLLECTIONS are used in wildecard parameter.

BBFILES="/home/xxx/build-root/meta-freescale/recipes-*/*/*.bb
/home/xxx/build-root/meta-freescale/recipes-*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/freescale-layer/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-arm-extra/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-demos/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/meta-netboot/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/freescale-layer/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-arm-extra/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-demos/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/meta-netboot/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale-3rdparty/recipes-*/*/*.bb
/home/xxx/build-root/meta-freescale-3rdparty/recipes-*/*/*.bbappend
...


________________________________
From: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Sent: Wednesday, May 24, 2017 11:19 PM
To: Takashi Matsuzawa
Cc: yocto@yoctoproject.org
Subject: Re: [yocto] dynamic-layers?

On Wed, May 24, 2017 at 12:30 PM, Takashi Matsuzawa <tmatsuzawa@xevo.com> wrote:
> Hello, Yocto.
> I am a bit confused with dynamic-layers included in some of the recent
> layers in various BSPs.
>
> e.g.
>
> https://github.com/Freescale/meta-freescale/blob/master/conf/layer.conf

>
>># The .bbappend and .bb files are included if the respective layer
>># collection is available.
>>BBFILES += "${@'
>> '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bbappend' % layer \
>>               for layer in BBFILE_COLLECTIONS.split())}"
>>BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bb' %
>> layer \
>>               for layer in BBFILE_COLLECTIONS.split())}"
>
> In meta-freescale/dynamic-layers, there are browser-layer, efi-layer, etc.
> for conditional inclusion.
> And I think they are included only their names (browser-layer, etc.) are
> BBFILE_COLLECIONS.
>
> Question here is, who will be adding 'browser-layer' to BBFILE_COLLECTIONS
> when I want to include browser-layer in my build.
>
> Is it something to be done in my local.conf or customized distro conf file?

what that means is that recipe from the dynamic-layers/<layer> will be
parsed/added *only if* <layer> is already added in your build
environment. e.g. if you have meta-qt5 in BBLAYERS in
<build>/conf/bblayers.conf, then the recipes from
"dynamic-layers/qt5-layer" are used as well.

This is mostly to allow a BSP layer to be used with as many
combinations of layers as possible.

[-- Attachment #2: Type: text/html, Size: 8213 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Fw: [yocto] dynamic-layers?
  2017-05-25  6:26     ` dynamic-layers? Takashi Matsuzawa
@ 2017-05-25 14:12       ` Takashi Matsuzawa
  2017-06-19 14:51         ` Otavio Salvador
  2017-05-26  8:09       ` dynamic-layers? Takashi Matsuzawa
  1 sibling, 1 reply; 15+ messages in thread
From: Takashi Matsuzawa @ 2017-05-25 14:12 UTC (permalink / raw)
  To: meta-freescale@yoctoproject.org

[-- Attachment #1: Type: text/plain, Size: 5367 bytes --]

Sorry for the cross-post - but is this working as expected with you?

________________________________
From: Takashi Matsuzawa
Sent: Thursday, May 25, 2017 3:26 PM
To: yocto@yoctoproject.org
Cc: Nicolas Dechesne
Subject: Re: [yocto] dynamic-layers?


Hello.


I further did some debugging and BBFOLE_COLLECTION when used in the following 'for' expansion contains only subset of what is avilable finally in BBFILE_COLLECTION (as appears in '-e' log).


>BBFILES += "${@'  '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bbappend' % layer \
>               for layer in BBFILE_COLLECTIONS.split())}"

I am confused if this is a normal behavior.

________________________________
From: Takashi Matsuzawa
Sent: Thursday, May 25, 2017 10:03 AM
To: Nicolas Dechesne
Cc: yocto@yoctoproject.org
Subject: Re: [yocto] dynamic-layers?


Hello.

>e.g. if you have meta-qt5 in BBLAYERS in <build>/conf/bblayers.conf, then the recipes from "dynamic-layers/qt5-layer" are used as well.

Thanks now I can see how it is expected to work.
My issue here now is that some dynamyc-layers/<layer> not being added to BBFILES list.

I tried '-e' switch with my build tree and here is what I can see.
I think this is caused by BBFILE_COLLECTIONS evaluation timing? - but I am still looking into to find the cause.

1) .conf files read

I think these are the conf files recognized by the build sytem.
I cansee meta-qt5 there.

#
# INCLUDE HISTORY:
#
# /home/xxx/build-root/build/conf/bblayers.conf
# /home/xxx/build-root/meta-freescale/conf/layer.conf
# /home/xxx/build-root/meta-freescale-3rdparty/conf/layer.conf
# /home/xxx/build-root/meta-freescale-distro/conf/layer.conf
# /home/xxx/build-root/meta-agl/meta-netboot/conf/layer.conf
# /home/xxx/build-root/meta-intel-iot-security/meta-security-smack/conf/layer.conf
# /home/xxx/build-root/meta-intel-iot-security/meta-security-framework/conf/layer.conf
# /home/xxx/build-root/meta-agl/meta-app-framework/conf/layer.conf
# /home/xxx/build-root/meta-qt5/conf/layer.conf
...

2) BBFILE_COLLECTIONS

And I can see 'qt5-layer' is being added to BBFILE_COLLECTIONS, so it 'qt5-layer' folder in every dynamic-layers should be picked into BBFILE list.

BBFILE_COLLECTIONS=" freescale-layer fsl-arm-extra fsl-demos
meta-netboot security-smack security-framework app-framework qt5-layer
agl-demo openembedded-layer multimedia-layer efl-layer
networking-layer meta-python ivi-common agl agl-distro aglbsp core
yocto"

3) BBFILES

But I cannot find it in BBFILES list.
Only the first 4 layers (freescale-layer/fsl-arm-extra/fsl-demos/meta-netboot) in BBFILE_COLLECTIONS are used in wildecard parameter.

BBFILES="/home/xxx/build-root/meta-freescale/recipes-*/*/*.bb
/home/xxx/build-root/meta-freescale/recipes-*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/freescale-layer/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-arm-extra/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-demos/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/meta-netboot/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/freescale-layer/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-arm-extra/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-demos/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/meta-netboot/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale-3rdparty/recipes-*/*/*.bb
/home/xxx/build-root/meta-freescale-3rdparty/recipes-*/*/*.bbappend
...


________________________________
From: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Sent: Wednesday, May 24, 2017 11:19 PM
To: Takashi Matsuzawa
Cc: yocto@yoctoproject.org
Subject: Re: [yocto] dynamic-layers?

On Wed, May 24, 2017 at 12:30 PM, Takashi Matsuzawa <tmatsuzawa@xevo.com> wrote:
> Hello, Yocto.
> I am a bit confused with dynamic-layers included in some of the recent
> layers in various BSPs.
>
> e.g.
>
> https://github.com/Freescale/meta-freescale/blob/master/conf/layer.conf

>
>># The .bbappend and .bb files are included if the respective layer
>># collection is available.
>>BBFILES += "${@'
>> '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bbappend' % layer \
>>               for layer in BBFILE_COLLECTIONS.split())}"
>>BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bb' %
>> layer \
>>               for layer in BBFILE_COLLECTIONS.split())}"
>
> In meta-freescale/dynamic-layers, there are browser-layer, efi-layer, etc.
> for conditional inclusion.
> And I think they are included only their names (browser-layer, etc.) are
> BBFILE_COLLECIONS.
>
> Question here is, who will be adding 'browser-layer' to BBFILE_COLLECTIONS
> when I want to include browser-layer in my build.
>
> Is it something to be done in my local.conf or customized distro conf file?

what that means is that recipe from the dynamic-layers/<layer> will be
parsed/added *only if* <layer> is already added in your build
environment. e.g. if you have meta-qt5 in BBLAYERS in
<build>/conf/bblayers.conf, then the recipes from
"dynamic-layers/qt5-layer" are used as well.

This is mostly to allow a BSP layer to be used with as many
combinations of layers as possible.

[-- Attachment #2: Type: text/html, Size: 8858 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: dynamic-layers?
  2017-05-25  6:26     ` dynamic-layers? Takashi Matsuzawa
  2017-05-25 14:12       ` Fw: [yocto] dynamic-layers? Takashi Matsuzawa
@ 2017-05-26  8:09       ` Takashi Matsuzawa
  2017-05-26 13:51         ` dynamic-layers? Patrick Ohly
  1 sibling, 1 reply; 15+ messages in thread
From: Takashi Matsuzawa @ 2017-05-26  8:09 UTC (permalink / raw)
  To: yocto@yoctoproject.org

[-- Attachment #1: Type: text/plain, Size: 5572 bytes --]

Hello.


So, this is the case I have to be careful about the order of conf files listed in BBLAYERS list?

i.e. if I have dynamic-layers line in my layer X and expansion need to take care of layer A, B, C, then, A, B, C needs to be apper before X within BBLAYERS list.

________________________________
From: Takashi Matsuzawa
Sent: Thursday, May 25, 2017 3:26 PM
To: yocto@yoctoproject.org
Cc: Nicolas Dechesne
Subject: Re: [yocto] dynamic-layers?


Hello.


I further did some debugging and BBFOLE_COLLECTION when used in the following 'for' expansion contains only subset of what is avilable finally in BBFILE_COLLECTION (as appears in '-e' log).


>BBFILES += "${@'  '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bbappend' % layer \
>               for layer in BBFILE_COLLECTIONS.split())}"

I am confused if this is a normal behavior.

________________________________
From: Takashi Matsuzawa
Sent: Thursday, May 25, 2017 10:03 AM
To: Nicolas Dechesne
Cc: yocto@yoctoproject.org
Subject: Re: [yocto] dynamic-layers?


Hello.

>e.g. if you have meta-qt5 in BBLAYERS in <build>/conf/bblayers.conf, then the recipes from "dynamic-layers/qt5-layer" are used as well.

Thanks now I can see how it is expected to work.
My issue here now is that some dynamyc-layers/<layer> not being added to BBFILES list.

I tried '-e' switch with my build tree and here is what I can see.
I think this is caused by BBFILE_COLLECTIONS evaluation timing? - but I am still looking into to find the cause.

1) .conf files read

I think these are the conf files recognized by the build sytem.
I cansee meta-qt5 there.

#
# INCLUDE HISTORY:
#
# /home/xxx/build-root/build/conf/bblayers.conf
# /home/xxx/build-root/meta-freescale/conf/layer.conf
# /home/xxx/build-root/meta-freescale-3rdparty/conf/layer.conf
# /home/xxx/build-root/meta-freescale-distro/conf/layer.conf
# /home/xxx/build-root/meta-agl/meta-netboot/conf/layer.conf
# /home/xxx/build-root/meta-intel-iot-security/meta-security-smack/conf/layer.conf
# /home/xxx/build-root/meta-intel-iot-security/meta-security-framework/conf/layer.conf
# /home/xxx/build-root/meta-agl/meta-app-framework/conf/layer.conf
# /home/xxx/build-root/meta-qt5/conf/layer.conf
...

2) BBFILE_COLLECTIONS

And I can see 'qt5-layer' is being added to BBFILE_COLLECTIONS, so it 'qt5-layer' folder in every dynamic-layers should be picked into BBFILE list.

BBFILE_COLLECTIONS=" freescale-layer fsl-arm-extra fsl-demos
meta-netboot security-smack security-framework app-framework qt5-layer
agl-demo openembedded-layer multimedia-layer efl-layer
networking-layer meta-python ivi-common agl agl-distro aglbsp core
yocto"

3) BBFILES

But I cannot find it in BBFILES list.
Only the first 4 layers (freescale-layer/fsl-arm-extra/fsl-demos/meta-netboot) in BBFILE_COLLECTIONS are used in wildecard parameter.

BBFILES="/home/xxx/build-root/meta-freescale/recipes-*/*/*.bb
/home/xxx/build-root/meta-freescale/recipes-*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/freescale-layer/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-arm-extra/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-demos/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/meta-netboot/recipes*/*/*.bbappend
/home/xxx/build-root/meta-freescale/dynamic-layers/freescale-layer/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-arm-extra/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/fsl-demos/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale/dynamic-layers/meta-netboot/recipes*/*/*.bb
/home/xxx/build-root/meta-freescale-3rdparty/recipes-*/*/*.bb
/home/xxx/build-root/meta-freescale-3rdparty/recipes-*/*/*.bbappend
...


________________________________
From: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Sent: Wednesday, May 24, 2017 11:19 PM
To: Takashi Matsuzawa
Cc: yocto@yoctoproject.org
Subject: Re: [yocto] dynamic-layers?

On Wed, May 24, 2017 at 12:30 PM, Takashi Matsuzawa <tmatsuzawa@xevo.com> wrote:
> Hello, Yocto.
> I am a bit confused with dynamic-layers included in some of the recent
> layers in various BSPs.
>
> e.g.
>
> https://github.com/Freescale/meta-freescale/blob/master/conf/layer.conf

>
>># The .bbappend and .bb files are included if the respective layer
>># collection is available.
>>BBFILES += "${@'
>> '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bbappend' % layer \
>>               for layer in BBFILE_COLLECTIONS.split())}"
>>BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bb' %
>> layer \
>>               for layer in BBFILE_COLLECTIONS.split())}"
>
> In meta-freescale/dynamic-layers, there are browser-layer, efi-layer, etc.
> for conditional inclusion.
> And I think they are included only their names (browser-layer, etc.) are
> BBFILE_COLLECIONS.
>
> Question here is, who will be adding 'browser-layer' to BBFILE_COLLECTIONS
> when I want to include browser-layer in my build.
>
> Is it something to be done in my local.conf or customized distro conf file?

what that means is that recipe from the dynamic-layers/<layer> will be
parsed/added *only if* <layer> is already added in your build
environment. e.g. if you have meta-qt5 in BBLAYERS in
<build>/conf/bblayers.conf, then the recipes from
"dynamic-layers/qt5-layer" are used as well.

This is mostly to allow a BSP layer to be used with as many
combinations of layers as possible.

[-- Attachment #2: Type: text/html, Size: 9091 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: dynamic-layers?
  2017-05-26  8:09       ` dynamic-layers? Takashi Matsuzawa
@ 2017-05-26 13:51         ` Patrick Ohly
  0 siblings, 0 replies; 15+ messages in thread
From: Patrick Ohly @ 2017-05-26 13:51 UTC (permalink / raw)
  To: Takashi Matsuzawa; +Cc: yocto@yoctoproject.org

On Fri, 2017-05-26 at 08:09 +0000, Takashi Matsuzawa wrote:
> Hello.
> 
> 
> So, this is the case I have to be careful about the order of conf
> files listed in BBLAYERS list?
> 
> i.e. if I have dynamic-layers line in my layer X and expansion need to
> take care of layer A, B, C, then, A, B, C needs to be apper before X
> within BBLAYERS list.

Yes, I think that's how it is meant to be used.

The reason is that layers get added one-by-one in the order in which
they appear in BBLAYERS, and then the code in
meta-freescale/conf/layer.conf only sees what has been added already.

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.





^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: Fw: [yocto] dynamic-layers?
  2017-05-25 14:12       ` Fw: [yocto] dynamic-layers? Takashi Matsuzawa
@ 2017-06-19 14:51         ` Otavio Salvador
  2017-06-19 15:18           ` Takashi Matsuzawa
  0 siblings, 1 reply; 15+ messages in thread
From: Otavio Salvador @ 2017-06-19 14:51 UTC (permalink / raw)
  To: Takashi Matsuzawa; +Cc: meta-freescale@yoctoproject.org

On Thu, May 25, 2017 at 9:41 AM, Takashi Matsuzawa <tmatsuzawa@xevo.com> wrote:
> Sorry for the cross-post - but is this working as expected with you?


What is the problem you are facing?


-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: Fw: [yocto] dynamic-layers?
  2017-06-19 14:51         ` Otavio Salvador
@ 2017-06-19 15:18           ` Takashi Matsuzawa
  2017-06-19 17:58             ` Otavio Salvador
  0 siblings, 1 reply; 15+ messages in thread
From: Takashi Matsuzawa @ 2017-06-19 15:18 UTC (permalink / raw)
  To: Otavio Salvador; +Cc: meta-freescale@yoctoproject.org

[-- Attachment #1: Type: text/plain, Size: 1136 bytes --]

Hello.

I have learned that:


if I have dynamic-layers line in my layer X and expansion need to take care of layer A, B, C, then, A, B, C needs to be apper before X within BBLAYERS list.

In meta-freescale case, I had to add meta-qt layer before meta-freescale within BBLAYERS.

________________________________
From: Otavio Salvador <otavio.salvador@ossystems.com.br>
Sent: Monday, June 19, 2017 11:51 PM
To: Takashi Matsuzawa
Cc: meta-freescale@yoctoproject.org
Subject: Re: [meta-freescale] Fw: [yocto] dynamic-layers?

On Thu, May 25, 2017 at 9:41 AM, Takashi Matsuzawa <tmatsuzawa@xevo.com> wrote:
> Sorry for the cross-post - but is this working as expected with you?


What is the problem you are facing?


--
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
O.S. Systems<http://www.ossystems.com.br/>
www.ossystems.com.br
O.S. Systems is specialized in the development, customization and consultancy of embedded operating systems and BSPs based on Linux.



Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750

[-- Attachment #2: Type: text/html, Size: 4412 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: Fw: [yocto] dynamic-layers?
  2017-06-19 15:18           ` Takashi Matsuzawa
@ 2017-06-19 17:58             ` Otavio Salvador
  2017-06-28  2:41               ` Takashi Matsuzawa
  0 siblings, 1 reply; 15+ messages in thread
From: Otavio Salvador @ 2017-06-19 17:58 UTC (permalink / raw)
  To: Takashi Matsuzawa; +Cc: meta-freescale@yoctoproject.org

[-- Attachment #1: Type: text/plain, Size: 606 bytes --]

On Mon, Jun 19, 2017 at 12:18 PM, Takashi Matsuzawa <tmatsuzawa@xevo.com>
wrote:

> Hello.
>
> I have learned that:
>
>
> if I have dynamic-layers line in my layer X and expansion need to take
> care of layer A, B, C, then, A, B, C needs to be apper before X within
> BBLAYERS list.
>
> In meta-freescale case, I had to add meta-qt layer before meta-freescale
> within BBLAYERS.
>

Great :-)


-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750

[-- Attachment #2: Type: text/html, Size: 1601 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: Fw: [yocto] dynamic-layers?
  2017-06-19 17:58             ` Otavio Salvador
@ 2017-06-28  2:41               ` Takashi Matsuzawa
  2017-06-28 14:23                 ` Otavio Salvador
  0 siblings, 1 reply; 15+ messages in thread
From: Takashi Matsuzawa @ 2017-06-28  2:41 UTC (permalink / raw)
  To: Otavio Salvador; +Cc: meta-freescale@yoctoproject.org

[-- Attachment #1: Type: text/plain, Size: 1278 bytes --]

Hello.
Well, I see a potential issue with this.  What if I have layers that have circular (parse order) dependency like below.

L-A - Wants to detect presense of L-B
L-B - Wants to detect presense of L-C
L-C - Wants to detect presense of L-A

Is there any guideline about in which order bblayers files are expected to appear/parsed, so that L-C is not written to have cirtular (parse order) dependency.


________________________________
From: Otavio Salvador <otavio.salvador@ossystems.com.br>
Sent: Tuesday, June 20, 2017 2:58 AM
To: Takashi Matsuzawa
Cc: meta-freescale@yoctoproject.org
Subject: Re: [meta-freescale] Fw: [yocto] dynamic-layers?



On Mon, Jun 19, 2017 at 12:18 PM, Takashi Matsuzawa <tmatsuzawa@xevo.com<mailto:tmatsuzawa@xevo.com>> wrote:

Hello.

I have learned that:


if I have dynamic-layers line in my layer X and expansion need to take care of layer A, B, C, then, A, B, C needs to be apper before X within BBLAYERS list.

In meta-freescale case, I had to add meta-qt layer before meta-freescale within BBLAYERS.

Great :-)


--
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750

[-- Attachment #2: Type: text/html, Size: 3177 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: Fw: [yocto] dynamic-layers?
  2017-06-28  2:41               ` Takashi Matsuzawa
@ 2017-06-28 14:23                 ` Otavio Salvador
  2017-06-29  6:22                   ` Takashi Matsuzawa
  0 siblings, 1 reply; 15+ messages in thread
From: Otavio Salvador @ 2017-06-28 14:23 UTC (permalink / raw)
  To: Takashi Matsuzawa; +Cc: meta-freescale@yoctoproject.org

On Tue, Jun 27, 2017 at 11:41 PM, Takashi Matsuzawa <tmatsuzawa@xevo.com> wrote:
> Well, I see a potential issue with this.  What if I have layers that have
> circular (parse order) dependency like below.
>
> L-A - Wants to detect presense of L-B
> L-B - Wants to detect presense of L-C
> L-C - Wants to detect presense of L-A
>
> Is there any guideline about in which order bblayers files are expected to
> appear/parsed, so that L-C is not written to have cirtular (parse order)
> dependency.

We usually put them on priority order; the circular dependency might
be a problem but I never got a use-case for this. Do you have one?

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: Fw: [yocto] dynamic-layers?
  2017-06-28 14:23                 ` Otavio Salvador
@ 2017-06-29  6:22                   ` Takashi Matsuzawa
  2017-06-29 19:41                     ` Otavio Salvador
  0 siblings, 1 reply; 15+ messages in thread
From: Takashi Matsuzawa @ 2017-06-29  6:22 UTC (permalink / raw)
  To: Otavio Salvador; +Cc: meta-freescale@yoctoproject.org

[-- Attachment #1: Type: text/plain, Size: 2146 bytes --]

Not really circular dependency, but my actual case looked like below.

meta-freescale wants to detect meta-qt5 and meta-openembedded.
I have an image that has a layer meta-A who wants to detect bsp type (here, freescale-layer or meta-freescale) also looking into BB_COLLECTIONS.

In this case maybe I need to list the layers as follows.

meta-qt5
meta-openembedded
meta-freescale
meta-B
meta-A

But at the same time, I have configuration for other boards which may look like below.
I want to have the layers (bblayers.conf definition) look similar among the build flavors.
(and it will also reduce the risk of changing something for various builds)
But in this situation I just cannnot replace meta-board-X with meta-freescale.

meta-board-X
--- (common begin)
meta-qt5
meta-openembedded
meta-B
meta-A
--- (common end)

________________________________
From: Otavio Salvador <otavio.salvador@ossystems.com.br>
Sent: Wednesday, June 28, 2017 11:23 PM
To: Takashi Matsuzawa
Cc: meta-freescale@yoctoproject.org
Subject: Re: [meta-freescale] Fw: [yocto] dynamic-layers?

On Tue, Jun 27, 2017 at 11:41 PM, Takashi Matsuzawa <tmatsuzawa@xevo.com> wrote:
> Well, I see a potential issue with this.  What if I have layers that have
> circular (parse order) dependency like below.
>
> L-A - Wants to detect presense of L-B
> L-B - Wants to detect presense of L-C
> L-C - Wants to detect presense of L-A
>
> Is there any guideline about in which order bblayers files are expected to
> appear/parsed, so that L-C is not written to have cirtular (parse order)
> dependency.

We usually put them on priority order; the circular dependency might
be a problem but I never got a use-case for this. Do you have one?

--
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
O.S. Systems<http://www.ossystems.com.br/>
www.ossystems.com.br
O.S. Systems is specialized in the development, customization and consultancy of embedded operating systems and BSPs based on Linux.



Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750

[-- Attachment #2: Type: text/html, Size: 5543 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: Fw: [yocto] dynamic-layers?
  2017-06-29  6:22                   ` Takashi Matsuzawa
@ 2017-06-29 19:41                     ` Otavio Salvador
  0 siblings, 0 replies; 15+ messages in thread
From: Otavio Salvador @ 2017-06-29 19:41 UTC (permalink / raw)
  To: Takashi Matsuzawa; +Cc: meta-freescale@yoctoproject.org

[-- Attachment #1: Type: text/plain, Size: 1153 bytes --]

On Thu, Jun 29, 2017 at 3:22 AM, Takashi Matsuzawa <tmatsuzawa@xevo.com>
wrote:

> Not really circular dependency, but my actual case looked like below.
>
> meta-freescale wants to detect meta-qt5 and meta-openembedded.
> I have an image that has a layer meta-A who wants to detect bsp type
> (here, freescale-layer or meta-freescale) also looking into BB_COLLECTIONS.
>
> In this case maybe I need to list the layers as follows.
>
> meta-qt5
> meta-openembedded
> meta-freescale
> meta-B
> meta-A
>
> But at the same time, I have configuration for other boards which may look
> like below.
> I want to have the layers (bblayers.conf definition) look similar among
> the build flavors.
> (and it will also reduce the risk of changing something for various builds)
> But in this situation I just cannnot replace meta-board-X with
> meta-freescale.
>

I am not getting the issue. It seems quite common for me and works just
fine.


-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750

[-- Attachment #2: Type: text/html, Size: 2070 bytes --]

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2017-06-29 19:41 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-24 10:30 dynamic-layers? Takashi Matsuzawa
2017-05-24 14:19 ` dynamic-layers? Gary Thomas
2017-05-24 14:19 ` dynamic-layers? Nicolas Dechesne
2017-05-25  1:03   ` dynamic-layers? Takashi Matsuzawa
2017-05-25  6:26     ` dynamic-layers? Takashi Matsuzawa
2017-05-25 14:12       ` Fw: [yocto] dynamic-layers? Takashi Matsuzawa
2017-06-19 14:51         ` Otavio Salvador
2017-06-19 15:18           ` Takashi Matsuzawa
2017-06-19 17:58             ` Otavio Salvador
2017-06-28  2:41               ` Takashi Matsuzawa
2017-06-28 14:23                 ` Otavio Salvador
2017-06-29  6:22                   ` Takashi Matsuzawa
2017-06-29 19:41                     ` Otavio Salvador
2017-05-26  8:09       ` dynamic-layers? Takashi Matsuzawa
2017-05-26 13:51         ` dynamic-layers? Patrick Ohly

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.