summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOtavio Salvador <otavio@ossystems.com.br>2013-04-02 14:08:50 -0300
committerOtavio Salvador <otavio@ossystems.com.br>2013-04-05 10:16:44 -0300
commit61394cdf624b95837ee8204200bc80f777c70604 (patch)
tree4bce874b1f48c8ce273c425d264fd4fb9f3dc630
parent651e14b90a520385021c74b60bd439209fdfddc7 (diff)
downloadmeta-fsl-arm-61394cdf624b95837ee8204200bc80f777c70604.tar.gz
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 <otavio@ossystems.com.br>
-rw-r--r--recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q.inc86
-rw-r--r--recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb3
2 files changed, 32 insertions, 57 deletions
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 e8e491e..44f6fc9 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
@@ -17,16 +17,6 @@ SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true \
17 file://fix-conflicting-TLS-definition.patch \ 17 file://fix-conflicting-TLS-definition.patch \
18 " 18 "
19 19
20GPU_XLIBS = "libegl-x11-mx6 libegl-x11-mx6-dev libegl-x11-mx6-dbg \
21 libgal-x11-mx6 libgal-x11-mx6-dev libgal-x11-mx6-dbg \
22 libvivante-x11-mx6 libvivante-x11-mx6-dev libvivante-x11-mx6-dbg \
23 "
24
25GPU_DFBLIBS = "libegl-dfb-mx6 libegl-dfb-mx6-dev libegl-dfb-mx6-dbg \
26 libgal-dfb-mx6 libgal-dfb-mx6-dev libgal-dfb-mx6-dbg \
27 libvivante-dfb-mx6 libvivante-dfb-mx6-dev libvivante-dfb-mx6-dbg \
28 "
29
30PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \ 20PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \
31 libgles-mx6 libgles-mx6-dev libgles-mx6-dbg \ 21 libgles-mx6 libgles-mx6-dev libgles-mx6-dbg \
32 libgles2-mx6 libgles2-mx6-dev libgles2-mx6-dbg \ 22 libgles2-mx6 libgles2-mx6-dev libgles2-mx6-dbg \
@@ -34,12 +24,10 @@ PACKAGES =+ "libclc-mx6 libclc-mx6-dev libclc-mx6-dbg \
34 libopencl-mx6 libopencl-mx6-dev libopencl-mx6-dbg \ 24 libopencl-mx6 libopencl-mx6-dev libopencl-mx6-dbg \
35 libopenvg-mx6 libopenvg-mx6-dev libopenvg-mx6-dbg \ 25 libopenvg-mx6 libopenvg-mx6-dev libopenvg-mx6-dbg \
36 libvdk-mx6 libvdk-mx6-dev libvdk-mx6-dbg \ 26 libvdk-mx6 libvdk-mx6-dev libvdk-mx6-dbg \
37 libegl-fb-mx6 libegl-fb-mx6-dev libegl-fb-mx6-dbg \ 27 libegl-mx6 libegl-mx6-dev libegl-mx6-dbg \
38 libgal-fb-mx6 libgal-fb-mx6-dev libgal-fb-mx6-dbg \ 28 libgal-mx6 libgal-mx6-dev libgal-mx6-dbg \
39 libvivante-fb-mx6 libvivante-fb-mx6-dev libvivante-fb-mx6-dbg \ 29 libvivante-mx6 libvivante-mx6-dev libvivante-mx6-dbg \
40 ${@base_contains("DISTRO_FEATURES", "x11", "${GPU_XLIBS}", "", d)} \ 30"
41 ${@base_contains("DISTRO_FEATURES", "directfb", "${GPU_DFBLIBS}", "", d)} \
42 "
43 31
44USE_X11 = "${@base_contains("DISTRO_FEATURES", "x11", "yes", "no", d)}" 32USE_X11 = "${@base_contains("DISTRO_FEATURES", "x11", "yes", "no", d)}"
45USE_DFB = "${@base_contains("DISTRO_FEATURES", "directfb", "yes", "no", d)}" 33USE_DFB = "${@base_contains("DISTRO_FEATURES", "directfb", "yes", "no", d)}"
@@ -69,12 +57,6 @@ do_install () {
69 rm -r ${D}${includedir}/GL 57 rm -r ${D}${includedir}/GL
70 cp -axr ${S}/opt ${D} 58 cp -axr ${S}/opt ${D}
71 59
72 # FIXME: Drop default library as we need to explicit link to one
73 # of supported backends
74 rm ${D}${libdir}/libEGL.so \
75 ${D}${libdir}/libGAL.so \
76 ${D}${libdir}/libVIVANTE.so
77
78 if [ "${USE_X11}" = "yes" ]; then 60 if [ "${USE_X11}" = "yes" ]; then
79 find ${D}${libdir} -name '*-dfb.so' -exec rm '{}' ';' 61 find ${D}${libdir} -name '*-dfb.so' -exec rm '{}' ';'
80 find ${D}${libdir} -name '*-fb.so' -exec rm '{}' ';' 62 find ${D}${libdir} -name '*-fb.so' -exec rm '{}' ';'
@@ -89,6 +71,24 @@ do_install () {
89 fi 71 fi
90 fi 72 fi
91 73
74 # We'll only have one backend here so we rename it to generic name
75 # and avoid rework in other packages, when possible
76 rm ${D}${libdir}/libEGL.so ${D}${libdir}/libGAL.so \
77 ${D}${libdir}/libVIVANTE.so
78
79 renamed=
80 for backend in x11 fb dfb; do
81 for f in $(find ${D}${libdir} -name "*-$backend.so"); do
82 if [ -n "$renamed" ] && [ "$renamed" != "$backend" ]; then
83 bberror "More than one GPU backend is installed ($backend and $renamed)."
84 exit 1
85 fi
86
87 renamed=$backend
88 mv $f $(echo $f | sed "s,-$backend\.so,.so,g")
89 done
90 done
91
92 find ${D}${libdir} -type f -exec chmod 644 {} \; 92 find ${D}${libdir} -type f -exec chmod 644 {} \;
93 find ${D}${includedir} -type f -exec chmod 644 {} \; 93 find ${D}${includedir} -type f -exec chmod 644 {} \;
94} 94}
@@ -103,29 +103,13 @@ FILES_libclc-mx6 = "${libdir}/libCLC${SOLIBS}"
103FILES_libclc-mx6-dev = "${includedir}/CL ${libdir}/libCLC${SOLIBSDEV}" 103FILES_libclc-mx6-dev = "${includedir}/CL ${libdir}/libCLC${SOLIBSDEV}"
104FILES_libclc-mx6-dbg = "${libdir}/.debug/libCLC${SOLIBS}" 104FILES_libclc-mx6-dbg = "${libdir}/.debug/libCLC${SOLIBS}"
105 105
106FILES_libegl-fb-mx6 = "${libdir}/libEGL-fb${SOLIBS}" 106FILES_libegl-mx6 = "${libdir}/libEGL${SOLIBS}"
107FILES_libegl-fb-mx6-dev = "${libdir}/libEGL-fb${SOLIBSDEV}" 107FILES_libegl-mx6-dev = "${libdir}/libEGL${SOLIBSDEV}"
108FILES_libegl-fb-mx6-dbg = "${libdir}/.debug/libEGL-fb${SOLIBS}" 108FILES_libegl-mx6-dbg = "${libdir}/.debug/libEGL${SOLIBS}"
109
110FILES_libegl-x11-mx6 = "${libdir}/libEGL-x11${SOLIBS}"
111FILES_libegl-x11-mx6-dev = "${libdir}/libEGL-x11${SOLIBSDEV}"
112FILES_libegl-x11-mx6-dbg = "${libdir}/.debug/libEGL-x11${SOLIBS}"
113
114FILES_libegl-dfb-mx6 = "${libdir}/libEGL-dfb${SOLIBS}"
115FILES_libegl-dfb-mx6-dev = "${libdir}/libEGL-dfb${SOLIBSDEV}"
116FILES_libegl-dfb-mx6-dbg = "${libdir}/.debug/libEGL-dfb${SOLIBS}"
117
118FILES_libgal-fb-mx6 = "${libdir}/libGAL-fb${SOLIBS}"
119FILES_libgal-fb-mx6-dev = "${libdir}/libGAL-fb${SOLIBSDEV}"
120FILES_libgal-fb-mx6-dbg = "${libdir}/.debug/libGAL-fb${SOLIBS}"
121 109
122FILES_libgal-x11-mx6 = "${libdir}/libGAL-x11${SOLIBS}" 110FILES_libgal-mx6 = "${libdir}/libGAL${SOLIBS}"
123FILES_libgal-x11-mx6-dev = "${libdir}/libGAL-x11${SOLIBSDEV}" 111FILES_libgal-mx6-dev = "${libdir}/libGAL${SOLIBSDEV}"
124FILES_libgal-x11-mx6-dbg = "${libdir}/.debug/libGAL-x11${SOLIBS}" 112FILES_libgal-mx6-dbg = "${libdir}/.debug/libGAL${SOLIBS}"
125
126FILES_libgal-dfb-mx6 = "${libdir}/libGAL-dfb${SOLIBS}"
127FILES_libgal-dfb-mx6-dev = "${libdir}/libGAL-dfb${SOLIBSDEV}"
128FILES_libgal-dfb-mx6-dbg = "${libdir}/.debug/libGAL-dfb${SOLIBS}"
129 113
130FILES_libgles-mx6 = "${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${SOLIBS}" 114FILES_libgles-mx6 = "${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${SOLIBS}"
131FILES_libgles-mx6-dev = "${includedir}/GLES ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${SOLIBSDEV}" 115FILES_libgles-mx6-dev = "${includedir}/GLES ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${SOLIBSDEV}"
@@ -152,17 +136,9 @@ FILES_libvdk-mx6 = "${libdir}/libVDK${SOLIBS}"
152FILES_libvdk-mx6-dev = "${includedir}/*vdk.h ${libdir}/libVDK${SOLIBSDEV}" 136FILES_libvdk-mx6-dev = "${includedir}/*vdk.h ${libdir}/libVDK${SOLIBSDEV}"
153FILES_libvdk-mx6-dbg = "${libdir}/.debug/libVDK${SOLIBS}" 137FILES_libvdk-mx6-dbg = "${libdir}/.debug/libVDK${SOLIBS}"
154 138
155FILES_libvivante-fb-mx6 = "${libdir}/libVIVANTE-fb${SOLIBS}" 139FILES_libvivante-mx6 = "${libdir}/libVIVANTE${SOLIBS}"
156FILES_libvivante-fb-mx6-dev = "${libdir}/libVIVANTE-fb${SOLIBSDEV}" 140FILES_libvivante-mx6-dev = "${libdir}/libVIVANTE${SOLIBSDEV}"
157FILES_libvivante-fb-mx6-dbg = "${libdir}/.debug/libVIVANTE-fb${SOLIBS}" 141FILES_libvivante-mx6-dbg = "${libdir}/.debug/libVIVANTE${SOLIBS}"
158
159FILES_libvivante-x11-mx6 = "${libdir}/libVIVANTE-x11${SOLIBS}"
160FILES_libvivante-x11-mx6-dev = "${libdir}/libVIVANTE-x11${SOLIBSDEV}"
161FILES_libvivante-x11-mx6-dbg = "${libdir}/.debug/libVIVANTE-x11${SOLIBS}"
162
163FILES_libvivante-dfb-mx6 = "${libdir}/libVIVANTE-dfb${SOLIBS}"
164FILES_libvivante-dfb-mx6-dev = "${libdir}/libVIVANTE-dfb${SOLIBSDEV}"
165FILES_libvivante-dfb-mx6-dbg = "${libdir}/.debug/libVIVANTE-dfb${SOLIBS}"
166 142
167PACKAGE_ARCH = "${MACHINE_ARCH}" 143PACKAGE_ARCH = "${MACHINE_ARCH}"
168COMPATIBLE_MACHINE = "(mx6)" 144COMPATIBLE_MACHINE = "(mx6)"
diff --git a/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb b/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb
index 28491c9..6cd8a5e 100644
--- a/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb
+++ b/recipes-graphics/xorg-driver/xf86-video-imxfb-vivante_1.1.0.bb
@@ -5,7 +5,7 @@
5require recipes-graphics/xorg-driver/xorg-driver-video.inc 5require recipes-graphics/xorg-driver/xorg-driver-video.inc
6 6
7PE = "3" 7PE = "3"
8PR = "${INC_PR}.2" 8PR = "${INC_PR}.3"
9 9
10DEPENDS += "virtual/libx11 virtual/libgal-x11 gpu-viv-bin-mx6q" 10DEPENDS += "virtual/libx11 virtual/libgal-x11 gpu-viv-bin-mx6q"
11 11
@@ -18,7 +18,6 @@ SRC_URI[sha256sum] = "d53216d5f9e3f7803983ac1577d83985dfda33145e4711300f4ad5cbbe
18 18
19EXTRA_OECONF_armv7a = " --enable-neon --disable-static" 19EXTRA_OECONF_armv7a = " --enable-neon --disable-static"
20CFLAGS += " -I${STAGING_INCDIR}/xorg -I${STAGING_INCDIR}/drm" 20CFLAGS += " -I${STAGING_INCDIR}/xorg -I${STAGING_INCDIR}/drm"
21LDFLAGS += "-lm -ldl -lX11 -lGAL-x11"
22 21
23S = "${WORKDIR}/xserver-xorg-video-imx-viv-${PV}/EXA/" 22S = "${WORKDIR}/xserver-xorg-video-imx-viv-${PV}/EXA/"
24 23