Patchwork weston : refactor to identify EGL, cairoglesv2 support

login
register
mail settings
Submitter Otavio Salvador
Date March 26, 2014, 9:07 p.m.
Message ID <1395868053-27393-1-git-send-email-otavio@ossystems.com.br>
Download mbox | patch
Permalink /patch/69339/
State New
Headers show

Comments

Otavio Salvador - March 26, 2014, 9:07 p.m.
From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>

Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
 meta/recipes-graphics/wayland/weston_1.4.0.bb | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
Valentin Popa - March 27, 2014, 12:30 p.m.
On 03/26/2014 11:07 PM, Otavio Salvador wrote:
> From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>
> Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
>   meta/recipes-graphics/wayland/weston_1.4.0.bb | 7 +++++--
>   1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/meta/recipes-graphics/wayland/weston_1.4.0.bb b/meta/recipes-graphics/wayland/weston_1.4.0.bb
> index e0c354d..a41b5cd 100644
> --- a/meta/recipes-graphics/wayland/weston_1.4.0.bb
> +++ b/meta/recipes-graphics/wayland/weston_1.4.0.bb
> @@ -23,7 +23,6 @@ EXTRA_OECONF = "--enable-setuid-install \
>                   --enable-simple-clients \
>                   --enable-clients \
>                   --enable-demo-clients-install \
> -                --disable-simple-egl-clients \
>                   --disable-libunwind \
>                   --disable-rpi-compositor \
>                   --disable-rdp-compositor"
> @@ -39,7 +38,7 @@ PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'wayland', 'kms fbdev way
>   # Weston on KMS
>   PACKAGECONFIG[kms] = "--enable-drm-compositor,--disable-drm-compositor,drm udev virtual/mesa mtdev"
>   # Weston on Wayland (nested Weston)
> -PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-egl --disable-wayland-compositor,virtual/mesa"

