_mesa_meta_GenerateMipmap: Support all texture targets by generating shaders at runtime
authorAnuj Phogat <anuj.phogat@gmail.com>
Fri, 31 Aug 2012 20:51:39 +0000 (13:51 -0700)
committerAnuj Phogat <anuj.phogat@gmail.com>
Fri, 14 Sep 2012 18:23:03 +0000 (11:23 -0700)
commit299acac849eb8506de9760c94c6e8e8b1046d909
tree0c5bd5f19f31e6d0d6cedbd19fdca0287bd4a989
parentfb541662ebab5297e0e926f76ef5aacd8552b18e
_mesa_meta_GenerateMipmap: Support all texture targets by generating shaders at runtime

glsl path of _mesa_meta_GenerateMipmap() function would require different fragment
shaders depending on the texture target. This patch adds the code to generate
appropriate fragment shader programs at run time.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=54296

V2: Removed the code for integer textures as ARB is planning to
    disallow automatic mipmap generation for integer textures.
    Now using ralloc_asprintf in setup_glsl_generate_mipmap().

NOTE: This is a candidate for stable branches.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
src/mesa/drivers/common/meta.c
src/mesa/drivers/common/meta.h