aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-graphics/mesa
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-graphics/mesa')
-rw-r--r--recipes-graphics/mesa/mesa-8.0.1.inc42
-rw-r--r--recipes-graphics/mesa/mesa-common.inc55
-rw-r--r--recipes-graphics/mesa/mesa-dri-glsl-native_8.0.1.bb54
-rw-r--r--recipes-graphics/mesa/mesa-dri.inc52
-rw-r--r--recipes-graphics/mesa/mesa-dri_8.0.1.bb8
-rw-r--r--recipes-graphics/mesa/mesa/crossfix-mklib.patch71
-rw-r--r--recipes-graphics/mesa/mesa/crossfix.patch36
-rw-r--r--recipes-graphics/mesa/mesa/mesa_fix_for_x32.patch76
-rw-r--r--recipes-graphics/mesa/mesa/remove_OES_EGL_image_externals.patch44
9 files changed, 282 insertions, 156 deletions
diff --git a/recipes-graphics/mesa/mesa-8.0.1.inc b/recipes-graphics/mesa/mesa-8.0.1.inc
index ac464a5..8e63af8 100644
--- a/recipes-graphics/mesa/mesa-8.0.1.inc
+++ b/recipes-graphics/mesa/mesa-8.0.1.inc
@@ -1,21 +1,21 @@
-DEPENDS += "mesa-dri-glsl-native"
-
-
-SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \
- file://crossfix.patch \
- file://crossfix-mklib.patch \
- file://mesa_fix_for_x32.patch \
- file://remove_OES_EGL_image_externals.patch \
- "
-
-S = "${WORKDIR}/Mesa-${PV}"
-
-SRC_URI[md5sum] = "24eeebf66971809d8f40775a379b36c9"
-SRC_URI[sha256sum] = "593af02ea2b5b7afb057a12c550f2c03b1d1cf59a716972d601c1499545ea0a7"
-
-do_configure_prepend() {
- #check for python not python2, because python-native does not stage python2 binary/link
- sed -i 's/AC_CHECK_PROGS(\[PYTHON2\], \[python2 python\])/AC_CHECK_PROGS(\[PYTHON2\], \[python python\])/g' ${S}/configure.ac
- # We need builtin_compiler built for buildhost arch instead of target (is provided by mesa-dri-glsl-native)"
- sed -i "s#\./builtin_compiler#${STAGING_BINDIR_NATIVE}/glsl/builtin_compiler#g" ${S}/src/glsl/Makefile
-}
+DEPENDS += "mesa-dri-glsl-native"
+
+
+SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \
+ file://crossfix.patch \
+ file://crossfix-mklib.patch \
+ file://mesa_fix_for_x32.patch \
+ file://remove_OES_EGL_image_externals.patch \
+ "
+
+S = "${WORKDIR}/Mesa-${PV}"
+
+SRC_URI[md5sum] = "24eeebf66971809d8f40775a379b36c9"
+SRC_URI[sha256sum] = "593af02ea2b5b7afb057a12c550f2c03b1d1cf59a716972d601c1499545ea0a7"
+
+do_configure_prepend() {
+ #check for python not python2, because python-native does not stage python2 binary/link
+ sed -i 's/AC_CHECK_PROGS(\[PYTHON2\], \[python2 python\])/AC_CHECK_PROGS(\[PYTHON2\], \[python python\])/g' ${S}/configure.ac
+ # We need builtin_compiler built for buildhost arch instead of target (is provided by mesa-dri-glsl-native)"
+ sed -i "s#\./builtin_compiler#${STAGING_BINDIR_NATIVE}/glsl/builtin_compiler#g" ${S}/src/glsl/Makefile
+}
diff --git a/recipes-graphics/mesa/mesa-common.inc b/recipes-graphics/mesa/mesa-common.inc
new file mode 100644
index 0000000..b04e432
--- /dev/null
+++ b/recipes-graphics/mesa/mesa-common.inc
@@ -0,0 +1,55 @@
+SUMMARY = "A free implementation of the OpenGL API"
+DESCRIPTION = "Mesa is an open-source implementation of the OpenGL specification - \
+a system for rendering interactive 3D graphics. \
+A variety of device drivers allows Mesa to be used in many different environments \
+ranging from software emulation to complete hardware acceleration for modern GPUs. \
+Mesa is used as part of the overall Direct Rendering Infrastructure and X.org \
+environment."
+
+HOMEPAGE = "http://mesa3d.org"
+BUGTRACKER = "https://bugs.freedesktop.org"
+SECTION = "x11"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://docs/license.html;md5=03ccdc4c379c4289aecfb8892c546f67"
+
+INC_PR = "r13"
+PE = "2"
+
+
+PROTO_DEPS = "xf86driproto glproto"
+LIB_DEPS = "virtual/libx11 libxext libxxf86vm libxdamage libxfixes libxml2-native"
+
+DEPENDS = "makedepend-native python-native ${PROTO_DEPS} ${LIB_DEPS}"
+RDEPENDS_${PN} = "${PN}-driver-swrast"
+
+PROVIDES = "virtual/libgl"
+
+# for mesa-dri and mesa-xlib
+FILESEXTRAPATHS_append := "${THISDIR}/mesa:"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF = "--enable-glu \
+ --disable-glw \
+ --disable-glut \
+ --enable-glx-tls"
+
+# Multiple virtual/gl providers being built breaks staging
+EXCLUDE_FROM_WORLD = "1"
+
+# ie mesa-dri could be empty and mesa-dri-dev RDEPENDS on it
+ALLOW_EMPTY_${PN} = "1"
+
+PACKAGES =+ "libegl libegl-dev libegl-dbg libglu libglu-dev libosmesa libosmesa-dev libgl libgl-dev"
+FILES_libegl = "${libdir}/libEGL.so.* ${libdir}/egl/*.so"
+FILES_libgl = "${libdir}/libGL.so.*"
+FILES_libglu = "${libdir}/libGLU.so.*"
+FILES_libosmesa = "${libdir}/libOSMesa.so.*"
+
+FILES_libegl-dev = "${libdir}/libEGL.* ${includedir}/EGL"
+FILES_libgl-dev = "${libdir}/libGL.* ${includedir}/GL"
+FILES_libglu-dev = "${libdir}/libGLU.* ${includedir}/GL/glu*.h"
+FILES_libosmesa-dev = "${libdir}/libOSMesa.* ${includedir}/osmesa.h"
+
+FILES_${PN}-dbg += "${libdir}/dri/.debug/*"
+FILES_libegl-dbg += "${libdir}/egl/.debug/*"
diff --git a/recipes-graphics/mesa/mesa-dri-glsl-native_8.0.1.bb b/recipes-graphics/mesa/mesa-dri-glsl-native_8.0.1.bb
index 9c51050..2183857 100644
--- a/recipes-graphics/mesa/mesa-dri-glsl-native_8.0.1.bb
+++ b/recipes-graphics/mesa/mesa-dri-glsl-native_8.0.1.bb
@@ -1,27 +1,27 @@
-DESCRIPTION = "gl shader language specific build from mesa-dri"
-HOMEPAGE = "http://mesa3d.org"
-BUGTRACKER = "https://bugs.freedesktop.org"
-SECTION = "x11"
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://glsl_parser.cpp;beginline=3;endline=33;md5=d078f1cddc2fc355719c090482254bd9"
-
-DEPENDS = "makedepend-native"
-
-SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2"
-SRC_URI[md5sum] = "24eeebf66971809d8f40775a379b36c9"
-SRC_URI[sha256sum] = "593af02ea2b5b7afb057a12c550f2c03b1d1cf59a716972d601c1499545ea0a7"
-
-S = "${WORKDIR}/Mesa-${PV}/src/glsl/"
-
-inherit native
-
-# use default config for native build
-do_configure_prepend() {
- ln -s ${S}/../../configs/default ${S}/../../configs/current
-}
-
-do_install() {
- install -d ${D}/${bindir}/glsl
- install -m 755 ${S}/builtin_compiler ${D}/${bindir}/glsl/builtin_compiler
- install -m 755 ${S}/glsl_compiler ${D}/${bindir}/glsl/glsl_compiler
-}
+DESCRIPTION = "gl shader language specific build from mesa-dri"
+HOMEPAGE = "http://mesa3d.org"
+BUGTRACKER = "https://bugs.freedesktop.org"
+SECTION = "x11"
+LICENSE = "GPLv3+"
+LIC_FILES_CHKSUM = "file://glsl_parser.cpp;beginline=3;endline=33;md5=d078f1cddc2fc355719c090482254bd9"
+
+DEPENDS = "makedepend-native"
+
+SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2"
+SRC_URI[md5sum] = "24eeebf66971809d8f40775a379b36c9"
+SRC_URI[sha256sum] = "593af02ea2b5b7afb057a12c550f2c03b1d1cf59a716972d601c1499545ea0a7"
+
+S = "${WORKDIR}/Mesa-${PV}/src/glsl/"
+
+inherit native
+
+# use default config for native build
+do_configure_prepend() {
+ ln -s ${S}/../../configs/default ${S}/../../configs/current
+}
+
+do_install() {
+ install -d ${D}/${bindir}/glsl
+ install -m 755 ${S}/builtin_compiler ${D}/${bindir}/glsl/builtin_compiler
+ install -m 755 ${S}/glsl_compiler ${D}/${bindir}/glsl/glsl_compiler
+}
diff --git a/recipes-graphics/mesa/mesa-dri.inc b/recipes-graphics/mesa/mesa-dri.inc
index 4eafaa7..d4308e4 100644
--- a/recipes-graphics/mesa/mesa-dri.inc
+++ b/recipes-graphics/mesa/mesa-dri.inc
@@ -1,26 +1,26 @@
-PROTO_DEPS += "dri2proto"
-LIB_DEPS += "libdrm expat"
-
-# most of our targets do not have DRI so will use mesa-xlib
-DEFAULT_PREFERENCE = "-1"
-
-DRIDRIVERS = "swrast"
-DRIDRIVERS_append_x86 = ",i915,i965"
-DRIDRIVERS_append_x86-64 = ",i915,i965"
-
-EXTRA_OECONF += "--disable-gallium --without-gallium-drivers --with-dri-drivers=${DRIDRIVERS} --enable-gles2 --enable-glx --enable-dri --disable-osmesa --with-egl-platform=drm --disable-xlib-glx"
-
-python populate_packages_prepend() {
- import os.path
-
- dri_drivers_root = os.path.join(d.getVar('libdir', 1), "dri")
-
- do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='')
-}
-
-PACKAGES_DYNAMIC = "mesa-dri-driver-*"
-
-FILES_${PN}-dbg += "${libdir}/dri/.debug/*"
-
-FILES_${PN}-driver-swrast += "${libdir}/dri/libdricore.so"
-FILES_${PN}-driver-swrast += "${libdir}/dri/libglsl.so"
+PROTO_DEPS += "dri2proto"
+LIB_DEPS += "libdrm expat"
+
+# most of our targets do not have DRI so will use mesa-xlib
+DEFAULT_PREFERENCE = "-1"
+
+DRIDRIVERS = "swrast"
+DRIDRIVERS_append_x86 = ",i915,i965"
+DRIDRIVERS_append_x86-64 = ",i915,i965"
+
+EXTRA_OECONF += "--disable-gallium --without-gallium-drivers --with-dri-drivers=${DRIDRIVERS} --enable-gles2 --enable-glx --enable-dri --disable-osmesa --with-egl-platform=drm --disable-xlib-glx"
+
+python populate_packages_prepend() {
+ import os.path
+
+ dri_drivers_root = os.path.join(d.getVar('libdir', 1), "dri")
+
+ do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='')
+}
+
+PACKAGES_DYNAMIC = "mesa-dri-driver-*"
+
+FILES_${PN}-dbg += "${libdir}/dri/.debug/*"
+
+FILES_${PN}-driver-swrast += "${libdir}/dri/libdricore.so"
+FILES_${PN}-driver-swrast += "${libdir}/dri/libglsl.so"
diff --git a/recipes-graphics/mesa/mesa-dri_8.0.1.bb b/recipes-graphics/mesa/mesa-dri_8.0.1.bb
index 09811a1..219e555 100644
--- a/recipes-graphics/mesa/mesa-dri_8.0.1.bb
+++ b/recipes-graphics/mesa/mesa-dri_8.0.1.bb
@@ -1,4 +1,4 @@
-include mesa-common.inc
-include mesa-${PV}.inc
-include mesa-dri.inc
-PR = "${INC_PR}.1"
+include mesa-common.inc
+include mesa-${PV}.inc
+include mesa-dri.inc
+PR = "${INC_PR}.1"
diff --git a/recipes-graphics/mesa/mesa/crossfix-mklib.patch b/recipes-graphics/mesa/mesa/crossfix-mklib.patch
new file mode 100644
index 0000000..dc08228
--- /dev/null
+++ b/recipes-graphics/mesa/mesa/crossfix-mklib.patch
@@ -0,0 +1,71 @@
+This patch is ported from WindRiver linux and to fix cross compile failure.
+
+And original commits are:
+commit 8d5ccc8113e1b51b0529a00c18a4aba956247e1b
+commit 5c4212084b871a0c0fb7d174280ec9a634637deb
+
+Upstream-Status: Pending
+
+Signed-off-by: Kang Kai <kai.kang@windriver.com>
+
+--- Mesa-7.10.2/bin/mklib.orig 2011-09-28 16:15:34.170000074 +0800
++++ Mesa-7.10.2/bin/mklib 2011-09-28 16:15:42.370000073 +0800
+@@ -49,8 +49,8 @@
+ /*) ;;
+ *) FILE="$ORIG_DIR/$FILE" ;;
+ esac
+- MEMBERS=`ar t $FILE`
+- ar x $FILE
++ MEMBERS=`${AR} t $FILE`
++ ${AR} x $FILE
+ for MEMBER in $MEMBERS ; do
+ NEWFILES="$NEWFILES $DIR/$MEMBER"
+ done
+@@ -77,7 +77,7 @@
+ make_ar_static_lib() {
+ OPTS=$1
+ shift;
+- RANLIB=$1
++ USE_RANLIB=$1
+ shift;
+ LIBNAME=$1
+ shift;
+@@ -87,11 +87,11 @@
+ rm -f ${LIBNAME}
+
+ # make static lib
+- ar ${OPTS} ${LIBNAME} ${OBJECTS}
++ ${AR} ${OPTS} ${LIBNAME} ${OBJECTS}
+
+ # run ranlib
+- if [ ${RANLIB} = 1 ] ; then
+- ranlib ${LIBNAME}
++ if [ ${USE_RANLIB} = 1 ] ; then
++ ${RANLIB} ${LIBNAME}
+ fi
+
+ echo ${LIBNAME}
+@@ -313,9 +313,9 @@
+ if [ "x$LINK" = "x" ] ; then
+ # -linker was not specified so set default link command now
+ if [ $CPLUSPLUS = 1 ] ; then
+- LINK=g++
++ LINK=$CXX
+ else
+- LINK=gcc
++ LINK=$CC
+ fi
+ fi
+
+@@ -531,9 +531,9 @@
+ if [ "x$LINK" = "x" ] ; then
+ # -linker was not specified so set default link command now
+ if [ $CPLUSPLUS = 1 ] ; then
+- LINK=g++
++ LINK=${CXX}
+ else
+- LINK=gcc
++ LINK=${CC}
+ fi
+ fi
+
diff --git a/recipes-graphics/mesa/mesa/crossfix.patch b/recipes-graphics/mesa/mesa/crossfix.patch
index 38010f4..d300e2f 100644
--- a/recipes-graphics/mesa/mesa/crossfix.patch
+++ b/recipes-graphics/mesa/mesa/crossfix.patch
@@ -1,18 +1,18 @@
-Upstream-Status: Pending
-
-Index: Mesa-7.5/bin/mklib
-===================================================================
---- Mesa-7.5.orig/bin/mklib 2009-08-12 13:01:34.000000000 +0100
-+++ Mesa-7.5/bin/mklib 2009-08-12 13:04:19.000000000 +0100
-@@ -234,9 +234,9 @@
- if [ "x$LINK" = "x" ] ; then
- # -linker was not specified so set default link command now
- if [ $CPLUSPLUS = 1 ] ; then
-- LINK=g++
-+ LINK=$CXX
- else
-- LINK=gcc
-+ LINK=$CC
- fi
- fi
-
+Upstream-Status: Pending
+
+Index: Mesa-7.5/bin/mklib
+===================================================================
+--- Mesa-7.5.orig/bin/mklib 2009-08-12 13:01:34.000000000 +0100
++++ Mesa-7.5/bin/mklib 2009-08-12 13:04:19.000000000 +0100
+@@ -234,9 +234,9 @@
+ if [ "x$LINK" = "x" ] ; then
+ # -linker was not specified so set default link command now
+ if [ $CPLUSPLUS = 1 ] ; then
+- LINK=g++
++ LINK=$CXX
+ else
+- LINK=gcc
++ LINK=$CC
+ fi
+ fi
+
diff --git a/recipes-graphics/mesa/mesa/mesa_fix_for_x32.patch b/recipes-graphics/mesa/mesa/mesa_fix_for_x32.patch
index 83b1587..8994faf 100644
--- a/recipes-graphics/mesa/mesa/mesa_fix_for_x32.patch
+++ b/recipes-graphics/mesa/mesa/mesa_fix_for_x32.patch
@@ -1,38 +1,38 @@
-Upstream-Status: Pending
-
-get correct compiler options for x32 gcc.
-
-Received this patch from H.J. Lu <hjl.tools@gmail.com>
-
-Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/12/06
-
---- Mesa-7.11/bin/mklib.x32 2011-12-06 13:15:17.968695114 -0800
-+++ Mesa-7.11/bin/mklib 2011-12-06 13:17:13.872152249 -0800
-@@ -335,7 +335,12 @@ case $ARCH in
- set ${OBJECTS}
- ABI32=`file $1 | grep 32-bit`
- if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then
-- OPTS="-m32 ${OPTS}"
-+ ABIX32=`file $1 | grep x86-64`
-+ if [ "${ABI32}" ]; then
-+ OPTS="-mx32 ${OPTS}"
-+ else
-+ OPTS="-m32 ${OPTS}"
-+ fi
- fi
-
- if [ "${ALTOPTS}" ] ; then
-@@ -392,7 +397,12 @@ case $ARCH in
- set ${OBJECTS}
- ABI32=`file $1 | grep 32-bit`
- if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then
-- OPTS="-m32 ${OPTS}"
-+ ABIX32=`file $1 | grep x86-64`
-+ if [ "${ABI32}" ]; then
-+ OPTS="-mx32 ${OPTS}"
-+ else
-+ OPTS="-m32 ${OPTS}"
-+ fi
- fi
- if [ "${ALTOPTS}" ] ; then
- OPTS=${ALTOPTS}
+Upstream-Status: Pending
+
+get correct compiler options for x32 gcc.
+
+Received this patch from H.J. Lu <hjl.tools@gmail.com>
+
+Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/12/06
+
+--- Mesa-7.11/bin/mklib.x32 2011-12-06 13:15:17.968695114 -0800
++++ Mesa-7.11/bin/mklib 2011-12-06 13:17:13.872152249 -0800
+@@ -335,7 +335,12 @@ case $ARCH in
+ set ${OBJECTS}
+ ABI32=`file $1 | grep 32-bit`
+ if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then
+- OPTS="-m32 ${OPTS}"
++ ABIX32=`file $1 | grep x86-64`
++ if [ "${ABI32}" ]; then
++ OPTS="-mx32 ${OPTS}"
++ else
++ OPTS="-m32 ${OPTS}"
++ fi
+ fi
+
+ if [ "${ALTOPTS}" ] ; then
+@@ -392,7 +397,12 @@ case $ARCH in
+ set ${OBJECTS}
+ ABI32=`file $1 | grep 32-bit`
+ if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then
+- OPTS="-m32 ${OPTS}"
++ ABIX32=`file $1 | grep x86-64`
++ if [ "${ABI32}" ]; then
++ OPTS="-mx32 ${OPTS}"
++ else
++ OPTS="-m32 ${OPTS}"
++ fi
+ fi
+ if [ "${ALTOPTS}" ] ; then
+ OPTS=${ALTOPTS}
diff --git a/recipes-graphics/mesa/mesa/remove_OES_EGL_image_externals.patch b/recipes-graphics/mesa/mesa/remove_OES_EGL_image_externals.patch
index c231483..6f5fa14 100644
--- a/recipes-graphics/mesa/mesa/remove_OES_EGL_image_externals.patch
+++ b/recipes-graphics/mesa/mesa/remove_OES_EGL_image_externals.patch
@@ -1,22 +1,22 @@
-Index: Mesa-8.0.1/src/glsl/builtins/profiles/OES_EGL_image_external.frag
-===================================================================
---- Mesa-8.0.1.orig/src/glsl/builtins/profiles/OES_EGL_image_external.frag 2012-03-20 18:22:02.645070696 +0200
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
-@@ -1,6 +0,0 @@
--#version 100
--#extension GL_OES_EGL_image_external : enable
--
--vec4 texture2D(samplerExternalOES sampler, vec2 coord);
--vec4 texture2DProj(samplerExternalOES sampler, vec3 coord);
--vec4 texture2DProj(samplerExternalOES sampler, vec4 coord);
-Index: Mesa-8.0.1/src/glsl/builtins/profiles/OES_EGL_image_external.vert
-===================================================================
---- Mesa-8.0.1.orig/src/glsl/builtins/profiles/OES_EGL_image_external.vert 2012-03-20 18:22:02.661070696 +0200
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
-@@ -1,6 +0,0 @@
--#version 100
--#extension GL_OES_EGL_image_external : enable
--
--vec4 texture2D(samplerExternalOES sampler, vec2 coord);
--vec4 texture2DProj(samplerExternalOES sampler, vec3 coord);
--vec4 texture2DProj(samplerExternalOES sampler, vec4 coord);
+Index: Mesa-8.0.1/src/glsl/builtins/profiles/OES_EGL_image_external.frag
+===================================================================
+--- Mesa-8.0.1.orig/src/glsl/builtins/profiles/OES_EGL_image_external.frag 2012-03-20 18:22:02.645070696 +0200
++++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+@@ -1,6 +0,0 @@
+-#version 100
+-#extension GL_OES_EGL_image_external : enable
+-
+-vec4 texture2D(samplerExternalOES sampler, vec2 coord);
+-vec4 texture2DProj(samplerExternalOES sampler, vec3 coord);
+-vec4 texture2DProj(samplerExternalOES sampler, vec4 coord);
+Index: Mesa-8.0.1/src/glsl/builtins/profiles/OES_EGL_image_external.vert
+===================================================================
+--- Mesa-8.0.1.orig/src/glsl/builtins/profiles/OES_EGL_image_external.vert 2012-03-20 18:22:02.661070696 +0200
++++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+@@ -1,6 +0,0 @@
+-#version 100
+-#extension GL_OES_EGL_image_external : enable
+-
+-vec4 texture2D(samplerExternalOES sampler, vec2 coord);
+-vec4 texture2DProj(samplerExternalOES sampler, vec3 coord);
+-vec4 texture2DProj(samplerExternalOES sampler, vec4 coord);