We need --disable-egl if wayland is not in DISTRO_FEATURES. See bug:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=5867
> +PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-wayland-compositor,virtual/mesa"
>   # Weston on X11
>   PACKAGECONFIG[x11] = "--enable-x11-compositor,--disable-x11-compositor,virtual/libx11 libxcb libxcb libxcursor cairo"
>   # Headless Weston
> @@ -50,6 +49,10 @@ PACKAGECONFIG[fbdev] = "--enable-fbdev-compositor,--disable-fbdev-compositor,ude
>   PACKAGECONFIG[launch] = "--enable-weston-launch,--disable-weston-launch,libpam drm"
>   # VA-API desktop recorder
>   PACKAGECONFIG[vaapi] = "--enable-vaapi-recorder,--disable-vaapi-recorder,libva"
> +# Weston with EGL support
> +PACKAGECONFIG[egl] = "--enable-egl --enable-simple-egl-clients,--disable-egl --disable-simple-egl-clients,virtual/egl"
> +# Weston with cairo glesv2 support
> +PACKAGECONFIG[cairo-glesv2] = "--with-cairo-glesv2,--with-cairo=image,cairo"
>   
>   do_install_append() {
>   	# Weston doesn't need the .la files to load modules, so wipe them
Otavio Salvador - March 27, 2014, 6:09 p.m.
On Thu, Mar 27, 2014 at 9:30 AM, Valentin Popa <valentin.popa@intel.com> wrote:
> On 03/26/2014 11:07 PM, Otavio Salvador wrote:
>>
>> From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>
>> Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
>> ---
>>   meta/recipes-graphics/wayland/weston_1.4.0.bb | 7 +++++--
>>   1 file changed, 5 insertions(+), 2 deletions(-)
>>
>> diff --git a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>> b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>> index e0c354d..a41b5cd 100644
>> --- a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>> +++ b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>> @@ -23,7 +23,6 @@ EXTRA_OECONF = "--enable-setuid-install \
>>                   --enable-simple-clients \
>>                   --enable-clients \
>>                   --enable-demo-clients-install \
>> -                --disable-simple-egl-clients \
>>                   --disable-libunwind \
>>                   --disable-rpi-compositor \
>>                   --disable-rdp-compositor"
>> @@ -39,7 +38,7 @@ PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES',
>> 'wayland', 'kms fbdev way
>>   # Weston on KMS
>>   PACKAGECONFIG[kms] =
>> "--enable-drm-compositor,--disable-drm-compositor,drm udev virtual/mesa
>> mtdev"
>>   # Weston on Wayland (nested Weston)
>> -PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-egl
>> --disable-wayland-compositor,virtual/mesa"
>
>
> We need --disable-egl if wayland is not in DISTRO_FEATURES. See bug:
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=5867

As egl is not part of PACKAGECONFIG it will do the right thing, no?
Valentin Popa - March 28, 2014, 12:23 p.m.
On 03/27/2014 08:09 PM, Otavio Salvador wrote:
> On Thu, Mar 27, 2014 at 9:30 AM, Valentin Popa <valentin.popa@intel.com> wrote:
>> On 03/26/2014 11:07 PM, Otavio Salvador wrote:
>>> From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>
>>> Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
>>> ---
>>>    meta/recipes-graphics/wayland/weston_1.4.0.bb | 7 +++++--
>>>    1 file changed, 5 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>> b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>> index e0c354d..a41b5cd 100644
>>> --- a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>> +++ b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>> @@ -23,7 +23,6 @@ EXTRA_OECONF = "--enable-setuid-install \
>>>                    --enable-simple-clients \
>>>                    --enable-clients \
>>>                    --enable-demo-clients-install \
>>> -                --disable-simple-egl-clients \
>>>                    --disable-libunwind \
>>>                    --disable-rpi-compositor \
>>>                    --disable-rdp-compositor"
>>> @@ -39,7 +38,7 @@ PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES',
>>> 'wayland', 'kms fbdev way
>>>    # Weston on KMS
>>>    PACKAGECONFIG[kms] =
>>> "--enable-drm-compositor,--disable-drm-compositor,drm udev virtual/mesa
>>> mtdev"
>>>    # Weston on Wayland (nested Weston)
>>> -PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-egl
>>> --disable-wayland-compositor,virtual/mesa"
>>
>> We need --disable-egl if wayland is not in DISTRO_FEATURES. See bug:
>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=5867
> As egl is not part of PACKAGECONFIG it will do the right thing, no?
>

Yes, it will. My concerns are about --enable-drm-compositor (kms) 
without egl; I know that the user can pass at runtime the --use-pixman 
flag,  but I think it's more important to keep egl enabled by default in 
weston (this is probably the main "usecase" of wayland/weston). So if 
you enable egl, the bug will reproduce.
Otavio Salvador - March 28, 2014, 12:53 p.m.
On Fri, Mar 28, 2014 at 9:23 AM, Valentin Popa <valentin.popa@intel.com> wrote:
> On 03/27/2014 08:09 PM, Otavio Salvador wrote:
>>
>> On Thu, Mar 27, 2014 at 9:30 AM, Valentin Popa <valentin.popa@intel.com>
>> wrote:
>>>
>>> On 03/26/2014 11:07 PM, Otavio Salvador wrote:
>>>>
>>>> From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>
>>>> Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
>>>> ---
>>>>    meta/recipes-graphics/wayland/weston_1.4.0.bb | 7 +++++--
>>>>    1 file changed, 5 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>> b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>> index e0c354d..a41b5cd 100644
>>>> --- a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>> +++ b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>> @@ -23,7 +23,6 @@ EXTRA_OECONF = "--enable-setuid-install \
>>>>                    --enable-simple-clients \
>>>>                    --enable-clients \
>>>>                    --enable-demo-clients-install \
>>>> -                --disable-simple-egl-clients \
>>>>                    --disable-libunwind \
>>>>                    --disable-rpi-compositor \
>>>>                    --disable-rdp-compositor"
>>>> @@ -39,7 +38,7 @@ PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES',
>>>> 'wayland', 'kms fbdev way
>>>>    # Weston on KMS
>>>>    PACKAGECONFIG[kms] =
>>>> "--enable-drm-compositor,--disable-drm-compositor,drm udev virtual/mesa
>>>> mtdev"
>>>>    # Weston on Wayland (nested Weston)
>>>> -PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-egl
>>>> --disable-wayland-compositor,virtual/mesa"
>>>
>>>
>>> We need --disable-egl if wayland is not in DISTRO_FEATURES. See bug:
>>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=5867
>>
>> As egl is not part of PACKAGECONFIG it will do the right thing, no?
>>
>
> Yes, it will. My concerns are about --enable-drm-compositor (kms) without
> egl; I know that the user can pass at runtime the --use-pixman flag,  but I
> think it's more important to keep egl enabled by default in weston (this is
> probably the main "usecase" of wayland/weston). So if you enable egl, the
> bug will reproduce.

