Patchwork [meta-fsl-arm,1/2] mesa: Update to follow OE-Core changes

login
register
mail settings
Submitter Otavio Salvador
Date Feb. 21, 2014, 9:54 p.m.
Message ID <1393019695-29636-2-git-send-email-otavio@ossystems.com.br>
Download mbox | patch
Permalink /patch/67133/
State Changes Requested
Delegated to: Otavio Salvador
Headers show

Comments

Otavio Salvador - Feb. 21, 2014, 9:54 p.m.
This updates the bbappend to the newer version; as mesa now provides
the needed PACKAGECONFIG settings we rely on this instead of using an
annonymous Python code to change it during build time.

The bbappend file now is much easier to read.

Change-Id: Ie7b6027462f458d139d0561e737b254dd8b07653
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
---
 recipes-graphics/mesa/mesa_%.bbappend     |  5 ++++
 recipes-graphics/mesa/mesa_9.2.2.bbappend | 40 -------------------------------
 2 files changed, 5 insertions(+), 40 deletions(-)
 create mode 100644 recipes-graphics/mesa/mesa_%.bbappend
 delete mode 100644 recipes-graphics/mesa/mesa_9.2.2.bbappend
John Weber - Feb. 22, 2014, 4:13 p.m.
On 2/21/14, 3:54 PM, Otavio Salvador wrote:
> This updates the bbappend to the newer version; as mesa now provides
> the needed PACKAGECONFIG settings we rely on this instead of using an
> annonymous Python code to change it during build time.
>
> The bbappend file now is much easier to read.

Thanks Otavio - I'm really glad you were able to free up some time to work on 
this.  As master changes, it's clear that it takes a lot of work to keep up with it.

I applied both patches and ran into a snag.  I'm deleting the tmp and 
rebuilding, but here is what I'm seeing:

WARNING: libgl-mesa-9.2.5 was registered as shlib provider for libGL.so.1, 
changing it to libgl-mx6-3.10.9-1.0.0-hfp because it was built later

That is followed by a pretty unspecific error during the do_rootfs task.  
Looking into the task log, this is the error that seems to indicate the source 
of failure:

error: file /usr/lib/libGL.so.1.2.0 conflicts between attempted installs of 
libgl-mx6-3.10.9+1.0.0+hfp-r0.cortexa9hf_vfp_neon_mx6 and 
libgl-mesa-9.2.5-r0.cortexa9hf_vfp_neon_mx6




>
> Change-Id: Ie7b6027462f458d139d0561e737b254dd8b07653
> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
> ---
>   recipes-graphics/mesa/mesa_%.bbappend     |  5 ++++
>   recipes-graphics/mesa/mesa_9.2.2.bbappend | 40 -------------------------------
>   2 files changed, 5 insertions(+), 40 deletions(-)
>   create mode 100644 recipes-graphics/mesa/mesa_%.bbappend
>   delete mode 100644 recipes-graphics/mesa/mesa_9.2.2.bbappend
>
> diff --git a/recipes-graphics/mesa/mesa_%.bbappend b/recipes-graphics/mesa/mesa_%.bbappend
> new file mode 100644
> index 0000000..8dca313
> --- /dev/null
> +++ b/recipes-graphics/mesa/mesa_%.bbappend
> @@ -0,0 +1,5 @@
> +PACKAGECONFIG_remove_mx5 = "egl gles"
> +PROVIDES_remove_mx5 = "virtual/libgles1 virtual/libgles2 virtual/egl"
> +
> +PACKAGECONFIG_remove_mx6 = "egl gles"
> +PROVIDES_remove_mx6 = "virtual/libgl virtual/libgles1 virtual/libgles2 virtual/egl"
> diff --git a/recipes-graphics/mesa/mesa_9.2.2.bbappend b/recipes-graphics/mesa/mesa_9.2.2.bbappend
> deleted file mode 100644
> index 9975abc..0000000
> --- a/recipes-graphics/mesa/mesa_9.2.2.bbappend
> +++ /dev/null
> @@ -1,40 +0,0 @@
> -# FIXME: We may need to disable EGL, GL ES1 and GL ES2
> -python __anonymous () {
> -    import re
> -
> -    # SoC families to work on
> -    families = ['mx5', 'mx6']
> -    cur_soc_families = d.getVar('SOC_FAMILY', True)
> -    if cur_soc_families and \
> -        any(map(lambda x: x in cur_soc_families.split(':'), families)):
> -        # Remove egl gles1 and gles2 configure options
> -        extra_oeconf = d.getVar('EXTRA_OECONF', True).split()
> -        take_out = ['--enable-egl', '--enable-gles1', '--enable-gles2']
> -        put_in = ['--disable-egl', '--disable-gles1', '--disable-gles2']
> -        pattern = re.compile("--with-egl-platforms")
> -        new_extra_oeconf = []
> -        for i in extra_oeconf:
> -            if i not in take_out and not pattern.match(i):
> -                new_extra_oeconf.append(i)
> -        for i in put_in:
> -            new_extra_oeconf.append(i)
> -
> -        d.setVar('EXTRA_OECONF', ' '.join(new_extra_oeconf))
> -
> -        # Remove itens from provides
> -        provides = d.getVar('PROVIDES', True).split()
> -        take_out = ['virtual/libgles1', 'virtual/libgles2', 'virtual/egl']
> -        if 'mx6' in cur_soc_families.split(':'):
> -            take_out.append('virtual/libgl')
> -        new_provides = []
> -        for i in provides:
> -            if i not in take_out:
> -                new_provides.append(i)
> -
> -        d.setVar('PROVIDES', ' '.join(new_provides))
> -}
> -
> -# FIXME: Dirty hack to allow use of Vivante GPU libGL binary
> -do_install_append_mx6 () {
> -    rm -f ${D}${libdir}/libGL.*
> -}
Otavio Salvador - Feb. 22, 2014, 5:46 p.m.
Hello John,

