Patchwork [[meta-fsl-arm,21/21] xserver-xorg-extension-viv-hdmi: Add 3.10.17-1.0.0 autohdmi utility

login
register
mail settings
Submitter Lauren Post
Date April 24, 2014, 3:09 p.m.
Message ID <1398352188-12194-22-git-send-email-lauren.post@freescale.com>
Download mbox | patch
Permalink /patch/70873/
State Changes Requested
Delegated to: Otavio Salvador
Headers show

Comments

Lauren Post - April 24, 2014, 3:09 p.m.
Change-Id: I8c59db05bc392b8affaac00c3018071ea0147875
Signed-off-by: Lauren Post <lauren.post@freescale.com>
---
 ...server-xorg-extension-viv-hdmi_3.10.17-1.0.0.bb |   75 ++++++++++++++++++++
 1 file changed, 75 insertions(+)
 create mode 100644 recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi_3.10.17-1.0.0.bb

\ No newline at end of file
Otavio Salvador - April 24, 2014, 4:07 p.m.
On Thu, Apr 24, 2014 at 12:09 PM, Lauren Post <lauren.post@freescale.com> wrote:
> Change-Id: I8c59db05bc392b8affaac00c3018071ea0147875
> Signed-off-by: Lauren Post <lauren.post@freescale.com>
...
> +++ b/recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi_3.10.17-1.0.0.bb
> @@ -0,0 +1,75 @@
> +# Copyright (C) 2014 Freescale Semiconductor
> +# Released under the MIT license (see COPYING.MIT for the terms)
> +DESCRIPTION = "Freescale Extension for HDMI performance"
> +LICENSE = "MIT-X"
> +
> +DEPENDS += "virtual/kernel xf86-video-imxfb-vivante"
> +
> +LIC_FILES_CHKSUM = "file://EXA/src/vivante_fbdev/vivante.h;endline=19;md5=641ac6e6d013833e36290797f4d7089c"
> +
> +SRC_URI = "${FSL_MIRROR}/xserver-xorg-video-imx-viv-${PV}.tar.gz"
> +S="${WORKDIR}/xserver-xorg-video-imx-viv-${PV}/"
> +
> +SRC_URI[md5sum] = "f494f8862a016cba315795b061a338ea"
> +SRC_URI[sha256sum] = "5470308eaabedb5585bbf02e4117a421ec8e8951e4033e9e1afa387937b3a5f9"
> +
> +inherit autotools pkgconfig
> +
> +EXTRA_OEMAKE += "-f makefile.linux prefix=${D}/usr \
> +                 sysroot=${STAGING_DIR_TARGET} \
> +                 BUSID_HAS_NUMBER=1 \
> +                 BUILD_IN_YOCTO=1 \
> +                 XSERVER_GREATER_THAN_13=1"
> +
> +
> +CFLAGS += "-I${STAGING_INCDIR}/xorg \
> +           -I${STAGING_INCDIR}/drm \
> +           -I../../DRI_1.10.4/src"

All this is need for this extension driver?

> +# FIXME: The Freescale provided Makefile has hardcodec include paths
> +#        and this does not work in case prefix is different than /usr,
> +#        sed it.
> +do_configure_prepend () {
> +    sed -i 's,$(sysroot)/usr/include,${STAGING_INCDIR},g' \
> +            ${S}FslExt/src/makefile.linux
> +}
> +
> +# FIXME: This is need as Freescale didn't use standard Makefile filename
> +#        thus oe_runmame thinks nothing is need to be done, use ln to
> +#        workaround it.
> +base_do_compile () {
> +    oe_runmake || die "make failed"
> +}
> +do_compile () {
> +    cd FslExt/src

This can be avoided using this as S value.

> +    oe_runmake

This will be able to remove when you fix the Makefile.

> +    install -d ${D}${libdir}
> +    cd ../../util/autohdmi
> +    oe_runmake

It should be handled by the Makefile itself.

> +}

Please apply a patch in the Makefile to address it so we avoid this
kind of workaround in the recipe. As a bonus it can be upstreamed and
removed for next Alpha ;-)

> +do_install () {
> +    install -d ${D}${libdir}
> +    cp -axr ${S}/FslExt/src/libfsl_x11_ext.so ${D}${libdir}
> +
> +    install -d ${D}${exec_prefix}/sbin
> +    cp -axr ${S}/util/autohdmi/autohdmi ${D}${exec_prefix}/sbin

The 'make install' should handle it. Please fix it in the Makefile.

> +}
> +
> +RDEPENDS_${PN} += "libvivante-dri-mx6 \
> +                   xserver-xorg-module-exa \
> +                   mesa-driver-swrast \
> +                   xserver-xorg-extension-dri \
> +                   xserver-xorg-extension-dri2 \
> +                   xserver-xorg-extension-glx"