The PACKAGECONFIG is for flexibility and so we are using it here as it
is designed. I understand we still don't have a way to map config
dependencies but this is no excuse to say the patch is wrong or
inappropriate.

We are using this in the upcoming i.MX6 Wayland support we sent to
meta-fsl-arm and the only blocker is this patch be accepted.
Valentin Popa - March 28, 2014, 1:28 p.m.
On 03/28/2014 02:53 PM, Otavio Salvador wrote:
> On Fri, Mar 28, 2014 at 9:23 AM, Valentin Popa <valentin.popa@intel.com> wrote:
>> On 03/27/2014 08:09 PM, Otavio Salvador wrote:
>>> On Thu, Mar 27, 2014 at 9:30 AM, Valentin Popa <valentin.popa@intel.com>
>>> wrote:
>>>> On 03/26/2014 11:07 PM, Otavio Salvador wrote:
>>>>> From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>>
>>>>> Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
>>>>> ---
>>>>>     meta/recipes-graphics/wayland/weston_1.4.0.bb | 7 +++++--
>>>>>     1 file changed, 5 insertions(+), 2 deletions(-)
>>>>>
>>>>> diff --git a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>> b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>> index e0c354d..a41b5cd 100644
>>>>> --- a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>> +++ b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>> @@ -23,7 +23,6 @@ EXTRA_OECONF = "--enable-setuid-install \
>>>>>                     --enable-simple-clients \
>>>>>                     --enable-clients \
>>>>>                     --enable-demo-clients-install \
>>>>> -                --disable-simple-egl-clients \
>>>>>                     --disable-libunwind \
>>>>>                     --disable-rpi-compositor \
>>>>>                     --disable-rdp-compositor"
>>>>> @@ -39,7 +38,7 @@ PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES',
>>>>> 'wayland', 'kms fbdev way
>>>>>     # Weston on KMS
>>>>>     PACKAGECONFIG[kms] =
>>>>> "--enable-drm-compositor,--disable-drm-compositor,drm udev virtual/mesa
>>>>> mtdev"
>>>>>     # Weston on Wayland (nested Weston)
>>>>> -PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-egl
>>>>> --disable-wayland-compositor,virtual/mesa"
>>>>
>>>> We need --disable-egl if wayland is not in DISTRO_FEATURES. See bug:
>>>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=5867
>>> As egl is not part of PACKAGECONFIG it will do the right thing, no?
>>>
>> Yes, it will. My concerns are about --enable-drm-compositor (kms) without
>> egl; I know that the user can pass at runtime the --use-pixman flag,  but I
>> think it's more important to keep egl enabled by default in weston (this is
>> probably the main "usecase" of wayland/weston). So if you enable egl, the
>> bug will reproduce.
> The PACKAGECONFIG is for flexibility and so we are using it here as it
> is designed. I understand we still don't have a way to map config
> dependencies but this is no excuse to say the patch is wrong or
> inappropriate.
>
> We are using this in the upcoming i.MX6 Wayland support we sent to
> meta-fsl-arm and the only blocker is this patch be accepted.
>
The patch is not wrong, but disables egl. Looks good to me and if merged 
I'll submit a patch to add egl in PACKAGECONFIG.
Otavio Salvador - March 28, 2014, 1:35 p.m.
On Fri, Mar 28, 2014 at 10:28 AM, Valentin Popa <valentin.popa@intel.com> wrote:
> On 03/28/2014 02:53 PM, Otavio Salvador wrote:
>>
>> On Fri, Mar 28, 2014 at 9:23 AM, Valentin Popa <valentin.popa@intel.com>
>> wrote:
>>>
>>> On 03/27/2014 08:09 PM, Otavio Salvador wrote:
>>>>
>>>> On Thu, Mar 27, 2014 at 9:30 AM, Valentin Popa <valentin.popa@intel.com>
>>>> wrote:
>>>>>
>>>>> On 03/26/2014 11:07 PM, Otavio Salvador wrote:
>>>>>>
>>>>>> From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>>>
>>>>>> Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>>> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
>>>>>> ---
>>>>>>     meta/recipes-graphics/wayland/weston_1.4.0.bb | 7 +++++--
>>>>>>     1 file changed, 5 insertions(+), 2 deletions(-)
>>>>>>
>>>>>> diff --git a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>> b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>> index e0c354d..a41b5cd 100644
>>>>>> --- a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>> +++ b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>> @@ -23,7 +23,6 @@ EXTRA_OECONF = "--enable-setuid-install \
>>>>>>                     --enable-simple-clients \
>>>>>>                     --enable-clients \
>>>>>>                     --enable-demo-clients-install \
>>>>>> -                --disable-simple-egl-clients \
>>>>>>                     --disable-libunwind \
>>>>>>                     --disable-rpi-compositor \
>>>>>>                     --disable-rdp-compositor"
>>>>>> @@ -39,7 +38,7 @@ PACKAGECONFIG ??=
>>>>>> "${@base_contains('DISTRO_FEATURES',
>>>>>> 'wayland', 'kms fbdev way
>>>>>>     # Weston on KMS
>>>>>>     PACKAGECONFIG[kms] =
>>>>>> "--enable-drm-compositor,--disable-drm-compositor,drm udev
>>>>>> virtual/mesa
>>>>>> mtdev"
>>>>>>     # Weston on Wayland (nested Weston)
>>>>>> -PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-egl
>>>>>> --disable-wayland-compositor,virtual/mesa"
>>>>>
>>>>>
>>>>> We need --disable-egl if wayland is not in DISTRO_FEATURES. See bug:
>>>>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=5867
>>>>
>>>> As egl is not part of PACKAGECONFIG it will do the right thing, no?
>>>>
>>> Yes, it will. My concerns are about --enable-drm-compositor (kms) without
>>> egl; I know that the user can pass at runtime the --use-pixman flag,  but
>>> I
>>> think it's more important to keep egl enabled by default in weston (this
>>> is
>>> probably the main "usecase" of wayland/weston). So if you enable egl, the
>>> bug will reproduce.
>>
>> The PACKAGECONFIG is for flexibility and so we are using it here as it
>> is designed. I understand we still don't have a way to map config
>> dependencies but this is no excuse to say the patch is wrong or
>> inappropriate.
>>
>> We are using this in the upcoming i.MX6 Wayland support we sent to
>> meta-fsl-arm and the only blocker is this patch be accepted.
>>
> The patch is not wrong, but disables egl. Looks good to me and if merged
> I'll submit a patch to add egl in PACKAGECONFIG.

