native: use std=gnuc99

Required for OLPC toolchain, hopefully it will not cause problems
with others.
gallium: add PIPE_CAP_MAX_VERTEX_BUFFERS capability
driver: move vertex buffer interleaving to u_vbuf

Remove code for vertex buffer interleaving from the driver; this is
already implemented in u_vbuf, we can simply use that code after
adding the maximum vertex buffer capability.
driver: do transfers in-place if possible

Only allocate and copy a buffer when this is neccessary, when a
texture needs to be tiled.
driver: move etna_tex to etnaviv
driver: add fences
comments update
driver: support cbuf without zsbuf

Render to color buffer without depth surface.
zsbuf without cbuf (depth only) should work as well, however this is untested.
driver: support unbind constant buffer

This is a no-op because we only support user buffers and don't keep
the pointer around. The memory is simply copied when setting the
buffer.
Add POSIX_C_SOURCE and GNU_SOURCE defines

These are needed on many newer platforms, include them by default
so that they don't have to be defined in PLATFORM_CFLAGS.
driver: fix stencil alpha in mesa

Set stencil operations to KEEP if write mask is 0.
When the write mask is 0 and the operations are not set to KEEP,
the GPU writes the depth buffer for the entire primitive and not
just the area where the stencil test condition holds.
driver: fix basic texture support
driver: move etna_bswap to lib

etna_bswap is only used for the demos, not by mesa/gallium, and is also
not specific to Vivante. It should not be part of the driver.
driver: more reorganization

move reusable part of etna_fb and etna_rs to libetnaviv
(also useful for future 2D/SVG library), and the part
that is closely coupled to the demos to lib/fbdemos.
documentation update
driver: return a fence from flush_frontbuffer if requested
documentation updates
driver: re-use fences

Keep fences in a freelist, and re-use them when possible. This
avoids having to burden the kernel with creating new ones all the
time.
driver: prevent reuse of fence if still to be signalled

This avoids fences that are signalled prematurely because
they are still in the queue while being reused.
Fix "make rev" compilation error