xserver: Branch 'xgl-0-0-1' - 2 commits
David Reveman
davidr at kemper.freedesktop.org
Thu Oct 19 18:24:05 EEST 2006
GL/glx/indirect_dispatch.c | 6
GL/glx/indirect_dispatch_swap.c | 6
configure.ac | 10
hw/xgl/Makefile.am | 2
hw/xgl/egl/xeglinit.c | 6
hw/xgl/glx/xglx.c | 13
hw/xgl/glx/xglxinit.c | 6
hw/xgl/glxext/xglglxext.c | 554 ++++++++++++++++-----------------------
hw/xgl/glxext/xglglxlog.c | 558 ++++++++++++++++------------------------
hw/xgl/xgl.h | 12
hw/xgl/xglinit.c | 6
hw/xgl/xglinput.c | 177 ++++++++++++
hw/xgl/xglparse.c | 33 ++
include/xgl-config.h.in | 3
14 files changed, 738 insertions(+), 654 deletions(-)
New commits:
diff-tree b096b49ff5b43be96d815ecaad27afafb0af0461 (from 634eb2efc1dc294281673e2fea37f3296ca8017a)
Author: David Reveman <davidr at novell.com>
Date: Wed Oct 18 13:47:30 2006 -0400
Update for current version of Mesa.
diff --git a/GL/glx/indirect_dispatch.c b/GL/glx/indirect_dispatch.c
index cdd673f..8e22396 100644
--- a/GL/glx/indirect_dispatch.c
+++ b/GL/glx/indirect_dispatch.c
@@ -3690,7 +3690,7 @@ int __glXDisp_AreTexturesResidentEXT(__G
GLboolean retval;
GLboolean answerBuffer[200];
GLboolean * residences = __glXGetAnswerBuffer(cl, n, answerBuffer, sizeof(answerBuffer), 1);
- retval = CALL_AreTexturesResidentEXT( GET_DISPATCH(), (
+ retval = CALL_AreTexturesResident( GET_DISPATCH(), (
n,
(const GLuint *)(pc + 4),
residences
@@ -3714,7 +3714,7 @@ int __glXDisp_GenTexturesEXT(__GLXclient
GLuint answerBuffer[200];
GLuint * textures = __glXGetAnswerBuffer(cl, n * 4, answerBuffer, sizeof(answerBuffer), 4);
- CALL_GenTexturesEXT( GET_DISPATCH(), (
+ CALL_GenTextures( GET_DISPATCH(), (
n,
textures
) );
@@ -3734,7 +3734,7 @@ int __glXDisp_IsTextureEXT(__GLXclientSt
pc += __GLX_VENDPRIV_HDR_SIZE;
if ( cx != NULL ) {
GLboolean retval;
- retval = CALL_IsTextureEXT( GET_DISPATCH(), (
+ retval = CALL_IsTexture( GET_DISPATCH(), (
*(GLuint *)(pc + 0)
) );
__glXSendReply(cl->client, dummy_answer, 0, 0, GL_FALSE, retval);
diff --git a/GL/glx/indirect_dispatch_swap.c b/GL/glx/indirect_dispatch_swap.c
index 6c8c4c8..ff80398 100644
--- a/GL/glx/indirect_dispatch_swap.c
+++ b/GL/glx/indirect_dispatch_swap.c
@@ -3828,7 +3828,7 @@ int __glXDispSwap_AreTexturesResidentEXT
GLboolean retval;
GLboolean answerBuffer[200];
GLboolean * residences = __glXGetAnswerBuffer(cl, n, answerBuffer, sizeof(answerBuffer), 1);
- retval = CALL_AreTexturesResidentEXT( GET_DISPATCH(), (
+ retval = CALL_AreTexturesResident( GET_DISPATCH(), (
n,
(const GLuint *)bswap_32_array( (uint32_t *) (pc + 4), 0 ),
residences
@@ -3852,7 +3852,7 @@ int __glXDispSwap_GenTexturesEXT(__GLXcl
GLuint answerBuffer[200];
GLuint * textures = __glXGetAnswerBuffer(cl, n * 4, answerBuffer, sizeof(answerBuffer), 4);
- CALL_GenTexturesEXT( GET_DISPATCH(), (
+ CALL_GenTextures( GET_DISPATCH(), (
n,
textures
) );
@@ -3873,7 +3873,7 @@ int __glXDispSwap_IsTextureEXT(__GLXclie
pc += __GLX_VENDPRIV_HDR_SIZE;
if ( cx != NULL ) {
GLboolean retval;
- retval = CALL_IsTextureEXT( GET_DISPATCH(), (
+ retval = CALL_IsTexture( GET_DISPATCH(), (
(GLuint )bswap_CARD32 ( pc + 0 )
) );
__glXSendReplySwap(cl->client, dummy_answer, 0, 0, GL_FALSE, retval);
diff --git a/hw/xgl/glxext/xglglxext.c b/hw/xgl/glxext/xglglxext.c
index d851b2a..c4f0274 100644
--- a/hw/xgl/glxext/xglglxext.c
+++ b/hw/xgl/glxext/xglglxext.c
@@ -3162,22 +3162,6 @@ xglNoOpMultiTexCoord4svARB (GLenum targe
static void
xglNoOpSampleCoverageARB (GLclampf value, GLboolean invert) {}
-/* GL_EXT_texture_object */
-static GLboolean
-xglNoOpAreTexturesResidentEXT (GLsizei n,
- const GLuint *textures,
- GLboolean *residences)
-{
- return GL_FALSE;
-}
-static void
-xglNoOpGenTexturesEXT (GLsizei n, GLuint *textures) {}
-static GLboolean
-xglNoOpIsTextureEXT (GLuint texture)
-{
- return GL_FALSE;
-}
-
/* GL_SGIS_multisample */
static void
xglNoOpSampleMaskSGIS (GLclampf value, GLboolean invert) {}
@@ -4331,44 +4315,147 @@ static struct _glapi_table __glNativeRen
xglNoOpMultiTexCoord4ivARB,
0, /* glMultiTexCoord4sARB */
xglNoOpMultiTexCoord4svARB,
+ 0, /* glStencilFuncSeparate */
+ 0, /* glStencilOpSeparate */
+ 0, /* glStencilMaskSeparate */
0, /* glLoadTransposeMatrixfARB */
0, /* glLoadTransposeMatrixdARB */
0, /* glMultTransposeMatrixfARB */
0, /* glMultTransposeMatrixdARB */
xglNoOpSampleCoverageARB,
+ 0, /* glCompressedTexImage1DARB */
+ 0, /* glCompressedTexImage2DARB */
+ 0, /* glCompressedTexImage3DARB */
+ 0, /* glCompressedTexSubImage1DARB */
+ 0, /* glCompressedTexSubImage2DARB */
+ 0, /* glCompressedTexSubImage3DARB */
+ 0, /* glGetCompressedTexImageARB */
+ 0, /* glDisableVertexAttribArrayARB */
+ 0, /* glEnableVertexAttribArrayARB */
+ xglNoOpGetProgramEnvParameterdvARB,
+ xglNoOpGetProgramEnvParameterfvARB,
+ xglNoOpGetProgramLocalParameterdvARB,
+ xglNoOpGetProgramLocalParameterfvARB,
+ xglNoOpGetProgramStringARB,
+ xglNoOpGetProgramivARB,
+ xglNoOpGetVertexAttribdvARB,
+ xglNoOpGetVertexAttribfvARB,
+ xglNoOpGetVertexAttribivARB,
+ 0, /* glProgramEnvParameter4dARB */
+ xglNoOpProgramEnvParameter4dvARB,
+ 0, /* glProgramEnvParameter4fARB */
+ xglNoOpProgramEnvParameter4fvARB,
+ 0, /* glProgramLocalParameter4dARB */
+ xglNoOpProgramLocalParameter4dvARB,
+ 0, /* glProgramLocalParameter4fARB */
+ xglNoOpProgramLocalParameter4fvARB,
+ xglNoOpProgramStringARB,
+ 0, /* glVertexAttrib1dARB */
+ xglNoOpVertexAttrib1dvARB,
+ 0, /* glVertexAttrib1fARB */
+ xglNoOpVertexAttrib1fvARB,
+ 0, /* glVertexAttrib1sARB */
+ xglNoOpVertexAttrib1svARB,
+ 0, /* glVertexAttrib2dARB */
+ xglNoOpVertexAttrib2dvARB,
+ 0, /* glVertexAttrib2fARB */
+ xglNoOpVertexAttrib2fvARB,
+ 0, /* glVertexAttrib2sARB */
+ xglNoOpVertexAttrib2svARB,
+ 0, /* glVertexAttrib3dARB */
+ xglNoOpVertexAttrib3dvARB,
+ 0, /* glVertexAttrib3fARB */
+ xglNoOpVertexAttrib3fvARB,
+ 0, /* glVertexAttrib3sARB */
+ xglNoOpVertexAttrib3svARB,
+ xglNoOpVertexAttrib4NbvARB,
+ xglNoOpVertexAttrib4NivARB,
+ xglNoOpVertexAttrib4NsvARB,
+ 0, /* glVertexAttrib4NubARB */
+ xglNoOpVertexAttrib4NubvARB,
+ xglNoOpVertexAttrib4NuivARB,
+ xglNoOpVertexAttrib4NusvARB,
+ xglNoOpVertexAttrib4bvARB,
+ 0, /* glVertexAttrib4dARB */
+ xglNoOpVertexAttrib4dvARB,
+ 0, /* glVertexAttrib4fARB */
+ xglNoOpVertexAttrib4fvARB,
+ xglNoOpVertexAttrib4ivARB,
+ 0, /* glVertexAttrib4sARB */
+ xglNoOpVertexAttrib4svARB,
+ xglNoOpVertexAttrib4ubvARB,
+ xglNoOpVertexAttrib4uivARB,
+ xglNoOpVertexAttrib4usvARB,
+ 0, /* glVertexAttribPointerARB */
+ 0, /* glBindBufferARB */
+ 0, /* glBufferDataARB */
+ 0, /* glBufferSubDataARB */
+ 0, /* glDeleteBuffersARB */
+ 0, /* glGenBuffersARB */
+ 0, /* glGetBufferParameterivARB */
+ 0, /* glGetBufferPointervARB */
+ 0, /* glGetBufferSubDataARB */
+ 0, /* glIsBufferARB */
+ 0, /* glMapBufferARB */
+ 0, /* glUnmapBufferARB */
+ 0, /* glBeginQueryARB */
+ 0, /* glDeleteQueriesARB */
+ 0, /* glEndQueryARB */
+ 0, /* glGenQueriesARB */
+ 0, /* glGetQueryObjectivARB */
+ 0, /* glGetQueryObjectuivARB */
+ 0, /* glGetQueryivARB */
+ 0, /* IsQueryARB */
+ 0, /* glAttachObjectARB */
+ 0, /* glCompileShaderARB */
+ 0, /* CreateProgramObjectARB */
+ 0, /* CreateShaderObjectARB */
+ 0, /* glDeleteObjectARB */
+ 0, /* glDetachObjectARB */
+ 0, /* glGetActiveUniformARB */
+ 0, /* glGetAttachedObjectsARB */
+ 0, /* GetHandleARB */
+ 0, /* glGetInfoLogARB */
+ 0, /* glGetObjectParameterfvARB */
+ 0, /* glGetObjectParameterivARB */
+ 0, /* glGetShaderSourceARB */
+ 0, /* GetUniformLocationARB */
+ 0, /* glGetUniformfvARB */
+ 0, /* glGetUniformivARB */
+ 0, /* glLinkProgramARB */
+ 0, /* glShaderSourceARB */
+ 0, /* glUniform1fARB */
+ 0, /* glUniform1fvARB */
+ 0, /* glUniform1iARB */
+ 0, /* glUniform1ivARB */
+ 0, /* glUniform2fARB */
+ 0, /* glUniform2fvARB */
+ 0, /* glUniform2iARB */
+ 0, /* glUniform2ivARB */
+ 0, /* glUniform3fARB */
+ 0, /* glUniform3fvARB */
+ 0, /* glUniform3iARB */
+ 0, /* glUniform3ivARB */
+ 0, /* glUniform4fARB */
+ 0, /* glUniform4fvARB */
+ 0, /* glUniform4iARB */
+ 0, /* glUniform4ivARB */
+ 0, /* glUniformMatrix2fvARB */
+ 0, /* glUniformMatrix3fvARB */
+ 0, /* glUniformMatrix4fvARB */
+ 0, /* glUseProgramObjectARB */
+ 0, /* glValidateProgramARB */
+ 0, /* glBindAttribLocationARB */
+ 0, /* glGetActiveAttribARB */
+ 0, /* GetAttribLocationARB */
0, /* glDrawBuffersARB */
0, /* glPolygonOffsetEXT */
- 0, /* glGetTexFilterFuncSGIS */
- 0, /* glTexFilterFuncSGIS */
- 0, /* glGetHistogramEXT */
- 0, /* glGetHistogramParameterfvEXT */
- 0, /* glGetHistogramParameterivEXT */
- 0, /* glGetMinmaxEXT */
- 0, /* glGetMinmaxParameterfvEXT */
- 0, /* glGetMinmaxParameterivEXT */
- 0, /* glGetConvolutionFilterEXT */
- 0, /* glGetConvolutionParameterfvEXT */
- 0, /* glGetConvolutionParameterivEXT */
- 0, /* glGetSeparableFilterEXT */
- 0, /* glGetColorTableSGI */
- 0, /* glGetColorTableParameterfvSGI */
- 0, /* glGetColorTableParameterivSGI */
- 0, /* glPixelTexGenSGIX */
- 0, /* glPixelTexGenParameteriSGIS */
- 0, /* glPixelTexGenParameterivSGIS */
+ 0, /* glGetPixelTexGenParameterfvSGIS */
+ 0, /* glGetPixelTexGenParameterivSGIS */
0, /* glPixelTexGenParameterfSGIS */
0, /* glPixelTexGenParameterfvSGIS */
- 0, /* glGetPixelTexGenParameterivSGIS */
- 0, /* glGetPixelTexGenParameterfvSGIS */
- 0, /* glTexImage4DSGIS */
- 0, /* glTexSubImage4DSGIS */
- xglNoOpAreTexturesResidentEXT,
- xglNoOpGenTexturesEXT,
- xglNoOpIsTextureEXT,
- 0, /* glDetailTexFuncSGIS */
- 0, /* glGetDetailTexFuncSGIS */
- 0, /* glSharpenTexFuncSGIS */
- 0, /* glGetSharpenTexFuncSGIS */
+ 0, /* glPixelTexGenParameteriSGIS */
+ 0, /* glPixelTexGenParameterivSGIS */
xglNoOpSampleMaskSGIS,
xglNoOpSamplePatternSGIS,
0, /* glColorPointerEXT */
@@ -4377,57 +4464,46 @@ static struct _glapi_table __glNativeRen
0, /* glNormalPointerEXT */
0, /* glTexCoordPointerEXT */
0, /* glVertexPointerEXT */
- 0, /* glSpriteParameterfSGIX */
- 0, /* glSpriteParameterfvSGIX */
- 0, /* glSpriteParameteriSGIX */
- 0, /* glSpriteParameterivSGIX */
xglNoOpPointParameterfEXT,
xglNoOpPointParameterfvEXT,
- 0, /* glGetInstrumentsSGIX */
- 0, /* glInstrumentsBufferSGIX */
- 0, /* glPollInstrumentsSGIX */
- 0, /* glReadInstrumentsSGIX */
- 0, /* glStartInstrumentsSGIX */
- 0, /* glStopInstrumentsSGIX */
- 0, /* glFrameZoomSGIX */
- 0, /* glTagSampleBufferSGIX */
- 0, /* glReferencePlaneSGIX */
- 0, /* glFlushRasterSGIX */
- 0, /* glGetListParameterfvSGIX */
- 0, /* glGetListParameterivSGIX */
- 0, /* glListParameterfSGIX */
- 0, /* glListParameterfvSGIX */
- 0, /* glListParameteriSGIX */
- 0, /* glListParameterivSGIX */
- 0, /* glFragmentColorMaterialSGIX */
- 0, /* glFragmentLightfSGIX */
- 0, /* glFragmentLightfvSGIX */
- 0, /* glFragmentLightiSGIX */
- 0, /* glFragmentLightivSGIX */
- 0, /* glFragmentLightModelfSGIX */
- 0, /* glFragmentLightModelfvSGIX */
- 0, /* glFragmentLightModeliSGIX */
- 0, /* glFragmentLightModelivSGIX */
- 0, /* glFragmentMaterialfSGIX */
- 0, /* glFragmentMaterialfvSGIX */
- 0, /* glFragmentMaterialiSGIX */
- 0, /* glFragmentMaterialivSGIX */
- 0, /* glGetFragmentLightfvSGIX */
- 0, /* glGetFragmentLightivSGIX */
- 0, /* glGetFragmentMaterialfvSGIX */
- 0, /* glGetFragmentMaterialivSGIX */
- 0, /* glLightEnviSGIX */
- 0, /* glVertexWeightfEXT */
- 0, /* glVertexWeightfvEXT */
- 0, /* glVertexWeightPointerEXT */
+ 0, /* glLockArraysEXT */
+ 0, /* glUnlockArraysEXT */
+ 0, /* glCullParameterdvEXT */
+ 0, /* glCullParameterfvEXT */
+ 0, /* glSecondaryColor3bEXT */
+ xglNoOpSecondaryColor3bvEXT,
+ 0, /* glSecondaryColor3dEXT */
+ xglNoOpSecondaryColor3dvEXT,
+ 0, /* glSecondaryColor3fEXT */
+ xglNoOpSecondaryColor3fvEXT,
+ 0, /* glSecondaryColor3iEXT */
+ xglNoOpSecondaryColor3ivEXT,
+ 0, /* glSecondaryColor3sEXT */
+ xglNoOpSecondaryColor3svEXT,
+ 0, /* glSecondaryColor3ubEXT */
+ xglNoOpSecondaryColor3ubvEXT,
+ 0, /* glSecondaryColor3uiEXT */
+ xglNoOpSecondaryColor3uivEXT,
+ 0, /* glSecondaryColor3usEXT */
+ xglNoOpSecondaryColor3usvEXT,
+ xglNoOpSecondaryColorPointerEXT,
+ 0, /* glMultiDrawArraysEXT */
+ 0, /* glMultiDrawElementsEXT */
+ xglNoOpFogCoordPointerEXT,
+ 0, /* glFogCoorddEXT */
+ xglNoOpFogCoorddvEXT,
+ 0, /* glFogCoordfEXT */
+ xglNoOpFogCoordfvEXT,
+ 0, /* glPixelTexGenSGIX */
+ xglNoOpBlendFuncSeparateEXT,
0, /* glFlushVertexArrayRangeNV */
0, /* glVertexArrayRangeNV */
- 0, /* glCombinerParameterfvNV */
- 0, /* glCombinerParameterfNV */
- 0, /* glCombinerParameterivNV */
- 0, /* glCombinerParameteriNV */
0, /* glCombinerInputNV */
0, /* glCombinerOutputNV */
+ 0, /* glCombinerParameterfNV */
+ 0, /* glCombinerParameterfvNV */
+ 0, /* glCombinerParameteriNV */
+ 0, /* glCombinerParameterivNV */
0, /* glFinalCombinerInputNV */
0, /* glGetCombinerInputParameterfvNV */
0, /* glGetCombinerInputParameterivNV */
@@ -4460,47 +4536,15 @@ static struct _glapi_table __glNativeRen
0, /* glWindowPos4ivMESA */
0, /* glWindowPos4sMESA */
0, /* glWindowPos4svMESA */
- xglNoOpBlendFuncSeparateEXT,
- 0, /* glIndexMaterialEXT */
- 0, /* glIndexFuncEXT */
- 0, /* glLockArraysEXT */
- 0, /* glUnlockArraysEXT */
- 0, /* glCullParameterdvEXT */
- 0, /* glCullParameterfvEXT */
- 0, /* glHintPGI */
- 0, /* glFogCoordfEXT */
- xglNoOpFogCoordfvEXT,
- 0, /* glFogCoorddEXT */
- xglNoOpFogCoorddvEXT,
- xglNoOpFogCoordPointerEXT,
- 0, /* glGetColorTableEXT */
- 0, /* glGetColorTableParameterivEXT */
- 0, /* glGetColorTableParameterfvEXT */
- 0, /* glTbufferMask3DFX */
- 0, /* glCompressedTexImage3DARB */
- 0, /* glCompressedTexImage2DARB */
- 0, /* glCompressedTexImage1DARB */
- 0, /* glCompressedTexSubImage3DARB */
- 0, /* glCompressedTexSubImage2DARB */
- 0, /* glCompressedTexSubImage1DARB */
- 0, /* glGetCompressedTexImageARB */
- 0, /* glSecondaryColor3bEXT */
- xglNoOpSecondaryColor3bvEXT,
- 0, /* glSecondaryColor3dEXT */
- xglNoOpSecondaryColor3dvEXT,
- 0, /* glSecondaryColor3fEXT */
- xglNoOpSecondaryColor3fvEXT,
- 0, /* glSecondaryColor3iEXT */
- xglNoOpSecondaryColor3ivEXT,
- 0, /* glSecondaryColor3sEXT */
- xglNoOpSecondaryColor3svEXT,
- 0, /* glSecondaryColor3ubEXT */
- xglNoOpSecondaryColor3ubvEXT,
- 0, /* glSecondaryColor3uiEXT */
- xglNoOpSecondaryColor3uivEXT,
- 0, /* glSecondaryColor3usEXT */
- xglNoOpSecondaryColor3usvEXT,
- xglNoOpSecondaryColorPointerEXT,
+ 0, /* glMultiModeDrawArraysIBM */
+ 0, /* glMultiModeDrawElementsIBM */
+ 0, /* glDeleteFencesNV */
+ 0, /* glFinishFenceNV */
+ 0, /* glGenFencesNV */
+ 0, /* glGetFenceivNV */
+ 0, /* glIsFenceNV */
+ 0, /* glSetFenceNV */
+ 0, /* glTestFenceNV */
0, /* glAreProgramsResidentNV */
xglNoOpBindProgramARB,
xglNoOpDeleteProgramsARB,
@@ -4508,13 +4552,13 @@ static struct _glapi_table __glNativeRen
xglNoOpGenProgramsARB,
0, /* glGetProgramParameterdvNV */
0, /* glGetProgramParameterfvNV */
- xglNoOpGetProgramivARB,
0, /* glGetProgramStringNV */
+ 0, /* glGetProgramivNV */
0, /* glGetTrackMatrixivNV */
- xglNoOpGetVertexAttribdvARB,
- xglNoOpGetVertexAttribfvARB,
- xglNoOpGetVertexAttribivARB,
0, /* glGetVertexAttribPointervNV */
+ 0, /* glGetVertexAttribdvNV */
+ 0, /* glGetVertexAttribfvNV */
+ 0, /* glGetVertexAttribivNV */
xglNoOpIsProgramARB,
0, /* glLoadProgramNV */
0, /* glProgramParameter4dNV */
@@ -4525,160 +4569,6 @@ static struct _glapi_table __glNativeRen
0, /* glProgramParameters4fvNV */
0, /* glRequestResidentProgramsNV */
0, /* glTrackMatrixNV */
- 0, /* glVertexAttribPointerNV */
- 0, /* glVertexAttrib1dARB */
- xglNoOpVertexAttrib1dvARB,
- 0, /* glVertexAttrib1fARB */
- xglNoOpVertexAttrib1fvARB,
- 0, /* glVertexAttrib1sARB */
- xglNoOpVertexAttrib1svARB,
- 0, /* glVertexAttrib2dARB */
- xglNoOpVertexAttrib2dvARB,
- 0, /* glVertexAttrib2fARB */
- xglNoOpVertexAttrib2fvARB,
- 0, /* glVertexAttrib2sARB */
- xglNoOpVertexAttrib2svARB,
- 0, /* glVertexAttrib3dARB */
- xglNoOpVertexAttrib3dvARB,
- 0, /* glVertexAttrib3fARB */
- xglNoOpVertexAttrib3fvARB,
- 0, /* glVertexAttrib3sARB */
- xglNoOpVertexAttrib3svARB,
- 0, /* glVertexAttrib4dARB */
- xglNoOpVertexAttrib4dvARB,
- 0, /* glVertexAttrib4fARB */
- xglNoOpVertexAttrib4fvARB,
- 0, /* glVertexAttrib4sARB */
- xglNoOpVertexAttrib4svARB,
- 0, /* glVertexAttrib4NubARB */
- xglNoOpVertexAttrib4NubvARB,
- 0, /* glVertexAttribs1dvNV */
- 0, /* glVertexAttribs1fvNV */
- 0, /* glVertexAttribs1svNV */
- 0, /* glVertexAttribs2dvNV */
- 0, /* glVertexAttribs2fvNV */
- 0, /* glVertexAttribs2svNV */
- 0, /* glVertexAttribs3dvNV */
- 0, /* glVertexAttribs3fvNV */
- 0, /* glVertexAttribs3svNV */
- 0, /* glVertexAttribs4dvNV */
- 0, /* glVertexAttribs4fvNV */
- 0, /* glVertexAttribs4svNV */
- 0, /* glVertexAttribs4ubvNV */
- xglNoOpPointParameteriNV,
- xglNoOpPointParameterivNV,
- 0, /* glMultiDrawArraysEXT */
- 0, /* glMultiDrawElementsEXT */
- xglNoOpActiveStencilFaceEXT,
- 0, /* glDeleteFencesNV */
- 0, /* glGenFencesNV */
- 0, /* glIsFenceNV */
- 0, /* glTestFenceNV */
- 0, /* glGetFenceivNV */
- 0, /* glFinishFenceNV */
- 0, /* glSetFenceNV */
- xglNoOpVertexAttrib4bvARB,
- xglNoOpVertexAttrib4ivARB,
- xglNoOpVertexAttrib4ubvARB,
- xglNoOpVertexAttrib4usvARB,
- xglNoOpVertexAttrib4uivARB,
- xglNoOpVertexAttrib4NbvARB,
- xglNoOpVertexAttrib4NsvARB,
- xglNoOpVertexAttrib4NivARB,
- xglNoOpVertexAttrib4NusvARB,
- xglNoOpVertexAttrib4NuivARB,
- 0, /* glVertexAttribPointerARB */
- 0, /* glEnableVertexAttribArrayARB */
- 0, /* glDisableVertexAttribArrayARB */
- xglNoOpProgramStringARB,
- 0, /* glProgramEnvParameter4dARB */
- xglNoOpProgramEnvParameter4dvARB,
- 0, /* glProgramEnvParameter4fARB */
- xglNoOpProgramEnvParameter4fvARB,
- 0, /* glProgramLocalParameter4dARB */
- xglNoOpProgramLocalParameter4dvARB,
- 0, /* glProgramLocalParameter4fARB */
- xglNoOpProgramLocalParameter4fvARB,
- xglNoOpGetProgramEnvParameterdvARB,
- xglNoOpGetProgramEnvParameterfvARB,
- xglNoOpGetProgramLocalParameterdvARB,
- xglNoOpGetProgramLocalParameterfvARB,
- xglNoOpGetProgramivARB,
- xglNoOpGetProgramStringARB,
- 0, /* glProgramNamedParameter4fNV */
- 0, /* glProgramNamedParameter4dNV */
- 0, /* glProgramNamedParameter4fvNV */
- 0, /* glProgramNamedParameter4dvNV */
- 0, /* glGetProgramNamedParameterfvNV */
- 0, /* glGetProgramNamedParameterdvNV */
- 0, /* glBindBufferARB */
- 0, /* glBufferDataARB */
- 0, /* glBufferSubDataARB */
- 0, /* glDeleteBuffersARB */
- 0, /* glGenBuffersARB */
- 0, /* glGetBufferParameterivARB */
- 0, /* glGetBufferPointervARB */
- 0, /* glGetBufferSubDataARB */
- 0, /* glIsBufferARB */
- 0, /* glMapBufferARB */
- 0, /* glUnmapBufferARB */
- 0, /* glDepthBoundsEXT */
- 0, /* glGenQueriesARB */
- 0, /* glDeleteQueriesARB */
- 0, /* glIsQueryARB */
- 0, /* glBeginQueryARB */
- 0, /* glEndQueryARB */
- 0, /* glGetQueryivARB */
- 0, /* glGetQueryObjectivARB */
- 0, /* glGetQueryObjectuivARB */
- 0, /* glMultiModeDrawArraysIBM */
- 0, /* glMultiModeDrawElementsIBM */
- 0, /* glBlendEquationSeparateEXT */
- 0, /* glDeleteObjectARB */
- 0, /* glGetHandleARB */
- 0, /* glDetachObjectARB */
- 0, /* glCreateShaderObjectARB */
- 0, /* glShaderSourceARB */
- 0, /* glCompileShaderARB */
- 0, /* glCreateProgramObjectARB */
- 0, /* glAttachObjectARB */
- 0, /* glLinkProgramARB */
- 0, /* glUseProgramObjectARB */
- 0, /* glValidateProgramARB */
- 0, /* glUniform1fARB */
- 0, /* glUniform2fARB */
- 0, /* glUniform3fARB */
- 0, /* glUniform4fARB */
- 0, /* glUniform1iARB */
- 0, /* glUniform2iARB */
- 0, /* glUniform3iARB */
- 0, /* glUniform4iARB */
- 0, /* glUniform1fvARB */
- 0, /* glUniform2fvARB */
- 0, /* glUniform3fvARB */
- 0, /* glUniform4fvARB */
- 0, /* glUniform1ivARB */
- 0, /* glUniform2ivARB */
- 0, /* glUniform3ivARB */
- 0, /* glUniform4ivARB */
- 0, /* glUniformMatrix2fvARB */
- 0, /* glUniformMatrix3fvARB */
- 0, /* glUniformMatrix4fvARB */
- 0, /* glGetObjectParameterfvARB */
- 0, /* glGetObjectParameterivARB */
- 0, /* glGetInfoLogARB */
- 0, /* glGetAttachedObjectsARB */
- 0, /* glGetUniformLocationARB */
- 0, /* glGetActiveUniformARB */
- 0, /* glGetUniformfvARB */
- 0, /* glGetUniformivARB */
- 0, /* glGetShaderSourceARB */
- 0, /* glBindAttribLocationARB */
- 0, /* glGetActiveAttribARB */
- 0, /* glGetAttribLocationARB */
- 0, /* glGetVertexAttribdvNV */
- 0, /* glGetVertexAttribfvNV */
- 0, /* glGetVertexAttribivNV */
0, /* glVertexAttrib1dNV */
0, /* glVertexAttrib1dvNV */
0, /* glVertexAttrib1fNV */
@@ -4705,43 +4595,71 @@ static struct _glapi_table __glNativeRen
0, /* glVertexAttrib4svNV */
0, /* glVertexAttrib4ubNV */
0, /* glVertexAttrib4ubvNV */
- 0, /* glGenFragmentShadersATI */
+ 0, /* glVertexAttribPointerNV */
+ 0, /* glVertexAttribs1dvNV */
+ 0, /* glVertexAttribs1fvNV */
+ 0, /* glVertexAttribs1svNV */
+ 0, /* glVertexAttribs2dvNV */
+ 0, /* glVertexAttribs2fvNV */
+ 0, /* glVertexAttribs2svNV */
+ 0, /* glVertexAttribs3dvNV */
+ 0, /* glVertexAttribs3fvNV */
+ 0, /* glVertexAttribs3svNV */
+ 0, /* glVertexAttribs4dvNV */
+ 0, /* glVertexAttribs4fvNV */
+ 0, /* glVertexAttribs4svNV */
+ 0, /* glVertexAttribs4ubvNV */
+ 0, /* glAlphaFragmentOp1ATI */
+ 0, /* glAlphaFragmentOp2ATI */
+ 0, /* glAlphaFragmentOp3ATI */
+ 0, /* glBeginFragmentShaderATI */
0, /* glBindFragmentShaderATI */
+ 0, /* glColorFragmentOp1ATI */
+ 0, /* glColorFragmentOp2ATI */
+ 0, /* glColorFragmentOp3ATI */
0, /* glDeleteFragmentShaderATI */
- 0, /* glBeginFragmentShaderATI */
0, /* glEndFragmentShaderATI */
+ 0, /* glGenFragmentShadersATI */
0, /* glPassTexCoordATI */
0, /* glSampleMapATI */
- 0, /* glColorFragmentOp1ATI */
- 0, /* glColorFragmentOp2ATI */
- 0, /* glColorFragmentOp3ATI */
- 0, /* glAlphaFragmentOp1ATI */
- 0, /* glAlphaFragmentOp2ATI */
- 0, /* glAlphaFragmentOp3ATI */
0, /* glSetFragmentShaderConstantATI */
- xglNoOpIsRenderbufferEXT,
- xglNoOpBindRenderbufferEXT,
- xglNoOpDeleteRenderbuffersEXT,
- xglNoOpGenRenderbuffersEXT,
- xglNoOpRenderbufferStorageEXT,
- xglNoOpGetRenderbufferParameterivEXT,
- xglNoOpIsFramebufferEXT,
+ xglNoOpPointParameteriNV,
+ xglNoOpPointParameterivNV,
+ xglNoOpActiveStencilFaceEXT,
+ 0, /* glBindVertexArrayAPPLE */
+ 0, /* glDeleteVertexArraysAPPLE */
+ 0, /* glGenVertexArraysAPPLE */
+ 0, /* glIsVertexArrayAPPLE */
+ 0, /* glGetProgramNamedParameterdvNV */
+ 0, /* glGetProgramNamedParameterfvNV */
+ 0, /* glProgramNamedParameter4dNV */
+ 0, /* glProgramNamedParameter4fNV */
+ 0, /* glProgramNamedParameter4dvNV */
+ 0, /* glProgramNamedParameter4fvNV */
+ 0, /* glDepthBoundsEXT */
+ 0, /* glBlendEquationSeparateEXT */
xglNoOpBindFramebufferEXT,
- xglNoOpDeleteFramebuffersEXT,
- xglNoOpGenFramebuffersEXT,
+ xglNoOpBindRenderbufferEXT,
xglNoOpCheckFramebufferStatusEXT,
+ xglNoOpDeleteFramebuffersEXT,
+ xglNoOpDeleteRenderbuffersEXT,
+ xglNoOpFramebufferRenderbufferEXT,
xglNoOpFramebufferTexture1DEXT,
xglNoOpFramebufferTexture2DEXT,
xglNoOpFramebufferTexture3DEXT,
- xglNoOpFramebufferRenderbufferEXT,
- xglNoOpGetFramebufferAttachmentParameterivEXT,
+ xglNoOpGenFramebuffersEXT,
+ xglNoOpGenRenderbuffersEXT,
xglNoOpGenerateMipmapEXT,
- 0, /* glStencilFuncSeparate */
- 0, /* glStencilOpSeparate */
- 0, /* glStencilMaskSeparate */
- 0, /* GetQueryObjecti64vEXT */
- 0, /* GetQueryObjectui64vEXT */
- 0 /* BlitFramebufferEXT */
+ xglNoOpGetFramebufferAttachmentParameterivEXT,
+ xglNoOpGetRenderbufferParameterivEXT,
+ xglNoOpIsFramebufferEXT,
+ xglNoOpIsRenderbufferEXT,
+ xglNoOpRenderbufferStorageEXT,
+ 0, /* glBlitFramebufferEXT */
+ 0, /* glProgramEnvParameters4fvEXT */
+ 0, /* glProgramLocalParameters4fvEXT */
+ 0, /* glGetQueryObjecti64vEXT */
+ 0 /* glGetQueryObjectui64vEXT */
};
static void
@@ -4843,14 +4761,6 @@ xglInitExtensions (xglGLContextPtr pCont
"glSampleCoverageARB");
}
- if (strstr (extensions, "GL_EXT_texture_object"))
- {
- pContext->glRenderTable.AreTexturesResidentEXT =
- xglAreTexturesResident;
- pContext->glRenderTable.GenTexturesEXT = xglGenTextures;
- pContext->glRenderTable.IsTextureEXT = xglIsTexture;
- }
-
if (strstr (extensions, "GL_SGIS_multisample"))
{
pContext->glRenderTable.SampleMaskSGIS =
diff --git a/hw/xgl/glxext/xglglxlog.c b/hw/xgl/glxext/xglglxlog.c
index 9888afa..d0a6ba6 100644
--- a/hw/xgl/glxext/xglglxlog.c
+++ b/hw/xgl/glxext/xglglxlog.c
@@ -3225,34 +3225,6 @@ logSampleCoverageARB (GLclampf value,
}
-/* GL_EXT_texture_object */
-
-static GLboolean
-logAreTexturesResidentEXT (GLsizei n,
- const GLuint *textures,
- GLboolean *residences)
-{
- fprintf (logFp, "glAreTexturesResidentEXT (%d, %p, %p)\n",
- n, textures, residences);
- return (*nativeRenderTable->AreTexturesResidentEXT) (n, textures,
- residences);
-}
-static void
-logGenTexturesEXT (GLsizei n,
- GLuint *textures)
-{
- fprintf (logFp, "glGenTexturesEXT (%d, %p)\n", n, textures);
- (*nativeRenderTable->GenTexturesEXT) (n, textures);
-}
-
-static GLboolean
-logIsTextureEXT (GLuint texture)
-{
- fprintf (logFp, "glIsTextureEXT (%d)\n", texture);
- return (*nativeRenderTable->IsTextureEXT) (texture);
-}
-
-
/* GL_SGIS_multisample */
static void
@@ -4407,44 +4379,147 @@ static struct _glapi_table __logRenderTa
logMultiTexCoord4ivARB,
0, /* glMultiTexCoord4sARB */
logMultiTexCoord4svARB,
+ 0, /* glStencilFuncSeparate */
+ 0, /* glStencilOpSeparate */
+ 0, /* glStencilMaskSeparate */
0, /* glLoadTransposeMatrixfARB */
0, /* glLoadTransposeMatrixdARB */
0, /* glMultTransposeMatrixfARB */
0, /* glMultTransposeMatrixdARB */
logSampleCoverageARB,
+ 0, /* glCompressedTexImage1DARB */
+ 0, /* glCompressedTexImage2DARB */
+ 0, /* glCompressedTexImage3DARB */
+ 0, /* glCompressedTexSubImage1DARB */
+ 0, /* glCompressedTexSubImage2DARB */
+ 0, /* glCompressedTexSubImage3DARB */
+ 0, /* glGetCompressedTexImageARB */
+ 0, /* glDisableVertexAttribArrayARB */
+ 0, /* glEnableVertexAttribArrayARB */
+ logGetProgramEnvParameterdvARB,
+ logGetProgramEnvParameterfvARB,
+ logGetProgramLocalParameterdvARB,
+ logGetProgramLocalParameterfvARB,
+ logGetProgramStringARB,
+ logGetProgramivARB,
+ logGetVertexAttribdvARB,
+ logGetVertexAttribfvARB,
+ logGetVertexAttribivARB,
+ 0, /* glProgramEnvParameter4dARB */
+ logProgramEnvParameter4dvARB,
+ 0, /* glProgramEnvParameter4fARB */
+ logProgramEnvParameter4fvARB,
+ 0, /* glProgramLocalParameter4dARB */
+ logProgramLocalParameter4dvARB,
+ 0, /* glProgramLocalParameter4fARB */
+ logProgramLocalParameter4fvARB,
+ logProgramStringARB,
+ 0, /* glVertexAttrib1dARB */
+ logVertexAttrib1dvARB,
+ 0, /* glVertexAttrib1fARB */
+ logVertexAttrib1fvARB,
+ 0, /* glVertexAttrib1sARB */
+ logVertexAttrib1svARB,
+ 0, /* glVertexAttrib2dARB */
+ logVertexAttrib2dvARB,
+ 0, /* glVertexAttrib2fARB */
+ logVertexAttrib2fvARB,
+ 0, /* glVertexAttrib2sARB */
+ logVertexAttrib2svARB,
+ 0, /* glVertexAttrib3dARB */
+ logVertexAttrib3dvARB,
+ 0, /* glVertexAttrib3fARB */
+ logVertexAttrib3fvARB,
+ 0, /* glVertexAttrib3sARB */
+ logVertexAttrib3svARB,
+ logVertexAttrib4NbvARB,
+ logVertexAttrib4NivARB,
+ logVertexAttrib4NsvARB,
+ 0, /* glVertexAttrib4NubARB */
+ logVertexAttrib4NubvARB,
+ logVertexAttrib4NuivARB,
+ logVertexAttrib4NusvARB,
+ logVertexAttrib4bvARB,
+ 0, /* glVertexAttrib4dARB */
+ logVertexAttrib4dvARB,
+ 0, /* glVertexAttrib4fARB */
+ logVertexAttrib4fvARB,
+ logVertexAttrib4ivARB,
+ 0, /* glVertexAttrib4sARB */
+ logVertexAttrib4svARB,
+ logVertexAttrib4ubvARB,
+ logVertexAttrib4uivARB,
+ logVertexAttrib4usvARB,
+ 0, /* glVertexAttribPointerARB */
+ 0, /* glBindBufferARB */
+ 0, /* glBufferDataARB */
+ 0, /* glBufferSubDataARB */
+ 0, /* glDeleteBuffersARB */
+ 0, /* glGenBuffersARB */
+ 0, /* glGetBufferParameterivARB */
+ 0, /* glGetBufferPointervARB */
+ 0, /* glGetBufferSubDataARB */
+ 0, /* glIsBufferARB */
+ 0, /* glMapBufferARB */
+ 0, /* glUnmapBufferARB */
+ 0, /* glBeginQueryARB */
+ 0, /* glDeleteQueriesARB */
+ 0, /* glEndQueryARB */
+ 0, /* glGenQueriesARB */
+ 0, /* glGetQueryObjectivARB */
+ 0, /* glGetQueryObjectuivARB */
+ 0, /* glGetQueryivARB */
+ 0, /* IsQueryARB */
+ 0, /* glAttachObjectARB */
+ 0, /* glCompileShaderARB */
+ 0, /* CreateProgramObjectARB */
+ 0, /* CreateShaderObjectARB */
+ 0, /* glDeleteObjectARB */
+ 0, /* glDetachObjectARB */
+ 0, /* glGetActiveUniformARB */
+ 0, /* glGetAttachedObjectsARB */
+ 0, /* GetHandleARB */
+ 0, /* glGetInfoLogARB */
+ 0, /* glGetObjectParameterfvARB */
+ 0, /* glGetObjectParameterivARB */
+ 0, /* glGetShaderSourceARB */
+ 0, /* GetUniformLocationARB */
+ 0, /* glGetUniformfvARB */
+ 0, /* glGetUniformivARB */
+ 0, /* glLinkProgramARB */
+ 0, /* glShaderSourceARB */
+ 0, /* glUniform1fARB */
+ 0, /* glUniform1fvARB */
+ 0, /* glUniform1iARB */
+ 0, /* glUniform1ivARB */
+ 0, /* glUniform2fARB */
+ 0, /* glUniform2fvARB */
+ 0, /* glUniform2iARB */
+ 0, /* glUniform2ivARB */
+ 0, /* glUniform3fARB */
+ 0, /* glUniform3fvARB */
+ 0, /* glUniform3iARB */
+ 0, /* glUniform3ivARB */
+ 0, /* glUniform4fARB */
+ 0, /* glUniform4fvARB */
+ 0, /* glUniform4iARB */
+ 0, /* glUniform4ivARB */
+ 0, /* glUniformMatrix2fvARB */
+ 0, /* glUniformMatrix3fvARB */
+ 0, /* glUniformMatrix4fvARB */
+ 0, /* glUseProgramObjectARB */
+ 0, /* glValidateProgramARB */
+ 0, /* glBindAttribLocationARB */
+ 0, /* glGetActiveAttribARB */
+ 0, /* GetAttribLocationARB */
0, /* glDrawBuffersARB */
0, /* glPolygonOffsetEXT */
- 0, /* glGetTexFilterFuncSGIS */
- 0, /* glTexFilterFuncSGIS */
- 0, /* glGetHistogramEXT */
- 0, /* glGetHistogramParameterfvEXT */
- 0, /* glGetHistogramParameterivEXT */
- 0, /* glGetMinmaxEXT */
- 0, /* glGetMinmaxParameterfvEXT */
- 0, /* glGetMinmaxParameterivEXT */
- 0, /* glGetConvolutionFilterEXT */
- 0, /* glGetConvolutionParameterfvEXT */
- 0, /* glGetConvolutionParameterivEXT */
- 0, /* glGetSeparableFilterEXT */
- 0, /* glGetColorTableSGI */
- 0, /* glGetColorTableParameterfvSGI */
- 0, /* glGetColorTableParameterivSGI */
- 0, /* glPixelTexGenSGIX */
- 0, /* glPixelTexGenParameteriSGIS */
- 0, /* glPixelTexGenParameterivSGIS */
+ 0, /* glGetPixelTexGenParameterfvSGIS */
+ 0, /* glGetPixelTexGenParameterivSGIS */
0, /* glPixelTexGenParameterfSGIS */
0, /* glPixelTexGenParameterfvSGIS */
- 0, /* glGetPixelTexGenParameterivSGIS */
- 0, /* glGetPixelTexGenParameterfvSGIS */
- 0, /* glTexImage4DSGIS */
- 0, /* glTexSubImage4DSGIS */
- logAreTexturesResidentEXT,
- logGenTexturesEXT,
- logIsTextureEXT,
- 0, /* glDetailTexFuncSGIS */
- 0, /* glGetDetailTexFuncSGIS */
- 0, /* glSharpenTexFuncSGIS */
- 0, /* glGetSharpenTexFuncSGIS */
+ 0, /* glPixelTexGenParameteriSGIS */
+ 0, /* glPixelTexGenParameterivSGIS */
logSampleMaskSGIS,
logSamplePatternSGIS,
0, /* glColorPointerEXT */
@@ -4453,57 +4528,46 @@ static struct _glapi_table __logRenderTa
0, /* glNormalPointerEXT */
0, /* glTexCoordPointerEXT */
0, /* glVertexPointerEXT */
- 0, /* glSpriteParameterfSGIX */
- 0, /* glSpriteParameterfvSGIX */
- 0, /* glSpriteParameteriSGIX */
- 0, /* glSpriteParameterivSGIX */
logPointParameterfEXT,
logPointParameterfvEXT,
- 0, /* glGetInstrumentsSGIX */
- 0, /* glInstrumentsBufferSGIX */
- 0, /* glPollInstrumentsSGIX */
- 0, /* glReadInstrumentsSGIX */
- 0, /* glStartInstrumentsSGIX */
- 0, /* glStopInstrumentsSGIX */
- 0, /* glFrameZoomSGIX */
- 0, /* glTagSampleBufferSGIX */
- 0, /* glReferencePlaneSGIX */
- 0, /* glFlushRasterSGIX */
- 0, /* glGetListParameterfvSGIX */
- 0, /* glGetListParameterivSGIX */
- 0, /* glListParameterfSGIX */
- 0, /* glListParameterfvSGIX */
- 0, /* glListParameteriSGIX */
- 0, /* glListParameterivSGIX */
- 0, /* glFragmentColorMaterialSGIX */
- 0, /* glFragmentLightfSGIX */
- 0, /* glFragmentLightfvSGIX */
- 0, /* glFragmentLightiSGIX */
- 0, /* glFragmentLightivSGIX */
- 0, /* glFragmentLightModelfSGIX */
- 0, /* glFragmentLightModelfvSGIX */
- 0, /* glFragmentLightModeliSGIX */
- 0, /* glFragmentLightModelivSGIX */
- 0, /* glFragmentMaterialfSGIX */
- 0, /* glFragmentMaterialfvSGIX */
- 0, /* glFragmentMaterialiSGIX */
- 0, /* glFragmentMaterialivSGIX */
- 0, /* glGetFragmentLightfvSGIX */
- 0, /* glGetFragmentLightivSGIX */
- 0, /* glGetFragmentMaterialfvSGIX */
- 0, /* glGetFragmentMaterialivSGIX */
- 0, /* glLightEnviSGIX */
- 0, /* glVertexWeightfEXT */
- 0, /* glVertexWeightfvEXT */
- 0, /* glVertexWeightPointerEXT */
+ 0, /* glLockArraysEXT */
+ 0, /* glUnlockArraysEXT */
+ 0, /* glCullParameterdvEXT */
+ 0, /* glCullParameterfvEXT */
+ 0, /* glSecondaryColor3bEXT */
+ logSecondaryColor3bvEXT,
+ 0, /* glSecondaryColor3dEXT */
+ logSecondaryColor3dvEXT,
+ 0, /* glSecondaryColor3fEXT */
+ logSecondaryColor3fvEXT,
+ 0, /* glSecondaryColor3iEXT */
+ logSecondaryColor3ivEXT,
+ 0, /* glSecondaryColor3sEXT */
+ logSecondaryColor3svEXT,
+ 0, /* glSecondaryColor3ubEXT */
+ logSecondaryColor3ubvEXT,
+ 0, /* glSecondaryColor3uiEXT */
+ logSecondaryColor3uivEXT,
+ 0, /* glSecondaryColor3usEXT */
+ logSecondaryColor3usvEXT,
+ logSecondaryColorPointerEXT,
+ 0, /* glMultiDrawArraysEXT */
+ 0, /* glMultiDrawElementsEXT */
+ logFogCoordPointerEXT,
+ 0, /* glFogCoorddEXT */
+ logFogCoorddvEXT,
+ 0, /* glFogCoordfEXT */
+ logFogCoordfvEXT,
+ 0, /* glPixelTexGenSGIX */
+ logBlendFuncSeparateEXT,
0, /* glFlushVertexArrayRangeNV */
0, /* glVertexArrayRangeNV */
- 0, /* glCombinerParameterfvNV */
- 0, /* glCombinerParameterfNV */
- 0, /* glCombinerParameterivNV */
- 0, /* glCombinerParameteriNV */
0, /* glCombinerInputNV */
0, /* glCombinerOutputNV */
+ 0, /* glCombinerParameterfNV */
+ 0, /* glCombinerParameterfvNV */
+ 0, /* glCombinerParameteriNV */
+ 0, /* glCombinerParameterivNV */
0, /* glFinalCombinerInputNV */
0, /* glGetCombinerInputParameterfvNV */
0, /* glGetCombinerInputParameterivNV */
@@ -4536,47 +4600,15 @@ static struct _glapi_table __logRenderTa
0, /* glWindowPos4ivMESA */
0, /* glWindowPos4sMESA */
0, /* glWindowPos4svMESA */
- logBlendFuncSeparateEXT,
- 0, /* glIndexMaterialEXT */
- 0, /* glIndexFuncEXT */
- 0, /* glLockArraysEXT */
- 0, /* glUnlockArraysEXT */
- 0, /* glCullParameterdvEXT */
- 0, /* glCullParameterfvEXT */
- 0, /* glHintPGI */
- 0, /* glFogCoordfEXT */
- logFogCoordfvEXT,
- 0, /* glFogCoorddEXT */
- logFogCoorddvEXT,
- logFogCoordPointerEXT,
- 0, /* glGetColorTableEXT */
- 0, /* glGetColorTableParameterivEXT */
- 0, /* glGetColorTableParameterfvEXT */
- 0, /* glTbufferMask3DFX */
- 0, /* glCompressedTexImage3DARB */
- 0, /* glCompressedTexImage2DARB */
- 0, /* glCompressedTexImage1DARB */
- 0, /* glCompressedTexSubImage3DARB */
- 0, /* glCompressedTexSubImage2DARB */
- 0, /* glCompressedTexSubImage1DARB */
- 0, /* glGetCompressedTexImageARB */
- 0, /* glSecondaryColor3bEXT */
- logSecondaryColor3bvEXT,
- 0, /* glSecondaryColor3dEXT */
- logSecondaryColor3dvEXT,
- 0, /* glSecondaryColor3fEXT */
- logSecondaryColor3fvEXT,
- 0, /* glSecondaryColor3iEXT */
- logSecondaryColor3ivEXT,
- 0, /* glSecondaryColor3sEXT */
- logSecondaryColor3svEXT,
- 0, /* glSecondaryColor3ubEXT */
- logSecondaryColor3ubvEXT,
- 0, /* glSecondaryColor3uiEXT */
- logSecondaryColor3uivEXT,
- 0, /* glSecondaryColor3usEXT */
- logSecondaryColor3usvEXT,
- logSecondaryColorPointerEXT,
+ 0, /* glMultiModeDrawArraysIBM */
+ 0, /* glMultiModeDrawElementsIBM */
+ 0, /* glDeleteFencesNV */
+ 0, /* glFinishFenceNV */
+ 0, /* glGenFencesNV */
+ 0, /* glGetFenceivNV */
+ 0, /* glIsFenceNV */
+ 0, /* glSetFenceNV */
+ 0, /* glTestFenceNV */
0, /* glAreProgramsResidentNV */
logBindProgramARB,
logDeleteProgramsARB,
@@ -4584,13 +4616,13 @@ static struct _glapi_table __logRenderTa
logGenProgramsARB,
0, /* glGetProgramParameterdvNV */
0, /* glGetProgramParameterfvNV */
- logGetProgramivARB,
0, /* glGetProgramStringNV */
+ 0, /* glGetProgramivNV */
0, /* glGetTrackMatrixivNV */
- logGetVertexAttribdvARB,
- logGetVertexAttribfvARB,
- logGetVertexAttribivARB,
0, /* glGetVertexAttribPointervNV */
+ 0, /* glGetVertexAttribdvNV */
+ 0, /* glGetVertexAttribfvNV */
+ 0, /* glGetVertexAttribivNV */
logIsProgramARB,
0, /* glLoadProgramNV */
0, /* glProgramParameter4dNV */
@@ -4601,160 +4633,6 @@ static struct _glapi_table __logRenderTa
0, /* glProgramParameters4fvNV */
0, /* glRequestResidentProgramsNV */
0, /* glTrackMatrixNV */
- 0, /* glVertexAttribPointerNV */
- 0, /* glVertexAttrib1dARB */
- logVertexAttrib1dvARB,
- 0, /* glVertexAttrib1fARB */
- logVertexAttrib1fvARB,
- 0, /* glVertexAttrib1sARB */
- logVertexAttrib1svARB,
- 0, /* glVertexAttrib2dARB */
- logVertexAttrib2dvARB,
- 0, /* glVertexAttrib2fARB */
- logVertexAttrib2fvARB,
- 0, /* glVertexAttrib2sARB */
- logVertexAttrib2svARB,
- 0, /* glVertexAttrib3dARB */
- logVertexAttrib3dvARB,
- 0, /* glVertexAttrib3fARB */
- logVertexAttrib3fvARB,
- 0, /* glVertexAttrib3sARB */
- logVertexAttrib3svARB,
- 0, /* glVertexAttrib4dARB */
- logVertexAttrib4dvARB,
- 0, /* glVertexAttrib4fARB */
- logVertexAttrib4fvARB,
- 0, /* glVertexAttrib4sARB */
- logVertexAttrib4svARB,
- 0, /* glVertexAttrib4NubARB */
- logVertexAttrib4NubvARB,
- 0, /* glVertexAttribs1dvNV */
- 0, /* glVertexAttribs1fvNV */
- 0, /* glVertexAttribs1svNV */
- 0, /* glVertexAttribs2dvNV */
- 0, /* glVertexAttribs2fvNV */
- 0, /* glVertexAttribs2svNV */
- 0, /* glVertexAttribs3dvNV */
- 0, /* glVertexAttribs3fvNV */
- 0, /* glVertexAttribs3svNV */
- 0, /* glVertexAttribs4dvNV */
- 0, /* glVertexAttribs4fvNV */
- 0, /* glVertexAttribs4svNV */
- 0, /* glVertexAttribs4ubvNV */
- logPointParameteriNV,
- logPointParameterivNV,
- 0, /* glMultiDrawArraysEXT */
- 0, /* glMultiDrawElementsEXT */
- logActiveStencilFaceEXT,
- 0, /* glDeleteFencesNV */
- 0, /* glGenFencesNV */
- 0, /* glIsFenceNV */
- 0, /* glTestFenceNV */
- 0, /* glGetFenceivNV */
- 0, /* glFinishFenceNV */
- 0, /* glSetFenceNV */
- logVertexAttrib4bvARB,
- logVertexAttrib4ivARB,
- logVertexAttrib4ubvARB,
- logVertexAttrib4usvARB,
- logVertexAttrib4uivARB,
- logVertexAttrib4NbvARB,
- logVertexAttrib4NsvARB,
- logVertexAttrib4NivARB,
- logVertexAttrib4NusvARB,
- logVertexAttrib4NuivARB,
- 0, /* glVertexAttribPointerARB */
- 0, /* glEnableVertexAttribArrayARB */
- 0, /* glDisableVertexAttribArrayARB */
- logProgramStringARB,
- 0, /* glProgramEnvParameter4dARB */
- logProgramEnvParameter4dvARB,
- 0, /* glProgramEnvParameter4fARB */
- logProgramEnvParameter4fvARB,
- 0, /* glProgramLocalParameter4dARB */
- logProgramLocalParameter4dvARB,
- 0, /* glProgramLocalParameter4fARB */
- logProgramLocalParameter4fvARB,
- logGetProgramEnvParameterdvARB,
- logGetProgramEnvParameterfvARB,
- logGetProgramLocalParameterdvARB,
- logGetProgramLocalParameterfvARB,
- logGetProgramivARB,
- logGetProgramStringARB,
- 0, /* glProgramNamedParameter4fNV */
- 0, /* glProgramNamedParameter4dNV */
- 0, /* glProgramNamedParameter4fvNV */
- 0, /* glProgramNamedParameter4dvNV */
- 0, /* glGetProgramNamedParameterfvNV */
- 0, /* glGetProgramNamedParameterdvNV */
- 0, /* glBindBufferARB */
- 0, /* glBufferDataARB */
- 0, /* glBufferSubDataARB */
- 0, /* glDeleteBuffersARB */
- 0, /* glGenBuffersARB */
- 0, /* glGetBufferParameterivARB */
- 0, /* glGetBufferPointervARB */
- 0, /* glGetBufferSubDataARB */
- 0, /* glIsBufferARB */
- 0, /* glMapBufferARB */
- 0, /* glUnmapBufferARB */
- 0, /* glDepthBoundsEXT */
- 0, /* glGenQueriesARB */
- 0, /* glDeleteQueriesARB */
- 0, /* glIsQueryARB */
- 0, /* glBeginQueryARB */
- 0, /* glEndQueryARB */
- 0, /* glGetQueryivARB */
- 0, /* glGetQueryObjectivARB */
- 0, /* glGetQueryObjectuivARB */
- 0, /* glMultiModeDrawArraysIBM */
- 0, /* glMultiModeDrawElementsIBM */
- 0, /* glBlendEquationSeparateEXT */
- 0, /* glDeleteObjectARB */
- 0, /* glGetHandleARB */
- 0, /* glDetachObjectARB */
- 0, /* glCreateShaderObjectARB */
- 0, /* glShaderSourceARB */
- 0, /* glCompileShaderARB */
- 0, /* glCreateProgramObjectARB */
- 0, /* glAttachObjectARB */
- 0, /* glLinkProgramARB */
- 0, /* glUseProgramObjectARB */
- 0, /* glValidateProgramARB */
- 0, /* glUniform1fARB */
- 0, /* glUniform2fARB */
- 0, /* glUniform3fARB */
- 0, /* glUniform4fARB */
- 0, /* glUniform1iARB */
- 0, /* glUniform2iARB */
- 0, /* glUniform3iARB */
- 0, /* glUniform4iARB */
- 0, /* glUniform1fvARB */
- 0, /* glUniform2fvARB */
- 0, /* glUniform3fvARB */
- 0, /* glUniform4fvARB */
- 0, /* glUniform1ivARB */
- 0, /* glUniform2ivARB */
- 0, /* glUniform3ivARB */
- 0, /* glUniform4ivARB */
- 0, /* glUniformMatrix2fvARB */
- 0, /* glUniformMatrix3fvARB */
- 0, /* glUniformMatrix4fvARB */
- 0, /* glGetObjectParameterfvARB */
- 0, /* glGetObjectParameterivARB */
- 0, /* glGetInfoLogARB */
- 0, /* glGetAttachedObjectsARB */
- 0, /* glGetUniformLocationARB */
- 0, /* glGetActiveUniformARB */
- 0, /* glGetUniformfvARB */
- 0, /* glGetUniformivARB */
- 0, /* glGetShaderSourceARB */
- 0, /* glBindAttribLocationARB */
- 0, /* glGetActiveAttribARB */
- 0, /* glGetAttribLocationARB */
- 0, /* glGetVertexAttribdvNV */
- 0, /* glGetVertexAttribfvNV */
- 0, /* glGetVertexAttribivNV */
0, /* glVertexAttrib1dNV */
0, /* glVertexAttrib1dvNV */
0, /* glVertexAttrib1fNV */
@@ -4781,43 +4659,71 @@ static struct _glapi_table __logRenderTa
0, /* glVertexAttrib4svNV */
0, /* glVertexAttrib4ubNV */
0, /* glVertexAttrib4ubvNV */
- 0, /* glGenFragmentShadersATI */
+ 0, /* glVertexAttribPointerNV */
+ 0, /* glVertexAttribs1dvNV */
+ 0, /* glVertexAttribs1fvNV */
+ 0, /* glVertexAttribs1svNV */
+ 0, /* glVertexAttribs2dvNV */
+ 0, /* glVertexAttribs2fvNV */
+ 0, /* glVertexAttribs2svNV */
+ 0, /* glVertexAttribs3dvNV */
+ 0, /* glVertexAttribs3fvNV */
+ 0, /* glVertexAttribs3svNV */
+ 0, /* glVertexAttribs4dvNV */
+ 0, /* glVertexAttribs4fvNV */
+ 0, /* glVertexAttribs4svNV */
+ 0, /* glVertexAttribs4ubvNV */
+ 0, /* glAlphaFragmentOp1ATI */
+ 0, /* glAlphaFragmentOp2ATI */
+ 0, /* glAlphaFragmentOp3ATI */
+ 0, /* glBeginFragmentShaderATI */
0, /* glBindFragmentShaderATI */
+ 0, /* glColorFragmentOp1ATI */
+ 0, /* glColorFragmentOp2ATI */
+ 0, /* glColorFragmentOp3ATI */
0, /* glDeleteFragmentShaderATI */
- 0, /* glBeginFragmentShaderATI */
0, /* glEndFragmentShaderATI */
+ 0, /* glGenFragmentShadersATI */
0, /* glPassTexCoordATI */
0, /* glSampleMapATI */
- 0, /* glColorFragmentOp1ATI */
- 0, /* glColorFragmentOp2ATI */
- 0, /* glColorFragmentOp3ATI */
- 0, /* glAlphaFragmentOp1ATI */
- 0, /* glAlphaFragmentOp2ATI */
- 0, /* glAlphaFragmentOp3ATI */
0, /* glSetFragmentShaderConstantATI */
- logIsRenderbufferEXT,
- logBindRenderbufferEXT,
- logDeleteRenderbuffersEXT,
- logGenRenderbuffersEXT,
- logRenderbufferStorageEXT,
- logGetRenderbufferParameterivEXT,
- logIsFramebufferEXT,
+ logPointParameteriNV,
+ logPointParameterivNV,
+ logActiveStencilFaceEXT,
+ 0, /* glBindVertexArrayAPPLE */
+ 0, /* glDeleteVertexArraysAPPLE */
+ 0, /* glGenVertexArraysAPPLE */
+ 0, /* glIsVertexArrayAPPLE */
+ 0, /* glGetProgramNamedParameterdvNV */
+ 0, /* glGetProgramNamedParameterfvNV */
+ 0, /* glProgramNamedParameter4dNV */
+ 0, /* glProgramNamedParameter4fNV */
+ 0, /* glProgramNamedParameter4dvNV */
+ 0, /* glProgramNamedParameter4fvNV */
+ 0, /* glDepthBoundsEXT */
+ 0, /* glBlendEquationSeparateEXT */
logBindFramebufferEXT,
- logDeleteFramebuffersEXT,
- logGenFramebuffersEXT,
+ logBindRenderbufferEXT,
logCheckFramebufferStatusEXT,
+ logDeleteFramebuffersEXT,
+ logDeleteRenderbuffersEXT,
+ logFramebufferRenderbufferEXT,
logFramebufferTexture1DEXT,
logFramebufferTexture2DEXT,
logFramebufferTexture3DEXT,
- logFramebufferRenderbufferEXT,
- logGetFramebufferAttachmentParameterivEXT,
+ logGenFramebuffersEXT,
+ logGenRenderbuffersEXT,
logGenerateMipmapEXT,
- 0, /* glStencilFuncSeparate */
- 0, /* glStencilOpSeparate */
- 0, /* glStencilMaskSeparate */
- 0, /* GetQueryObjecti64vEXT */
- 0, /* GetQueryObjectui64vEXT */
- 0 /* BlitFramebufferEXT */
+ logGetFramebufferAttachmentParameterivEXT,
+ logGetRenderbufferParameterivEXT,
+ logIsFramebufferEXT,
+ logIsRenderbufferEXT,
+ logRenderbufferStorageEXT,
+ 0, /* glBlitFramebufferEXT */
+ 0, /* glProgramEnvParameters4fvEXT */
+ 0, /* glProgramLocalParameters4fvEXT */
+ 0, /* glGetQueryObjecti64vEXT */
+ 0 /* glGetQueryObjectui64vEXT */
};
static Bool isCurrent = FALSE;
diff-tree 634eb2efc1dc294281673e2fea37f3296ca8017a (from af707659b41142995cb542668fa5b17d41602564)
Author: Tiago Vignatti <tv02 at c3sl.ufpr.br>
Date: Thu Oct 12 16:00:51 2006 -0400
Add x-input-evdev support.
diff --git a/configure.ac b/configure.ac
index 920636f..4a60b3a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -384,6 +384,7 @@ AC_ARG_ENABLE(install-libxf86config,
[Install libxf86config (default: disabled)]),
[INSTALL_LIBXF86CONFIG=$enableval],
[INSTALL_LIBXF86CONFIG=no])
+AC_ARG_ENABLE(xevdev, AS_HELP_STRING([--enable-xevdev], [Build X evdev support (default: disabled)]), [XEVDEV=$enableval], [XEVDEV=no])
dnl Extensions.
AC_ARG_ENABLE(composite, AS_HELP_STRING([--disable-composite], [Build Composite extension (default: enabled)]), [COMPOSITE=$enableval], [COMPOSITE=yes])
@@ -787,6 +788,15 @@ if test "x$USE_RGB_BUILTIN" = xyes; then
AC_DEFINE(USE_RGB_BUILTIN, 1, [Use built-in RGB color database])
fi
+AM_CONDITIONAL(XEVDEV, [test "x$XEVDEV" = xyes])
+if test "x$XEVDEV" != xno; then
+ AC_DEFINE(XEVDEV, 1, [Build X evdev support])
+
+ PKG_CHECK_MODULES([XEVDEV], [x-input-evdev])
+ AC_SUBST(XEVDEV_CFLAGS)
+ AC_SUBST(XEVDEV_LIBS)
+fi
+
VENDOR_RELEASE="((($VERSION_MAJOR) * 10000000) + (($VERSION_MINOR) * 100000) + (($VERSION_PATCH) * 1000) + $VERSION_SNAP)"
if test $VERSION_SNAP = "0"; then
diff --git a/hw/xgl/Makefile.am b/hw/xgl/Makefile.am
index a657e9b..75f19de 100644
--- a/hw/xgl/Makefile.am
+++ b/hw/xgl/Makefile.am
@@ -26,6 +26,7 @@ AM_CFLAGS = \
-I$(top_srcdir)/GL/include \
-I at MESA_SOURCE@/include \
-I at MESA_SOURCE@/src/mesa/glapi \
+ $(XEVDEV_CFLAGS) \
$(XGLMODULES_CFLAGS)
noinst_LIBRARIES = libxgl.a
@@ -78,6 +79,7 @@ Xgl_LDADD = \
libxgl.a \
$(XORG_CORE_LIBS) \
$(XGL_LIBS) \
+ $(XEVDEV_LIBS) \
$(XGLMODULES_LIBS) \
$(XSERVER_LIBS)
diff --git a/hw/xgl/egl/xeglinit.c b/hw/xgl/egl/xeglinit.c
index 372b232..b10873d 100644
--- a/hw/xgl/egl/xeglinit.c
+++ b/hw/xgl/egl/xeglinit.c
@@ -42,6 +42,12 @@ static xglScreenInfoRec xglScreenInfo =
}
};
+#ifdef XEVDEV
+Bool useEvdev = FALSE;
+char *kbdEvdevFile = "/dev/input/event0";
+char *ptrEvdevFile = "/dev/input/event1";
+#endif
+
#ifdef GLXEXT
static Bool loadGlx = TRUE;
#endif
diff --git a/hw/xgl/glx/xglx.c b/hw/xgl/glx/xglx.c
index 76766e4..a955fb1 100644
--- a/hw/xgl/glx/xglx.c
+++ b/hw/xgl/glx/xglx.c
@@ -1602,6 +1602,19 @@ xglxInitInput (int argc,
{
DeviceIntPtr pKeyboard, pPointer;
+#ifdef XEVDEV
+ if (useEvdev)
+ {
+ xglInitInput (argc, argv);
+
+ RegisterBlockAndWakeupHandlers (xglxBlockHandler,
+ xglWakeupHandler,
+ NULL);
+
+ return;
+ }
+#endif
+
pPointer = AddInputDevice (xglxPointerProc, TRUE);
pKeyboard = AddInputDevice (xglxKeybdProc, TRUE);
diff --git a/hw/xgl/glx/xglxinit.c b/hw/xgl/glx/xglxinit.c
index a1fdb98..3172af8 100644
--- a/hw/xgl/glx/xglxinit.c
+++ b/hw/xgl/glx/xglxinit.c
@@ -43,6 +43,12 @@ xglScreenInfoRec xglScreenInfo = {
}
};
+#ifdef XEVDEV
+Bool useEvdev = FALSE;
+char *kbdEvdevFile = "/dev/input/event0";
+char *ptrEvdevFile = "/dev/input/event1";
+#endif
+
#ifdef GLXEXT
static Bool loadGlx = TRUE;
diff --git a/hw/xgl/xgl.h b/hw/xgl/xgl.h
index 2a841bd..c22c196 100644
--- a/hw/xgl/xgl.h
+++ b/hw/xgl/xgl.h
@@ -508,6 +508,18 @@ xglKbdCtrl (DeviceIntPtr pDevice,
void
xglInitInput (int argc, char **argv);
+#ifdef XEVDEV
+
+extern Bool useEvdev;
+extern char *kbdEvdevFile;
+extern char *ptrEvdevFile;
+
+void
+xglWakeupHandler (pointer blockData,
+ int result,
+ pointer pReadMask);
+
+#endif
/* xgloutput.c */
diff --git a/hw/xgl/xglinit.c b/hw/xgl/xglinit.c
index 50b374d..f7fde59 100644
--- a/hw/xgl/xglinit.c
+++ b/hw/xgl/xglinit.c
@@ -54,6 +54,12 @@ xglScreenInfoRec xglScreenInfo = {
}
};
+#ifdef XEVDEV
+Bool useEvdev = FALSE;
+char *kbdEvdevFile = "/dev/input/event0";
+char *ptrEvdevFile = "/dev/input/event1";
+#endif
+
#ifdef GLXEXT
static Bool loadGlx = TRUE;
diff --git a/hw/xgl/xglinput.c b/hw/xgl/xglinput.c
index cda21ad..c355d78 100644
--- a/hw/xgl/xglinput.c
+++ b/hw/xgl/xglinput.c
@@ -35,6 +35,147 @@
#define NUM_BUTTONS 7
+#ifdef XEVDEV
+#include <X11/Xevdev.h>
+
+static CARD32 lastEventTime = 0;
+
+static int EventToXserver[] = {
+ 0, 1, 2, 3, 4, 5, 6, 7,
+ 8, 9, 10, 11, 12, 13, 14, 15,
+ 16, 17, 18, 19, 20, 21, 22, 23,
+ 24, 25, 26, 27, 28, 29, 30, 31,
+ 32, 33, 34, 35, 36, 37, 38, 39,
+ 40, 41, 42, 43, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55,
+ 56, 57, 58, 59, 60, 61, 62, 63,
+ 64, 65, 66, 67, 68, 69, 70, 71,
+ 72, 73, 74, 75, 76, 77, 78, 79,
+ 80, 81, 82, 83, 84, 85, 86, 87,
+ 88, 203, 90, 91, 92, 93, 94, 126,
+ 100, 101, 104, 99, 105, 101, 89, 90,
+ 91, 92, 94, 95, 96, 97, 98, 99,
+ 112, 113, 114, 115, 214, 117, 118, 102,
+ 120, 126, 122, 123, 124, 125, 126, 127,
+ 128, 129, 130, 131, 132, 133, 134, 135,
+ 136, 137, 138, 109, 140, 141, 215, 219,
+ 144, 145, 146, 147, 148, 149, 150, 151,
+ 152, 153, 154, 155, 156, 157, 158, 159,
+ 160, 161, 162, 163, 164, 165, 166, 167,
+ 168, 169, 170, 171, 172, 173, 174, 175,
+ 176, 177, 178, 179, 180, 181, 182, 183,
+ 184, 185, 186, 187, 188, 189, 190, 191,
+ 192, 193, 194, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 205, 206, 207,
+ 208, 209, 210, 211, 212, 213, 214, 215,
+ 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 229, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 247,
+ 248
+};
+
+static void
+xglEvdevReadInput (void)
+{
+ struct input_event ie;
+ xEvent x;
+ int i;
+
+ while (EvdevCheckIfEvent (&ie))
+ {
+ switch (ie.type) {
+ case EV_REL:
+ switch (ie.code) {
+ case REL_X:
+ miPointerDeltaCursor (ie.value, 0,
+ lastEventTime = GetTimeInMillis ());
+ break;
+ case REL_Y:
+ miPointerDeltaCursor (0, ie.value,
+ lastEventTime = GetTimeInMillis ());
+ break;
+ case REL_WHEEL:
+ if (ie.value > 0)
+ {
+ x.u.u.detail = 4;
+ }
+ else
+ {
+ x.u.u.detail = 5;
+ ie.value *= -1;
+ }
+
+ for (i = 0; i < ie.value; i++)
+ {
+ x.u.u.type = ButtonPress;
+ mieqEnqueue (&x);
+
+ x.u.u.type = ButtonRelease;
+ mieqEnqueue (&x);
+ }
+ break;
+ case REL_HWHEEL:
+ if (ie.value > 0)
+ {
+ x.u.u.detail = 6;
+ }
+ else
+ {
+ x.u.u.detail = 7;
+ ie.value *= -1;
+ }
+
+ for (i = 0; i < ie.value; i++)
+ {
+ x.u.u.type = ButtonPress;
+ mieqEnqueue (&x);
+
+ x.u.u.type = ButtonRelease;
+ mieqEnqueue (&x);
+ }
+ break;
+ }
+ break;
+ case EV_ABS:
+ break;
+ case EV_KEY:
+ if (ie.code >= BTN_MOUSE && ie.type < BTN_JOYSTICK)
+ {
+ x.u.u.type = ie.value ? ButtonPress : ButtonRelease;
+ switch (ie.code) {
+ case BTN_LEFT:
+ x.u.u.detail = 1;
+ break;
+ case BTN_MIDDLE:
+ x.u.u.detail = 2;
+ break;
+ case BTN_RIGHT:
+ x.u.u.detail = 3;
+ break;
+ default:
+ x.u.u.detail = 2;
+ break;
+ }
+
+ x.u.keyButtonPointer.time = lastEventTime = GetTimeInMillis ();
+ mieqEnqueue(&x);
+ break;
+ }
+ else
+ {
+ x.u.u.type = ie.value ? KeyPress : KeyRelease;
+ x.u.u.detail = EventToXserver[ie.code] + 8;
+ x.u.keyButtonPointer.time = lastEventTime = GetTimeInMillis ();
+ mieqEnqueue (&x);
+ }
+ case EV_SYN:
+ break;
+ }
+ }
+}
+#endif
+
int
xglMouseProc (DeviceIntPtr pDevice,
int onoff)
@@ -227,19 +368,43 @@ xglKeybdProc (DeviceIntPtr pDevice,
if (pDev != LookupKeyboardDevice ())
return !Success;
+#ifdef XEVDEV
+ if (useEvdev)
+ {
+ EvdevInit (pDevice);
+ return Success;
+ }
+#endif
ret = InitKeyboardDeviceStruct (pDev,
&xglKeySyms,
xglModMap,
xglBell,
xglKbdCtrl);
+
if (!ret)
return BadImplementation;
break;
case DEVICE_ON:
pDev->on = TRUE;
+
+#ifdef XEVDEV
+ /* When evdev input is set the events are grabbed per default.
+ * EvdevGrabKeyboard is need to be changed to XGrabKeyboard
+ * xlib function thus Xgl will be able to choose if want or not
+ * be grabbed. */
+ if (useEvdev)
+ EvdevGrabKeyboard ();
+#endif
+
break;
case DEVICE_OFF:
case DEVICE_CLOSE:
+
+#ifdef XEVDEV
+ if (useEvdev)
+ EvdevUngrabKeyboard ();
+#endif
+
pDev->on = FALSE;
break;
}
@@ -252,6 +417,11 @@ xglInitInput (int argc, char **argv)
{
DeviceIntPtr pKeyboard, pPointer;
+#ifdef XEVDEV
+ if (useEvdev)
+ OpenEvdevInput (kbdEvdevFile, ptrEvdevFile, xglEvdevReadInput);
+#endif
+
pPointer = AddInputDevice (xglMouseProc, TRUE);
pKeyboard = AddInputDevice (xglKeybdProc, TRUE);
@@ -261,3 +431,10 @@ xglInitInput (int argc, char **argv)
miRegisterPointerDevice (screenInfo.screens[0], pPointer);
mieqInit (&pKeyboard->public, &pPointer->public);
}
+
+void
+xglWakeupHandler (pointer blockData,
+ int result,
+ pointer pReadMask)
+{
+}
diff --git a/hw/xgl/xglparse.c b/hw/xgl/xglparse.c
index e3e3028..983ee67 100644
--- a/hw/xgl/xglparse.c
+++ b/hw/xgl/xglparse.c
@@ -201,6 +201,12 @@ xglUseMsg (void)
"set bpp's to use with pixel buffer objects\n");
ErrorF ("-accel TYPE[@WIDTH[/MIN]xHEIGHT[/MIN]][:METHOD] "
"offscreen acceleration\n");
+
+#ifdef XEVDEV
+ ErrorF ("-kbd file evdev file to read keyboard events\n");
+ ErrorF ("-ptr file evdev file to read pointer events\n");
+#endif
+
}
int
@@ -283,5 +289,32 @@ xglProcessArgument (int argc,
return 2;
}
+#ifdef XEVDEV
+ else if (!strcmp (argv[i], "-kbd"))
+ {
+ if ((i + 1) < argc)
+ {
+ kbdEvdevFile = argv[i + 1];
+ useEvdev = TRUE;
+ }
+ else
+ return 1;
+
+ return 2;
+ }
+ else if (!strcmp (argv[i], "-ptr"))
+ {
+ if ((i + 1) < argc)
+ {
+ ptrEvdevFile = argv[i + 1];
+ useEvdev = TRUE;
+ }
+ else
+ return 1;
+
+ return 2;
+ }
+#endif
+
return 0;
}
diff --git a/include/xgl-config.h.in b/include/xgl-config.h.in
index 73091c9..9d23c9b 100644
--- a/include/xgl-config.h.in
+++ b/include/xgl-config.h.in
@@ -13,3 +13,6 @@
/* Default XGL module search path */
#undef XGL_MODULE_PATH
+
+/* Use X evdev */
+#undef XEVDEV
More information about the xorg-commit
mailing list