If you want, I can add the egl there, and send v2. That's easy.
Valentin Popa - March 28, 2014, 1:37 p.m.
On 03/28/2014 03:35 PM, Otavio Salvador wrote:
> On Fri, Mar 28, 2014 at 10:28 AM, Valentin Popa <valentin.popa@intel.com> wrote:
>> On 03/28/2014 02:53 PM, Otavio Salvador wrote:
>>> On Fri, Mar 28, 2014 at 9:23 AM, Valentin Popa <valentin.popa@intel.com>
>>> wrote:
>>>> On 03/27/2014 08:09 PM, Otavio Salvador wrote:
>>>>> On Thu, Mar 27, 2014 at 9:30 AM, Valentin Popa <valentin.popa@intel.com>
>>>>> wrote:
>>>>>> On 03/26/2014 11:07 PM, Otavio Salvador wrote:
>>>>>>> From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>>>>
>>>>>>> Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>>>> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
>>>>>>> ---
>>>>>>>      meta/recipes-graphics/wayland/weston_1.4.0.bb | 7 +++++--
>>>>>>>      1 file changed, 5 insertions(+), 2 deletions(-)
>>>>>>>
>>>>>>> diff --git a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>> b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>> index e0c354d..a41b5cd 100644
>>>>>>> --- a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>> +++ b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>> @@ -23,7 +23,6 @@ EXTRA_OECONF = "--enable-setuid-install \
>>>>>>>                      --enable-simple-clients \
>>>>>>>                      --enable-clients \
>>>>>>>                      --enable-demo-clients-install \
>>>>>>> -                --disable-simple-egl-clients \
>>>>>>>                      --disable-libunwind \
>>>>>>>                      --disable-rpi-compositor \
>>>>>>>                      --disable-rdp-compositor"
>>>>>>> @@ -39,7 +38,7 @@ PACKAGECONFIG ??=
>>>>>>> "${@base_contains('DISTRO_FEATURES',
>>>>>>> 'wayland', 'kms fbdev way
>>>>>>>      # Weston on KMS
>>>>>>>      PACKAGECONFIG[kms] =
>>>>>>> "--enable-drm-compositor,--disable-drm-compositor,drm udev
>>>>>>> virtual/mesa
>>>>>>> mtdev"
>>>>>>>      # Weston on Wayland (nested Weston)
>>>>>>> -PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-egl
>>>>>>> --disable-wayland-compositor,virtual/mesa"
>>>>>>
>>>>>> We need --disable-egl if wayland is not in DISTRO_FEATURES. See bug:
>>>>>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=5867
>>>>> As egl is not part of PACKAGECONFIG it will do the right thing, no?
>>>>>
>>>> Yes, it will. My concerns are about --enable-drm-compositor (kms) without
>>>> egl; I know that the user can pass at runtime the --use-pixman flag,  but
>>>> I
>>>> think it's more important to keep egl enabled by default in weston (this
>>>> is
>>>> probably the main "usecase" of wayland/weston). So if you enable egl, the
>>>> bug will reproduce.
>>> The PACKAGECONFIG is for flexibility and so we are using it here as it
>>> is designed. I understand we still don't have a way to map config
>>> dependencies but this is no excuse to say the patch is wrong or
>>> inappropriate.
>>>
>>> We are using this in the upcoming i.MX6 Wayland support we sent to
>>> meta-fsl-arm and the only blocker is this patch be accepted.
>>>
>> The patch is not wrong, but disables egl. Looks good to me and if merged
>> I'll submit a patch to add egl in PACKAGECONFIG.
> If you want, I can add the egl there, and send v2. That's easy.
>

