render/gles2: unify fragment shader

Instead of having 3 different fragment shaders for textures and 1
more for quads, unify them all and compile different variants via
a SOURCE constant.

In the future, we will have more variant dimensions: pre-multiplied
alpha on/off, color transformation, etc. It will become inpractical
to have one file per combination.

Weston has a similar approach:
https://gitlab.freedesktop.org/wayland/weston/-/blob/main/libweston/renderer-gl/fragment.glsl
3 jobs for gles2-uber-shader in 1 minute and 58 seconds (queued for 1 second)
latest