diff --git a/gst-libs/gst/gl/gstgles2.h b/gst-libs/gst/gl/gstgles2.h
index a9e53f7ce6..88d18d171f 100644
--- a/gst-libs/gst/gl/gstgles2.h
+++ b/gst-libs/gst/gl/gstgles2.h
@@ -110,12 +110,6 @@ G_BEGIN_DECLS
 #define glUniformMatrix2fvARB glUniformMatrix2fv
 #define glUniformMatrix3fvARB glUniformMatrix3fv
 #define glUniformMatrix4fvARB glUniformMatrix4fv
-#define glUniformMatrix2x3fvARB glUniformMatrix2x3fv
-#define glUniformMatrix2x4fvARB glUniformMatrix2x4fv
-#define glUniformMatrix3x2fvARB glUniformMatrix3x2fv
-#define glUniformMatrix3x3fvARB glUniformMatrix3x4fv
-#define glUniformMatrix4x2fvARB glUniformMatrix4x2fv
-#define glUniformMatrix4x3fvARB glUniformMatrix4x3fv
 #define glGetUniformLocationARB glGetUniformLocation
 #define glGetAttribLocationARB glGetAttribLocation
 #define glBindAttribLocationARB glBindAttribLocation
diff --git a/gst-libs/gst/gl/gstglshader.c b/gst-libs/gst/gl/gstglshader.c
index 0ae7b30200..852d4ae416 100644
--- a/gst-libs/gst/gl/gstglshader.c
+++ b/gst-libs/gst/gl/gstglshader.c
@@ -742,6 +742,7 @@ gst_gl_shader_set_uniform_matrix_2fv (GstGLShader * shader, const gchar * name,
   glUniformMatrix2fvARB (location, count, transpose, value);
 }
 
+#ifndef OPENGL_ES2
 void
 gst_gl_shader_set_uniform_matrix_2x3fv (GstGLShader * shader,
     const gchar * name, GLsizei count, GLboolean transpose,
@@ -775,6 +776,7 @@ gst_gl_shader_set_uniform_matrix_2x4fv (GstGLShader * shader,
 
   glUniformMatrix2x4fv (location, count, transpose, value);
 }
+#endif
 
 void
 gst_gl_shader_set_uniform_matrix_3fv (GstGLShader * shader, const gchar * name,
@@ -792,6 +794,7 @@ gst_gl_shader_set_uniform_matrix_3fv (GstGLShader * shader, const gchar * name,
   glUniformMatrix3fvARB (location, count, transpose, value);
 }
 
+#ifndef OPENGL_ES2
 void
 gst_gl_shader_set_uniform_matrix_3x2fv (GstGLShader * shader,
     const gchar * name, GLsizei count, GLboolean transpose,
@@ -825,6 +828,7 @@ gst_gl_shader_set_uniform_matrix_3x4fv (GstGLShader * shader,
 
   glUniformMatrix3x4fv (location, count, transpose, value);
 }
+#endif
 
 void
 gst_gl_shader_set_uniform_matrix_4fv (GstGLShader * shader, const gchar * name,
@@ -842,6 +846,7 @@ gst_gl_shader_set_uniform_matrix_4fv (GstGLShader * shader, const gchar * name,
   glUniformMatrix4fvARB (location, count, transpose, value);
 }
 
+#ifndef OPENGL_ES2
 void
 gst_gl_shader_set_uniform_matrix_4x2fv (GstGLShader * shader,
     const gchar * name, GLsizei count, GLboolean transpose,
@@ -875,6 +880,7 @@ gst_gl_shader_set_uniform_matrix_4x3fv (GstGLShader * shader,
 
   glUniformMatrix4x3fv (location, count, transpose, value);
 }
+#endif
 
 GLint
 gst_gl_shader_get_attribute_location (GstGLShader * shader, const gchar * name)
diff --git a/gst-libs/gst/gl/gstglshader.h b/gst-libs/gst/gl/gstglshader.h
index a200805c7f..ddeb99c87f 100644
--- a/gst-libs/gst/gl/gstglshader.h
+++ b/gst-libs/gst/gl/gstglshader.h
@@ -1,4 +1,4 @@
-/* 
+/*
  * GStreamer
  * Copyright (C) 2008 Filippo Argiolas <filippo.argiolas@gmail.com>
  *
@@ -75,9 +75,9 @@ GType gst_gl_shader_get_type (void);
 
 GstGLShader * gst_gl_shader_new (void);
 
-void gst_gl_shader_set_vertex_source   (GstGLShader *shader, 
+void gst_gl_shader_set_vertex_source   (GstGLShader *shader,
 					const gchar *src);
-void gst_gl_shader_set_fragment_source (GstGLShader *shader, 
+void gst_gl_shader_set_fragment_source (GstGLShader *shader,
 					const gchar *src);
 const gchar * gst_gl_shader_get_vertex_source (GstGLShader *shader);
 const gchar * gst_gl_shader_get_fragment_source (GstGLShader *shader);
@@ -110,22 +110,28 @@ void gst_gl_shader_set_uniform_4f (GstGLShader *shader, const gchar *name, gfloa
 void gst_gl_shader_set_uniform_4fv (GstGLShader *shader, const gchar *name, guint count, gfloat * value);
 void gst_gl_shader_set_uniform_matrix_2fv (GstGLShader * shader, const gchar * name,
   GLsizei count, GLboolean transpose, const GLfloat* value);
+#ifndef OPENGL_ES2
 void gst_gl_shader_set_uniform_matrix_2x3fv (GstGLShader * shader, const gchar * name,
   GLsizei count, GLboolean transpose, const GLfloat* value);
 void gst_gl_shader_set_uniform_matrix_2x4fv (GstGLShader * shader, const gchar * name,
   GLsizei count, GLboolean transpose, const GLfloat* value);
+#endif
 void gst_gl_shader_set_uniform_matrix_3fv (GstGLShader * shader, const gchar * name,
   GLsizei count, GLboolean transpose, const GLfloat* value);
+#ifndef OPENGL_ES2
 void gst_gl_shader_set_uniform_matrix_3x2fv (GstGLShader * shader, const gchar * name,
   GLsizei count, GLboolean transpose, const GLfloat* value);
 void gst_gl_shader_set_uniform_matrix_3x4fv (GstGLShader * shader, const gchar * name,
   GLsizei count, GLboolean transpose, const GLfloat* value);
+#endif
 void gst_gl_shader_set_uniform_matrix_4fv (GstGLShader * shader, const gchar * name,
   GLsizei count, GLboolean transpose, const GLfloat* value);
+#ifndef OPENGL_ES2
 void gst_gl_shader_set_uniform_matrix_4x2fv (GstGLShader * shader, const gchar * name,
   GLsizei count, GLboolean transpose, const GLfloat* value);
 void gst_gl_shader_set_uniform_matrix_4x3fv (GstGLShader * shader, const gchar * name,
   GLsizei count, GLboolean transpose, const GLfloat* value);
+#endif
 
 GLint gst_gl_shader_get_attribute_location (GstGLShader *shader, const gchar *name);
 void gst_gl_shader_bind_attribute_location (GstGLShader * shader, GLuint index, const gchar * name);