From: Otavio Salvador Date: Tue, 2 Apr 2013 17:08:50 +0000 (-0300) Subject: gpu-viv-bin-mx6q: Rework package for a single backend use X-Git-Tag: 2.1~1447 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=40ebbad50dcd57e64bd2d3a6d736e6dfa1f44f33;p=meta-freescale.git gpu-viv-bin-mx6q: Rework package for a single backend use As we now provide a single backend there're no need for full set of packages and the binaries can use the generic names so we don't need to rework other applications and/or libraries to link properly. The xf86-video-imxfb-vivante needs also to be change as the libraries are now under generic name so we remove the backend suffix from libraries so the LDFLAGS ought to be removed for the build to succeed. Change-Id: I73cc9986babe8bb4fb0c05117c6b3d93b0470949 Signed-off-by: Otavio Salvador --- diff --git a/meta-fsl-arm/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc b/meta-fsl-arm/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc index e8e491ea..44f6fc94 100644 --- a/meta-fsl-arm/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc +++ b/meta-fsl-arm/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc @@ -17,16 +17,6 @@ SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true \ file://fix-conflicting-TLS-definition.patch \ " -GPU_XLIBS = "libegl-x11-mx6 libegl-x11-mx6-dev libegl-x11-mx6-dbg \ - libgal-x11-mx6 libgal-x11-mx6-dev libgal-x11-mx6-dbg \ - libvivante-x11-mx6 libvivante-x11-mx6-dev libvivante-x11-mx6-dbg \ - " - -GPU_DFBLIBS = "libegl-dfb-mx6 libegl-dfb-mx6-dev libegl-dfb-mx6-dbg \ - libgal-dfb-mx6 libgal-dfb-mx6-dev libgal-dfb-mx6-dbg \ - libvivante-dfb-mx6 libvivante-dfb-mx6-dev libvivante-dfb-mx6-dbg \ - " - PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \ libgles-mx6 libgles-mx6-dev libgles-mx6-dbg \ libgles2-mx6 libgles2-mx6-dev libgles2-mx6-dbg \ @@ -34,12 +24,10 @@ PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \ libopencl-mx6 libopencl-mx6-dev libopencl-mx6-dbg \ libopenvg-mx6 libopenvg-mx6-dev libopenvg-mx6-dbg \ libvdk-mx6 libvdk-mx6-dev libvdk-mx6-dbg \ - libegl-fb-mx6 libegl-fb-mx6-dev libegl-fb-mx6-dbg \ - libgal-fb-mx6 libgal-fb-mx6-dev libgal-fb-mx6-dbg \ - libvivante-fb-mx6 libvivante-fb-mx6-dev libvivante-fb-mx6-dbg \ - ${@base_contains("DISTRO_FEATURES", "x11", "${GPU_XLIBS}", "", d)} \ - ${@base_contains("DISTRO_FEATURES", "directfb", "${GPU_DFBLIBS}", "", d)} \ - " + libegl-mx6 libegl-mx6-dev libegl-mx6-dbg \ + libgal-mx6 libgal-mx6-dev libgal-mx6-dbg \ + libvivante-mx6 libvivante-mx6-dev libvivante-mx6-dbg \ +" USE_X11 = "${@base_contains("DISTRO_FEATURES", "x11", "yes", "no", d)}" USE_DFB = "${@base_contains("DISTRO_FEATURES", "directfb", "yes", "no", d)}" @@ -69,12 +57,6 @@ do_install () { rm -r ${D}${includedir}/GL cp -axr ${S}/opt ${D} - # FIXME: Drop default library as we need to explicit link to one - # of supported backends - rm ${D}${libdir}/libEGL.so \ - ${D}${libdir}/libGAL.so \ - ${D}${libdir}/libVIVANTE.so - if [ "${USE_X11}" = "yes" ]; then find ${D}${libdir} -name '*-dfb.so' -exec rm '{}' ';' find ${D}${libdir} -name '*-fb.so' -exec rm '{}' ';' @@ -89,6 +71,24 @@ do_install () { fi fi + # We'll only have one backend here so we rename it to generic name + # and avoid rework in other packages, when possible + rm ${D}${libdir}/libEGL.so ${D}${libdir}/libGAL.so \ + ${D}${libdir}/libVIVANTE.so + + renamed= + for backend in x11 fb dfb; do + for f in $(find ${D}${libdir} -name "*-$backend.so"); do + if [ -n "$renamed" ] && [ "$renamed" != "$backend" ]; then + bberror "More than one GPU backend is installed ($backend and $renamed)." + exit 1 + fi + + renamed=$backend + mv $f $(echo $f | sed "s,-$backend\.so,.so,g") + done + done + find ${D}${libdir} -type f -exec chmod 644 {} \; find ${D}${includedir} -type f -exec chmod 644 {} \; } @@ -103,29 +103,13 @@ FILES_libclc-mx6 = "${libdir}/libCLC${SOLIBS}" FILES_libclc-mx6-dev = "${includedir}/CL ${libdir}/libCLC${SOLIBSDEV}" FILES_libclc-mx6-dbg = "${libdir}/.debug/libCLC${SOLIBS}" -FILES_libegl-fb-mx6 = "${libdir}/libEGL-fb${SOLIBS}" -FILES_libegl-fb-mx6-dev = "${libdir}/libEGL-fb${SOLIBSDEV}" -FILES_libegl-fb-mx6-dbg = "${libdir}/.debug/libEGL-fb${SOLIBS}" - -FILES_libegl-x11-mx6 = "${libdir}/libEGL-x11${SOLIBS}" -FILES_libegl-x11-mx6-dev = "${libdir}/libEGL-x11${SOLIBSDEV}" -FILES_libegl-x11-mx6-dbg = "${libdir}/.debug/libEGL-x11${SOLIBS}" - -FILES_libegl-dfb-mx6 = "${libdir}/libEGL-dfb${SOLIBS}" -FILES_libegl-dfb-mx6-dev = "${libdir}/libEGL-dfb${SOLIBSDEV}" -FILES_libegl-dfb-mx6-dbg = "${libdir}/.debug/libEGL-dfb${SOLIBS}" - -FILES_libgal-fb-mx6 = "${libdir}/libGAL-fb${SOLIBS}" -FILES_libgal-fb-mx6-dev = "${libdir}/libGAL-fb${SOLIBSDEV}" -FILES_libgal-fb-mx6-dbg = "${libdir}/.debug/libGAL-fb${SOLIBS}" +FILES_libegl-mx6 = "${libdir}/libEGL${SOLIBS}" +FILES_libegl-mx6-dev = "${libdir}/libEGL${SOLIBSDEV}" +FILES_libegl-mx6-dbg = "${libdir}/.debug/libEGL${SOLIBS}" -FILES_libgal-x11-mx6 = "${libdir}/libGAL-x11${SOLIBS}" -FILES_libgal-x11-mx6-dev = "${libdir}/libGAL-x11${SOLIBSDEV}" -FILES_libgal-x11-mx6-dbg = "${libdir}/.debug/libGAL-x11${SOLIBS}" - -FILES_libgal-dfb-mx6 = "${libdir}/libGAL-dfb${SOLIBS}" -FILES_libgal-dfb-mx6-dev = "${libdir}/libGAL-dfb${SOLIBSDEV}" -FILES_libgal-dfb-mx6-dbg = "${libdir}/.debug/libGAL-dfb${SOLIBS}" +FILES_libgal-mx6 = "${libdir}/libGAL${SOLIBS}" +FILES_libgal-mx6-dev = "${libdir}/libGAL${SOLIBSDEV}" +FILES_libgal-mx6-dbg = "${libdir}/.debug/libGAL${SOLIBS}" FILES_libgles-mx6 = "${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${SOLIBS}" FILES_libgles-mx6-dev = "${includedir}/GLES ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${SOLIBSDEV}" @@ -152,17 +136,9 @@ FILES_libvdk-mx6 = "${libdir}/libVDK${SOLIBS}" FILES_libvdk-mx6-dev = "${includedir}/*vdk.h ${libdir}/libVDK${SOLIBSDEV}" FILES_libvdk-mx6-dbg = "${libdir}/.debug/libVDK${SOLIBS}" -FILES_libvivante-fb-mx6 = "${libdir}/libVIVANTE-fb${SOLIBS}" -FILES_libvivante-fb-mx6-dev = "${libdir}/libVIVANTE-fb${SOLIBSDEV}" -FILES_libvivante-fb-mx6-dbg = "${libdir}/.debug/libVIVANTE-fb${SOLIBS}" - -FILES_libvivante-x11-mx6 = "${libdir}/libVIVANTE-x11${SOLIBS}" -FILES_libvivante-x11-mx6-dev = "${libdir}/libVIVANTE-x11${SOLIBSDEV}" -FILES_libvivante-x11-mx6-dbg = "${libdir}/.debug/libVIVANTE-x11${SOLIBS}" - -FILES_libvivante-dfb-mx6 = "${libdir}/libVIVANTE-dfb${SOLIBS}" -FILES_libvivante-dfb-mx6-dev = "${libdir}/libVIVANTE-dfb${SOLIBSDEV}" -FILES_libvivante-dfb-mx6-dbg = "${libdir}/.debug/libVIVANTE-dfb${SOLIBS}" +FILES_libvivante-mx6 = "${libdir}/libVIVANTE${SOLIBS}" +FILES_libvivante-mx6-dev = "${libdir}/libVIVANTE${SOLIBSDEV}" +FILES_libvivante-mx6-dbg = "${libdir}/.debug/libVIVANTE${SOLIBS}" PACKAGE_ARCH = "${MACHINE_ARCH}" COMPATIBLE_MACHINE = "(mx6)" diff --git a/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb b/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb index 28491c9d..6cd8a5e8 100644 --- a/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb +++ b/meta-fsl-arm/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb @@ -5,7 +5,7 @@ require recipes-graphics/xorg-driver/xorg-driver-video.inc PE = "3" -PR = "${INC_PR}.2" +PR = "${INC_PR}.3" DEPENDS += "virtual/libx11 virtual/libgal-x11 gpu-viv-bin-mx6q" @@ -18,7 +18,6 @@ SRC_URI[sha256sum] = "d53216d5f9e3f7803983ac1577d83985dfda33145e4711300f4ad5cbbe EXTRA_OECONF_armv7a = " --enable-neon --disable-static" CFLAGS += " -I${STAGING_INCDIR}/xorg -I${STAGING_INCDIR}/drm" -LDFLAGS += "-lm -ldl -lX11 -lGAL-x11" S = "${WORKDIR}/xserver-xorg-video-imx-viv-${PV}/EXA/"