That would be great. And don't forget to --disable-egl in case wayland 
is not in PACKAGECONFIG.
Thanks!
Otavio Salvador - March 28, 2014, 1:55 p.m.
On Fri, Mar 28, 2014 at 10:37 AM, Valentin Popa <valentin.popa@intel.com> wrote:
> On 03/28/2014 03:35 PM, Otavio Salvador wrote:
>>
>> On Fri, Mar 28, 2014 at 10:28 AM, Valentin Popa <valentin.popa@intel.com>
>> wrote:
>>>
>>> On 03/28/2014 02:53 PM, Otavio Salvador wrote:
>>>>
>>>> On Fri, Mar 28, 2014 at 9:23 AM, Valentin Popa <valentin.popa@intel.com>
>>>> wrote:
>>>>>
>>>>> On 03/27/2014 08:09 PM, Otavio Salvador wrote:
>>>>>>
>>>>>> On Thu, Mar 27, 2014 at 9:30 AM, Valentin Popa
>>>>>> <valentin.popa@intel.com>
>>>>>> wrote:
>>>>>>>
>>>>>>> On 03/26/2014 11:07 PM, Otavio Salvador wrote:
>>>>>>>>
>>>>>>>> From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>>>>>
>>>>>>>> Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>>>>> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
>>>>>>>> ---
>>>>>>>>      meta/recipes-graphics/wayland/weston_1.4.0.bb | 7 +++++--
>>>>>>>>      1 file changed, 5 insertions(+), 2 deletions(-)
>>>>>>>>
>>>>>>>> diff --git a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>> b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>> index e0c354d..a41b5cd 100644
>>>>>>>> --- a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>> +++ b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>> @@ -23,7 +23,6 @@ EXTRA_OECONF = "--enable-setuid-install \
>>>>>>>>                      --enable-simple-clients \
>>>>>>>>                      --enable-clients \
>>>>>>>>                      --enable-demo-clients-install \
>>>>>>>> -                --disable-simple-egl-clients \
>>>>>>>>                      --disable-libunwind \
>>>>>>>>                      --disable-rpi-compositor \
>>>>>>>>                      --disable-rdp-compositor"
>>>>>>>> @@ -39,7 +38,7 @@ PACKAGECONFIG ??=
>>>>>>>> "${@base_contains('DISTRO_FEATURES',
>>>>>>>> 'wayland', 'kms fbdev way
>>>>>>>>      # Weston on KMS
>>>>>>>>      PACKAGECONFIG[kms] =
>>>>>>>> "--enable-drm-compositor,--disable-drm-compositor,drm udev
>>>>>>>> virtual/mesa
>>>>>>>> mtdev"
>>>>>>>>      # Weston on Wayland (nested Weston)
>>>>>>>> -PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-egl
>>>>>>>> --disable-wayland-compositor,virtual/mesa"
>>>>>>>
>>>>>>>
>>>>>>> We need --disable-egl if wayland is not in DISTRO_FEATURES. See bug:
>>>>>>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=5867
>>>>>>
>>>>>> As egl is not part of PACKAGECONFIG it will do the right thing, no?
>>>>>>
>>>>> Yes, it will. My concerns are about --enable-drm-compositor (kms)
>>>>> without
>>>>> egl; I know that the user can pass at runtime the --use-pixman flag,
>>>>> but
>>>>> I
>>>>> think it's more important to keep egl enabled by default in weston
>>>>> (this
>>>>> is
>>>>> probably the main "usecase" of wayland/weston). So if you enable egl,
>>>>> the
>>>>> bug will reproduce.
>>>>
>>>> The PACKAGECONFIG is for flexibility and so we are using it here as it
>>>> is designed. I understand we still don't have a way to map config
>>>> dependencies but this is no excuse to say the patch is wrong or
>>>> inappropriate.
>>>>
>>>> We are using this in the upcoming i.MX6 Wayland support we sent to
>>>> meta-fsl-arm and the only blocker is this patch be accepted.
>>>>
>>> The patch is not wrong, but disables egl. Looks good to me and if merged
>>> I'll submit a patch to add egl in PACKAGECONFIG.
>>
>> If you want, I can add the egl there, and send v2. That's easy.
>
> That would be great. And don't forget to --disable-egl in case wayland is
> not in PACKAGECONFIG.