On Sat, Feb 22, 2014 at 1:13 PM, John Weber <rjohnweber@gmail.com> wrote:
> On 2/21/14, 3:54 PM, Otavio Salvador wrote:
>>
>> This updates the bbappend to the newer version; as mesa now provides
>> the needed PACKAGECONFIG settings we rely on this instead of using an
>> annonymous Python code to change it during build time.
>>
>> The bbappend file now is much easier to read.
>
>
> Thanks Otavio - I'm really glad you were able to free up some time to work
> on this.  As master changes, it's clear that it takes a lot of work to keep
> up with it.
>
> I applied both patches and ran into a snag.  I'm deleting the tmp and
> rebuilding, but here is what I'm seeing:
>
> WARNING: libgl-mesa-9.2.5 was registered as shlib provider for libGL.so.1,
> changing it to libgl-mx6-3.10.9-1.0.0-hfp because it was built later
>
> That is followed by a pretty unspecific error during the do_rootfs task.
> Looking into the task log, this is the error that seems to indicate the
> source of failure:
>
> error: file /usr/lib/libGL.so.1.2.0 conflicts between attempted installs of
> libgl-mx6-3.10.9+1.0.0+hfp-r0.cortexa9hf_vfp_neon_mx6 and
> libgl-mesa-9.2.5-r0.cortexa9hf_vfp_neon_mx6

I must have missed this as I didn't spot this issue while testing.
Please add following block of code below the bbappend and confirm it
works for you.

# FIXME: Dirty hack to allow use of Vivante GPU libGL binary
do_install_append_mx6 () {
    rm -f ${D}${libdir}/libGL.*
}

Thanks for reporting this issue.
John Weber - Feb. 22, 2014, 7:32 p.m.
Hi Otavio,

On 2/22/14, 11:46 AM, Otavio Salvador wrote:
> Hello John,
>
> On Sat, Feb 22, 2014 at 1:13 PM, John Weber <rjohnweber@gmail.com> wrote:
>> On 2/21/14, 3:54 PM, Otavio Salvador wrote:
>>> This updates the bbappend to the newer version; as mesa now provides
>>> the needed PACKAGECONFIG settings we rely on this instead of using an
>>> annonymous Python code to change it during build time.
>>>
>>> The bbappend file now is much easier to read.
>>
>> Thanks Otavio - I'm really glad you were able to free up some time to work
>> on this.  As master changes, it's clear that it takes a lot of work to keep
>> up with it.
>>
>> I applied both patches and ran into a snag.  I'm deleting the tmp and
>> rebuilding, but here is what I'm seeing:
>>
>> WARNING: libgl-mesa-9.2.5 was registered as shlib provider for libGL.so.1,
>> changing it to libgl-mx6-3.10.9-1.0.0-hfp because it was built later
>>
>> That is followed by a pretty unspecific error during the do_rootfs task.
>> Looking into the task log, this is the error that seems to indicate the
>> source of failure:
>>
>> error: file /usr/lib/libGL.so.1.2.0 conflicts between attempted installs of
>> libgl-mx6-3.10.9+1.0.0+hfp-r0.cortexa9hf_vfp_neon_mx6 and
>> libgl-mesa-9.2.5-r0.cortexa9hf_vfp_neon_mx6
> I must have missed this as I didn't spot this issue while testing.
> Please add following block of code below the bbappend and confirm it
> works for you.
>
> # FIXME: Dirty hack to allow use of Vivante GPU libGL binary
> do_install_append_mx6 () {
>      rm -f ${D}${libdir}/libGL.*
> }
>
> Thanks for reporting this issue.
>
Thanks for helping to solve it.  This fixed the issue with generating the 
rootfs.  Thanks!
Otavio Salvador - Feb. 23, 2014, 1:25 p.m.
Hello John,

