Patchwork [meta-fsl-arm] gpu-viv-bin-mx6q: Adding support to install Wayland GPU libs

login
register
mail settings
Submitter Abhijit Potnis
Date July 19, 2013, 11:47 a.m.
Message ID <1374234430-8236-1-git-send-email-abhijitpotnis@gmail.com>
Download mbox | patch
Permalink /patch/54061/
State Changes Requested
Delegated to: Otavio Salvador
Headers show

Comments

Abhijit Potnis - July 19, 2013, 11:47 a.m.
This patch installs wayland GPU libs if the DISTRO_FEATURES contains
wayland variable. If both X11 and wayland are present in DISTRO_FEATURES
then wayland is picked as the default backend.

Signed-off-by: Abhijit Potnis <abhijitpotnis@gmail.com>
---
 .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc          |   41 ++++++++++++++++----
 .../gpu-viv-bin-mx6q/gc_wayland_protocol.pc        |   10 +++++
 .../gpu-viv-bin-mx6q/wayland-egl.pc                |   10 +++++
 .../gpu-viv-bin-mx6q/wayland-viv.pc                |   10 +++++
 4 files changed, 63 insertions(+), 8 deletions(-)
 create mode 100644 recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_wayland_protocol.pc
 create mode 100644 recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-egl.pc
 create mode 100644 recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-viv.pc
Otavio Salvador - July 19, 2013, 4:34 p.m.
Hello Abhijit,

On Fri, Jul 19, 2013 at 8:47 AM, Abhijit Potnis <abhijitpotnis@gmail.com> wrote:
> This patch installs wayland GPU libs if the DISTRO_FEATURES contains
> wayland variable. If both X11 and wayland are present in DISTRO_FEATURES
> then wayland is picked as the default backend.
>
> Signed-off-by: Abhijit Potnis <abhijitpotnis@gmail.com>

Please check the comments below ...

> ---
>  .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc          |   41 ++++++++++++++++----
>  .../gpu-viv-bin-mx6q/gc_wayland_protocol.pc        |   10 +++++
>  .../gpu-viv-bin-mx6q/wayland-egl.pc                |   10 +++++
>  .../gpu-viv-bin-mx6q/wayland-viv.pc                |   10 +++++
>  4 files changed, 63 insertions(+), 8 deletions(-)
>  create mode 100644 recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_wayland_protocol.pc
>  create mode 100644 recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-egl.pc
>  create mode 100644 recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-viv.pc
>
> diff --git a/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
> index 3354854..1c96347 100644
> --- a/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
> +++ b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
> @@ -7,9 +7,9 @@ SECTION = "libs"
>  LICENSE = "Proprietary"
>  LIC_FILES_CHKSUM = "file://usr/include/gc_vdk.h;endline=11;md5=19f5925343fa3da65596eeaa4ddb5fd3"
>  DEPENDS += "${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxdamage libxext libxfixes', '', d)} mesa"
> -PROVIDES += "virtual/libgl virtual/libgal-x11 virtual/egl virtual/libgles1 virtual/libgles2"
> +PROVIDES += "virtual/wayland-egl virtual/libgl virtual/libgal-x11 virtual/egl virtual/libgles1 virtual/libgles2"
>
> -INC_PR = "r5"
> +INC_PR = "r6"

Don't change PR as it is not need anymore.

>  inherit fsl-eula-unpack
>
> @@ -23,6 +23,9 @@ SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true \
>             file://glesv1_cm_x11.pc \
>             file://glesv2.pc \
>             file://glesv2_x11.pc \
> +           file://gc_wayland_protocol.pc \
> +           file://wayland-egl.pc \
> +           file://wayland-viv.pc \
>            "
>
>  PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \
> @@ -37,10 +40,14 @@ PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \
>         libgal-mx6 libgal-mx6-dev libgal-mx6-dbg \
>         libvivante-mx6 libvivante-mx6-dev libvivante-mx6-dbg \
>         libvivante-dri-mx6 \
> +       libwayland-viv-mx6 libwayland-viv-mx6-dev libwayland-viv-mx6-dbg \
> +       libgc_wayland_protocol-mx6 libgc_wayland_protocol-mx6-dev libgc_wayland_protocol-mx6-dbg \
> +       libwayland-egl-mx6-dev \
>  "