This is the point I don't agree. I think user needs to drop egl when
dropping wayland.
Carlos Rafael Giani - March 28, 2014, 1:58 p.m.
> If you want, I can add the egl there, and send v2. That's easy.
>> That would be great. And don't forget to --disable-egl in case wayland is
>> not in PACKAGECONFIG.
> This is the point I don't agree. I think user needs to drop egl when
> dropping wayland.
>


I concur. EGL is not just useful for Wayland.
Valentin Popa - March 28, 2014, 2:28 p.m.
On 03/28/2014 03:55 PM, Otavio Salvador wrote:
> On Fri, Mar 28, 2014 at 10:37 AM, Valentin Popa <valentin.popa@intel.com> wrote:
>> On 03/28/2014 03:35 PM, Otavio Salvador wrote:
>>> On Fri, Mar 28, 2014 at 10:28 AM, Valentin Popa <valentin.popa@intel.com>
>>> wrote:
>>>> On 03/28/2014 02:53 PM, Otavio Salvador wrote:
>>>>> On Fri, Mar 28, 2014 at 9:23 AM, Valentin Popa <valentin.popa@intel.com>
>>>>> wrote:
>>>>>> On 03/27/2014 08:09 PM, Otavio Salvador wrote:
>>>>>>> On Thu, Mar 27, 2014 at 9:30 AM, Valentin Popa
>>>>>>> <valentin.popa@intel.com>
>>>>>>> wrote:
>>>>>>>> On 03/26/2014 11:07 PM, Otavio Salvador wrote:
>>>>>>>>> From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>>>>>>
>>>>>>>>> Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>>>>>> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
>>>>>>>>> ---
>>>>>>>>>       meta/recipes-graphics/wayland/weston_1.4.0.bb | 7 +++++--
>>>>>>>>>       1 file changed, 5 insertions(+), 2 deletions(-)
>>>>>>>>>
>>>>>>>>> diff --git a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>>> b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>>> index e0c354d..a41b5cd 100644
>>>>>>>>> --- a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>>> +++ b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>>> @@ -23,7 +23,6 @@ EXTRA_OECONF = "--enable-setuid-install \
>>>>>>>>>                       --enable-simple-clients \
>>>>>>>>>                       --enable-clients \
>>>>>>>>>                       --enable-demo-clients-install \
>>>>>>>>> -                --disable-simple-egl-clients \
>>>>>>>>>                       --disable-libunwind \
>>>>>>>>>                       --disable-rpi-compositor \
>>>>>>>>>                       --disable-rdp-compositor"
>>>>>>>>> @@ -39,7 +38,7 @@ PACKAGECONFIG ??=
>>>>>>>>> "${@base_contains('DISTRO_FEATURES',
>>>>>>>>> 'wayland', 'kms fbdev way
>>>>>>>>>       # Weston on KMS
>>>>>>>>>       PACKAGECONFIG[kms] =
>>>>>>>>> "--enable-drm-compositor,--disable-drm-compositor,drm udev
>>>>>>>>> virtual/mesa
>>>>>>>>> mtdev"
>>>>>>>>>       # Weston on Wayland (nested Weston)
>>>>>>>>> -PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-egl
>>>>>>>>> --disable-wayland-compositor,virtual/mesa"
>>>>>>>>
>>>>>>>> We need --disable-egl if wayland is not in DISTRO_FEATURES. See bug:
>>>>>>>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=5867
>>>>>>> As egl is not part of PACKAGECONFIG it will do the right thing, no?
>>>>>>>
>>>>>> Yes, it will. My concerns are about --enable-drm-compositor (kms)
>>>>>> without
>>>>>> egl; I know that the user can pass at runtime the --use-pixman flag,
>>>>>> but
>>>>>> I
>>>>>> think it's more important to keep egl enabled by default in weston
>>>>>> (this
>>>>>> is
>>>>>> probably the main "usecase" of wayland/weston). So if you enable egl,
>>>>>> the
>>>>>> bug will reproduce.
>>>>> The PACKAGECONFIG is for flexibility and so we are using it here as it
>>>>> is designed. I understand we still don't have a way to map config
>>>>> dependencies but this is no excuse to say the patch is wrong or
>>>>> inappropriate.
>>>>>
>>>>> We are using this in the upcoming i.MX6 Wayland support we sent to
>>>>> meta-fsl-arm and the only blocker is this patch be accepted.
>>>>>
>>>> The patch is not wrong, but disables egl. Looks good to me and if merged
>>>> I'll submit a patch to add egl in PACKAGECONFIG.
>>> If you want, I can add the egl there, and send v2. That's easy.
>> That would be great. And don't forget to --disable-egl in case wayland is
>> not in PACKAGECONFIG.
> This is the point I don't agree. I think user needs to drop egl when
> dropping wayland.
>
Makes sens. So you need:
PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'wayland', 'egl 
kms fbdev wayland', '', d)} \
Otavio Salvador - March 28, 2014, 3 p.m.
On Fri, Mar 28, 2014 at 11:28 AM, Valentin Popa <valentin.popa@intel.com> wrote:
> On 03/28/2014 03:55 PM, Otavio Salvador wrote:
>>
>> On Fri, Mar 28, 2014 at 10:37 AM, Valentin Popa <valentin.popa@intel.com>
>> wrote:
>>>
>>> On 03/28/2014 03:35 PM, Otavio Salvador wrote:
>>>>
>>>> On Fri, Mar 28, 2014 at 10:28 AM, Valentin Popa
>>>> <valentin.popa@intel.com>
>>>> wrote:
>>>>>
>>>>> On 03/28/2014 02:53 PM, Otavio Salvador wrote:
>>>>>>
>>>>>> On Fri, Mar 28, 2014 at 9:23 AM, Valentin Popa
>>>>>> <valentin.popa@intel.com>
>>>>>> wrote:
>>>>>>>
>>>>>>> On 03/27/2014 08:09 PM, Otavio Salvador wrote:
>>>>>>>>
>>>>>>>> On Thu, Mar 27, 2014 at 9:30 AM, Valentin Popa
>>>>>>>> <valentin.popa@intel.com>
>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> On 03/26/2014 11:07 PM, Otavio Salvador wrote:
>>>>>>>>>>
>>>>>>>>>> From: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>>>>>>>
>>>>>>>>>> Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@freescale.com>
>>>>>>>>>> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
>>>>>>>>>> ---
>>>>>>>>>>       meta/recipes-graphics/wayland/weston_1.4.0.bb | 7 +++++--
>>>>>>>>>>       1 file changed, 5 insertions(+), 2 deletions(-)
>>>>>>>>>>
>>>>>>>>>> diff --git a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>>>> b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>>>> index e0c354d..a41b5cd 100644
>>>>>>>>>> --- a/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>>>> +++ b/meta/recipes-graphics/wayland/weston_1.4.0.bb
>>>>>>>>>> @@ -23,7 +23,6 @@ EXTRA_OECONF = "--enable-setuid-install \
>>>>>>>>>>                       --enable-simple-clients \
>>>>>>>>>>                       --enable-clients \
>>>>>>>>>>                       --enable-demo-clients-install \
>>>>>>>>>> -                --disable-simple-egl-clients \
>>>>>>>>>>                       --disable-libunwind \
>>>>>>>>>>                       --disable-rpi-compositor \
>>>>>>>>>>                       --disable-rdp-compositor"
>>>>>>>>>> @@ -39,7 +38,7 @@ PACKAGECONFIG ??=
>>>>>>>>>> "${@base_contains('DISTRO_FEATURES',
>>>>>>>>>> 'wayland', 'kms fbdev way
>>>>>>>>>>       # Weston on KMS
>>>>>>>>>>       PACKAGECONFIG[kms] =
>>>>>>>>>> "--enable-drm-compositor,--disable-drm-compositor,drm udev
>>>>>>>>>> virtual/mesa
>>>>>>>>>> mtdev"
>>>>>>>>>>       # Weston on Wayland (nested Weston)
>>>>>>>>>> -PACKAGECONFIG[wayland] =
>>>>>>>>>> "--enable-wayland-compositor,--disable-egl
>>>>>>>>>> --disable-wayland-compositor,virtual/mesa"
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> We need --disable-egl if wayland is not in DISTRO_FEATURES. See
>>>>>>>>> bug:
>>>>>>>>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=5867
>>>>>>>>
>>>>>>>> As egl is not part of PACKAGECONFIG it will do the right thing, no?
>>>>>>>>
>>>>>>> Yes, it will. My concerns are about --enable-drm-compositor (kms)
>>>>>>> without
>>>>>>> egl; I know that the user can pass at runtime the --use-pixman flag,
>>>>>>> but
>>>>>>> I
>>>>>>> think it's more important to keep egl enabled by default in weston
>>>>>>> (this
>>>>>>> is
>>>>>>> probably the main "usecase" of wayland/weston). So if you enable egl,
>>>>>>> the
>>>>>>> bug will reproduce.
>>>>>>
>>>>>> The PACKAGECONFIG is for flexibility and so we are using it here as it
>>>>>> is designed. I understand we still don't have a way to map config
>>>>>> dependencies but this is no excuse to say the patch is wrong or
>>>>>> inappropriate.
>>>>>>
>>>>>> We are using this in the upcoming i.MX6 Wayland support we sent to
>>>>>> meta-fsl-arm and the only blocker is this patch be accepted.
>>>>>>
>>>>> The patch is not wrong, but disables egl. Looks good to me and if
>>>>> merged
>>>>> I'll submit a patch to add egl in PACKAGECONFIG.
>>>>
>>>> If you want, I can add the egl there, and send v2. That's easy.
>>>
>>> That would be great. And don't forget to --disable-egl in case wayland is
>>> not in PACKAGECONFIG.
>>
>> This is the point I don't agree. I think user needs to drop egl when
>> dropping wayland.
>>
> Makes sens. So you need:
> PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'wayland', 'egl kms
> fbdev wayland', '', d)} \

