summaryrefslogtreecommitdiff
path: root/src/mapi/glapi
AgeCommit message (Collapse)Author
2011-01-29mapi: Workaround a bug in makedepend.Chia-I Wu
makedepend would crash when a source includes a header indirectly, such as #define HEADER "some-header.h" #include HEADER Do not define HEADER (makedepend would detects this as an incomplete include) and add the dependency manually in the Makefile. This should hopefully fix bug #33374.
2011-01-27glapi: add @GOTPCREL relocation typeDimitry Andric
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=33440 This replaces commit 731ec60da3ccb92f5bfb4d6f1bc3c8e712751376 NOTE: This is a candidate for the 7.9 and 7.10 branches Signed-off-by: Brian Paul <brianp@vmware.com>
2011-01-25Revert "glapi: adding missing @GOTPCREL qualifer in glapi_x86-64.S"Brian Paul
This reverts commit 731ec60da3ccb92f5bfb4d6f1bc3c8e712751376. This change causes crashes in the x86-64 dispatch code.
2011-01-25glapi: adding @ char before type specifier in glapi_x86.SDimitry Andric
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=33433 NOTE: This is a candidate for the 7.9 and 7.10 branches. Signed-off-by: Brian Paul <brianp@vmware.com>
2011-01-25glapi: adding missing @GOTPCREL qualifer in glapi_x86-64.SDimitry Andric
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=33440 NOTE: This is a candidate for the 7.9 and 7.10 branches Signed-off-by: Brian Paul <brianp@vmware.com>
2011-01-22scons: Add support for GLES.Chia-I Wu
GLES can be enabled by running scons with $ scons gles=yes When gles=yes is given, the build is changed in three ways. First, libmesa.a will be built with FEATURE_ES1 and FEATURE_ES2. This makes DRI drivers and libEGL support and advertise GLES support. Second, GLES libraries will be created. They are libGLESv1_CM, libGLESv2, and libglapi. Last, libGL or opengl32 will link to libglapi. This change is required as _glapi_* will be declared as __declspec(dllimport) in libmesa.a on windows. libmesa.a expects those symbols to be defined in another DLL. Due to this change to GL, GLES support is marked experimental. Note that GLES requires libxml2-python to generate some of its sources.
2011-01-20mesa: clean-up _mesa_lookup_prim_by_nr()Brian Paul
Remove the redundant public _mesa_prim_name[] array.
2011-01-20glapi: Fix OpenGL and OpenGL ES interop.Chia-I Wu
When --enable-shared-glapi is specified, libGL will share libglapi with OpenGL ES instead of defining its own copy of glapi. This makes sure an app will get only one copy of glapi in its address space. The new option is disabled by default. When enabled, libGL and libglapi must be built from the same source tree and distributed together. This requirement comes from the fact that the dispatch offsets used by these libraries are re-assigned whenever GLAPI XMLs are changed. For GLX, indirect rendering for has_different_protocol() functions is tricky. A has_different_protocol() function is assigned only one dispatch offset, yet each entry point needs a different protocol opcode. It cannot be supported by the shared glapi. The fix to this is to make glXGetProcAddress handle such functions specially before calling _glapi_get_proc_address. Note that these files are automatically generated/re-generated src/glx/indirect.c src/glx/indirect.h src/mapi/glapi/glapi_mapi_tmp.h
2011-01-20glapi: Fix OpenGL ES 1.1 and 2.0 interop.Chia-I Wu
Move _glapi_* symbols from libGLESv1_CM.so and libGLESv2.so to libglapi.so. This makes sure an app will get only one copy of glapi in its address space. Note that with this change, libGLES* and libglapi must be built from the same source tree and distributed together. This requirement comes from the fact that the dispatch offsets used by these libraries are re-assigned whenever GLAPI XMLs are changed.
2011-01-20glapi: Add gl_and_es_API.xml.Chia-I Wu
gl_and_es_API.xml defines OpenGL ES 1.1 and 2.0 API as well as OpenGL API. It consists of gl_API.xml and the newly added es_EXT.xml, ARB_get_program_binary.xml, OES_single_precision.xml, and OES_fixed_point.xml.
2011-01-15glapi: regenerated filesBrian Paul
2011-01-15glapi: new entrypoint specs for GL_ARB_draw_buffers_blendBrian Paul
2011-01-15glapi: regenerated filesBrian Paul
2011-01-15glapi: GL_ARB_instanced_arrays supportBrian Paul
2011-01-14glapi: Regenerate for GL_ARB_ES2_compatibility.Eric Anholt
2011-01-14glapi: Add entrypoints and enums for GL_ARB_ES2_compatibility.Eric Anholt
2010-12-18mapi: Clean up sources.mk.Chia-I Wu
Rename MAPI_GLAPI_SOURCES to MAPI_UTIL_SOURCES. Rename macro MAPI_GLAPI_CURRENT to MAPI_MODE_UTIL. Update the comments to make it clear that mapi may be used in two ways and how.
2010-12-18mapi: Clean up u_current interface.Chia-I Wu
Try not to use macros to make u_current.h appear to be glapi.h. Use u_current.h to implement glapi.h instead whenever possible.
2010-12-02WIN32_THREADS -> WIN32José Fonseca
Fixes nasty bug where some parts of the code didn't define WIN32_THREADS and were using the integer mutex implementation, causing even confusion to the debuggers. And there is little interest of other thread implemenation on Win32 besides Win32 threads.
2010-11-29drivers/x11: unifdef XFree86ServerAdam Jackson
This code was for the old GLcore build of the software rasteriser. The X server switched to a DRI driver for software indirect GLX long ago. Signed-off-by: Adam Jackson <ajax@redhat.com>
2010-11-21mesa: hook up GL 3.x entrypointsBrian Paul
Fix up some details in the xml files and regenerate dispatch files.
2010-11-21glapi: rename GL3.xml to GL3x.xml as it covers all GL 3.x versionsBrian Paul
2010-11-17mesa: upgrade to glext.h version 66Brian Paul
The type of the num/count parameter to glProgramParameters4[df]vNV() changed so some API dispatch code needed updates too.
2010-11-01scons: Revamp how to specify targets to build.José Fonseca
Use scons target and dependency system instead of ad-hoc options. Now is simply a matter of naming what to build. For example: scons libgl-xlib scons libgl-gdi scons graw-progs scons llvmpipe and so on. And there is also the possibility of scepcified subdirs, e.g. scons src/gallium/drivers If nothing is specified then everything will be build. There might be some rough corners over the next days. Please bare with me.
2010-10-29Merge branch 'glapi-reorg'Chia-I Wu
Conflicts: src/mapi/glapi/glapi_sparc.S src/mapi/glapi/glapi_x86.S src/mapi/glapi/glapidispatch.h src/mapi/glapi/glapioffsets.h src/mapi/glapi/glprocs.h
2010-10-28glapi: regenerated API filesBrian Paul
2010-10-28glapi: include EXT_gpu_shader4.xmlBrian Paul
2010-10-28glapi: xml spec file for GL_EXT_gpu_shader4Brian Paul
2010-10-27glapi: Commit files changed by previous commitIan Romanick
2010-10-27glapi: Add GL_EXT_separate_shader_objectsIan Romanick
2010-10-27glapi: Merge glapioffsets.h into glapidispath.h.Chia-I Wu
Move defines in glapioffsets.h to glapidispatch.h. Rename _gloffset_FIRST_DYNAMIC to _gloffset_COUNT, which is equal to the number of entries in _glapi_table. Consistently use SET_by_offset, GET_by_offset, CALL_by_offset, and _gloffset_* to recursively define all SET/GET/CALL macros.
2010-10-27glapi: Do not use glapioffsets.h.Chia-I Wu
glapioffsets.h exists for the same reason as glapidispatch.h does. It is of no use to glapi. This commit also drops the use of glapioffsets.h in glx as glx is considered an extension to glapi when it comes to defining public GL entries.
2010-10-27glapi: Move glapidispatch.h to core mesa.Chia-I Wu
It is a core mesa header, not a glapi header.
2010-10-27glapi: Do not use glapidispatch.h.Chia-I Wu
glapidispatch.h exists so that core mesa (libmesa.a) can be built for DRI drivers or for non-DRI drivers as a compile time decision (whether IN_DRI_DRIVER is defined). It is of no use to glapi. This commit also drops the use of glapidispatch.h in glx and libgl-xlib as they are considered extensions to glapi when it comes to defining public GL entries.
2010-10-23mesa: regenerated API files for GL_EXT_texture_integerBrian Paul
2010-10-23glapi: include/build EXT_texture_integer.xmlBrian Paul
2010-10-23glapi: GL_EXT_texture_integer APIBrian Paul
2010-10-21mesa: regenerated files with primitive restartBrian Paul
2010-10-21mesa: API spec for primitive restartBrian Paul
2010-10-13Drop GLcontext typedef and use struct gl_context insteadKristian Høgsberg
2010-09-27Regenerate files changed by previous commitIan Romanick
2010-09-15glapi: Fix ES build errors again.Chia-I Wu
This fixes an error in GLAPI ES. My build is ok with or without this patch, and the error affects others' setups. [Patch from Francesco Marella]
2010-09-15glapi: Fix build errors for ES.Chia-I Wu
The latest glext.h defines GL_FIXED. Test GL_OES_fixed_point instead to decide whether to define GLfixed and GLclampx. This fixes fdo bug #30205.
2010-09-14mesa: update to version 64 of GL/glext.hBrian Paul
A number of other files had to be updated as well because const qualifiers were added to the glMultiDrawArrays() function. Also, GL_FIXED is now defined in glext.h.
2010-09-09Revert "glapi: Implement optional dispatch logging"Kristian Høgsberg
This reverts commit b9abc6139a310677a37754ea7172d976dbf56979 and the follow on fixes (7aae704 and 6fe1b47). It's changing the glapi/driver ABI and causes a number of problems for debug/non-debug builds.
2010-09-09glapi: Fix non-debug buildsJakob Bornecrantz
2010-09-09glapi: Implement optional dispatch loggingKristian Høgsberg
There's a useful feature buried in glapi to log all API calls to stderr. Unfortunately it requires editing the code and then it's enabled unconditionally for that build. This patch builds in API logging for debug builds and makes it run-time switchable by setting MESA_DEBUG=dispatch.
2010-08-30glapi: fix generator which got out of sync with the codebaseLuca Barbieri
The __GLapi typedef was removed in c356f5867f2c1fad7155df538b9affa8dbdcf869, but the code generator hasn't been updated.
2010-08-23glapi: Clean up header inclusions.Chia-I Wu
Do not rely on PUBLIC being defined in glapi.h. Do not include core mesa headers.
2010-08-21glapi: Move public function/variable declarations to glapi.h.Chia-I Wu
glapi defines an interface that is used by DRI drivers. It must not be changed in an ABI incompatible way. This commit moves all functions/variables belong to the interface to glapi.h. Instead of including u_current.h from glapi.h, u_current.h now includes glapi.h.