On Sat, Feb 22, 2014 at 4:32 PM, John Weber <rjohnweber@gmail.com> wrote:
> On 2/22/14, 11:46 AM, Otavio Salvador wrote:
>>
>> Hello John,
>>
>> On Sat, Feb 22, 2014 at 1:13 PM, John Weber <rjohnweber@gmail.com> wrote:
>>>
>>> On 2/21/14, 3:54 PM, Otavio Salvador wrote:
>>>>
>>>> This updates the bbappend to the newer version; as mesa now provides
>>>> the needed PACKAGECONFIG settings we rely on this instead of using an
>>>> annonymous Python code to change it during build time.
>>>>
>>>> The bbappend file now is much easier to read.
>>>
>>>
>>> Thanks Otavio - I'm really glad you were able to free up some time to
>>> work
>>> on this.  As master changes, it's clear that it takes a lot of work to
>>> keep
>>> up with it.
>>>
>>> I applied both patches and ran into a snag.  I'm deleting the tmp and
>>> rebuilding, but here is what I'm seeing:
>>>
>>> WARNING: libgl-mesa-9.2.5 was registered as shlib provider for
>>> libGL.so.1,
>>> changing it to libgl-mx6-3.10.9-1.0.0-hfp because it was built later
>>>
>>> That is followed by a pretty unspecific error during the do_rootfs task.
>>> Looking into the task log, this is the error that seems to indicate the
>>> source of failure:
>>>
>>> error: file /usr/lib/libGL.so.1.2.0 conflicts between attempted installs
>>> of
>>> libgl-mx6-3.10.9+1.0.0+hfp-r0.cortexa9hf_vfp_neon_mx6 and
>>> libgl-mesa-9.2.5-r0.cortexa9hf_vfp_neon_mx6
>>
>> I must have missed this as I didn't spot this issue while testing.
>> Please add following block of code below the bbappend and confirm it
>> works for you.
>>
>> # FIXME: Dirty hack to allow use of Vivante GPU libGL binary
>> do_install_append_mx6 () {
>>      rm -f ${D}${libdir}/libGL.*
>> }
>>
>> Thanks for reporting this issue.
>>
> Thanks for helping to solve it.  This fixed the issue with generating the
> rootfs.  Thanks!

I sent a v2.

Patch

diff --git a/recipes-graphics/mesa/mesa_%.bbappend b/recipes-graphics/mesa/mesa_%.bbappend
new file mode 100644
index 0000000..8dca313
--- /dev/null
+++ b/recipes-graphics/mesa/mesa_%.bbappend
@@ -0,0 +1,5 @@ 
+PACKAGECONFIG_remove_mx5 = "egl gles"
+PROVIDES_remove_mx5 = "virtual/libgles1 virtual/libgles2 virtual/egl"
+
+PACKAGECONFIG_remove_mx6 = "egl gles"
+PROVIDES_remove_mx6 = "virtual/libgl virtual/libgles1 virtual/libgles2 virtual/egl"
diff --git a/recipes-graphics/mesa/mesa_9.2.2.bbappend b/recipes-graphics/mesa/mesa_9.2.2.bbappend
deleted file mode 100644
index 9975abc..0000000
--- a/recipes-graphics/mesa/mesa_9.2.2.bbappend
+++ /dev/null
@@ -1,40 +0,0 @@ 
-# FIXME: We may need to disable EGL, GL ES1 and GL ES2
-python __anonymous () {
-    import re
-
-    # SoC families to work on
-    families = ['mx5', 'mx6']
-    cur_soc_families = d.getVar('SOC_FAMILY', True)
-    if cur_soc_families and \
-        any(map(lambda x: x in cur_soc_families.split(':'), families)):
-        # Remove egl gles1 and gles2 configure options
-        extra_oeconf = d.getVar('EXTRA_OECONF', True).split()
-        take_out = ['--enable-egl', '--enable-gles1', '--enable-gles2']
-        put_in = ['--disable-egl', '--disable-gles1', '--disable-gles2']
-        pattern = re.compile("--with-egl-platforms")
-        new_extra_oeconf = []
-        for i in extra_oeconf:
-            if i not in take_out and not pattern.match(i):
-                new_extra_oeconf.append(i)
-        for i in put_in:
-            new_extra_oeconf.append(i)
-
-        d.setVar('EXTRA_OECONF', ' '.join(new_extra_oeconf))
-
-        # Remove itens from provides
-        provides = d.getVar('PROVIDES', True).split()
-        take_out = ['virtual/libgles1', 'virtual/libgles2', 'virtual/egl']
-        if 'mx6' in cur_soc_families.split(':'):
-            take_out.append('virtual/libgl')
-        new_provides = []
-        for i in provides:
-            if i not in take_out:
-                new_provides.append(i)
-
-        d.setVar('PROVIDES', ' '.join(new_provides))
-}
-
-# FIXME: Dirty hack to allow use of Vivante GPU libGL binary
-do_install_append_mx6 () {
-    rm -f ${D}${libdir}/libGL.*
-}