I sent the v2; please take a look there.

Patch

diff --git a/meta/recipes-graphics/wayland/weston_1.4.0.bb b/meta/recipes-graphics/wayland/weston_1.4.0.bb
index e0c354d..a41b5cd 100644
--- a/meta/recipes-graphics/wayland/weston_1.4.0.bb
+++ b/meta/recipes-graphics/wayland/weston_1.4.0.bb
@@ -23,7 +23,6 @@  EXTRA_OECONF = "--enable-setuid-install \
                 --enable-simple-clients \
                 --enable-clients \
                 --enable-demo-clients-install \
-                --disable-simple-egl-clients \
                 --disable-libunwind \
                 --disable-rpi-compositor \
                 --disable-rdp-compositor"
@@ -39,7 +38,7 @@  PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'wayland', 'kms fbdev way
 # Weston on KMS
 PACKAGECONFIG[kms] = "--enable-drm-compositor,--disable-drm-compositor,drm udev virtual/mesa mtdev"
 # Weston on Wayland (nested Weston)
-PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-egl --disable-wayland-compositor,virtual/mesa"
+PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-wayland-compositor,virtual/mesa"
 # Weston on X11
 PACKAGECONFIG[x11] = "--enable-x11-compositor,--disable-x11-compositor,virtual/libx11 libxcb libxcb libxcursor cairo"
 # Headless Weston
@@ -50,6 +49,10 @@  PACKAGECONFIG[fbdev] = "--enable-fbdev-compositor,--disable-fbdev-compositor,ude
 PACKAGECONFIG[launch] = "--enable-weston-launch,--disable-weston-launch,libpam drm"
 # VA-API desktop recorder
 PACKAGECONFIG[vaapi] = "--enable-vaapi-recorder,--disable-vaapi-recorder,libva"
+# Weston with EGL support
+PACKAGECONFIG[egl] = "--enable-egl --enable-simple-egl-clients,--disable-egl --disable-simple-egl-clients,virtual/egl"
+# Weston with cairo glesv2 support
+PACKAGECONFIG[cairo-glesv2] = "--with-cairo-glesv2,--with-cairo=image,cairo"
 
 do_install_append() {
 	# Weston doesn't need the .la files to load modules, so wipe them