forked from pool/xorg-x11-server
3326 lines
108 KiB
Diff
3326 lines
108 KiB
Diff
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/Makefile.am GL/Makefile.am
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/apple/Makefile.am GL/apple/Makefile.am
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/apple/indirect.c GL/apple/indirect.c
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/Makefile.am GL/glx/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/Makefile.am 2006-11-16 19:01:22.000000000 +0100
|
|
+++ GL/glx/Makefile.am 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -14,7 +14,6 @@
|
|
-I@MESA_SOURCE@/src/mesa/glapi \
|
|
-I@MESA_SOURCE@/src/mesa/main \
|
|
-DXFree86Server \
|
|
- -DNO_LIBCWRAPPER \
|
|
@GLX_DEFINES@ \
|
|
@GLX_ARCH_DEFINES@
|
|
|
|
@@ -47,12 +46,13 @@
|
|
glxdrawable.h \
|
|
glxext.c \
|
|
glxext.h \
|
|
- glxvisuals.c \
|
|
+ glxglcore.c \
|
|
glxscreens.c \
|
|
glxscreens.h \
|
|
glxserver.h \
|
|
glxutil.c \
|
|
glxutil.h \
|
|
+ glxvisuals.c \
|
|
indirect_dispatch.c \
|
|
indirect_dispatch.h \
|
|
indirect_dispatch_swap.c \
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxbyteorder.h GL/glx/glxbyteorder.h
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxbyteorder.h 1970-01-01 01:00:00.000000000 +0100
|
|
+++ GL/glx/glxbyteorder.h 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -0,0 +1,61 @@
|
|
+/*
|
|
+ * (C) Copyright IBM Corporation 2006, 2007
|
|
+ * All Rights Reserved.
|
|
+ *
|
|
+ * Permission is hereby granted, free of charge, to any person obtaining a
|
|
+ * copy of this software and associated documentation files (the "Software"),
|
|
+ * to deal in the Software without restriction, including without limitation
|
|
+ * the rights to use, copy, modify, merge, publish, distribute, sub license,
|
|
+ * and/or sell copies of the Software, and to permit persons to whom the
|
|
+ * Software is furnished to do so, subject to the following conditions:
|
|
+ *
|
|
+ * The above copyright notice and this permission notice (including the next
|
|
+ * paragraph) shall be included in all copies or substantial portions of the
|
|
+ * Software.
|
|
+ *
|
|
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
+ * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
|
|
+ * THE COPYRIGHT HOLDERS, THE AUTHORS, AND/OR THEIR SUPPLIERS BE LIABLE FOR
|
|
+ * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
+ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
|
|
+ * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
+ */
|
|
+
|
|
+/**
|
|
+ * \file glxbyteorder.h
|
|
+ * Platform glue for handling byte-ordering issues in GLX protocol.
|
|
+ *
|
|
+ * \author Ian Romanick <idr@us.ibm.com>
|
|
+ */
|
|
+#if !defined(__GLXBYTEORDER_H__)
|
|
+#define __GLXBYTEORDER_H__
|
|
+
|
|
+#ifdef HAVE_DIX_CONFIG_H
|
|
+#include <dix-config.h>
|
|
+#endif
|
|
+
|
|
+#if HAVE_BYTESWAP_H
|
|
+#include <byteswap.h>
|
|
+#elif defined(USE_SYS_ENDIAN_H)
|
|
+#include <sys/endian.h>
|
|
+#elif defined(__APPLE__)
|
|
+#include <libkern/OSByteOrder.h>
|
|
+#define bswap_16 OSSwapInt16
|
|
+#define bswap_32 OSSwapInt32
|
|
+#define bswap_64 OSSwapInt64
|
|
+#else
|
|
+#define bswap_16(value) \
|
|
+ ((((value) & 0xff) << 8) | ((value) >> 8))
|
|
+
|
|
+#define bswap_32(value) \
|
|
+ (((uint32_t)bswap_16((uint16_t)((value) & 0xffff)) << 16) | \
|
|
+ (uint32_t)bswap_16((uint16_t)((value) >> 16)))
|
|
+
|
|
+#define bswap_64(value) \
|
|
+ (((uint64_t)bswap_32((uint32_t)((value) & 0xffffffff)) \
|
|
+ << 32) | \
|
|
+ (uint64_t)bswap_32((uint32_t)((value) >> 32)))
|
|
+#endif
|
|
+
|
|
+#endif /* !defined(__GLXBYTEORDER_H__) */
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxcmds.c GL/glx/glxcmds.c
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxcmdsswap.c GL/glx/glxcmdsswap.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxcmdsswap.c 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/glx/glxcmdsswap.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -496,11 +496,11 @@
|
|
GLXDrawable *drawId;
|
|
int *buffer;
|
|
|
|
+ __GLX_DECLARE_SWAP_VARIABLES;
|
|
+
|
|
(void) drawId;
|
|
(void) buffer;
|
|
|
|
- __GLX_DECLARE_SWAP_VARIABLES;
|
|
-
|
|
pc += __GLX_VENDPRIV_HDR_SIZE;
|
|
|
|
__GLX_SWAP_SHORT(&req->length);
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxcontext.h GL/glx/glxcontext.h
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxcontext.h 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/glx/glxcontext.h 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -40,9 +40,6 @@
|
|
**
|
|
*/
|
|
|
|
-/* XXX: should be defined somewhere globally */
|
|
-#define CAPI
|
|
-
|
|
#include "GL/internal/glcore.h"
|
|
|
|
typedef struct __GLXtextureFromPixmap __GLXtextureFromPixmap;
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxdri.c GL/glx/glxdri.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxdri.c 2007-04-09 21:59:09.000000000 +0200
|
|
+++ GL/glx/glxdri.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -289,6 +289,19 @@
|
|
&context->driContext);
|
|
}
|
|
|
|
+static int
|
|
+glxCountBits(int word)
|
|
+{
|
|
+ int ret = 0;
|
|
+
|
|
+ while (word) {
|
|
+ ret += (word & 1);
|
|
+ word >>= 1;
|
|
+ }
|
|
+
|
|
+ return ret;
|
|
+}
|
|
+
|
|
static void
|
|
glxFillAlphaChannel (PixmapPtr pixmap, int x, int y, int width, int height)
|
|
{
|
|
@@ -482,6 +495,7 @@
|
|
context->base.loseCurrent = __glXDRIcontextLoseCurrent;
|
|
context->base.copy = __glXDRIcontextCopy;
|
|
context->base.forceCurrent = __glXDRIcontextForceCurrent;
|
|
+ context->base.pScreen = screen->base.pScreen;
|
|
|
|
context->base.textureFromPixmap = &__glXDRItextureFromPixmap;
|
|
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxext.c GL/glx/glxext.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxext.c 2006-12-01 02:40:10.000000000 +0100
|
|
+++ GL/glx/glxext.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -275,7 +275,7 @@
|
|
/*
|
|
** The GL was will call this routine if an error occurs.
|
|
*/
|
|
-void __glXErrorCallBack(__GLinterface *gc, GLenum code)
|
|
+void __glXErrorCallBack(GLenum code)
|
|
{
|
|
errorOccured = GL_TRUE;
|
|
}
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxext.h GL/glx/glxext.h
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxext.h 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/glx/glxext.h 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -66,7 +66,7 @@
|
|
extern GLboolean __glXFreeContext(__GLXcontext *glxc);
|
|
extern void __glXFlushContextCache(void);
|
|
|
|
-extern void __glXErrorCallBack(__GLinterface *gc, GLenum code);
|
|
+extern void __glXErrorCallBack(GLenum code);
|
|
extern void __glXClearErrorOccured(void);
|
|
extern GLboolean __glXErrorOccured(void);
|
|
extern void __glXResetLargeCommandStatus(__GLXclientState*);
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxglcore.c GL/glx/glxglcore.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxglcore.c 1970-01-01 01:00:00.000000000 +0100
|
|
+++ GL/glx/glxglcore.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -0,0 +1,409 @@
|
|
+/**************************************************************************
|
|
+
|
|
+Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
|
|
+All Rights Reserved.
|
|
+
|
|
+Permission is hereby granted, free of charge, to any person obtaining a
|
|
+copy of this software and associated documentation files (the
|
|
+"Software"), to deal in the Software without restriction, including
|
|
+without limitation the rights to use, copy, modify, merge, publish,
|
|
+distribute, sub license, and/or sell copies of the Software, and to
|
|
+permit persons to whom the Software is furnished to do so, subject to
|
|
+the following conditions:
|
|
+
|
|
+The above copyright notice and this permission notice (including the
|
|
+next paragraph) shall be included in all copies or substantial portions
|
|
+of the Software.
|
|
+
|
|
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
|
|
+IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
|
|
+ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
+
|
|
+**************************************************************************/
|
|
+
|
|
+/*
|
|
+ * Authors:
|
|
+ * Kevin E. Martin <kevin@precisioninsight.com>
|
|
+ * Brian E. Paul <brian@precisioninsight.com>
|
|
+ *
|
|
+ */
|
|
+
|
|
+#ifdef HAVE_DIX_CONFIG_H
|
|
+#include <dix-config.h>
|
|
+#endif
|
|
+
|
|
+#include <string.h>
|
|
+
|
|
+#include <GL/xmesa.h>
|
|
+#include <GL/internal/glcore.h>
|
|
+#include <glxserver.h>
|
|
+#include <glxscreens.h>
|
|
+#include <glxdrawable.h>
|
|
+#include <glxcontext.h>
|
|
+#include <glxutil.h>
|
|
+
|
|
+#include "glcontextmodes.h"
|
|
+#include "os.h"
|
|
+
|
|
+typedef struct __GLXMESAscreen __GLXMESAscreen;
|
|
+typedef struct __GLXMESAcontext __GLXMESAcontext;
|
|
+typedef struct __GLXMESAdrawable __GLXMESAdrawable;
|
|
+
|
|
+struct __GLXMESAscreen {
|
|
+ __GLXscreen base;
|
|
+ int index;
|
|
+ int num_vis;
|
|
+ XMesaVisual *xm_vis;
|
|
+};
|
|
+
|
|
+struct __GLXMESAcontext {
|
|
+ __GLXcontext base;
|
|
+ XMesaContext xmesa;
|
|
+};
|
|
+
|
|
+struct __GLXMESAdrawable {
|
|
+ __GLXdrawable base;
|
|
+ XMesaBuffer xm_buf;
|
|
+};
|
|
+
|
|
+static XMesaVisual find_mesa_visual(__GLXscreen *screen, VisualID vid);
|
|
+
|
|
+
|
|
+static void
|
|
+__glXMesaDrawableDestroy(__GLXdrawable *base)
|
|
+{
|
|
+ __GLXMESAdrawable *glxPriv = (__GLXMESAdrawable *) base;
|
|
+
|
|
+ if (glxPriv->xm_buf != NULL)
|
|
+ XMesaDestroyBuffer(glxPriv->xm_buf);
|
|
+ xfree(glxPriv);
|
|
+}
|
|
+
|
|
+static GLboolean
|
|
+__glXMesaDrawableResize(__GLXdrawable *base)
|
|
+{
|
|
+ __GLXMESAdrawable *glxPriv = (__GLXMESAdrawable *) base;
|
|
+
|
|
+ XMesaResizeBuffers(glxPriv->xm_buf);
|
|
+
|
|
+ return GL_TRUE;
|
|
+}
|
|
+
|
|
+static GLboolean
|
|
+__glXMesaDrawableSwapBuffers(__GLXdrawable *base)
|
|
+{
|
|
+ __GLXMESAdrawable *glxPriv = (__GLXMESAdrawable *) base;
|
|
+
|
|
+ /* This is terrifying: XMesaSwapBuffers() ends up calling CopyArea
|
|
+ * to do the buffer swap, but this assumes that the server holds
|
|
+ * the lock and has its context visible. If another screen uses a
|
|
+ * DRI driver, that will have installed the DRI enter/leave server
|
|
+ * functions, which lifts the lock during GLX dispatch. This is
|
|
+ * why we need to re-take the lock and swap in the server context
|
|
+ * before calling XMesaSwapBuffers() here. /me shakes head. */
|
|
+
|
|
+ __glXenterServer();
|
|
+
|
|
+ XMesaSwapBuffers(glxPriv->xm_buf);
|
|
+
|
|
+ __glXleaveServer();
|
|
+
|
|
+ return GL_TRUE;
|
|
+}
|
|
+
|
|
+
|
|
+static __GLXdrawable *
|
|
+__glXMesaScreenCreateDrawable(__GLXscreen *screen,
|
|
+ DrawablePtr pDraw,
|
|
+ XID drawId,
|
|
+ __GLcontextModes *modes)
|
|
+{
|
|
+ __GLXMESAdrawable *glxPriv;
|
|
+ XMesaVisual xm_vis;
|
|
+
|
|
+ glxPriv = xalloc(sizeof *glxPriv);
|
|
+ if (glxPriv == NULL)
|
|
+ return NULL;
|
|
+
|
|
+ memset(glxPriv, 0, sizeof *glxPriv);
|
|
+
|
|
+ if (!__glXDrawableInit(&glxPriv->base, screen, pDraw, drawId, modes)) {
|
|
+ xfree(glxPriv);
|
|
+ return NULL;
|
|
+ }
|
|
+
|
|
+ glxPriv->base.destroy = __glXMesaDrawableDestroy;
|
|
+ glxPriv->base.resize = __glXMesaDrawableResize;
|
|
+ glxPriv->base.swapBuffers = __glXMesaDrawableSwapBuffers;
|
|
+
|
|
+ xm_vis = find_mesa_visual(screen, modes->visualID);
|
|
+ if (xm_vis == NULL) {
|
|
+ ErrorF("find_mesa_visual returned NULL for visualID = 0x%04x\n",
|
|
+ modes->visualID);
|
|
+ xfree(glxPriv);
|
|
+ return NULL;
|
|
+ }
|
|
+
|
|
+ if (glxPriv->base.type == DRAWABLE_WINDOW) {
|
|
+ glxPriv->xm_buf = XMesaCreateWindowBuffer(xm_vis, (WindowPtr)pDraw);
|
|
+ } else {
|
|
+ glxPriv->xm_buf = XMesaCreatePixmapBuffer(xm_vis, (PixmapPtr)pDraw, 0);
|
|
+ }
|
|
+
|
|
+ return &glxPriv->base;
|
|
+}
|
|
+
|
|
+static void
|
|
+__glXMesaContextDestroy(__GLXcontext *baseContext)
|
|
+{
|
|
+ __GLXMESAcontext *context = (__GLXMESAcontext *) baseContext;
|
|
+
|
|
+ XMesaDestroyContext(context->xmesa);
|
|
+ __glXContextDestroy(&context->base);
|
|
+ xfree(context);
|
|
+}
|
|
+
|
|
+static int
|
|
+__glXMesaContextMakeCurrent(__GLXcontext *baseContext)
|
|
+
|
|
+{
|
|
+ __GLXMESAcontext *context = (__GLXMESAcontext *) baseContext;
|
|
+ __GLXMESAdrawable *drawPriv = (__GLXMESAdrawable *) context->base.drawPriv;
|
|
+ __GLXMESAdrawable *readPriv = (__GLXMESAdrawable *) context->base.readPriv;
|
|
+
|
|
+ return XMesaMakeCurrent2(context->xmesa,
|
|
+ drawPriv->xm_buf,
|
|
+ readPriv->xm_buf);
|
|
+}
|
|
+
|
|
+static int
|
|
+__glXMesaContextLoseCurrent(__GLXcontext *baseContext)
|
|
+{
|
|
+ __GLXMESAcontext *context = (__GLXMESAcontext *) baseContext;
|
|
+
|
|
+ return XMesaLoseCurrent(context->xmesa);
|
|
+}
|
|
+
|
|
+static int
|
|
+__glXMesaContextCopy(__GLXcontext *baseDst,
|
|
+ __GLXcontext *baseSrc,
|
|
+ unsigned long mask)
|
|
+{
|
|
+ __GLXMESAcontext *dst = (__GLXMESAcontext *) baseDst;
|
|
+ __GLXMESAcontext *src = (__GLXMESAcontext *) baseSrc;
|
|
+
|
|
+ return XMesaCopyContext(src->xmesa, dst->xmesa, mask);
|
|
+}
|
|
+
|
|
+static int
|
|
+__glXMesaContextForceCurrent(__GLXcontext *baseContext)
|
|
+{
|
|
+ __GLXMESAcontext *context = (__GLXMESAcontext *) baseContext;
|
|
+
|
|
+ /* GlxSetRenderTables() call for XGL moved in XMesaForceCurrent() */
|
|
+
|
|
+ return XMesaForceCurrent(context->xmesa);
|
|
+}
|
|
+
|
|
+static __GLXcontext *
|
|
+__glXMesaScreenCreateContext(__GLXscreen *screen,
|
|
+ __GLcontextModes *modes,
|
|
+ __GLXcontext *baseShareContext)
|
|
+{
|
|
+ __GLXMESAcontext *context;
|
|
+ __GLXMESAcontext *shareContext = (__GLXMESAcontext *) baseShareContext;
|
|
+ XMesaVisual xm_vis;
|
|
+ XMesaContext xm_share;
|
|
+
|
|
+ context = xalloc (sizeof (__GLXMESAcontext));
|
|
+ if (context == NULL)
|
|
+ return NULL;
|
|
+
|
|
+ memset(context, 0, sizeof *context);
|
|
+
|
|
+ context->base.pGlxScreen = screen;
|
|
+ context->base.modes = modes;
|
|
+
|
|
+ context->base.destroy = __glXMesaContextDestroy;
|
|
+ context->base.makeCurrent = __glXMesaContextMakeCurrent;
|
|
+ context->base.loseCurrent = __glXMesaContextLoseCurrent;
|
|
+ context->base.copy = __glXMesaContextCopy;
|
|
+ context->base.forceCurrent = __glXMesaContextForceCurrent;
|
|
+
|
|
+ xm_vis = find_mesa_visual(screen, modes->visualID);
|
|
+ if (!xm_vis) {
|
|
+ ErrorF("find_mesa_visual returned NULL for visualID = 0x%04x\n",
|
|
+ modes->visualID);
|
|
+ xfree(context);
|
|
+ return NULL;
|
|
+ }
|
|
+
|
|
+ xm_share = shareContext ? shareContext->xmesa : NULL;
|
|
+ context->xmesa = XMesaCreateContext(xm_vis, xm_share);
|
|
+ if (!context->xmesa) {
|
|
+ xfree(context);
|
|
+ return NULL;
|
|
+ }
|
|
+
|
|
+ return &context->base;
|
|
+}
|
|
+
|
|
+static void
|
|
+__glXMesaScreenDestroy(__GLXscreen *screen)
|
|
+{
|
|
+ __GLXMESAscreen *mesaScreen = (__GLXMESAscreen *) screen;
|
|
+ int i;
|
|
+
|
|
+ for (i = 0; i < mesaScreen->num_vis; i++) {
|
|
+ if (mesaScreen->xm_vis[i])
|
|
+ XMesaDestroyVisual(mesaScreen->xm_vis[i]);
|
|
+ }
|
|
+
|
|
+ xfree(mesaScreen->xm_vis);
|
|
+
|
|
+ __glXScreenDestroy(screen);
|
|
+
|
|
+ xfree(screen);
|
|
+}
|
|
+
|
|
+static XMesaVisual
|
|
+find_mesa_visual(__GLXscreen *screen, VisualID vid)
|
|
+{
|
|
+ __GLXMESAscreen *mesaScreen = (__GLXMESAscreen *) screen;
|
|
+ const __GLcontextModes *modes;
|
|
+ unsigned i = 0;
|
|
+
|
|
+ for ( modes = screen->modes ; modes != NULL ; modes = modes->next ) {
|
|
+ if ( modes->visualID == vid ) {
|
|
+ break;
|
|
+ }
|
|
+
|
|
+ i++;
|
|
+ }
|
|
+
|
|
+ return (modes != NULL) ? mesaScreen->xm_vis[i] : NULL;
|
|
+}
|
|
+
|
|
+static void init_screen_visuals(__GLXMESAscreen *screen)
|
|
+{
|
|
+ ScreenPtr pScreen = screen->base.pScreen;
|
|
+ __GLcontextModes *modes;
|
|
+ XMesaVisual *pXMesaVisual;
|
|
+ int *used;
|
|
+ int i, j, size;
|
|
+
|
|
+ /* Alloc space for the list of XMesa visuals */
|
|
+ size = screen->base.numVisuals * sizeof(XMesaVisual);
|
|
+ pXMesaVisual = (XMesaVisual *) xalloc(size);
|
|
+ memset(pXMesaVisual, 0, size);
|
|
+
|
|
+ /* FIXME: Change 'used' to be a array of bits (rather than of ints),
|
|
+ * FIXME: create a stack array of 8 or 16 bytes. If 'numVisuals' is less
|
|
+ * FIXME: than 64 or 128 the stack array can be used instead of calling
|
|
+ * FIXME: __glXMalloc / __glXFree. If nothing else, convert 'used' to
|
|
+ * FIXME: array of bytes instead of ints!
|
|
+ */
|
|
+ used = (int *) xalloc(pScreen->numVisuals * sizeof(int));
|
|
+ memset(used, 0, pScreen->numVisuals * sizeof(int));
|
|
+
|
|
+ i = 0;
|
|
+ for ( modes = screen->base.modes; modes != NULL; modes = modes->next ) {
|
|
+ const int vis_class = _gl_convert_to_x_visual_type( modes->visualType );
|
|
+ const int nplanes = (modes->rgbBits - modes->alphaBits);
|
|
+ const VisualPtr pVis = pScreen->visuals;
|
|
+
|
|
+ for (j = 0; j < pScreen->numVisuals; j++) {
|
|
+ if (pVis[j].class == vis_class &&
|
|
+ pVis[j].nplanes == nplanes &&
|
|
+ pVis[j].redMask == modes->redMask &&
|
|
+ pVis[j].greenMask == modes->greenMask &&
|
|
+ pVis[j].blueMask == modes->blueMask &&
|
|
+ !used[j]) {
|
|
+
|
|
+ /* Create the XMesa visual */
|
|
+ pXMesaVisual[i] =
|
|
+ XMesaCreateVisual(pScreen,
|
|
+ &pVis[j],
|
|
+ modes->rgbMode,
|
|
+ (modes->alphaBits > 0),
|
|
+ modes->doubleBufferMode,
|
|
+ modes->stereoMode,
|
|
+ GL_TRUE, /* ximage_flag */
|
|
+ modes->depthBits,
|
|
+ modes->stencilBits,
|
|
+ modes->accumRedBits,
|
|
+ modes->accumGreenBits,
|
|
+ modes->accumBlueBits,
|
|
+ modes->accumAlphaBits,
|
|
+ modes->samples,
|
|
+ modes->level,
|
|
+ modes->visualRating);
|
|
+ /* Set the VisualID */
|
|
+ modes->visualID = pVis[j].vid;
|
|
+
|
|
+ /* Mark this visual used */
|
|
+ used[j] = 1;
|
|
+ break;
|
|
+ }
|
|
+ }
|
|
+
|
|
+ if ( j == pScreen->numVisuals ) {
|
|
+ ErrorF("No matching visual for __GLcontextMode with "
|
|
+ "visual class = %d (%d), nplanes = %u\n",
|
|
+ vis_class,
|
|
+ modes->visualType,
|
|
+ (modes->rgbBits - modes->alphaBits) );
|
|
+ }
|
|
+ else if ( modes->visualID == -1 ) {
|
|
+ FatalError( "Matching visual found, but visualID still -1!\n" );
|
|
+ }
|
|
+
|
|
+ i++;
|
|
+ }
|
|
+
|
|
+ xfree(used);
|
|
+
|
|
+ screen->num_vis = pScreen->numVisuals;
|
|
+ screen->xm_vis = pXMesaVisual;
|
|
+}
|
|
+
|
|
+static __GLXscreen *
|
|
+__glXMesaScreenProbe(ScreenPtr pScreen)
|
|
+{
|
|
+ __GLXMESAscreen *screen;
|
|
+
|
|
+ screen = xalloc(sizeof *screen);
|
|
+ if (screen == NULL)
|
|
+ return NULL;
|
|
+
|
|
+ __glXScreenInit(&screen->base, pScreen);
|
|
+
|
|
+ screen->base.destroy = __glXMesaScreenDestroy;
|
|
+ screen->base.createContext = __glXMesaScreenCreateContext;
|
|
+ screen->base.createDrawable = __glXMesaScreenCreateDrawable;
|
|
+ screen->base.pScreen = pScreen;
|
|
+
|
|
+ /*
|
|
+ * Find the GLX visuals that are supported by this screen and create
|
|
+ * XMesa's visuals.
|
|
+ */
|
|
+ init_screen_visuals(screen);
|
|
+
|
|
+ return &screen->base;
|
|
+}
|
|
+
|
|
+__GLXprovider __glXMesaProvider = {
|
|
+ __glXMesaScreenProbe,
|
|
+ "MESA",
|
|
+ NULL
|
|
+};
|
|
+
|
|
+__GLXprovider *
|
|
+GlxGetMesaProvider (void)
|
|
+{
|
|
+ return &__glXMesaProvider;
|
|
+}
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxscreens.h GL/glx/glxscreens.h
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxscreens.h 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/glx/glxscreens.h 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -40,9 +40,6 @@
|
|
**
|
|
*/
|
|
|
|
-/* XXX: should be defined somewhere globally */
|
|
-#define CAPI
|
|
-
|
|
#include "GL/internal/glcore.h"
|
|
|
|
/*
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxutil.h GL/glx/glxutil.h
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/glxutil.h 2007-01-30 07:03:18.000000000 +0100
|
|
+++ GL/glx/glxutil.h 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -60,6 +60,4 @@
|
|
extern void *__glXglDDXScreenInfo(void);
|
|
extern void *__glXglDDXExtensionInfo(void);
|
|
|
|
-extern int glxCountBits(int);
|
|
-
|
|
#endif /* _glxcmds_h_ */
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_dispatch.c GL/glx/indirect_dispatch.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_dispatch.c 2006-10-25 02:25:19.000000000 +0200
|
|
+++ GL/glx/indirect_dispatch.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -33,6 +33,7 @@
|
|
#include "indirect_size_get.h"
|
|
#include "indirect_dispatch.h"
|
|
#include "glxserver.h"
|
|
+#include "glxbyteorder.h"
|
|
#include "indirect_util.h"
|
|
#include "singlesize.h"
|
|
#include "glapitable.h"
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_dispatch.h GL/glx/indirect_dispatch.h
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_dispatch.h 2007-01-30 07:03:18.000000000 +0100
|
|
+++ GL/glx/indirect_dispatch.h 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -211,6 +211,8 @@
|
|
extern HIDDEN int __glXDispSwap_ReadPixels(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN void __glXDisp_EdgeFlagv(GLbyte * pc);
|
|
extern HIDDEN void __glXDispSwap_EdgeFlagv(GLbyte * pc);
|
|
+extern HIDDEN void __glXDisp_Rotatef(GLbyte * pc);
|
|
+extern HIDDEN void __glXDispSwap_Rotatef(GLbyte * pc);
|
|
extern HIDDEN void __glXDisp_TexParameterf(GLbyte * pc);
|
|
extern HIDDEN void __glXDispSwap_TexParameterf(GLbyte * pc);
|
|
extern HIDDEN void __glXDisp_TexParameteri(GLbyte * pc);
|
|
@@ -379,8 +381,6 @@
|
|
extern HIDDEN void __glXDispSwap_DepthMask(GLbyte * pc);
|
|
extern HIDDEN void __glXDisp_Rotated(GLbyte * pc);
|
|
extern HIDDEN void __glXDispSwap_Rotated(GLbyte * pc);
|
|
-extern HIDDEN void __glXDisp_Color4iv(GLbyte * pc);
|
|
-extern HIDDEN void __glXDispSwap_Color4iv(GLbyte * pc);
|
|
extern HIDDEN int __glXDisp_GetMaterialiv(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN int __glXDispSwap_GetMaterialiv(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN void __glXDisp_StencilOp(GLbyte * pc);
|
|
@@ -519,8 +519,6 @@
|
|
extern HIDDEN void __glXDispSwap_SecondaryColor3ivEXT(GLbyte * pc);
|
|
extern HIDDEN void __glXDisp_TexCoord4iv(GLbyte * pc);
|
|
extern HIDDEN void __glXDispSwap_TexCoord4iv(GLbyte * pc);
|
|
-extern HIDDEN int __glXDisp_GetDrawableAttributesSGIX(struct __GLXclientStateRec *, GLbyte *);
|
|
-extern HIDDEN int __glXDispSwap_GetDrawableAttributesSGIX(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN void __glXDisp_SampleMaskSGIS(GLbyte * pc);
|
|
extern HIDDEN void __glXDispSwap_SampleMaskSGIS(GLbyte * pc);
|
|
extern HIDDEN void __glXDisp_ColorTableParameteriv(GLbyte * pc);
|
|
@@ -621,6 +619,8 @@
|
|
extern HIDDEN int __glXDispSwap_PixelStorei(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN void __glXDisp_VertexAttrib4usvARB(GLbyte * pc);
|
|
extern HIDDEN void __glXDispSwap_VertexAttrib4usvARB(GLbyte * pc);
|
|
+extern HIDDEN void __glXDisp_Color4iv(GLbyte * pc);
|
|
+extern HIDDEN void __glXDispSwap_Color4iv(GLbyte * pc);
|
|
extern HIDDEN void __glXDisp_EvalCoord2dv(GLbyte * pc);
|
|
extern HIDDEN void __glXDispSwap_EvalCoord2dv(GLbyte * pc);
|
|
extern HIDDEN void __glXDisp_VertexAttrib3svARB(GLbyte * pc);
|
|
@@ -849,8 +849,10 @@
|
|
extern HIDDEN int __glXDispSwap_GetHistogramParameteriv(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN int __glXDisp_GetHistogramParameterivEXT(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN int __glXDispSwap_GetHistogramParameterivEXT(struct __GLXclientStateRec *, GLbyte *);
|
|
-extern HIDDEN void __glXDisp_Rotatef(GLbyte * pc);
|
|
-extern HIDDEN void __glXDispSwap_Rotatef(GLbyte * pc);
|
|
+extern HIDDEN int __glXDisp_GetConvolutionFilter(struct __GLXclientStateRec *, GLbyte *);
|
|
+extern HIDDEN int __glXDispSwap_GetConvolutionFilter(struct __GLXclientStateRec *, GLbyte *);
|
|
+extern HIDDEN int __glXDisp_GetConvolutionFilterEXT(struct __GLXclientStateRec *, GLbyte *);
|
|
+extern HIDDEN int __glXDispSwap_GetConvolutionFilterEXT(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN int __glXDisp_GetProgramivARB(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN int __glXDispSwap_GetProgramivARB(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN void __glXDisp_BlendFuncSeparateEXT(GLbyte * pc);
|
|
@@ -875,10 +877,6 @@
|
|
extern HIDDEN void __glXDispSwap_Map2f(GLbyte * pc);
|
|
extern HIDDEN void __glXDisp_ProgramStringARB(GLbyte * pc);
|
|
extern HIDDEN void __glXDispSwap_ProgramStringARB(GLbyte * pc);
|
|
-extern HIDDEN int __glXDisp_GetConvolutionFilter(struct __GLXclientStateRec *, GLbyte *);
|
|
-extern HIDDEN int __glXDispSwap_GetConvolutionFilter(struct __GLXclientStateRec *, GLbyte *);
|
|
-extern HIDDEN int __glXDisp_GetConvolutionFilterEXT(struct __GLXclientStateRec *, GLbyte *);
|
|
-extern HIDDEN int __glXDispSwap_GetConvolutionFilterEXT(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN int __glXDisp_GetCompressedTexImageARB(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN int __glXDispSwap_GetCompressedTexImageARB(struct __GLXclientStateRec *, GLbyte *);
|
|
extern HIDDEN int __glXDisp_GetTexGenfv(struct __GLXclientStateRec *, GLbyte *);
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_dispatch_swap.c GL/glx/indirect_dispatch_swap.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_dispatch_swap.c 2007-03-05 19:38:58.000000000 +0100
|
|
+++ GL/glx/indirect_dispatch_swap.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -28,24 +28,12 @@
|
|
#include <X11/Xmd.h>
|
|
#include <GL/gl.h>
|
|
#include <GL/glxproto.h>
|
|
-#if defined(__linux__) || defined (__GLIBC__) || defined(__GNU__)
|
|
-#include <byteswap.h>
|
|
-#elif defined(__OpenBSD__)
|
|
-#include <sys/endian.h>
|
|
-#define bswap_16 __swap16
|
|
-#define bswap_32 __swap32
|
|
-#define bswap_64 __swap64
|
|
-#else
|
|
-#include <sys/endian.h>
|
|
-#define bswap_16 bswap16
|
|
-#define bswap_32 bswap32
|
|
-#define bswap_64 bswap64
|
|
-#endif
|
|
#include <inttypes.h>
|
|
#include "indirect_size.h"
|
|
#include "indirect_size_get.h"
|
|
#include "indirect_dispatch.h"
|
|
#include "glxserver.h"
|
|
+#include "glxbyteorder.h"
|
|
#include "indirect_util.h"
|
|
#include "singlesize.h"
|
|
#include "glapitable.h"
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_program.c GL/glx/indirect_program.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_program.c 2007-03-05 19:38:58.000000000 +0100
|
|
+++ GL/glx/indirect_program.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -35,6 +35,7 @@
|
|
#endif
|
|
|
|
#include "glxserver.h"
|
|
+#include "glxbyteorder.h"
|
|
#include "glxext.h"
|
|
#include "singlesize.h"
|
|
#include "unpack.h"
|
|
@@ -46,20 +47,6 @@
|
|
#include "dispatch.h"
|
|
#include "glapioffsets.h"
|
|
|
|
-#if defined(__linux__) || defined (__GLIBC__) || defined(__GNU__)
|
|
-#include <byteswap.h>
|
|
-#elif defined(__OpenBSD__)
|
|
-#include <sys/endian.h>
|
|
-#define bswap_16 __swap16
|
|
-#define bswap_32 __swap32
|
|
-#define bswap_64 __swap64
|
|
-#else
|
|
-#include <sys/endian.h>
|
|
-#define bswap_16 bswap16
|
|
-#define bswap_32 bswap32
|
|
-#define bswap_64 bswap64
|
|
-#endif
|
|
-
|
|
static int DoGetProgramString(struct __GLXclientStateRec *cl, GLbyte *pc,
|
|
unsigned get_programiv_offset, unsigned get_program_string_offset,
|
|
Bool do_swap);
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_reqsize.c GL/glx/indirect_reqsize.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_reqsize.c 2007-01-30 07:03:18.000000000 +0100
|
|
+++ GL/glx/indirect_reqsize.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -28,16 +28,10 @@
|
|
|
|
#include <GL/gl.h>
|
|
#include "glxserver.h"
|
|
+#include "glxbyteorder.h"
|
|
#include "indirect_size.h"
|
|
#include "indirect_reqsize.h"
|
|
|
|
-#if defined(__linux__) || defined (__GLIBC__) || defined(__GNU__)
|
|
-# include <byteswap.h>
|
|
-# define SWAP_32(v) do { (v) = bswap_32(v); } while(0)
|
|
-#else
|
|
-# define SWAP_32(v) do { char tmp; swapl(&v, tmp); } while(0)
|
|
-#endif
|
|
-
|
|
#define __GLX_PAD(x) (((x) + 3) & ~3)
|
|
|
|
#if defined(__CYGWIN__) || defined(__MINGW32__)
|
|
@@ -56,15 +50,15 @@
|
|
|
|
|
|
int
|
|
-__glXCallListsReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXCallListsReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei n = *(GLsizei *)(pc + 0);
|
|
- GLenum type = * (GLenum *)(pc + 4);
|
|
+ GLsizei n = *(GLsizei *) (pc + 0);
|
|
+ GLenum type = *(GLenum *) (pc + 4);
|
|
GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( n );
|
|
- SWAP_32( type );
|
|
+ n = bswap_32(n);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
compsize = __glCallLists_size(type);
|
|
@@ -72,22 +66,22 @@
|
|
}
|
|
|
|
int
|
|
-__glXBitmapReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXBitmapReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
GLint image_height = 0;
|
|
- GLint skip_images = 0;
|
|
- GLint skip_rows = * (GLint *)(pc + 8);
|
|
- GLint alignment = * (GLint *)(pc + 16);
|
|
- GLsizei width = *(GLsizei *)(pc + 20);
|
|
- GLsizei height = *(GLsizei *)(pc + 24);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( width );
|
|
- SWAP_32( height );
|
|
+ GLint skip_images = 0;
|
|
+ GLint skip_rows = *(GLint *) (pc + 8);
|
|
+ GLint alignment = *(GLint *) (pc + 16);
|
|
+ GLsizei width = *(GLsizei *) (pc + 20);
|
|
+ GLsizei height = *(GLsizei *) (pc + 24);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ alignment = bswap_32(alignment);
|
|
+ width = bswap_32(width);
|
|
+ height = bswap_32(height);
|
|
}
|
|
|
|
return __glXImageSize(GL_COLOR_INDEX, GL_BITMAP, 0, width, height, 1,
|
|
@@ -96,13 +90,13 @@
|
|
}
|
|
|
|
int
|
|
-__glXFogfvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXFogfvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLenum pname = * (GLenum *)(pc + 0);
|
|
+ GLenum pname = *(GLenum *) (pc + 0);
|
|
GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( pname );
|
|
+ pname = bswap_32(pname);
|
|
}
|
|
|
|
compsize = __glFogfv_size(pname);
|
|
@@ -110,13 +104,13 @@
|
|
}
|
|
|
|
int
|
|
-__glXLightfvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXLightfvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLenum pname = * (GLenum *)(pc + 4);
|
|
+ GLenum pname = *(GLenum *) (pc + 4);
|
|
GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( pname );
|
|
+ pname = bswap_32(pname);
|
|
}
|
|
|
|
compsize = __glLightfv_size(pname);
|
|
@@ -124,13 +118,13 @@
|
|
}
|
|
|
|
int
|
|
-__glXLightModelfvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXLightModelfvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLenum pname = * (GLenum *)(pc + 0);
|
|
+ GLenum pname = *(GLenum *) (pc + 0);
|
|
GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( pname );
|
|
+ pname = bswap_32(pname);
|
|
}
|
|
|
|
compsize = __glLightModelfv_size(pname);
|
|
@@ -138,13 +132,13 @@
|
|
}
|
|
|
|
int
|
|
-__glXMaterialfvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXMaterialfvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLenum pname = * (GLenum *)(pc + 4);
|
|
+ GLenum pname = *(GLenum *) (pc + 4);
|
|
GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( pname );
|
|
+ pname = bswap_32(pname);
|
|
}
|
|
|
|
compsize = __glMaterialfv_size(pname);
|
|
@@ -152,18 +146,18 @@
|
|
}
|
|
|
|
int
|
|
-__glXPolygonStippleReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXPolygonStippleReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
GLint image_height = 0;
|
|
- GLint skip_images = 0;
|
|
- GLint skip_rows = * (GLint *)(pc + 8);
|
|
- GLint alignment = * (GLint *)(pc + 16);
|
|
+ GLint skip_images = 0;
|
|
+ GLint skip_rows = *(GLint *) (pc + 8);
|
|
+ GLint alignment = *(GLint *) (pc + 16);
|
|
|
|
if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( alignment );
|
|
+ row_length = bswap_32(row_length);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ alignment = bswap_32(alignment);
|
|
}
|
|
|
|
return __glXImageSize(GL_COLOR_INDEX, GL_BITMAP, 0, 32, 32, 1,
|
|
@@ -172,13 +166,13 @@
|
|
}
|
|
|
|
int
|
|
-__glXTexParameterfvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXTexParameterfvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLenum pname = * (GLenum *)(pc + 4);
|
|
+ GLenum pname = *(GLenum *) (pc + 4);
|
|
GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( pname );
|
|
+ pname = bswap_32(pname);
|
|
}
|
|
|
|
compsize = __glTexParameterfv_size(pname);
|
|
@@ -186,26 +180,26 @@
|
|
}
|
|
|
|
int
|
|
-__glXTexImage1DReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXTexImage1DReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
GLint image_height = 0;
|
|
- GLint skip_images = 0;
|
|
- GLint skip_rows = * (GLint *)(pc + 8);
|
|
- GLint alignment = * (GLint *)(pc + 16);
|
|
- GLenum target = * (GLenum *)(pc + 20);
|
|
- GLsizei width = *(GLsizei *)(pc + 32);
|
|
- GLenum format = * (GLenum *)(pc + 44);
|
|
- GLenum type = * (GLenum *)(pc + 48);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( target );
|
|
- SWAP_32( width );
|
|
- SWAP_32( format );
|
|
- SWAP_32( type );
|
|
+ GLint skip_images = 0;
|
|
+ GLint skip_rows = *(GLint *) (pc + 8);
|
|
+ GLint alignment = *(GLint *) (pc + 16);
|
|
+ GLenum target = *(GLenum *) (pc + 20);
|
|
+ GLsizei width = *(GLsizei *) (pc + 32);
|
|
+ GLenum format = *(GLenum *) (pc + 44);
|
|
+ GLenum type = *(GLenum *) (pc + 48);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ alignment = bswap_32(alignment);
|
|
+ target = bswap_32(target);
|
|
+ width = bswap_32(width);
|
|
+ format = bswap_32(format);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
return __glXImageSize(format, type, target, width, 1, 1,
|
|
@@ -214,28 +208,28 @@
|
|
}
|
|
|
|
int
|
|
-__glXTexImage2DReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXTexImage2DReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
GLint image_height = 0;
|
|
- GLint skip_images = 0;
|
|
- GLint skip_rows = * (GLint *)(pc + 8);
|
|
- GLint alignment = * (GLint *)(pc + 16);
|
|
- GLenum target = * (GLenum *)(pc + 20);
|
|
- GLsizei width = *(GLsizei *)(pc + 32);
|
|
- GLsizei height = *(GLsizei *)(pc + 36);
|
|
- GLenum format = * (GLenum *)(pc + 44);
|
|
- GLenum type = * (GLenum *)(pc + 48);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( target );
|
|
- SWAP_32( width );
|
|
- SWAP_32( height );
|
|
- SWAP_32( format );
|
|
- SWAP_32( type );
|
|
+ GLint skip_images = 0;
|
|
+ GLint skip_rows = *(GLint *) (pc + 8);
|
|
+ GLint alignment = *(GLint *) (pc + 16);
|
|
+ GLenum target = *(GLenum *) (pc + 20);
|
|
+ GLsizei width = *(GLsizei *) (pc + 32);
|
|
+ GLsizei height = *(GLsizei *) (pc + 36);
|
|
+ GLenum format = *(GLenum *) (pc + 44);
|
|
+ GLenum type = *(GLenum *) (pc + 48);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ alignment = bswap_32(alignment);
|
|
+ target = bswap_32(target);
|
|
+ width = bswap_32(width);
|
|
+ height = bswap_32(height);
|
|
+ format = bswap_32(format);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
return __glXImageSize(format, type, target, width, height, 1,
|
|
@@ -244,13 +238,13 @@
|
|
}
|
|
|
|
int
|
|
-__glXTexEnvfvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXTexEnvfvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLenum pname = * (GLenum *)(pc + 4);
|
|
+ GLenum pname = *(GLenum *) (pc + 4);
|
|
GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( pname );
|
|
+ pname = bswap_32(pname);
|
|
}
|
|
|
|
compsize = __glTexEnvfv_size(pname);
|
|
@@ -258,13 +252,13 @@
|
|
}
|
|
|
|
int
|
|
-__glXTexGendvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXTexGendvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLenum pname = * (GLenum *)(pc + 4);
|
|
+ GLenum pname = *(GLenum *) (pc + 4);
|
|
GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( pname );
|
|
+ pname = bswap_32(pname);
|
|
}
|
|
|
|
compsize = __glTexGendv_size(pname);
|
|
@@ -272,13 +266,13 @@
|
|
}
|
|
|
|
int
|
|
-__glXTexGenfvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXTexGenfvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLenum pname = * (GLenum *)(pc + 4);
|
|
+ GLenum pname = *(GLenum *) (pc + 4);
|
|
GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( pname );
|
|
+ pname = bswap_32(pname);
|
|
}
|
|
|
|
compsize = __glTexGenfv_size(pname);
|
|
@@ -286,50 +280,50 @@
|
|
}
|
|
|
|
int
|
|
-__glXPixelMapfvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXPixelMapfvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei mapsize = *(GLsizei *)(pc + 4);
|
|
+ GLsizei mapsize = *(GLsizei *) (pc + 4);
|
|
|
|
if (swap) {
|
|
- SWAP_32( mapsize );
|
|
+ mapsize = bswap_32(mapsize);
|
|
}
|
|
|
|
return __GLX_PAD((mapsize * 4));
|
|
}
|
|
|
|
int
|
|
-__glXPixelMapusvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXPixelMapusvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei mapsize = *(GLsizei *)(pc + 4);
|
|
+ GLsizei mapsize = *(GLsizei *) (pc + 4);
|
|
|
|
if (swap) {
|
|
- SWAP_32( mapsize );
|
|
+ mapsize = bswap_32(mapsize);
|
|
}
|
|
|
|
return __GLX_PAD((mapsize * 2));
|
|
}
|
|
|
|
int
|
|
-__glXDrawPixelsReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXDrawPixelsReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
GLint image_height = 0;
|
|
- GLint skip_images = 0;
|
|
- GLint skip_rows = * (GLint *)(pc + 8);
|
|
- GLint alignment = * (GLint *)(pc + 16);
|
|
- GLsizei width = *(GLsizei *)(pc + 20);
|
|
- GLsizei height = *(GLsizei *)(pc + 24);
|
|
- GLenum format = * (GLenum *)(pc + 28);
|
|
- GLenum type = * (GLenum *)(pc + 32);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( width );
|
|
- SWAP_32( height );
|
|
- SWAP_32( format );
|
|
- SWAP_32( type );
|
|
+ GLint skip_images = 0;
|
|
+ GLint skip_rows = *(GLint *) (pc + 8);
|
|
+ GLint alignment = *(GLint *) (pc + 16);
|
|
+ GLsizei width = *(GLsizei *) (pc + 20);
|
|
+ GLsizei height = *(GLsizei *) (pc + 24);
|
|
+ GLenum format = *(GLenum *) (pc + 28);
|
|
+ GLenum type = *(GLenum *) (pc + 32);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ alignment = bswap_32(alignment);
|
|
+ width = bswap_32(width);
|
|
+ height = bswap_32(height);
|
|
+ format = bswap_32(format);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
return __glXImageSize(format, type, 0, width, height, 1,
|
|
@@ -338,38 +332,38 @@
|
|
}
|
|
|
|
int
|
|
-__glXPrioritizeTexturesReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXPrioritizeTexturesReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei n = *(GLsizei *)(pc + 0);
|
|
+ GLsizei n = *(GLsizei *) (pc + 0);
|
|
|
|
if (swap) {
|
|
- SWAP_32( n );
|
|
+ n = bswap_32(n);
|
|
}
|
|
|
|
return __GLX_PAD((n * 4) + (n * 4));
|
|
}
|
|
|
|
int
|
|
-__glXTexSubImage1DReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXTexSubImage1DReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
GLint image_height = 0;
|
|
- GLint skip_images = 0;
|
|
- GLint skip_rows = * (GLint *)(pc + 8);
|
|
- GLint alignment = * (GLint *)(pc + 16);
|
|
- GLenum target = * (GLenum *)(pc + 20);
|
|
- GLsizei width = *(GLsizei *)(pc + 36);
|
|
- GLenum format = * (GLenum *)(pc + 44);
|
|
- GLenum type = * (GLenum *)(pc + 48);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( target );
|
|
- SWAP_32( width );
|
|
- SWAP_32( format );
|
|
- SWAP_32( type );
|
|
+ GLint skip_images = 0;
|
|
+ GLint skip_rows = *(GLint *) (pc + 8);
|
|
+ GLint alignment = *(GLint *) (pc + 16);
|
|
+ GLenum target = *(GLenum *) (pc + 20);
|
|
+ GLsizei width = *(GLsizei *) (pc + 36);
|
|
+ GLenum format = *(GLenum *) (pc + 44);
|
|
+ GLenum type = *(GLenum *) (pc + 48);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ alignment = bswap_32(alignment);
|
|
+ target = bswap_32(target);
|
|
+ width = bswap_32(width);
|
|
+ format = bswap_32(format);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
return __glXImageSize(format, type, target, width, 1, 1,
|
|
@@ -378,28 +372,28 @@
|
|
}
|
|
|
|
int
|
|
-__glXTexSubImage2DReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXTexSubImage2DReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
GLint image_height = 0;
|
|
- GLint skip_images = 0;
|
|
- GLint skip_rows = * (GLint *)(pc + 8);
|
|
- GLint alignment = * (GLint *)(pc + 16);
|
|
- GLenum target = * (GLenum *)(pc + 20);
|
|
- GLsizei width = *(GLsizei *)(pc + 36);
|
|
- GLsizei height = *(GLsizei *)(pc + 40);
|
|
- GLenum format = * (GLenum *)(pc + 44);
|
|
- GLenum type = * (GLenum *)(pc + 48);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( target );
|
|
- SWAP_32( width );
|
|
- SWAP_32( height );
|
|
- SWAP_32( format );
|
|
- SWAP_32( type );
|
|
+ GLint skip_images = 0;
|
|
+ GLint skip_rows = *(GLint *) (pc + 8);
|
|
+ GLint alignment = *(GLint *) (pc + 16);
|
|
+ GLenum target = *(GLenum *) (pc + 20);
|
|
+ GLsizei width = *(GLsizei *) (pc + 36);
|
|
+ GLsizei height = *(GLsizei *) (pc + 40);
|
|
+ GLenum format = *(GLenum *) (pc + 44);
|
|
+ GLenum type = *(GLenum *) (pc + 48);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ alignment = bswap_32(alignment);
|
|
+ target = bswap_32(target);
|
|
+ width = bswap_32(width);
|
|
+ height = bswap_32(height);
|
|
+ format = bswap_32(format);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
return __glXImageSize(format, type, target, width, height, 1,
|
|
@@ -408,26 +402,26 @@
|
|
}
|
|
|
|
int
|
|
-__glXColorTableReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXColorTableReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
GLint image_height = 0;
|
|
- GLint skip_images = 0;
|
|
- GLint skip_rows = * (GLint *)(pc + 8);
|
|
- GLint alignment = * (GLint *)(pc + 16);
|
|
- GLenum target = * (GLenum *)(pc + 20);
|
|
- GLsizei width = *(GLsizei *)(pc + 28);
|
|
- GLenum format = * (GLenum *)(pc + 32);
|
|
- GLenum type = * (GLenum *)(pc + 36);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( target );
|
|
- SWAP_32( width );
|
|
- SWAP_32( format );
|
|
- SWAP_32( type );
|
|
+ GLint skip_images = 0;
|
|
+ GLint skip_rows = *(GLint *) (pc + 8);
|
|
+ GLint alignment = *(GLint *) (pc + 16);
|
|
+ GLenum target = *(GLenum *) (pc + 20);
|
|
+ GLsizei width = *(GLsizei *) (pc + 28);
|
|
+ GLenum format = *(GLenum *) (pc + 32);
|
|
+ GLenum type = *(GLenum *) (pc + 36);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ alignment = bswap_32(alignment);
|
|
+ target = bswap_32(target);
|
|
+ width = bswap_32(width);
|
|
+ format = bswap_32(format);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
return __glXImageSize(format, type, target, width, 1, 1,
|
|
@@ -436,13 +430,13 @@
|
|
}
|
|
|
|
int
|
|
-__glXColorTableParameterfvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXColorTableParameterfvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLenum pname = * (GLenum *)(pc + 4);
|
|
+ GLenum pname = *(GLenum *) (pc + 4);
|
|
GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( pname );
|
|
+ pname = bswap_32(pname);
|
|
}
|
|
|
|
compsize = __glColorTableParameterfv_size(pname);
|
|
@@ -450,26 +444,26 @@
|
|
}
|
|
|
|
int
|
|
-__glXColorSubTableReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXColorSubTableReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
GLint image_height = 0;
|
|
- GLint skip_images = 0;
|
|
- GLint skip_rows = * (GLint *)(pc + 8);
|
|
- GLint alignment = * (GLint *)(pc + 16);
|
|
- GLenum target = * (GLenum *)(pc + 20);
|
|
- GLsizei count = *(GLsizei *)(pc + 28);
|
|
- GLenum format = * (GLenum *)(pc + 32);
|
|
- GLenum type = * (GLenum *)(pc + 36);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( target );
|
|
- SWAP_32( count );
|
|
- SWAP_32( format );
|
|
- SWAP_32( type );
|
|
+ GLint skip_images = 0;
|
|
+ GLint skip_rows = *(GLint *) (pc + 8);
|
|
+ GLint alignment = *(GLint *) (pc + 16);
|
|
+ GLenum target = *(GLenum *) (pc + 20);
|
|
+ GLsizei count = *(GLsizei *) (pc + 28);
|
|
+ GLenum format = *(GLenum *) (pc + 32);
|
|
+ GLenum type = *(GLenum *) (pc + 36);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ alignment = bswap_32(alignment);
|
|
+ target = bswap_32(target);
|
|
+ count = bswap_32(count);
|
|
+ format = bswap_32(format);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
return __glXImageSize(format, type, target, count, 1, 1,
|
|
@@ -478,26 +472,26 @@
|
|
}
|
|
|
|
int
|
|
-__glXConvolutionFilter1DReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXConvolutionFilter1DReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
GLint image_height = 0;
|
|
- GLint skip_images = 0;
|
|
- GLint skip_rows = * (GLint *)(pc + 8);
|
|
- GLint alignment = * (GLint *)(pc + 16);
|
|
- GLenum target = * (GLenum *)(pc + 20);
|
|
- GLsizei width = *(GLsizei *)(pc + 28);
|
|
- GLenum format = * (GLenum *)(pc + 36);
|
|
- GLenum type = * (GLenum *)(pc + 40);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( target );
|
|
- SWAP_32( width );
|
|
- SWAP_32( format );
|
|
- SWAP_32( type );
|
|
+ GLint skip_images = 0;
|
|
+ GLint skip_rows = *(GLint *) (pc + 8);
|
|
+ GLint alignment = *(GLint *) (pc + 16);
|
|
+ GLenum target = *(GLenum *) (pc + 20);
|
|
+ GLsizei width = *(GLsizei *) (pc + 28);
|
|
+ GLenum format = *(GLenum *) (pc + 36);
|
|
+ GLenum type = *(GLenum *) (pc + 40);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ alignment = bswap_32(alignment);
|
|
+ target = bswap_32(target);
|
|
+ width = bswap_32(width);
|
|
+ format = bswap_32(format);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
return __glXImageSize(format, type, target, width, 1, 1,
|
|
@@ -506,28 +500,28 @@
|
|
}
|
|
|
|
int
|
|
-__glXConvolutionFilter2DReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXConvolutionFilter2DReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
GLint image_height = 0;
|
|
- GLint skip_images = 0;
|
|
- GLint skip_rows = * (GLint *)(pc + 8);
|
|
- GLint alignment = * (GLint *)(pc + 16);
|
|
- GLenum target = * (GLenum *)(pc + 20);
|
|
- GLsizei width = *(GLsizei *)(pc + 28);
|
|
- GLsizei height = *(GLsizei *)(pc + 32);
|
|
- GLenum format = * (GLenum *)(pc + 36);
|
|
- GLenum type = * (GLenum *)(pc + 40);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( target );
|
|
- SWAP_32( width );
|
|
- SWAP_32( height );
|
|
- SWAP_32( format );
|
|
- SWAP_32( type );
|
|
+ GLint skip_images = 0;
|
|
+ GLint skip_rows = *(GLint *) (pc + 8);
|
|
+ GLint alignment = *(GLint *) (pc + 16);
|
|
+ GLenum target = *(GLenum *) (pc + 20);
|
|
+ GLsizei width = *(GLsizei *) (pc + 28);
|
|
+ GLsizei height = *(GLsizei *) (pc + 32);
|
|
+ GLenum format = *(GLenum *) (pc + 36);
|
|
+ GLenum type = *(GLenum *) (pc + 40);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ alignment = bswap_32(alignment);
|
|
+ target = bswap_32(target);
|
|
+ width = bswap_32(width);
|
|
+ height = bswap_32(height);
|
|
+ format = bswap_32(format);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
return __glXImageSize(format, type, target, width, height, 1,
|
|
@@ -536,13 +530,13 @@
|
|
}
|
|
|
|
int
|
|
-__glXConvolutionParameterfvReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXConvolutionParameterfvReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLenum pname = * (GLenum *)(pc + 4);
|
|
+ GLenum pname = *(GLenum *) (pc + 4);
|
|
GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( pname );
|
|
+ pname = bswap_32(pname);
|
|
}
|
|
|
|
compsize = __glConvolutionParameterfv_size(pname);
|
|
@@ -550,32 +544,32 @@
|
|
}
|
|
|
|
int
|
|
-__glXTexImage3DReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXTexImage3DReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
- GLint image_height = * (GLint *)(pc + 8);
|
|
- GLint skip_rows = * (GLint *)(pc + 16);
|
|
- GLint skip_images = * (GLint *)(pc + 20);
|
|
- GLint alignment = * (GLint *)(pc + 32);
|
|
- GLenum target = * (GLenum *)(pc + 36);
|
|
- GLsizei width = *(GLsizei *)(pc + 48);
|
|
- GLsizei height = *(GLsizei *)(pc + 52);
|
|
- GLsizei depth = *(GLsizei *)(pc + 56);
|
|
- GLenum format = * (GLenum *)(pc + 68);
|
|
- GLenum type = * (GLenum *)(pc + 72);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( image_height );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( skip_images );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( target );
|
|
- SWAP_32( width );
|
|
- SWAP_32( height );
|
|
- SWAP_32( depth );
|
|
- SWAP_32( format );
|
|
- SWAP_32( type );
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
+ GLint image_height = *(GLint *) (pc + 8);
|
|
+ GLint skip_rows = *(GLint *) (pc + 16);
|
|
+ GLint skip_images = *(GLint *) (pc + 20);
|
|
+ GLint alignment = *(GLint *) (pc + 32);
|
|
+ GLenum target = *(GLenum *) (pc + 36);
|
|
+ GLsizei width = *(GLsizei *) (pc + 48);
|
|
+ GLsizei height = *(GLsizei *) (pc + 52);
|
|
+ GLsizei depth = *(GLsizei *) (pc + 56);
|
|
+ GLenum format = *(GLenum *) (pc + 68);
|
|
+ GLenum type = *(GLenum *) (pc + 72);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ image_height = bswap_32(image_height);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ skip_images = bswap_32(skip_images);
|
|
+ alignment = bswap_32(alignment);
|
|
+ target = bswap_32(target);
|
|
+ width = bswap_32(width);
|
|
+ height = bswap_32(height);
|
|
+ depth = bswap_32(depth);
|
|
+ format = bswap_32(format);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
return __glXImageSize(format, type, target, width, height, depth,
|
|
@@ -584,32 +578,32 @@
|
|
}
|
|
|
|
int
|
|
-__glXTexSubImage3DReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXTexSubImage3DReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLint row_length = * (GLint *)(pc + 4);
|
|
- GLint image_height = * (GLint *)(pc + 8);
|
|
- GLint skip_rows = * (GLint *)(pc + 16);
|
|
- GLint skip_images = * (GLint *)(pc + 20);
|
|
- GLint alignment = * (GLint *)(pc + 32);
|
|
- GLenum target = * (GLenum *)(pc + 36);
|
|
- GLsizei width = *(GLsizei *)(pc + 60);
|
|
- GLsizei height = *(GLsizei *)(pc + 64);
|
|
- GLsizei depth = *(GLsizei *)(pc + 68);
|
|
- GLenum format = * (GLenum *)(pc + 76);
|
|
- GLenum type = * (GLenum *)(pc + 80);
|
|
-
|
|
- if (swap) {
|
|
- SWAP_32( row_length );
|
|
- SWAP_32( image_height );
|
|
- SWAP_32( skip_rows );
|
|
- SWAP_32( skip_images );
|
|
- SWAP_32( alignment );
|
|
- SWAP_32( target );
|
|
- SWAP_32( width );
|
|
- SWAP_32( height );
|
|
- SWAP_32( depth );
|
|
- SWAP_32( format );
|
|
- SWAP_32( type );
|
|
+ GLint row_length = *(GLint *) (pc + 4);
|
|
+ GLint image_height = *(GLint *) (pc + 8);
|
|
+ GLint skip_rows = *(GLint *) (pc + 16);
|
|
+ GLint skip_images = *(GLint *) (pc + 20);
|
|
+ GLint alignment = *(GLint *) (pc + 32);
|
|
+ GLenum target = *(GLenum *) (pc + 36);
|
|
+ GLsizei width = *(GLsizei *) (pc + 60);
|
|
+ GLsizei height = *(GLsizei *) (pc + 64);
|
|
+ GLsizei depth = *(GLsizei *) (pc + 68);
|
|
+ GLenum format = *(GLenum *) (pc + 76);
|
|
+ GLenum type = *(GLenum *) (pc + 80);
|
|
+
|
|
+ if (swap) {
|
|
+ row_length = bswap_32(row_length);
|
|
+ image_height = bswap_32(image_height);
|
|
+ skip_rows = bswap_32(skip_rows);
|
|
+ skip_images = bswap_32(skip_images);
|
|
+ alignment = bswap_32(alignment);
|
|
+ target = bswap_32(target);
|
|
+ width = bswap_32(width);
|
|
+ height = bswap_32(height);
|
|
+ depth = bswap_32(depth);
|
|
+ format = bswap_32(format);
|
|
+ type = bswap_32(type);
|
|
}
|
|
|
|
return __glXImageSize(format, type, target, width, height, depth,
|
|
@@ -618,221 +612,221 @@
|
|
}
|
|
|
|
int
|
|
-__glXDrawBuffersARBReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXCompressedTexImage1DARBReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei n = *(GLsizei *)(pc + 0);
|
|
+ GLsizei imageSize = *(GLsizei *) (pc + 20);
|
|
|
|
if (swap) {
|
|
- SWAP_32( n );
|
|
+ imageSize = bswap_32(imageSize);
|
|
}
|
|
|
|
- return __GLX_PAD((n * 4));
|
|
+ return __GLX_PAD(imageSize);
|
|
}
|
|
|
|
int
|
|
-__glXPointParameterfvEXTReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXCompressedTexImage2DARBReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLenum pname = * (GLenum *)(pc + 0);
|
|
- GLsizei compsize;
|
|
+ GLsizei imageSize = *(GLsizei *) (pc + 24);
|
|
|
|
if (swap) {
|
|
- SWAP_32( pname );
|
|
+ imageSize = bswap_32(imageSize);
|
|
}
|
|
|
|
- compsize = __glPointParameterfvEXT_size(pname);
|
|
- return __GLX_PAD((compsize * 4));
|
|
+ return __GLX_PAD(imageSize);
|
|
}
|
|
|
|
int
|
|
-__glXCompressedTexImage3DARBReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXCompressedTexImage3DARBReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei imageSize = *(GLsizei *)(pc + 28);
|
|
+ GLsizei imageSize = *(GLsizei *) (pc + 28);
|
|
|
|
if (swap) {
|
|
- SWAP_32( imageSize );
|
|
+ imageSize = bswap_32(imageSize);
|
|
}
|
|
|
|
return __GLX_PAD(imageSize);
|
|
}
|
|
|
|
int
|
|
-__glXCompressedTexImage2DARBReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXCompressedTexSubImage3DARBReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei imageSize = *(GLsizei *)(pc + 24);
|
|
+ GLsizei imageSize = *(GLsizei *) (pc + 36);
|
|
|
|
if (swap) {
|
|
- SWAP_32( imageSize );
|
|
+ imageSize = bswap_32(imageSize);
|
|
}
|
|
|
|
return __GLX_PAD(imageSize);
|
|
}
|
|
|
|
int
|
|
-__glXCompressedTexImage1DARBReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXProgramStringARBReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei imageSize = *(GLsizei *)(pc + 20);
|
|
+ GLsizei len = *(GLsizei *) (pc + 8);
|
|
|
|
if (swap) {
|
|
- SWAP_32( imageSize );
|
|
+ len = bswap_32(len);
|
|
}
|
|
|
|
- return __GLX_PAD(imageSize);
|
|
+ return __GLX_PAD(len);
|
|
}
|
|
|
|
int
|
|
-__glXCompressedTexSubImage3DARBReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXDrawBuffersARBReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei imageSize = *(GLsizei *)(pc + 36);
|
|
+ GLsizei n = *(GLsizei *) (pc + 0);
|
|
|
|
if (swap) {
|
|
- SWAP_32( imageSize );
|
|
+ n = bswap_32(n);
|
|
}
|
|
|
|
- return __GLX_PAD(imageSize);
|
|
+ return __GLX_PAD((n * 4));
|
|
}
|
|
|
|
int
|
|
-__glXLoadProgramNVReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXPointParameterfvEXTReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei len = *(GLsizei *)(pc + 8);
|
|
+ GLenum pname = *(GLenum *) (pc + 0);
|
|
+ GLsizei compsize;
|
|
|
|
if (swap) {
|
|
- SWAP_32( len );
|
|
+ pname = bswap_32(pname);
|
|
}
|
|
|
|
- return __GLX_PAD(len);
|
|
+ compsize = __glPointParameterfvEXT_size(pname);
|
|
+ return __GLX_PAD((compsize * 4));
|
|
}
|
|
|
|
int
|
|
-__glXProgramParameters4dvNVReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXProgramParameters4dvNVReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLuint num = * (GLuint *)(pc + 8);
|
|
+ GLuint num = *(GLuint *) (pc + 8);
|
|
|
|
if (swap) {
|
|
- SWAP_32( num );
|
|
+ num = bswap_32(num);
|
|
}
|
|
|
|
return __GLX_PAD((num * 32));
|
|
}
|
|
|
|
int
|
|
-__glXProgramParameters4fvNVReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXProgramParameters4fvNVReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLuint num = * (GLuint *)(pc + 8);
|
|
+ GLuint num = *(GLuint *) (pc + 8);
|
|
|
|
if (swap) {
|
|
- SWAP_32( num );
|
|
+ num = bswap_32(num);
|
|
}
|
|
|
|
return __GLX_PAD((num * 16));
|
|
}
|
|
|
|
int
|
|
-__glXVertexAttribs1dvNVReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXVertexAttribs1dvNVReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei n = *(GLsizei *)(pc + 4);
|
|
+ GLsizei n = *(GLsizei *) (pc + 4);
|
|
|
|
if (swap) {
|
|
- SWAP_32( n );
|
|
+ n = bswap_32(n);
|
|
}
|
|
|
|
return __GLX_PAD((n * 8));
|
|
}
|
|
|
|
int
|
|
-__glXVertexAttribs2dvNVReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXVertexAttribs2dvNVReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei n = *(GLsizei *)(pc + 4);
|
|
+ GLsizei n = *(GLsizei *) (pc + 4);
|
|
|
|
if (swap) {
|
|
- SWAP_32( n );
|
|
+ n = bswap_32(n);
|
|
}
|
|
|
|
return __GLX_PAD((n * 16));
|
|
}
|
|
|
|
int
|
|
-__glXVertexAttribs3dvNVReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXVertexAttribs3dvNVReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei n = *(GLsizei *)(pc + 4);
|
|
+ GLsizei n = *(GLsizei *) (pc + 4);
|
|
|
|
if (swap) {
|
|
- SWAP_32( n );
|
|
+ n = bswap_32(n);
|
|
}
|
|
|
|
return __GLX_PAD((n * 24));
|
|
}
|
|
|
|
int
|
|
-__glXVertexAttribs3fvNVReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXVertexAttribs3fvNVReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei n = *(GLsizei *)(pc + 4);
|
|
+ GLsizei n = *(GLsizei *) (pc + 4);
|
|
|
|
if (swap) {
|
|
- SWAP_32( n );
|
|
+ n = bswap_32(n);
|
|
}
|
|
|
|
return __GLX_PAD((n * 12));
|
|
}
|
|
|
|
int
|
|
-__glXVertexAttribs3svNVReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXVertexAttribs3svNVReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei n = *(GLsizei *)(pc + 4);
|
|
+ GLsizei n = *(GLsizei *) (pc + 4);
|
|
|
|
if (swap) {
|
|
- SWAP_32( n );
|
|
+ n = bswap_32(n);
|
|
}
|
|
|
|
return __GLX_PAD((n * 6));
|
|
}
|
|
|
|
int
|
|
-__glXVertexAttribs4dvNVReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXVertexAttribs4dvNVReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei n = *(GLsizei *)(pc + 4);
|
|
+ GLsizei n = *(GLsizei *) (pc + 4);
|
|
|
|
if (swap) {
|
|
- SWAP_32( n );
|
|
+ n = bswap_32(n);
|
|
}
|
|
|
|
return __GLX_PAD((n * 32));
|
|
}
|
|
|
|
int
|
|
-__glXProgramNamedParameter4fvNVReqSize( const GLbyte * pc, Bool swap )
|
|
+__glXProgramNamedParameter4fvNVReqSize(const GLbyte *pc, Bool swap)
|
|
{
|
|
- GLsizei len = *(GLsizei *)(pc + 4);
|
|
+ GLsizei len = *(GLsizei *) (pc + 4);
|
|
|
|
if (swap) {
|
|
- SWAP_32( len );
|
|
+ len = bswap_32(len);
|
|
}
|
|
|
|
return __GLX_PAD(len);
|
|
}
|
|
|
|
-ALIAS( Fogiv, Fogfv )
|
|
-ALIAS( Lightiv, Lightfv )
|
|
-ALIAS( LightModeliv, LightModelfv )
|
|
-ALIAS( Materialiv, Materialfv )
|
|
-ALIAS( TexParameteriv, TexParameterfv )
|
|
-ALIAS( TexEnviv, TexEnvfv )
|
|
-ALIAS( TexGeniv, TexGenfv )
|
|
-ALIAS( PixelMapuiv, PixelMapfv )
|
|
-ALIAS( ColorTableParameteriv, ColorTableParameterfv )
|
|
-ALIAS( ConvolutionParameteriv, ConvolutionParameterfv )
|
|
-ALIAS( CompressedTexSubImage2DARB, CompressedTexImage3DARB )
|
|
-ALIAS( CompressedTexSubImage1DARB, CompressedTexImage1DARB )
|
|
-ALIAS( RequestResidentProgramsNV, DrawBuffersARB )
|
|
-ALIAS( VertexAttribs1fvNV, PixelMapfv )
|
|
-ALIAS( VertexAttribs1svNV, PixelMapusv )
|
|
-ALIAS( VertexAttribs2fvNV, VertexAttribs1dvNV )
|
|
-ALIAS( VertexAttribs2svNV, PixelMapfv )
|
|
-ALIAS( VertexAttribs4fvNV, VertexAttribs2dvNV )
|
|
-ALIAS( VertexAttribs4svNV, VertexAttribs1dvNV )
|
|
-ALIAS( VertexAttribs4ubvNV, PixelMapfv )
|
|
-ALIAS( PointParameterivNV, PointParameterfvEXT )
|
|
-ALIAS( ProgramStringARB, LoadProgramNV )
|
|
-ALIAS( ProgramNamedParameter4dvNV, CompressedTexSubImage3DARB )
|
|
-ALIAS( DeleteRenderbuffersEXT, DrawBuffersARB )
|
|
-ALIAS( DeleteFramebuffersEXT, DrawBuffersARB )
|
|
+ALIAS(Fogiv, Fogfv)
|
|
+ ALIAS(Lightiv, Lightfv)
|
|
+ ALIAS(LightModeliv, LightModelfv)
|
|
+ ALIAS(Materialiv, Materialfv)
|
|
+ ALIAS(TexParameteriv, TexParameterfv)
|
|
+ ALIAS(TexEnviv, TexEnvfv)
|
|
+ ALIAS(TexGeniv, TexGenfv)
|
|
+ ALIAS(PixelMapuiv, PixelMapfv)
|
|
+ ALIAS(ColorTableParameteriv, ColorTableParameterfv)
|
|
+ ALIAS(ConvolutionParameteriv, ConvolutionParameterfv)
|
|
+ ALIAS(CompressedTexSubImage1DARB, CompressedTexImage1DARB)
|
|
+ ALIAS(CompressedTexSubImage2DARB, CompressedTexImage3DARB)
|
|
+ ALIAS(LoadProgramNV, ProgramStringARB)
|
|
+ ALIAS(RequestResidentProgramsNV, DrawBuffersARB)
|
|
+ ALIAS(VertexAttribs1fvNV, PixelMapfv)
|
|
+ ALIAS(VertexAttribs1svNV, PixelMapusv)
|
|
+ ALIAS(VertexAttribs2fvNV, VertexAttribs1dvNV)
|
|
+ ALIAS(VertexAttribs2svNV, PixelMapfv)
|
|
+ ALIAS(VertexAttribs4fvNV, VertexAttribs2dvNV)
|
|
+ ALIAS(VertexAttribs4svNV, VertexAttribs1dvNV)
|
|
+ ALIAS(VertexAttribs4ubvNV, PixelMapfv)
|
|
+ ALIAS(PointParameterivNV, PointParameterfvEXT)
|
|
+ ALIAS(ProgramNamedParameter4dvNV, CompressedTexSubImage3DARB)
|
|
+ ALIAS(DeleteFramebuffersEXT, DrawBuffersARB)
|
|
+ ALIAS(DeleteRenderbuffersEXT, DrawBuffersARB)
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_reqsize.h GL/glx/indirect_reqsize.h
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_reqsize.h 2006-06-06 19:13:51.000000000 +0200
|
|
+++ GL/glx/indirect_reqsize.h 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -83,14 +83,15 @@
|
|
extern PURE HIDDEN int __glXSeparableFilter2DReqSize(const GLbyte *pc, Bool swap);
|
|
extern PURE HIDDEN int __glXTexImage3DReqSize(const GLbyte *pc, Bool swap);
|
|
extern PURE HIDDEN int __glXTexSubImage3DReqSize(const GLbyte *pc, Bool swap);
|
|
-extern PURE HIDDEN int __glXDrawBuffersARBReqSize(const GLbyte *pc, Bool swap);
|
|
-extern PURE HIDDEN int __glXPointParameterfvEXTReqSize(const GLbyte *pc, Bool swap);
|
|
-extern PURE HIDDEN int __glXCompressedTexImage3DARBReqSize(const GLbyte *pc, Bool swap);
|
|
-extern PURE HIDDEN int __glXCompressedTexImage2DARBReqSize(const GLbyte *pc, Bool swap);
|
|
extern PURE HIDDEN int __glXCompressedTexImage1DARBReqSize(const GLbyte *pc, Bool swap);
|
|
-extern PURE HIDDEN int __glXCompressedTexSubImage3DARBReqSize(const GLbyte *pc, Bool swap);
|
|
-extern PURE HIDDEN int __glXCompressedTexSubImage2DARBReqSize(const GLbyte *pc, Bool swap);
|
|
+extern PURE HIDDEN int __glXCompressedTexImage2DARBReqSize(const GLbyte *pc, Bool swap);
|
|
+extern PURE HIDDEN int __glXCompressedTexImage3DARBReqSize(const GLbyte *pc, Bool swap);
|
|
extern PURE HIDDEN int __glXCompressedTexSubImage1DARBReqSize(const GLbyte *pc, Bool swap);
|
|
+extern PURE HIDDEN int __glXCompressedTexSubImage2DARBReqSize(const GLbyte *pc, Bool swap);
|
|
+extern PURE HIDDEN int __glXCompressedTexSubImage3DARBReqSize(const GLbyte *pc, Bool swap);
|
|
+extern PURE HIDDEN int __glXProgramStringARBReqSize(const GLbyte *pc, Bool swap);
|
|
+extern PURE HIDDEN int __glXDrawBuffersARBReqSize(const GLbyte *pc, Bool swap);
|
|
+extern PURE HIDDEN int __glXPointParameterfvEXTReqSize(const GLbyte *pc, Bool swap);
|
|
extern PURE HIDDEN int __glXLoadProgramNVReqSize(const GLbyte *pc, Bool swap);
|
|
extern PURE HIDDEN int __glXProgramParameters4dvNVReqSize(const GLbyte *pc, Bool swap);
|
|
extern PURE HIDDEN int __glXProgramParameters4fvNVReqSize(const GLbyte *pc, Bool swap);
|
|
@@ -109,11 +110,10 @@
|
|
extern PURE HIDDEN int __glXVertexAttribs4svNVReqSize(const GLbyte *pc, Bool swap);
|
|
extern PURE HIDDEN int __glXVertexAttribs4ubvNVReqSize(const GLbyte *pc, Bool swap);
|
|
extern PURE HIDDEN int __glXPointParameterivNVReqSize(const GLbyte *pc, Bool swap);
|
|
-extern PURE HIDDEN int __glXProgramStringARBReqSize(const GLbyte *pc, Bool swap);
|
|
-extern PURE HIDDEN int __glXProgramNamedParameter4fvNVReqSize(const GLbyte *pc, Bool swap);
|
|
extern PURE HIDDEN int __glXProgramNamedParameter4dvNVReqSize(const GLbyte *pc, Bool swap);
|
|
-extern PURE HIDDEN int __glXDeleteRenderbuffersEXTReqSize(const GLbyte *pc, Bool swap);
|
|
+extern PURE HIDDEN int __glXProgramNamedParameter4fvNVReqSize(const GLbyte *pc, Bool swap);
|
|
extern PURE HIDDEN int __glXDeleteFramebuffersEXTReqSize(const GLbyte *pc, Bool swap);
|
|
+extern PURE HIDDEN int __glXDeleteRenderbuffersEXTReqSize(const GLbyte *pc, Bool swap);
|
|
|
|
# undef HIDDEN
|
|
# undef PURE
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_size_get.c GL/glx/indirect_size_get.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_size_get.c 2006-10-25 02:25:19.000000000 +0200
|
|
+++ GL/glx/indirect_size_get.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -370,6 +370,7 @@
|
|
case GL_PROJECTION_STACK_DEPTH:
|
|
case GL_TEXTURE_STACK_DEPTH:
|
|
case GL_ATTRIB_STACK_DEPTH:
|
|
+ case GL_CLIENT_ATTRIB_STACK_DEPTH:
|
|
case GL_ALPHA_TEST:
|
|
case GL_ALPHA_TEST_FUNC:
|
|
case GL_ALPHA_TEST_REF:
|
|
@@ -448,6 +449,7 @@
|
|
case GL_MAX_NAME_STACK_DEPTH:
|
|
case GL_MAX_PROJECTION_STACK_DEPTH:
|
|
case GL_MAX_TEXTURE_STACK_DEPTH:
|
|
+ case GL_MAX_CLIENT_ATTRIB_STACK_DEPTH:
|
|
case GL_SUBPIXEL_BITS:
|
|
case GL_INDEX_BITS:
|
|
case GL_RED_BITS:
|
|
@@ -639,7 +641,7 @@
|
|
case GL_PROGRAM_ERROR_POSITION_ARB:
|
|
case GL_DEPTH_CLAMP_NV:
|
|
case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
|
|
-/* case GL_NUM_TEXTURE_COMPRESSED_FORMATS_ARB:*/
|
|
+/* case GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB:*/
|
|
case GL_MAX_VERTEX_UNITS_ARB:
|
|
case GL_ACTIVE_VERTEX_UNITS_ARB:
|
|
case GL_WEIGHT_SUM_UNITY_ARB:
|
|
@@ -699,6 +701,8 @@
|
|
/* case GL_POINT_SPRITE_NV:*/
|
|
case GL_POINT_SPRITE_R_MODE_NV:
|
|
case GL_MAX_VERTEX_ATTRIBS_ARB:
|
|
+ case GL_MAX_TEXTURE_COORDS_ARB:
|
|
+ case GL_MAX_TEXTURE_IMAGE_UNITS_ARB:
|
|
case GL_DEPTH_BOUNDS_TEST_EXT:
|
|
case GL_STENCIL_TEST_TWO_SIDE_EXT:
|
|
case GL_ACTIVE_STENCIL_FACE_EXT:
|
|
@@ -1005,8 +1009,6 @@
|
|
case GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB:
|
|
case GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB:
|
|
case GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB:
|
|
- case GL_MAX_TEXTURE_COORDS_ARB:
|
|
- case GL_MAX_TEXTURE_IMAGE_UNITS_ARB:
|
|
case GL_PROGRAM_FORMAT_ARB:
|
|
case GL_PROGRAM_INSTRUCTIONS_ARB:
|
|
case GL_MAX_PROGRAM_INSTRUCTIONS_ARB:
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_table.c GL/glx/indirect_table.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_table.c 2007-01-30 07:03:18.000000000 +0100
|
|
+++ GL/glx/indirect_table.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -1231,8 +1231,8 @@
|
|
};
|
|
|
|
/*****************************************************************/
|
|
-/* tree depth = 12 */
|
|
-static const int_fast16_t VendorPriv_dispatch_tree[152] = {
|
|
+/* tree depth = 13 */
|
|
+static const int_fast16_t VendorPriv_dispatch_tree[155] = {
|
|
/* [0] -> opcode range [0, 131072], node depth 1 */
|
|
2,
|
|
5,
|
|
@@ -1474,12 +1474,17 @@
|
|
|
|
/* [149] -> opcode range [65536, 65568], node depth 12 */
|
|
1,
|
|
+ 152,
|
|
+ EMPTY_LEAF,
|
|
+
|
|
+ /* [152] -> opcode range [65536, 65552], node depth 13 */
|
|
+ 1,
|
|
LEAF(88),
|
|
EMPTY_LEAF,
|
|
|
|
};
|
|
|
|
-static const void *VendorPriv_function_table[104][2] = {
|
|
+static const void *VendorPriv_function_table[96][2] = {
|
|
/* [ 0] = 0 */ {NULL, NULL},
|
|
/* [ 1] = 1 */ {__glXDisp_GetConvolutionFilterEXT, __glXDispSwap_GetConvolutionFilterEXT},
|
|
/* [ 2] = 2 */ {__glXDisp_GetConvolutionParameterfvEXT, __glXDispSwap_GetConvolutionParameterfvEXT},
|
|
@@ -1576,14 +1581,6 @@
|
|
/* [ 93] = 65541 */ {__glXDisp_CreateContextWithConfigSGIX, __glXDispSwap_CreateContextWithConfigSGIX},
|
|
/* [ 94] = 65542 */ {__glXDisp_CreateGLXPixmapWithConfigSGIX, __glXDispSwap_CreateGLXPixmapWithConfigSGIX},
|
|
/* [ 95] = 65543 */ {NULL, NULL},
|
|
- /* [ 96] = 65544 */ {NULL, NULL},
|
|
- /* [ 97] = 65545 */ {NULL, NULL},
|
|
- /* [ 98] = 65546 */ {__glXDisp_GetDrawableAttributesSGIX, __glXDispSwap_GetDrawableAttributesSGIX},
|
|
- /* [ 99] = 65547 */ {NULL, NULL},
|
|
- /* [ 100] = 65548 */ {NULL, NULL},
|
|
- /* [ 101] = 65549 */ {NULL, NULL},
|
|
- /* [ 102] = 65550 */ {NULL, NULL},
|
|
- /* [ 103] = 65551 */ {NULL, NULL},
|
|
};
|
|
|
|
const struct __glXDispatchInfo VendorPriv_dispatch_info = {
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_texture_compression.c GL/glx/indirect_texture_compression.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_texture_compression.c 2007-03-05 19:38:58.000000000 +0100
|
|
+++ GL/glx/indirect_texture_compression.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -29,6 +29,7 @@
|
|
#endif
|
|
|
|
#include "glxserver.h"
|
|
+#include "glxbyteorder.h"
|
|
#include "glxext.h"
|
|
#include "singlesize.h"
|
|
#include "unpack.h"
|
|
@@ -39,20 +40,6 @@
|
|
#include "glthread.h"
|
|
#include "dispatch.h"
|
|
|
|
-#if defined(__linux__) || defined (__GLIBC__) || defined(__GNU__)
|
|
-#include <byteswap.h>
|
|
-#elif defined(__OpenBSD__)
|
|
-#include <sys/endian.h>
|
|
-#define bswap_16 __swap16
|
|
-#define bswap_32 __swap32
|
|
-#define bswap_64 __swap64
|
|
-#else
|
|
-#include <sys/endian.h>
|
|
-#define bswap_16 bswap16
|
|
-#define bswap_32 bswap32
|
|
-#define bswap_64 bswap64
|
|
-#endif
|
|
-
|
|
int __glXDisp_GetCompressedTexImageARB(struct __GLXclientStateRec *cl, GLbyte *pc)
|
|
{
|
|
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_util.c GL/glx/indirect_util.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/indirect_util.c 2007-01-30 07:03:18.000000000 +0100
|
|
+++ GL/glx/indirect_util.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -23,29 +23,21 @@
|
|
* SOFTWARE.
|
|
*/
|
|
|
|
+#ifdef HAVE_DIX_CONFIG_H
|
|
+#include <dix-config.h>
|
|
+#endif
|
|
+
|
|
#include <string.h>
|
|
|
|
#include <X11/Xmd.h>
|
|
#include <GL/gl.h>
|
|
#include <GL/glxproto.h>
|
|
-#if defined(__linux__) || defined (__GLIBC__) || defined(__GNU__)
|
|
-#include <byteswap.h>
|
|
-#elif defined(__OpenBSD__)
|
|
-#include <sys/endian.h>
|
|
-#define bswap_16 __swap16
|
|
-#define bswap_32 __swap32
|
|
-#define bswap_64 __swap64
|
|
-#else
|
|
-#include <sys/endian.h>
|
|
-#define bswap_16 bswap16
|
|
-#define bswap_32 bswap32
|
|
-#define bswap_64 bswap64
|
|
-#endif
|
|
#include <inttypes.h>
|
|
#include "indirect_size.h"
|
|
#include "indirect_size_get.h"
|
|
#include "indirect_dispatch.h"
|
|
#include "glxserver.h"
|
|
+#include "glxbyteorder.h"
|
|
#include "singlesize.h"
|
|
#include "glapitable.h"
|
|
#include "glapi.h"
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/swap_interval.c GL/glx/swap_interval.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/glx/swap_interval.c 2007-03-05 19:38:58.000000000 +0100
|
|
+++ GL/glx/swap_interval.c 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -39,20 +39,7 @@
|
|
#include "glthread.h"
|
|
#include "dispatch.h"
|
|
#include "glapioffsets.h"
|
|
-
|
|
-#if defined(__linux__) || defined (__GLIBC__) || defined(__GNU__)
|
|
-#include <byteswap.h>
|
|
-#elif defined(__OpenBSD__)
|
|
-#include <sys/endian.h>
|
|
-#define bswap_16 __swap16
|
|
-#define bswap_32 __swap32
|
|
-#define bswap_64 __swap64
|
|
-#else
|
|
-#include <sys/endian.h>
|
|
-#define bswap_16 bswap16
|
|
-#define bswap_32 bswap32
|
|
-#define bswap_64 bswap64
|
|
-#endif
|
|
+#include "glxbyteorder.h"
|
|
|
|
static int DoSwapInterval(__GLXclientState *cl, GLbyte *pc, int do_swap);
|
|
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/Makefile.am GL/mesa/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/Makefile.am 2006-06-06 19:13:51.000000000 +0200
|
|
+++ GL/mesa/Makefile.am 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -1,15 +1,15 @@
|
|
-SUBDIRS = main math array_cache swrast swrast_setup tnl shader X glapi
|
|
+SUBDIRS = main math swrast swrast_setup tnl shader X glapi vbo
|
|
|
|
noinst_LTLIBRARIES = libGLcore.la
|
|
|
|
libGLcore_la_SOURCES = dummy.c
|
|
libGLcore_la_LIBADD = main/libmain.la \
|
|
math/libmath.la \
|
|
- array_cache/libac.la \
|
|
swrast/libswrast.la \
|
|
swrast_setup/libss.la \
|
|
tnl/libtnl.la \
|
|
shader/libshader.la \
|
|
shader/grammar/libgrammar.la \
|
|
shader/slang/libslang.la \
|
|
+ vbo/libvbo.la \
|
|
X/libX.la
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/X/Makefile.am GL/mesa/X/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/X/Makefile.am 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/X/Makefile.am 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -2,7 +2,6 @@
|
|
|
|
INCLUDES = -I@MESA_SOURCE@/include \
|
|
-I../X \
|
|
- -I../array_cache \
|
|
-I../glapi \
|
|
-I../main \
|
|
-I../math \
|
|
@@ -21,18 +20,13 @@
|
|
AM_CFLAGS = \
|
|
$(DIX_CFLAGS) \
|
|
-DXFree86Server \
|
|
- @GLX_DEFINES@ \
|
|
- -DXFree86Server
|
|
-
|
|
-libX_la_SOURCES = xf86glx.c \
|
|
- xf86glx_util.c \
|
|
- xf86glx_util.h \
|
|
- xf86glxint.h
|
|
+ @GLX_DEFINES@
|
|
|
|
nodist_libX_la_SOURCES = \
|
|
xm_api.c \
|
|
xm_buffer.c \
|
|
xm_dd.c \
|
|
+ xm_image.c \
|
|
xm_line.c \
|
|
xm_span.c \
|
|
xm_tri.c \
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/X/xf86glx.c GL/mesa/X/xf86glx.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/X/xf86glx.c 2007-01-30 07:56:27.000000000 +0100
|
|
+++ GL/mesa/X/xf86glx.c 1970-01-01 01:00:00.000000000 +0100
|
|
@@ -1,432 +0,0 @@
|
|
-/**************************************************************************
|
|
-
|
|
-Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
|
|
-All Rights Reserved.
|
|
-
|
|
-Permission is hereby granted, free of charge, to any person obtaining a
|
|
-copy of this software and associated documentation files (the
|
|
-"Software"), to deal in the Software without restriction, including
|
|
-without limitation the rights to use, copy, modify, merge, publish,
|
|
-distribute, sub license, and/or sell copies of the Software, and to
|
|
-permit persons to whom the Software is furnished to do so, subject to
|
|
-the following conditions:
|
|
-
|
|
-The above copyright notice and this permission notice (including the
|
|
-next paragraph) shall be included in all copies or substantial portions
|
|
-of the Software.
|
|
-
|
|
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
|
|
-IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
|
|
-ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
-
|
|
-**************************************************************************/
|
|
-
|
|
-/*
|
|
- * Authors:
|
|
- * Kevin E. Martin <kevin@precisioninsight.com>
|
|
- * Brian E. Paul <brian@precisioninsight.com>
|
|
- *
|
|
- */
|
|
-
|
|
-#ifdef HAVE_DIX_CONFIG_H
|
|
-#include <dix-config.h>
|
|
-#endif
|
|
-
|
|
-#include <string.h>
|
|
-#include <regionstr.h>
|
|
-#include <resource.h>
|
|
-#include <GL/gl.h>
|
|
-#include <GL/glxint.h>
|
|
-#include <GL/glxtokens.h>
|
|
-#include <scrnintstr.h>
|
|
-#include <windowstr.h>
|
|
-#include <config.h>
|
|
-#include <glxserver.h>
|
|
-#include <glxscreens.h>
|
|
-#include <glxdrawable.h>
|
|
-#include <glxcontext.h>
|
|
-#include <glxext.h>
|
|
-#include <glxutil.h>
|
|
-#include "context.h"
|
|
-#include "xmesaP.h"
|
|
-#include "context.h"
|
|
-
|
|
-#include "glcontextmodes.h"
|
|
-#include "os.h"
|
|
-
|
|
-/*
|
|
- * This define is for the glcore.h header file.
|
|
- * If you add it here, then make sure you also add it in
|
|
- * ../../../glx/Imakefile.
|
|
- */
|
|
-#if 0
|
|
-#define DEBUG
|
|
-#include <GL/internal/glcore.h>
|
|
-#undef DEBUG
|
|
-#else
|
|
-#include <GL/internal/glcore.h>
|
|
-#endif
|
|
-
|
|
-typedef struct __GLXMESAscreen __GLXMESAscreen;
|
|
-typedef struct __GLXMESAcontext __GLXMESAcontext;
|
|
-typedef struct __GLXMESAdrawable __GLXMESAdrawable;
|
|
-
|
|
-struct __GLXMESAscreen {
|
|
- __GLXscreen base;
|
|
- int index;
|
|
- int num_vis;
|
|
- XMesaVisual *xm_vis;
|
|
-};
|
|
-
|
|
-struct __GLXMESAcontext {
|
|
- __GLXcontext base;
|
|
- XMesaContext xmesa;
|
|
-};
|
|
-
|
|
-struct __GLXMESAdrawable {
|
|
- __GLXdrawable base;
|
|
- XMesaBuffer xm_buf;
|
|
-};
|
|
-
|
|
-static XMesaVisual find_mesa_visual(__GLXscreen *screen, VisualID vid);
|
|
-
|
|
-
|
|
-static void
|
|
-__glXMesaDrawableDestroy(__GLXdrawable *base)
|
|
-{
|
|
- __GLXMESAdrawable *glxPriv = (__GLXMESAdrawable *) base;
|
|
-
|
|
- if (glxPriv->xm_buf != NULL)
|
|
- XMesaDestroyBuffer(glxPriv->xm_buf);
|
|
- xfree(glxPriv);
|
|
-}
|
|
-
|
|
-static GLboolean
|
|
-__glXMesaDrawableResize(__GLXdrawable *base)
|
|
-{
|
|
- __GLXMESAdrawable *glxPriv = (__GLXMESAdrawable *) base;
|
|
-
|
|
- XMesaResizeBuffers(glxPriv->xm_buf);
|
|
-
|
|
- return GL_TRUE;
|
|
-}
|
|
-
|
|
-static GLboolean
|
|
-__glXMesaDrawableSwapBuffers(__GLXdrawable *base)
|
|
-{
|
|
- __GLXMESAdrawable *glxPriv = (__GLXMESAdrawable *) base;
|
|
-
|
|
- /* This is terrifying: XMesaSwapBuffers() ends up calling CopyArea
|
|
- * to do the buffer swap, but this assumes that the server holds
|
|
- * the lock and has its context visible. If another screen uses a
|
|
- * DRI driver, that will have installed the DRI enter/leave server
|
|
- * functions, which lifts the lock during GLX dispatch. This is
|
|
- * why we need to re-take the lock and swap in the server context
|
|
- * before calling XMesaSwapBuffers() here. /me shakes head. */
|
|
-
|
|
- __glXenterServer();
|
|
-
|
|
- XMesaSwapBuffers(glxPriv->xm_buf);
|
|
-
|
|
- __glXleaveServer();
|
|
-
|
|
- return GL_TRUE;
|
|
-}
|
|
-
|
|
-
|
|
-static __GLXdrawable *
|
|
-__glXMesaScreenCreateDrawable(__GLXscreen *screen,
|
|
- DrawablePtr pDraw,
|
|
- XID drawId,
|
|
- __GLcontextModes *modes)
|
|
-{
|
|
- __GLXMESAdrawable *glxPriv;
|
|
- XMesaVisual xm_vis;
|
|
-
|
|
- glxPriv = xalloc(sizeof *glxPriv);
|
|
- if (glxPriv == NULL)
|
|
- return NULL;
|
|
-
|
|
- memset(glxPriv, 0, sizeof *glxPriv);
|
|
-
|
|
- if (!__glXDrawableInit(&glxPriv->base, screen, pDraw, drawId, modes)) {
|
|
- xfree(glxPriv);
|
|
- return NULL;
|
|
- }
|
|
-
|
|
- glxPriv->base.destroy = __glXMesaDrawableDestroy;
|
|
- glxPriv->base.resize = __glXMesaDrawableResize;
|
|
- glxPriv->base.swapBuffers = __glXMesaDrawableSwapBuffers;
|
|
-
|
|
- xm_vis = find_mesa_visual(screen, modes->visualID);
|
|
- if (xm_vis == NULL) {
|
|
- ErrorF("find_mesa_visual returned NULL for visualID = 0x%04x\n",
|
|
- modes->visualID);
|
|
- xfree(glxPriv);
|
|
- return NULL;
|
|
- }
|
|
-
|
|
- if (glxPriv->base.type == DRAWABLE_WINDOW) {
|
|
- glxPriv->xm_buf = XMesaCreateWindowBuffer(xm_vis, (WindowPtr)pDraw);
|
|
- } else {
|
|
- glxPriv->xm_buf = XMesaCreatePixmapBuffer(xm_vis, (PixmapPtr)pDraw, 0);
|
|
- }
|
|
-
|
|
- return &glxPriv->base;
|
|
-}
|
|
-
|
|
-static void
|
|
-__glXMesaContextDestroy(__GLXcontext *baseContext)
|
|
-{
|
|
- __GLXMESAcontext *context = (__GLXMESAcontext *) baseContext;
|
|
-
|
|
- XMesaDestroyContext(context->xmesa);
|
|
- __glXContextDestroy(&context->base);
|
|
- xfree(context);
|
|
-}
|
|
-
|
|
-static int
|
|
-__glXMesaContextMakeCurrent(__GLXcontext *baseContext)
|
|
-
|
|
-{
|
|
- __GLXMESAcontext *context = (__GLXMESAcontext *) baseContext;
|
|
- __GLXMESAdrawable *drawPriv = (__GLXMESAdrawable *) context->base.drawPriv;
|
|
- __GLXMESAdrawable *readPriv = (__GLXMESAdrawable *) context->base.readPriv;
|
|
-
|
|
- return XMesaMakeCurrent2(context->xmesa,
|
|
- drawPriv->xm_buf,
|
|
- readPriv->xm_buf);
|
|
-}
|
|
-
|
|
-static int
|
|
-__glXMesaContextLoseCurrent(__GLXcontext *baseContext)
|
|
-{
|
|
- __GLXMESAcontext *context = (__GLXMESAcontext *) baseContext;
|
|
-
|
|
- return XMesaLoseCurrent(context->xmesa);
|
|
-}
|
|
-
|
|
-static int
|
|
-__glXMesaContextCopy(__GLXcontext *baseDst,
|
|
- __GLXcontext *baseSrc,
|
|
- unsigned long mask)
|
|
-{
|
|
- __GLXMESAcontext *dst = (__GLXMESAcontext *) baseDst;
|
|
- __GLXMESAcontext *src = (__GLXMESAcontext *) baseSrc;
|
|
-
|
|
- _mesa_copy_context(&src->xmesa->mesa, &dst->xmesa->mesa, mask);
|
|
- return GL_TRUE;
|
|
-}
|
|
-
|
|
-static int
|
|
-__glXMesaContextForceCurrent(__GLXcontext *baseContext)
|
|
-{
|
|
- __GLXMESAcontext *context = (__GLXMESAcontext *) baseContext;
|
|
-
|
|
- GlxSetRenderTables (context->xmesa->mesa.CurrentDispatch);
|
|
-
|
|
- return XMesaForceCurrent(context->xmesa);
|
|
-}
|
|
-
|
|
-static __GLXcontext *
|
|
-__glXMesaScreenCreateContext(__GLXscreen *screen,
|
|
- __GLcontextModes *modes,
|
|
- __GLXcontext *baseShareContext)
|
|
-{
|
|
- __GLXMESAcontext *context;
|
|
- __GLXMESAcontext *shareContext = (__GLXMESAcontext *) baseShareContext;
|
|
- XMesaVisual xm_vis;
|
|
- XMesaContext xm_share;
|
|
-
|
|
- context = xalloc (sizeof (__GLXMESAcontext));
|
|
- if (context == NULL)
|
|
- return NULL;
|
|
-
|
|
- memset(context, 0, sizeof *context);
|
|
-
|
|
- context->base.pGlxScreen = screen;
|
|
- context->base.modes = modes;
|
|
-
|
|
- context->base.destroy = __glXMesaContextDestroy;
|
|
- context->base.makeCurrent = __glXMesaContextMakeCurrent;
|
|
- context->base.loseCurrent = __glXMesaContextLoseCurrent;
|
|
- context->base.copy = __glXMesaContextCopy;
|
|
- context->base.forceCurrent = __glXMesaContextForceCurrent;
|
|
-
|
|
- xm_vis = find_mesa_visual(screen, modes->visualID);
|
|
- if (!xm_vis) {
|
|
- ErrorF("find_mesa_visual returned NULL for visualID = 0x%04x\n",
|
|
- modes->visualID);
|
|
- xfree(context);
|
|
- return NULL;
|
|
- }
|
|
-
|
|
- xm_share = shareContext ? shareContext->xmesa : NULL;
|
|
- context->xmesa = XMesaCreateContext(xm_vis, xm_share);
|
|
- if (!context->xmesa) {
|
|
- xfree(context);
|
|
- return NULL;
|
|
- }
|
|
-
|
|
- return &context->base;
|
|
-}
|
|
-
|
|
-static void
|
|
-__glXMesaScreenDestroy(__GLXscreen *screen)
|
|
-{
|
|
- __GLXMESAscreen *mesaScreen = (__GLXMESAscreen *) screen;
|
|
- int i;
|
|
-
|
|
- for (i = 0; i < mesaScreen->num_vis; i++) {
|
|
- if (mesaScreen->xm_vis[i])
|
|
- XMesaDestroyVisual(mesaScreen->xm_vis[i]);
|
|
- }
|
|
-
|
|
- xfree(mesaScreen->xm_vis);
|
|
-
|
|
- __glXScreenDestroy(screen);
|
|
-
|
|
- xfree(screen);
|
|
-}
|
|
-
|
|
-static XMesaVisual
|
|
-find_mesa_visual(__GLXscreen *screen, VisualID vid)
|
|
-{
|
|
- __GLXMESAscreen *mesaScreen = (__GLXMESAscreen *) screen;
|
|
- const __GLcontextModes *modes;
|
|
- unsigned i = 0;
|
|
-
|
|
- for ( modes = screen->modes ; modes != NULL ; modes = modes->next ) {
|
|
- if ( modes->visualID == vid ) {
|
|
- break;
|
|
- }
|
|
-
|
|
- i++;
|
|
- }
|
|
-
|
|
- return (modes != NULL) ? mesaScreen->xm_vis[i] : NULL;
|
|
-}
|
|
-
|
|
-static void init_screen_visuals(__GLXMESAscreen *screen)
|
|
-{
|
|
- ScreenPtr pScreen = screen->base.pScreen;
|
|
- __GLcontextModes *modes;
|
|
- XMesaVisual *pXMesaVisual;
|
|
- int *used;
|
|
- int i, j, size;
|
|
-
|
|
- /* Alloc space for the list of XMesa visuals */
|
|
- size = screen->base.numVisuals * sizeof(XMesaVisual);
|
|
- pXMesaVisual = (XMesaVisual *) xalloc(size);
|
|
- memset(pXMesaVisual, 0, size);
|
|
-
|
|
- /* FIXME: Change 'used' to be a array of bits (rather than of ints),
|
|
- * FIXME: create a stack array of 8 or 16 bytes. If 'numVisuals' is less
|
|
- * FIXME: than 64 or 128 the stack array can be used instead of calling
|
|
- * FIXME: __glXMalloc / __glXFree. If nothing else, convert 'used' to
|
|
- * FIXME: array of bytes instead of ints!
|
|
- */
|
|
- used = (int *) xalloc(pScreen->numVisuals * sizeof(int));
|
|
- memset(used, 0, pScreen->numVisuals * sizeof(int));
|
|
-
|
|
- i = 0;
|
|
- for ( modes = screen->base.modes; modes != NULL; modes = modes->next ) {
|
|
- const int vis_class = _gl_convert_to_x_visual_type( modes->visualType );
|
|
- const int nplanes = (modes->rgbBits - modes->alphaBits);
|
|
- const VisualPtr pVis = pScreen->visuals;
|
|
-
|
|
- for (j = 0; j < pScreen->numVisuals; j++) {
|
|
- if (pVis[j].class == vis_class &&
|
|
- pVis[j].nplanes == nplanes &&
|
|
- pVis[j].redMask == modes->redMask &&
|
|
- pVis[j].greenMask == modes->greenMask &&
|
|
- pVis[j].blueMask == modes->blueMask &&
|
|
- !used[j]) {
|
|
-
|
|
- /* Create the XMesa visual */
|
|
- pXMesaVisual[i] =
|
|
- XMesaCreateVisual(pScreen,
|
|
- &pVis[j],
|
|
- modes->rgbMode,
|
|
- (modes->alphaBits > 0),
|
|
- modes->doubleBufferMode,
|
|
- modes->stereoMode,
|
|
- GL_TRUE, /* ximage_flag */
|
|
- modes->depthBits,
|
|
- modes->stencilBits,
|
|
- modes->accumRedBits,
|
|
- modes->accumGreenBits,
|
|
- modes->accumBlueBits,
|
|
- modes->accumAlphaBits,
|
|
- modes->samples,
|
|
- modes->level,
|
|
- modes->visualRating);
|
|
- /* Set the VisualID */
|
|
- modes->visualID = pVis[j].vid;
|
|
-
|
|
- /* Mark this visual used */
|
|
- used[j] = 1;
|
|
- break;
|
|
- }
|
|
- }
|
|
-
|
|
- if ( j == pScreen->numVisuals ) {
|
|
- ErrorF("No matching visual for __GLcontextMode with "
|
|
- "visual class = %d (%d), nplanes = %u\n",
|
|
- vis_class,
|
|
- modes->visualType,
|
|
- (modes->rgbBits - modes->alphaBits) );
|
|
- }
|
|
- else if ( modes->visualID == -1 ) {
|
|
- FatalError( "Matching visual found, but visualID still -1!\n" );
|
|
- }
|
|
-
|
|
- i++;
|
|
- }
|
|
-
|
|
- xfree(used);
|
|
-
|
|
- screen->num_vis = pScreen->numVisuals;
|
|
- screen->xm_vis = pXMesaVisual;
|
|
-}
|
|
-
|
|
-static __GLXscreen *
|
|
-__glXMesaScreenProbe(ScreenPtr pScreen)
|
|
-{
|
|
- __GLXMESAscreen *screen;
|
|
-
|
|
- screen = xalloc(sizeof *screen);
|
|
- if (screen == NULL)
|
|
- return NULL;
|
|
-
|
|
- __glXScreenInit(&screen->base, pScreen);
|
|
-
|
|
- screen->base.destroy = __glXMesaScreenDestroy;
|
|
- screen->base.createContext = __glXMesaScreenCreateContext;
|
|
- screen->base.createDrawable = __glXMesaScreenCreateDrawable;
|
|
- screen->base.pScreen = pScreen;
|
|
-
|
|
- /*
|
|
- * Find the GLX visuals that are supported by this screen and create
|
|
- * XMesa's visuals.
|
|
- */
|
|
- init_screen_visuals(screen);
|
|
-
|
|
- return &screen->base;
|
|
-}
|
|
-
|
|
-__GLXprovider __glXMesaProvider = {
|
|
- __glXMesaScreenProbe,
|
|
- "MESA",
|
|
- NULL
|
|
-};
|
|
-
|
|
-__GLXprovider *
|
|
-GlxGetMesaProvider (void)
|
|
-{
|
|
- return &__glXMesaProvider;
|
|
-}
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/X/xf86glx_util.c GL/mesa/X/xf86glx_util.c
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/X/xf86glx_util.c 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/X/xf86glx_util.c 1970-01-01 01:00:00.000000000 +0100
|
|
@@ -1,151 +0,0 @@
|
|
-/**************************************************************************
|
|
-
|
|
-Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
|
|
-All Rights Reserved.
|
|
-
|
|
-Permission is hereby granted, free of charge, to any person obtaining a
|
|
-copy of this software and associated documentation files (the
|
|
-"Software"), to deal in the Software without restriction, including
|
|
-without limitation the rights to use, copy, modify, merge, publish,
|
|
-distribute, sub license, and/or sell copies of the Software, and to
|
|
-permit persons to whom the Software is furnished to do so, subject to
|
|
-the following conditions:
|
|
-
|
|
-The above copyright notice and this permission notice (including the
|
|
-next paragraph) shall be included in all copies or substantial portions
|
|
-of the Software.
|
|
-
|
|
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
|
|
-IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
|
|
-ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
-
|
|
-**************************************************************************/
|
|
-
|
|
-/*
|
|
- * Authors:
|
|
- * Kevin E. Martin <kevin@precisioninsight.com>
|
|
- * Brian Paul <brian@precisioninsight.com>
|
|
- */
|
|
-
|
|
-#ifdef HAVE_DIX_CONFIG_H
|
|
-#include <dix-config.h>
|
|
-#endif
|
|
-
|
|
-#include <stdlib.h>
|
|
-
|
|
-#include <gcstruct.h>
|
|
-#include "pixmapstr.h"
|
|
-#include "xf86glx_util.h"
|
|
-#include <X11/Xmd.h>
|
|
-
|
|
-#ifdef ROUNDUP
|
|
-#undef ROUNDUP
|
|
-#endif
|
|
-
|
|
-#define ROUNDUP(nbytes, pad) ((((nbytes) + ((pad)-1)) / (pad)) * ((pad)>>3))
|
|
-
|
|
-XMesaImage *XMesaCreateImage(int bitsPerPixel, int width, int height, char *data)
|
|
-{
|
|
- XMesaImage *image;
|
|
-
|
|
- image = (XMesaImage *)xalloc(sizeof(XMesaImage));
|
|
-
|
|
- if (image) {
|
|
- image->width = width;
|
|
- image->height = height;
|
|
- image->data = data;
|
|
- /* Always pad to 32 bits */
|
|
- image->bytes_per_line = ROUNDUP((bitsPerPixel * width), 32);
|
|
- image->bits_per_pixel = bitsPerPixel;
|
|
- }
|
|
-
|
|
- return image;
|
|
-}
|
|
-
|
|
-void XMesaDestroyImage(XMesaImage *image)
|
|
-{
|
|
- if (image->data)
|
|
- free(image->data);
|
|
- xfree(image);
|
|
-}
|
|
-
|
|
-unsigned long XMesaGetPixel(XMesaImage *image, int x, int y)
|
|
-{
|
|
- CARD8 *row = (CARD8 *)(image->data + y*image->bytes_per_line);
|
|
- CARD8 *i8;
|
|
- CARD16 *i16;
|
|
- CARD32 *i32;
|
|
- switch (image->bits_per_pixel) {
|
|
- case 8:
|
|
- i8 = (CARD8 *)row;
|
|
- return i8[x];
|
|
- break;
|
|
- case 15:
|
|
- case 16:
|
|
- i16 = (CARD16 *)row;
|
|
- return i16[x];
|
|
- break;
|
|
- case 24: /* WARNING: architecture specific code */
|
|
- i8 = (CARD8 *)row;
|
|
- return (((CARD32)i8[x*3]) |
|
|
- (((CARD32)i8[x*3+1])<<8) |
|
|
- (((CARD32)i8[x*3+2])<<16));
|
|
- break;
|
|
- case 32:
|
|
- i32 = (CARD32 *)row;
|
|
- return i32[x];
|
|
- break;
|
|
- }
|
|
- return 0;
|
|
-}
|
|
-
|
|
-#ifndef XMESA_USE_PUTPIXEL_MACRO
|
|
-void XMesaPutPixel(XMesaImage *image, int x, int y, unsigned long pixel)
|
|
-{
|
|
- CARD8 *row = (CARD8 *)(image->data + y*image->bytes_per_line);
|
|
- CARD8 *i8;
|
|
- CARD16 *i16;
|
|
- CARD32 *i32;
|
|
- switch (image->bits_per_pixel) {
|
|
- case 8:
|
|
- i8 = (CARD8 *)row;
|
|
- i8[x] = (CARD8)pixel;
|
|
- break;
|
|
- case 15:
|
|
- case 16:
|
|
- i16 = (CARD16 *)row;
|
|
- i16[x] = (CARD16)pixel;
|
|
- break;
|
|
- case 24: /* WARNING: architecture specific code */
|
|
- i8 = (CARD8 *)__row;
|
|
- i8[x*3] = (CARD8)(p);
|
|
- i8[x*3+1] = (CARD8)(p>>8);
|
|
- i8[x*3+2] = (CARD8)(p>>16);
|
|
- case 32:
|
|
- i32 = (CARD32 *)row;
|
|
- i32[x] = (CARD32)pixel;
|
|
- break;
|
|
- }
|
|
-}
|
|
-#endif
|
|
-
|
|
-void XMesaPutImageHelper(ScreenPtr display,
|
|
- DrawablePtr d, GCPtr gc,
|
|
- XMesaImage *image,
|
|
- int src_x, int src_y,
|
|
- int dest_x, int dest_y,
|
|
- unsigned int width, unsigned int height)
|
|
-{
|
|
- /* NOT_DONE: Verify that the following works for all depths */
|
|
- char *src = (image->data +
|
|
- src_y * image->bytes_per_line +
|
|
- ((src_x * image->bits_per_pixel) >> 3));
|
|
-
|
|
- ValidateGC(d, gc);
|
|
- (*gc->ops->PutImage)(d, gc, d->depth, dest_x, dest_y, width, height,
|
|
- 0, ZPixmap, src);
|
|
-}
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/X/xf86glx_util.h GL/mesa/X/xf86glx_util.h
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/X/xf86glx_util.h 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/X/xf86glx_util.h 1970-01-01 01:00:00.000000000 +0100
|
|
@@ -1,105 +0,0 @@
|
|
-/**************************************************************************
|
|
-
|
|
-Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
|
|
-All Rights Reserved.
|
|
-
|
|
-Permission is hereby granted, free of charge, to any person obtaining a
|
|
-copy of this software and associated documentation files (the
|
|
-"Software"), to deal in the Software without restriction, including
|
|
-without limitation the rights to use, copy, modify, merge, publish,
|
|
-distribute, sub license, and/or sell copies of the Software, and to
|
|
-permit persons to whom the Software is furnished to do so, subject to
|
|
-the following conditions:
|
|
-
|
|
-The above copyright notice and this permission notice (including the
|
|
-next paragraph) shall be included in all copies or substantial portions
|
|
-of the Software.
|
|
-
|
|
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
|
|
-IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
|
|
-ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
-
|
|
-**************************************************************************/
|
|
-
|
|
-/*
|
|
- * Authors:
|
|
- * Kevin E. Martin <kevin@precisioninsight.com>
|
|
- * Brian Paul <brian@precisioninsight.com>
|
|
- */
|
|
-
|
|
-#ifdef HAVE_DIX_CONFIG_H
|
|
-#include <dix-config.h>
|
|
-#endif
|
|
-
|
|
-#ifndef _XF86GLX_UTIL_H_
|
|
-#define _XF86GLX_UTIL_H_
|
|
-
|
|
-#ifdef __CYGWIN__
|
|
-#undef WIN32
|
|
-#undef _WIN32
|
|
-#endif
|
|
-
|
|
-#include <screenint.h>
|
|
-#include <pixmap.h>
|
|
-#include <gc.h>
|
|
-#include "GL/xmesa.h"
|
|
-
|
|
-#define XMESA_USE_PUTPIXEL_MACRO
|
|
-
|
|
-struct _XMesaImageRec {
|
|
- int width, height;
|
|
- char *data;
|
|
- int bytes_per_line; /* Padded to 32 bits */
|
|
- int bits_per_pixel;
|
|
-};
|
|
-
|
|
-extern XMesaImage *XMesaCreateImage(int bitsPerPixel, int width, int height,
|
|
- char *data);
|
|
-extern void XMesaDestroyImage(XMesaImage *image);
|
|
-extern unsigned long XMesaGetPixel(XMesaImage *image, int x, int y);
|
|
-#ifdef XMESA_USE_PUTPIXEL_MACRO
|
|
-#define XMesaPutPixel(__i,__x,__y,__p) \
|
|
-{ \
|
|
- CARD8 *__row = (CARD8 *)(__i->data + __y*__i->bytes_per_line); \
|
|
- CARD8 *__i8; \
|
|
- CARD16 *__i16; \
|
|
- CARD32 *__i32; \
|
|
- switch (__i->bits_per_pixel) { \
|
|
- case 8: \
|
|
- __i8 = (CARD8 *)__row; \
|
|
- __i8[__x] = (CARD8)__p; \
|
|
- break; \
|
|
- case 15: \
|
|
- case 16: \
|
|
- __i16 = (CARD16 *)__row; \
|
|
- __i16[__x] = (CARD16)__p; \
|
|
- break; \
|
|
- case 24: /* WARNING: architecture specific code */ \
|
|
- __i8 = (CARD8 *)__row; \
|
|
- __i8[__x*3] = (CARD8)(__p); \
|
|
- __i8[__x*3+1] = (CARD8)(__p>>8); \
|
|
- __i8[__x*3+2] = (CARD8)(__p>>16); \
|
|
- break; \
|
|
- case 32: \
|
|
- __i32 = (CARD32 *)__row; \
|
|
- __i32[__x] = (CARD32)__p; \
|
|
- break; \
|
|
- } \
|
|
-}
|
|
-#else
|
|
-extern void XMesaPutPixel(XMesaImage *image, int x, int y,
|
|
- unsigned long pixel);
|
|
-#endif
|
|
-
|
|
-extern void XMesaPutImageHelper(ScreenPtr display,
|
|
- DrawablePtr d, GCPtr gc,
|
|
- XMesaImage *image,
|
|
- int src_x, int src_y,
|
|
- int dest_x, int dest_y,
|
|
- unsigned int width, unsigned int height);
|
|
-
|
|
-#endif /* _XF86GLX_UTIL_H_ */
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/X/xf86glxint.h GL/mesa/X/xf86glxint.h
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/X/xf86glxint.h 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/X/xf86glxint.h 1970-01-01 01:00:00.000000000 +0100
|
|
@@ -1,45 +0,0 @@
|
|
-/**************************************************************************
|
|
-
|
|
-Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
|
|
-All Rights Reserved.
|
|
-
|
|
-Permission is hereby granted, free of charge, to any person obtaining a
|
|
-copy of this software and associated documentation files (the
|
|
-"Software"), to deal in the Software without restriction, including
|
|
-without limitation the rights to use, copy, modify, merge, publish,
|
|
-distribute, sub license, and/or sell copies of the Software, and to
|
|
-permit persons to whom the Software is furnished to do so, subject to
|
|
-the following conditions:
|
|
-
|
|
-The above copyright notice and this permission notice (including the
|
|
-next paragraph) shall be included in all copies or substantial portions
|
|
-of the Software.
|
|
-
|
|
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
|
|
-IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
|
|
-ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
-
|
|
-**************************************************************************/
|
|
-
|
|
-/*
|
|
- * Authors:
|
|
- * Kevin E. Martin <kevin@precisioninsight.com>
|
|
- *
|
|
- */
|
|
-
|
|
-#ifdef HAVE_DIX_CONFIG_H
|
|
-#include <dix-config.h>
|
|
-#endif
|
|
-
|
|
-#ifndef _XF86GLXINT_H_
|
|
-#define _XF86GLXINT_H_
|
|
-
|
|
-#include <miscstruct.h>
|
|
-#include <GL/gl.h>
|
|
-#include <GL/xmesa.h>
|
|
-
|
|
-#endif /* _XF86GLXINT_H_ */
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/array_cache/Makefile.am GL/mesa/array_cache/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/array_cache/Makefile.am 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/array_cache/Makefile.am 1970-01-01 01:00:00.000000000 +0100
|
|
@@ -1,21 +0,0 @@
|
|
-noinst_LTLIBRARIES = libac.la
|
|
-
|
|
-AM_CFLAGS = \
|
|
- $(DIX_CFLAGS) \
|
|
- -DXFree86Server \
|
|
- @GLX_DEFINES@
|
|
-
|
|
-INCLUDES = -I@MESA_SOURCE@/include \
|
|
- -I../X \
|
|
- -I../array_cache \
|
|
- -I../glapi \
|
|
- -I../main \
|
|
- -I../math \
|
|
- -I../shader \
|
|
- -I../swrast \
|
|
- -I../swrast_setup \
|
|
- -I../tnl \
|
|
- -I.. \
|
|
- -I$(top_srcdir)/hw/xfree86/os-support
|
|
-
|
|
-nodist_libac_la_SOURCES = ac_context.c ac_import.c
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/glapi/Makefile.am GL/mesa/glapi/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/glapi/Makefile.am 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/glapi/Makefile.am 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -7,7 +7,6 @@
|
|
|
|
INCLUDES = -I@MESA_SOURCE@/include \
|
|
-I../X \
|
|
- -I../array_cache \
|
|
-I../glapi \
|
|
-I../main \
|
|
-I../math \
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/main/Makefile.am GL/mesa/main/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/main/Makefile.am 2006-11-17 18:47:26.000000000 +0100
|
|
+++ GL/mesa/main/Makefile.am 2007-04-21 21:25:52.000000000 +0200
|
|
@@ -7,7 +7,6 @@
|
|
|
|
INCLUDES = -I@MESA_SOURCE@/include \
|
|
-I../X \
|
|
- -I../array_cache \
|
|
-I../glapi \
|
|
-I../main \
|
|
-I../math \
|
|
@@ -62,13 +61,14 @@
|
|
matrix.c \
|
|
mipmap.c \
|
|
mm.c \
|
|
- occlude.c \
|
|
pixel.c \
|
|
points.c \
|
|
polygon.c \
|
|
+ queryobj.c \
|
|
rastpos.c \
|
|
rbadaptors.c \
|
|
renderbuffer.c \
|
|
+ shaders.c \
|
|
state.c \
|
|
stencil.c \
|
|
texcompress.c \
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/math/Makefile.am GL/mesa/math/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/math/Makefile.am 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/math/Makefile.am 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -7,7 +7,6 @@
|
|
|
|
INCLUDES = -I@MESA_SOURCE@/include \
|
|
-I../X \
|
|
- -I../array_cache \
|
|
-I../glapi \
|
|
-I../main \
|
|
-I../math \
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/shader/Makefile.am GL/mesa/shader/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/shader/Makefile.am 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/shader/Makefile.am 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -9,7 +9,6 @@
|
|
|
|
INCLUDES = -I@MESA_SOURCE@/include \
|
|
-I../X \
|
|
- -I../array_cache \
|
|
-I../glapi \
|
|
-I../main \
|
|
-I../math \
|
|
@@ -28,8 +27,13 @@
|
|
atifragshader.c \
|
|
nvfragparse.c \
|
|
nvprogram.c \
|
|
- nvvertexec.c \
|
|
- nvvertparse.c \
|
|
+ nvvertparse.c \
|
|
+ prog_debug.c \
|
|
+ prog_execute.c \
|
|
+ prog_instruction.c \
|
|
+ prog_parameter.c \
|
|
+ prog_print.c \
|
|
program.c \
|
|
- shaderobjects.c \
|
|
- shaderobjects_3dlabs.c
|
|
+ programopt.c \
|
|
+ prog_statevars.c \
|
|
+ shader_api.c
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/shader/grammar/Makefile.am GL/mesa/shader/grammar/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/shader/grammar/Makefile.am 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/shader/grammar/Makefile.am 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -7,7 +7,6 @@
|
|
|
|
INCLUDES = -I@MESA_SOURCE@/include \
|
|
-I../../X \
|
|
- -I../../array_cache \
|
|
-I../../glapi \
|
|
-I../../main \
|
|
-I../../math \
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/shader/slang/Makefile.am GL/mesa/shader/slang/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/shader/slang/Makefile.am 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/shader/slang/Makefile.am 2007-04-21 21:25:52.000000000 +0200
|
|
@@ -8,7 +8,6 @@
|
|
INCLUDES = -I@MESA_SOURCE@/include \
|
|
-I../grammar \
|
|
-I../../X \
|
|
- -I../../array_cache \
|
|
-I../../glapi \
|
|
-I../../main \
|
|
-I../../math \
|
|
@@ -19,23 +18,24 @@
|
|
-I../.. \
|
|
-I$(top_srcdir)/hw/xfree86/os-support
|
|
|
|
-nodist_libslang_la_SOURCES = slang_analyse.c \
|
|
- slang_assemble_assignment.c \
|
|
- slang_assemble.c \
|
|
- slang_assemble_conditional.c \
|
|
- slang_assemble_constructor.c \
|
|
- slang_assemble_typeinfo.c \
|
|
+nodist_libslang_la_SOURCES = slang_builtin.c \
|
|
+ slang_codegen.c \
|
|
slang_compile.c \
|
|
slang_compile_function.c \
|
|
slang_compile_operation.c \
|
|
slang_compile_struct.c \
|
|
slang_compile_variable.c \
|
|
- slang_execute.c \
|
|
- slang_execute_x86.c \
|
|
- slang_export.c \
|
|
- slang_library_texsample.c \
|
|
+ slang_emit.c \
|
|
+ slang_ir.c \
|
|
+ slang_label.c \
|
|
slang_library_noise.c \
|
|
slang_link.c \
|
|
+ slang_log.c \
|
|
+ slang_mem.c \
|
|
slang_preprocess.c \
|
|
+ slang_print.c \
|
|
+ slang_simplify.c \
|
|
slang_storage.c \
|
|
- slang_utility.c
|
|
+ slang_typeinfo.c \
|
|
+ slang_utility.c \
|
|
+ slang_vartable.c
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/swrast/Makefile.am GL/mesa/swrast/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/swrast/Makefile.am 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/swrast/Makefile.am 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -7,7 +7,6 @@
|
|
|
|
INCLUDES = -I@MESA_SOURCE@/include \
|
|
-I../X \
|
|
- -I../array_cache \
|
|
-I../glapi \
|
|
-I../main \
|
|
-I../math \
|
|
@@ -24,7 +23,6 @@
|
|
s_aatriangle.c \
|
|
s_accum.c \
|
|
s_alpha.c \
|
|
- s_arbshader.c \
|
|
s_atifragshader.c \
|
|
s_bitmap.c \
|
|
s_blend.c \
|
|
@@ -36,11 +34,11 @@
|
|
s_drawpix.c \
|
|
s_feedback.c \
|
|
s_fog.c \
|
|
+ s_fragprog.c \
|
|
s_imaging.c \
|
|
s_lines.c \
|
|
s_logic.c \
|
|
s_masking.c \
|
|
- s_nvfragprog.c \
|
|
s_points.c \
|
|
s_readpix.c \
|
|
s_span.c \
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/swrast_setup/Makefile.am GL/mesa/swrast_setup/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/swrast_setup/Makefile.am 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/swrast_setup/Makefile.am 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -7,7 +7,6 @@
|
|
|
|
INCLUDES = -I@MESA_SOURCE@/include \
|
|
-I../X \
|
|
- -I../array_cache \
|
|
-I../glapi \
|
|
-I../main \
|
|
-I../math \
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/tnl/Makefile.am GL/mesa/tnl/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/tnl/Makefile.am 2006-09-18 08:04:17.000000000 +0200
|
|
+++ GL/mesa/tnl/Makefile.am 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -7,7 +7,6 @@
|
|
|
|
INCLUDES = -I@MESA_SOURCE@/include \
|
|
-I../X \
|
|
- -I../array_cache \
|
|
-I../glapi \
|
|
-I../main \
|
|
-I../math \
|
|
@@ -19,16 +18,9 @@
|
|
-I.. \
|
|
-I$(top_srcdir)/hw/xfree86/os-support
|
|
|
|
-nodist_libtnl_la_SOURCES = t_array_api.c \
|
|
- t_array_import.c \
|
|
- t_context.c \
|
|
+nodist_libtnl_la_SOURCES = t_context.c \
|
|
+ t_draw.c \
|
|
t_pipeline.c \
|
|
- t_save_api.c \
|
|
- t_save_loopback.c \
|
|
- t_save_playback.c \
|
|
- t_vb_arbprogram.c \
|
|
- t_vb_arbprogram_sse.c \
|
|
- t_vb_arbshader.c \
|
|
t_vb_cull.c \
|
|
t_vb_fog.c \
|
|
t_vb_light.c \
|
|
@@ -42,9 +34,4 @@
|
|
t_vertex.c \
|
|
t_vertex_generic.c \
|
|
t_vertex_sse.c \
|
|
- t_vp_build.c \
|
|
- t_vtx_api.c \
|
|
- t_vtx_eval.c \
|
|
- t_vtx_exec.c \
|
|
- t_vtx_generic.c \
|
|
- t_vtx_x86.c
|
|
+ t_vp_build.c
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/vbo/Makefile.am GL/mesa/vbo/Makefile.am
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/mesa/vbo/Makefile.am 1970-01-01 01:00:00.000000000 +0100
|
|
+++ GL/mesa/vbo/Makefile.am 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -0,0 +1,35 @@
|
|
+noinst_LTLIBRARIES = libvbo.la
|
|
+
|
|
+AM_CFLAGS = \
|
|
+ $(DIX_CFLAGS) \
|
|
+ -DXFree86Server \
|
|
+ @GLX_DEFINES@
|
|
+
|
|
+INCLUDES = -I@MESA_SOURCE@/include \
|
|
+ -I../X \
|
|
+ -I../glapi \
|
|
+ -I../main \
|
|
+ -I../math \
|
|
+ -I../shader \
|
|
+ -I../shader/slang \
|
|
+ -I../shader/slang \
|
|
+ -I../swrast \
|
|
+ -I../swrast_setup \
|
|
+ -I../tnl \
|
|
+ -I.. \
|
|
+ -I$(top_srcdir)/hw/xfree86/os-support
|
|
+
|
|
+nodist_libvbo_la_SOURCES = vbo_context.c \
|
|
+ vbo_exec_api.c \
|
|
+ vbo_exec_array.c \
|
|
+ vbo_exec.c \
|
|
+ vbo_exec_draw.c \
|
|
+ vbo_exec_eval.c \
|
|
+ vbo_rebase.c \
|
|
+ vbo_save_api.c \
|
|
+ vbo_save.c \
|
|
+ vbo_save_draw.c \
|
|
+ vbo_save_loopback.c \
|
|
+ vbo_split.c \
|
|
+ vbo_split_copy.c \
|
|
+ vbo_split_inplace.c
|
|
diff -N -x .gitignore -x Makefile.in -u -r /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/symlink-mesa.sh GL/symlink-mesa.sh
|
|
--- /suse/sndirsch/pkgs/openSUSE/xorg73/xorg-x11-server/xorg-server-1.3.0.0/GL/symlink-mesa.sh 2006-10-04 23:46:03.000000000 +0200
|
|
+++ GL/symlink-mesa.sh 2007-04-21 18:21:24.000000000 +0200
|
|
@@ -85,15 +85,6 @@
|
|
done
|
|
}
|
|
|
|
-symlink_mesa_ac() {
|
|
- src_dir src/mesa/array_cache
|
|
- dst_dir mesa/array_cache
|
|
-
|
|
- for src in $REAL_SRC_DIR/*.c $REAL_SRC_DIR/*.h; do
|
|
- action `basename $src`
|
|
- done
|
|
-}
|
|
-
|
|
symlink_mesa_swrast() {
|
|
src_dir src/mesa/swrast
|
|
dst_dir mesa/swrast
|
|
@@ -157,6 +148,15 @@
|
|
done
|
|
}
|
|
|
|
+symlink_mesa_vbo() {
|
|
+ src_dir src/mesa/vbo
|
|
+ dst_dir mesa/vbo
|
|
+
|
|
+ for src in $REAL_SRC_DIR/*.c $REAL_SRC_DIR/*.h; do
|
|
+ action `basename $src`
|
|
+ done
|
|
+}
|
|
+
|
|
symlink_mesa_x() {
|
|
src_dir src/mesa/drivers/x11
|
|
dst_dir mesa/X
|
|
@@ -168,6 +168,8 @@
|
|
action xm_api.c
|
|
action xm_buffer.c
|
|
action xm_dd.c
|
|
+ action xm_image.c
|
|
+ action xm_image.h
|
|
action xm_line.c
|
|
action xm_span.c
|
|
action xm_tri.c
|
|
@@ -203,7 +205,6 @@
|
|
symlink_mesa() {
|
|
symlink_mesa_main
|
|
symlink_mesa_math
|
|
- symlink_mesa_ac
|
|
symlink_mesa_swrast
|
|
symlink_mesa_ss
|
|
symlink_mesa_tnl
|
|
@@ -215,6 +216,7 @@
|
|
symlink_mesa_glapi
|
|
symlink_mesa_ppc
|
|
symlink_mesa_sparc
|
|
+ symlink_mesa_vbo
|
|
symlink_mesa_x86
|
|
symlink_mesa_x8664
|
|
}
|
|
@@ -225,9 +227,6 @@
|
|
dst_dir glx
|
|
|
|
action indirect_size.h
|
|
-
|
|
- src_dir src/mesa/drivers/dri/common
|
|
-
|
|
action glcontextmodes.c
|
|
action glcontextmodes.h
|
|
|
|
@@ -289,9 +288,9 @@
|
|
}
|
|
|
|
usage() {
|
|
- echo symlink.sh src-dir dst-dir
|
|
- echo src-dir: the xc directory of the monolithic source tree
|
|
- echo dst-dir: the modular source tree containing proto, app, lib, ...
|
|
+ echo symlink-mesa.sh src-dir dst-dir
|
|
+ echo src-dir: the Mesa source directory
|
|
+ echo dst-dir: the GL subdirectory of the Xserver modular tree
|
|
}
|
|
|
|
# Check commandline args
|
|
--- configure.ac.orig 2007-04-22 12:17:16.000000000 +0200
|
|
+++ configure.ac 2007-04-22 12:17:27.000000000 +0200
|
|
@@ -1707,6 +1707,7 @@
|
|
GL/mesa/swrast/Makefile
|
|
GL/mesa/swrast_setup/Makefile
|
|
GL/mesa/tnl/Makefile
|
|
+GL/mesa/vbo/Makefile
|
|
GL/mesa/X/Makefile
|
|
include/Makefile
|
|
afb/Makefile
|
|
--- hw/dmx/glxProxy/glxext.h.orig 2007-04-22 10:49:56.000000000 +0000
|
|
+++ hw/dmx/glxProxy/glxext.h 2007-04-22 10:50:27.000000000 +0000
|
|
@@ -67,7 +67,7 @@
|
|
|
|
extern void __glXNoSuchRenderOpcode(GLbyte*);
|
|
extern int __glXNoSuchSingleOpcode(__GLXclientState*, GLbyte*);
|
|
-extern void __glXErrorCallBack(__GLinterface *gc, GLenum code);
|
|
+extern void __glXErrorCallBack(GLenum code);
|
|
extern void __glXClearErrorOccured(void);
|
|
extern GLboolean __glXErrorOccured(void);
|
|
extern void __glXResetLargeCommandStatus(__GLXclientState*);
|