st/egl_g3d: New EGL state tracker that uses Gallium.
This new (intermediate) EGL state tracker is the base work for EGL
drivers that uses Gallium. It makes it easier to support new window
systems.
Currently, there is support only for X11. This driver supports multiple
APIs (OpenVG, OpenGL, ...) and supports hardware acceleration through
winsys/drm.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Set the screen surface size to the mode size, as the spec requires the
screen surface size to be larger than the mode size. Besides, bind the
API to OpenGL as they are written in it.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
progs: Add missing EGL_RENDERABLE_TYPE for EGL demos.
The default value of EGL_RENDERABLE_TYPE is EGL_OPENGL_ES_BIT. The
proper values should be specified if we are not using OpenGL ES.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
st_api.c is supposed to define st_api_OpenGL to advertise OpenGL
support. However, the linker discards the symbol because it has no
user. It is better to leave this to other state trackers that link to
libmesagallium.a.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
This was a silent dependency before, but now we really need 1.4.11 for
INTEL_swap_event support, so check for it.
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Fix compressed texture loads for non-minimal pitches
The current glCompressedTexImage support in the state tracker assumes
that compressed textures have minimal pitch.
However, in some cases this is not true, such as for mipmaps of non-POT
compressed textures on nVidia hardware.
This patch adds a check and does a memcpy for each line instead of the
whole image in that case.
Signed-off-by: Keith Whitwell <keithw@vmware.com>
Tweaks for C90 compilation.
the xorg state tracker really wants the driver to handle overlapping
blits, and r300 uses u_blitter for blits. This patch adds overlapping
blit support via a temporary surface when its required.
Explain how to build for windows. Both MSVC 9 and cross MinGW supported.
Stop documenting LLVM 2.5 as supported. It still supported at the moment
but it will soon stop being.
egl_softpipe: Remove the unnecessary call to _eglSwapBuffers.
The call to _eglSwapBuffers is unnecessary, and the function is missing
when -fvisibility=hidden. Also remove the extraneous braces and indent
the block.