Use libgc-wayland-protocol-mx6 libgc-wayland-protocol-mx6-dev
libgc-wayland-protocol-mx6-dbg

>  USE_X11 = "${@base_contains("DISTRO_FEATURES", "x11", "yes", "no", d)}"
>  USE_DFB = "${@base_contains("DISTRO_FEATURES", "directfb", "yes", "no", d)}"
> +USE_WL = "${@base_contains("DISTRO_FEATURES", "wayland", "yes", "no", d)}"
>
>  # Inhibit warnings about files being stripped.
>  INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
> @@ -67,13 +74,19 @@ do_install () {
>      cp -axr ${S}/opt ${D}
>
>      install -d ${D}${libdir}/pkgconfig
> +
> +#If both X11 and Wayland are set in DISTRO_FEATURES then use Wayland as base window system
> +    if [ "${USE_WL}" = "yes" ]; then
> +        backend=wl

It seems wl can be used side by side with X11, can you test this?

--
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://projetos.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750
Fabio Estevam - July 19, 2013, 4:35 p.m.
On Fri, Jul 19, 2013 at 1:34 PM, Otavio Salvador
<otavio@ossystems.com.br> wrote:

>> -INC_PR = "r5"
>> +INC_PR = "r6"
>
> Don't change PR as it is not need anymore.

Should we then remove INC_PR?
Otavio Salvador - July 19, 2013, 4:36 p.m.
On Fri, Jul 19, 2013 at 1:35 PM, Fabio Estevam <festevam@gmail.com> wrote:
> On Fri, Jul 19, 2013 at 1:34 PM, Otavio Salvador
> <otavio@ossystems.com.br> wrote:
>
>>> -INC_PR = "r5"
>>> +INC_PR = "r6"
>>
>> Don't change PR as it is not need anymore.
>
> Should we then remove INC_PR?

Only when adding a new version or it goes backwards.

--
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://projetos.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750
Abhijit Potnis - July 19, 2013, 6:54 p.m.
Hello Otavio,

Thanks. I shall test the wl - x11 combined setup, and re-submit the patch
with the changes mentioned in comments.

Regards,
-Abhijit


On Fri, Jul 19, 2013 at 9:34 AM, Otavio Salvador <otavio@ossystems.com.br>wrote:

> Hello Abhijit,
>
> On Fri, Jul 19, 2013 at 8:47 AM, Abhijit Potnis <abhijitpotnis@gmail.com>
> wrote:
> > This patch installs wayland GPU libs if the DISTRO_FEATURES contains
> > wayland variable. If both X11 and wayland are present in DISTRO_FEATURES
> > then wayland is picked as the default backend.
> >
> > Signed-off-by: Abhijit Potnis <abhijitpotnis@gmail.com>
>
> Please check the comments below ...
>
> > ---
> >  .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc          |   41
> ++++++++++++++++----
> >  .../gpu-viv-bin-mx6q/gc_wayland_protocol.pc        |   10 +++++
> >  .../gpu-viv-bin-mx6q/wayland-egl.pc                |   10 +++++
> >  .../gpu-viv-bin-mx6q/wayland-viv.pc                |   10 +++++
> >  4 files changed, 63 insertions(+), 8 deletions(-)
> >  create mode 100644
> recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_wayland_protocol.pc
> >  create mode 100644
> recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-egl.pc
> >  create mode 100644
> recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-viv.pc
> >
> > diff --git a/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
> b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
> > index 3354854..1c96347 100644
> > --- a/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
> > +++ b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
> > @@ -7,9 +7,9 @@ SECTION = "libs"
> >  LICENSE = "Proprietary"
> >  LIC_FILES_CHKSUM =
> "file://usr/include/gc_vdk.h;endline=11;md5=19f5925343fa3da65596eeaa4ddb5fd3"
> >  DEPENDS += "${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11
> libxdamage libxext libxfixes', '', d)} mesa"
> > -PROVIDES += "virtual/libgl virtual/libgal-x11 virtual/egl
> virtual/libgles1 virtual/libgles2"
> > +PROVIDES += "virtual/wayland-egl virtual/libgl virtual/libgal-x11
> virtual/egl virtual/libgles1 virtual/libgles2"
> >
> > -INC_PR = "r5"
> > +INC_PR = "r6"
>
> Don't change PR as it is not need anymore.
>
> >  inherit fsl-eula-unpack
> >
> > @@ -23,6 +23,9 @@ SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true
> \
> >             file://glesv1_cm_x11.pc \
> >             file://glesv2.pc \
> >             file://glesv2_x11.pc \
> > +           file://gc_wayland_protocol.pc \
> > +           file://wayland-egl.pc \
> > +           file://wayland-viv.pc \
> >            "
> >
> >  PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \
> > @@ -37,10 +40,14 @@ PACKAGES =+ "libclc-mx6 libclc-mx6-dev
> libclc-mx6-dbg \
> >         libgal-mx6 libgal-mx6-dev libgal-mx6-dbg \
> >         libvivante-mx6 libvivante-mx6-dev libvivante-mx6-dbg \
> >         libvivante-dri-mx6 \
> > +       libwayland-viv-mx6 libwayland-viv-mx6-dev libwayland-viv-mx6-dbg
> \
> > +       libgc_wayland_protocol-mx6 libgc_wayland_protocol-mx6-dev
> libgc_wayland_protocol-mx6-dbg \
> > +       libwayland-egl-mx6-dev \
> >  "
>
> Use libgc-wayland-protocol-mx6 libgc-wayland-protocol-mx6-dev
> libgc-wayland-protocol-mx6-dbg
>
> >  USE_X11 = "${@base_contains("DISTRO_FEATURES", "x11", "yes", "no", d)}"
> >  USE_DFB = "${@base_contains("DISTRO_FEATURES", "directfb", "yes", "no",
> d)}"
> > +USE_WL = "${@base_contains("DISTRO_FEATURES", "wayland", "yes", "no",
> d)}"
> >
> >  # Inhibit warnings about files being stripped.
> >  INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
> > @@ -67,13 +74,19 @@ do_install () {
> >      cp -axr ${S}/opt ${D}
> >
> >      install -d ${D}${libdir}/pkgconfig
> > +
> > +#If both X11 and Wayland are set in DISTRO_FEATURES then use Wayland as
> base window system
> > +    if [ "${USE_WL}" = "yes" ]; then
> > +        backend=wl
>
> It seems wl can be used side by side with X11, can you test this?
>
> --
> Otavio Salvador                             O.S. Systems
> http://www.ossystems.com.br        http://projetos.ossystems.com.br
> Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750
>
Otavio Salvador - July 23, 2013, 5:30 p.m.
On Fri, Jul 19, 2013 at 3:54 PM, Abhijit Potnis <abhijitpotnis@gmail.com> wrote:
> Hello Otavio,
>
> Thanks. I shall test the wl - x11 combined setup, and re-submit the patch
> with the changes mentioned in comments.

Checking the binary package provided by Freescale and it seems your
patch is right. When we have Wayland and X11 distro features we ought
to use Wayland instead. Can you update your patch and send a v2 of it?

--
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://projetos.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750
Abhijit Potnis - July 24, 2013, 4:02 a.m.
Hello Otaivo,

Sorry for the delay, we were moving into a new office over the weekend and
had a network disruption. Now we are back online! I shall push the patch
today

Regards,
Abhijit


On Sat, Jul 20, 2013 at 12:24 AM, Abhijit Potnis <abhijitpotnis@gmail.com>wrote:

> Hello Otavio,
>
> Thanks. I shall test the wl - x11 combined setup, and re-submit the patch
> with the changes mentioned in comments.
>
> Regards,
> -Abhijit
>
>
> On Fri, Jul 19, 2013 at 9:34 AM, Otavio Salvador <otavio@ossystems.com.br>wrote:
>
>> Hello Abhijit,
>>
>> On Fri, Jul 19, 2013 at 8:47 AM, Abhijit Potnis <abhijitpotnis@gmail.com>
>> wrote:
>> > This patch installs wayland GPU libs if the DISTRO_FEATURES contains
>> > wayland variable. If both X11 and wayland are present in DISTRO_FEATURES
>> > then wayland is picked as the default backend.
>> >
>> > Signed-off-by: Abhijit Potnis <abhijitpotnis@gmail.com>
>>
>> Please check the comments below ...
>>
>> > ---
>> >  .../gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc          |   41
>> ++++++++++++++++----
>> >  .../gpu-viv-bin-mx6q/gc_wayland_protocol.pc        |   10 +++++
>> >  .../gpu-viv-bin-mx6q/wayland-egl.pc                |   10 +++++
>> >  .../gpu-viv-bin-mx6q/wayland-viv.pc                |   10 +++++
>> >  4 files changed, 63 insertions(+), 8 deletions(-)
>> >  create mode 100644
>> recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_wayland_protocol.pc
>> >  create mode 100644
>> recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-egl.pc
>> >  create mode 100644
>> recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-viv.pc
>> >
>> > diff --git a/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
>> b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
>> > index 3354854..1c96347 100644
>> > --- a/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
>> > +++ b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
>> > @@ -7,9 +7,9 @@ SECTION = "libs"
>> >  LICENSE = "Proprietary"
>> >  LIC_FILES_CHKSUM =
>> "file://usr/include/gc_vdk.h;endline=11;md5=19f5925343fa3da65596eeaa4ddb5fd3"
>> >  DEPENDS += "${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11
>> libxdamage libxext libxfixes', '', d)} mesa"
>> > -PROVIDES += "virtual/libgl virtual/libgal-x11 virtual/egl
>> virtual/libgles1 virtual/libgles2"
>> > +PROVIDES += "virtual/wayland-egl virtual/libgl virtual/libgal-x11
>> virtual/egl virtual/libgles1 virtual/libgles2"
>> >
>> > -INC_PR = "r5"
>> > +INC_PR = "r6"
>>
>> Don't change PR as it is not need anymore.
>>
>> >  inherit fsl-eula-unpack
>> >
>> > @@ -23,6 +23,9 @@ SRC_URI =
>> "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true \
>> >             file://glesv1_cm_x11.pc \
>> >             file://glesv2.pc \
>> >             file://glesv2_x11.pc \
>> > +           file://gc_wayland_protocol.pc \
>> > +           file://wayland-egl.pc \
>> > +           file://wayland-viv.pc \
>> >            "
>> >
>> >  PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \
>> > @@ -37,10 +40,14 @@ PACKAGES =+ "libclc-mx6 libclc-mx6-dev
>> libclc-mx6-dbg \
>> >         libgal-mx6 libgal-mx6-dev libgal-mx6-dbg \
>> >         libvivante-mx6 libvivante-mx6-dev libvivante-mx6-dbg \
>> >         libvivante-dri-mx6 \
>> > +       libwayland-viv-mx6 libwayland-viv-mx6-dev
>> libwayland-viv-mx6-dbg \
>> > +       libgc_wayland_protocol-mx6 libgc_wayland_protocol-mx6-dev
>> libgc_wayland_protocol-mx6-dbg \
>> > +       libwayland-egl-mx6-dev \
>> >  "
>>
>> Use libgc-wayland-protocol-mx6 libgc-wayland-protocol-mx6-dev
>> libgc-wayland-protocol-mx6-dbg
>>
>> >  USE_X11 = "${@base_contains("DISTRO_FEATURES", "x11", "yes", "no", d)}"
>> >  USE_DFB = "${@base_contains("DISTRO_FEATURES", "directfb", "yes",
>> "no", d)}"
>> > +USE_WL = "${@base_contains("DISTRO_FEATURES", "wayland", "yes", "no",
>> d)}"
>> >
>> >  # Inhibit warnings about files being stripped.
>> >  INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
>> > @@ -67,13 +74,19 @@ do_install () {
>> >      cp -axr ${S}/opt ${D}
>> >
>> >      install -d ${D}${libdir}/pkgconfig
>> > +
>> > +#If both X11 and Wayland are set in DISTRO_FEATURES then use Wayland
>> as base window system
>> > +    if [ "${USE_WL}" = "yes" ]; then
>> > +        backend=wl
>>
>> It seems wl can be used side by side with X11, can you test this?
>>
>> --
>> Otavio Salvador                             O.S. Systems
>> http://www.ossystems.com.br        http://projetos.ossystems.com.br
>> Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750
>>
>
>

Patch

diff --git a/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
index 3354854..1c96347 100644
--- a/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
+++ b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc
@@ -7,9 +7,9 @@  SECTION = "libs"
 LICENSE = "Proprietary"
 LIC_FILES_CHKSUM = "file://usr/include/gc_vdk.h;endline=11;md5=19f5925343fa3da65596eeaa4ddb5fd3"
 DEPENDS += "${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxdamage libxext libxfixes', '', d)} mesa"
-PROVIDES += "virtual/libgl virtual/libgal-x11 virtual/egl virtual/libgles1 virtual/libgles2"
+PROVIDES += "virtual/wayland-egl virtual/libgl virtual/libgal-x11 virtual/egl virtual/libgles1 virtual/libgles2"
 
-INC_PR = "r5"
+INC_PR = "r6"
 
 inherit fsl-eula-unpack
 
@@ -23,6 +23,9 @@  SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true \
            file://glesv1_cm_x11.pc \
            file://glesv2.pc \
            file://glesv2_x11.pc \
+           file://gc_wayland_protocol.pc \
+           file://wayland-egl.pc \
+           file://wayland-viv.pc \
           "
 
 PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \
@@ -37,10 +40,14 @@  PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \
 	libgal-mx6 libgal-mx6-dev libgal-mx6-dbg \
 	libvivante-mx6 libvivante-mx6-dev libvivante-mx6-dbg \
 	libvivante-dri-mx6 \
+	libwayland-viv-mx6 libwayland-viv-mx6-dev libwayland-viv-mx6-dbg \
+	libgc_wayland_protocol-mx6 libgc_wayland_protocol-mx6-dev libgc_wayland_protocol-mx6-dbg \
+	libwayland-egl-mx6-dev \
 "
 
 USE_X11 = "${@base_contains("DISTRO_FEATURES", "x11", "yes", "no", d)}"
 USE_DFB = "${@base_contains("DISTRO_FEATURES", "directfb", "yes", "no", d)}"
+USE_WL = "${@base_contains("DISTRO_FEATURES", "wayland", "yes", "no", d)}"
 
 # Inhibit warnings about files being stripped.
 INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
@@ -67,13 +74,19 @@  do_install () {
     cp -axr ${S}/opt ${D}
 
     install -d ${D}${libdir}/pkgconfig
+  
+#If both X11 and Wayland are set in DISTRO_FEATURES then use Wayland as base window system
+    if [ "${USE_WL}" = "yes" ]; then
+        backend=wl        
 
-    # FIXME: Remove Wayland contents
-    rm -r ${D}${includedir}/wayland-viv
-    find ${D}${libdir} -name '*-wl.so' -exec rm '{}' ';'
-    rm ${D}${libdir}/*wayland*.so*
+        install -m 0644 ${WORKDIR}/egl.pc ${D}${libdir}/pkgconfig/egl.pc
+        install -m 0644 ${WORKDIR}/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc
+        install -m 0644 ${WORKDIR}/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc
+        install -m 0644 ${WORKDIR}/gc_wayland_protocol.pc ${D}${libdir}/pkgconfig/gc_wayland_protocol.pc
+        install -m 0644 ${WORKDIR}/wayland-egl.pc ${D}${libdir}/pkgconfig/wayland-egl.pc
+        install -m 0644 ${WORKDIR}/wayland-viv.pc ${D}${libdir}/pkgconfig/wayland-viv.pc          
 
-    if [ "${USE_X11}" = "yes" ]; then
+    elif [ "${USE_X11}" = "yes" ]; then
         cp -r ${S}/usr/lib/dri ${D}${libdir}
         backend=x11
 
@@ -100,7 +113,7 @@  do_install () {
     mv ${D}${libdir}/libGAL-${backend}.so ${D}${libdir}/libGAL.so
     mv ${D}${libdir}/libVIVANTE-${backend}.so ${D}${libdir}/libVIVANTE.so
 
-    for backend in x11 fb dfb; do
+    for backend in wl x11 fb dfb; do
         find ${D}${libdir} -name "*-$backend.so" -exec rm '{}' ';'
     done
 
@@ -165,5 +178,17 @@  FILES_libvivante-mx6-dbg = "${libdir}/.debug/libVIVANTE${SOLIBS}"
 
 FILES_libvivante-dri-mx6 = "${libdir}/dri/vivante_dri.so"
 
+INSANE_SKIP_libwayland-viv-mx6 += "dev-so"                            
+FILES_libwayland-viv-mx6 =  "${libdir}/libwayland-viv${REALSOLIBS}  ${libdir}/libwayland-viv${SOLIBS}"
+FILES_libwayland-viv-mx6-dev = "${libdir})/libwayland-viv${SOLIBSDEV} ${libdir}/pkgconfig/wayland-viv.pc "
+FILES_libwayland-viv-mx6-dbg = "${libdir}/.debug/libwayland-viv${SOLIBS}"
+
+INSANE_SKIP_libgc_wayland_protocol-mx6 += "dev-so"
+FILES_libgc_wayland_protocol-mx6 = "${libdir}/libgc_wayland_protocol${REALSOLIBS} ${libdir}/libgc_wayland_protocol${SOLIBS}"
+FILES_libgc_wayland_protocol-mx6-dev = "${libdir}/libgc_wayland_protocol${SOLIBSDEV} ${libdir}/pkgconfig/gc_wayland_protocol.pc"
+FILES_libgc_wayland_protocol-mx6-dbg = "${libdir}/libgc_wayland_protocol${SOLIBS}"
+
+FILES_libwayland-egl-mx6-dev = "${libdir}/pkgconfig/wayland-egl.pc"
+
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 COMPATIBLE_MACHINE = "(mx6)"
diff --git a/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_wayland_protocol.pc b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_wayland_protocol.pc
new file mode 100644
index 0000000..66ef31c
--- /dev/null
+++ b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/gc_wayland_protocol.pc
@@ -0,0 +1,10 @@ 
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: wayland-egl
+Description: Vivante Wayland Protocol Extension Library
+Version: 0.1
+Cflags: -I${includedir}
+Libs: -L${libdir} -lwayland-egl
diff --git a/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-egl.pc b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-egl.pc
new file mode 100644
index 0000000..afaeb13
--- /dev/null
+++ b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-egl.pc
@@ -0,0 +1,10 @@ 
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: wayland-egl
+Description: Bind the driver EGL to the Wayland API
+Version: 0.1
+Libs: -L${libdir} -lEGL
+Cflags: -I${includedir}
diff --git a/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-viv.pc b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-viv.pc
new file mode 100644
index 0000000..3fdedd0
--- /dev/null
+++ b/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q/wayland-viv.pc
@@ -0,0 +1,10 @@ 
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: Wayland Vivante Lib
+Description: Wayland server side library for Vivante's EGL driver
+Version: 0.1
+Cflags: -I${includedir}/wayland-viv
+Libs: -L${libdir} -lwayland-viv