targets/surfaceless: Add support for Chrome OS surfaceless
Implement a new dEQP target, "surfaceless", that supports offscreen
rendering using Chrome OS's EGL null platform. This is based on
intel's work to add support for "drm" target, but extends it to work
on ARM as well.
dEQP could be ran with --deqp-surface-type=fbo because the native EGL
platform does not support EGLSurfaces. However, because of b:
27656575,
it must be run with --deqp-surface-type=pbuffer at the moment.
Unlike all of dEQP's other EGL-derived platforms (x11::egl::Platform,
Android::Platform, rpi::Platform, etc), class surfaceless::Platform does
not inherit from eglu::Platform and it reuses very little of dEQP's
existing EGL code. I had to re-invent the wheel when implementing the DRM
platform because dEQP's existing EGL code relies heavily on EGLSurfaces,
which Chrome's EGL surfaceless does not support.
BUG=chromium:543372
TEST=run deqp on veyron_jaq