This is the same rdepends of the xf86-video-imxfb-vivante, so you can
replace it all with 'xf86-video-imxfb-vivante' as this does not work
without it.

> +REALSOLIBS := "${SOLIBS}"
> +SOLIBS = "${SOLIBSDEV}"
> +
> +FILES_${PN} = " ${libdir}/libfsl_x11_ext${SOLIBS} ${exec_prefix}/sbin/autohdmi "
> +#FILES_${PN}-dbg = "${libdir}/.debug/ "
> +#FILES_${PN}-dbg += "${exec_prefix}/sbin/.debug/"

No commented code please.

> +PACKAGE_ARCH = "${MACHINE_SOCARCH}"
> +COMPATIBLE_MACHINE = "(mx6)"

Please add a new line in the end of the file.

Patch

diff --git a/recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi_3.10.17-1.0.0.bb b/recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi_3.10.17-1.0.0.bb
new file mode 100644
index 0000000..824fe58
--- /dev/null
+++ b/recipes-graphics/xorg-driver/xserver-xorg-extension-viv-hdmi_3.10.17-1.0.0.bb
@@ -0,0 +1,75 @@ 
+# Copyright (C) 2014 Freescale Semiconductor
+# Released under the MIT license (see COPYING.MIT for the terms)
+DESCRIPTION = "Freescale Extension for HDMI performance"
+LICENSE = "MIT-X"
+
+DEPENDS += "virtual/kernel xf86-video-imxfb-vivante"
+
+LIC_FILES_CHKSUM = "file://EXA/src/vivante_fbdev/vivante.h;endline=19;md5=641ac6e6d013833e36290797f4d7089c"
+
+SRC_URI = "${FSL_MIRROR}/xserver-xorg-video-imx-viv-${PV}.tar.gz"
+S="${WORKDIR}/xserver-xorg-video-imx-viv-${PV}/"
+
+SRC_URI[md5sum] = "f494f8862a016cba315795b061a338ea"
+SRC_URI[sha256sum] = "5470308eaabedb5585bbf02e4117a421ec8e8951e4033e9e1afa387937b3a5f9"
+
+inherit autotools pkgconfig
+
+EXTRA_OEMAKE += "-f makefile.linux prefix=${D}/usr \
+                 sysroot=${STAGING_DIR_TARGET} \
+                 BUSID_HAS_NUMBER=1 \
+                 BUILD_IN_YOCTO=1 \
+                 XSERVER_GREATER_THAN_13=1"
+
+
+CFLAGS += "-I${STAGING_INCDIR}/xorg \
+           -I${STAGING_INCDIR}/drm \
+           -I../../DRI_1.10.4/src"
+
+# FIXME: The Freescale provided Makefile has hardcodec include paths
+#        and this does not work in case prefix is different than /usr,
+#        sed it.
+do_configure_prepend () {
+    sed -i 's,$(sysroot)/usr/include,${STAGING_INCDIR},g' \
+            ${S}FslExt/src/makefile.linux
+}
+
+# FIXME: This is need as Freescale didn't use standard Makefile filename
+#        thus oe_runmame thinks nothing is need to be done, use ln to
+#        workaround it.
+base_do_compile () {
+    oe_runmake || die "make failed"
+}
+do_compile () {
+    cd FslExt/src
+    oe_runmake
+    install -d ${D}${libdir}
+    cd ../../util/autohdmi
+    oe_runmake
+}
+
+
+do_install () {
+    install -d ${D}${libdir}
+    cp -axr ${S}/FslExt/src/libfsl_x11_ext.so ${D}${libdir}
+
+    install -d ${D}${exec_prefix}/sbin
+    cp -axr ${S}/util/autohdmi/autohdmi ${D}${exec_prefix}/sbin
+}
+
+RDEPENDS_${PN} += "libvivante-dri-mx6 \
+                   xserver-xorg-module-exa \
+                   mesa-driver-swrast \
+                   xserver-xorg-extension-dri \
+                   xserver-xorg-extension-dri2 \
+                   xserver-xorg-extension-glx"
+
+REALSOLIBS := "${SOLIBS}"
+SOLIBS = "${SOLIBSDEV}"
+
+FILES_${PN} = " ${libdir}/libfsl_x11_ext${SOLIBS} ${exec_prefix}/sbin/autohdmi "
+#FILES_${PN}-dbg = "${libdir}/.debug/ "
+#FILES_${PN}-dbg += "${exec_prefix}/sbin/.debug/"
+
+PACKAGE_ARCH = "${MACHINE_SOCARCH}"
+COMPATIBLE_MACHINE = "(mx6)"