!UPSTREAM: Add EXT_texture_array support for geometry shaders

TODO:

- Move into appropriate place in series

- Would it be better (or even feasible?) to convert the .vert to a
  .glsl and eliminate the redundant functions from the .frag?  Or
  maybe we should have a better mechanism for excluding/including Lod
  versions of texturing functions.
squash! !UPSTREAM: glsl: Enable various extensions for geometry shaders.

Don't enable ES extensions since ES doesn't support GS
glsl/builtins: Fix ARB_texture_cube_map_array built-in availability.

This patch adds texture() for isamplerCubeArray and usamplerCubeArray,
which were entirely missing.

It also makes texture() with a LOD bias fragment shader specific.  The
main GLSL specification explicitly says that texturing with LOD bias
should not be allowed for vertex shaders.

Affects Piglit's ARB_texture_cube_map_array/compiler/tex_bias-01.vert.
which tries to use bias in a vertex shader.  Currently, it expects this
to pass (so this patch regresses the test), but I've sent a patch to
reverse the expected behavior (so this patch would fix the updated test):
http://lists.freedesktop.org/archives/piglit/2013-June/006123.html

NOTE: This is a candidate for stable branches.

Cc: Paul Berry <stereotype441@gmail.com>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>