summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Huddleston <jeremyhu@apple.com>2010-04-02 01:35:19 -0700
committerJeremy Huddleston <jeremyhu@apple.com>2010-04-27 11:26:51 -0700
commit80b280db883edc9550484dba03bd5c124b6a9bf9 (patch)
tree89dfc9f512054dd78713fc56d1b2d9ff2206edf6
parent77dc40b2897dfaf1b7adedee4bd0e88f13bc76d3 (diff)
apple: Change ifdefs for DRI to be DRI && !APPLE
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
-rw-r--r--src/glx/XF86dri.c2
-rw-r--r--src/glx/apple/Makefile4
-rw-r--r--src/glx/apple/apple_xgl_api_read.c6
-rw-r--r--src/glx/apple/apple_xgl_api_stereo.c4
-rw-r--r--src/glx/apple/apple_xgl_api_viewport.c4
-rw-r--r--src/glx/dri2_glx.c2
-rw-r--r--src/glx/dri_common.c2
-rw-r--r--src/glx/dri_glx.c2
-rw-r--r--src/glx/drisw_glx.c2
-rw-r--r--src/glx/glx_pbuffer.c6
-rw-r--r--src/glx/glxclient.h33
-rw-r--r--src/glx/glxcmds.c97
-rw-r--r--src/glx/glxcurrent.c20
-rw-r--r--src/glx/glxext.c10
-rw-r--r--src/glx/indirect.c30
-rw-r--r--src/glx/singlepix.c2
-rw-r--r--src/glx/xfont.c2
17 files changed, 108 insertions, 120 deletions
diff --git a/src/glx/XF86dri.c b/src/glx/XF86dri.c
index fdbdd43000e..d0e88805bcc 100644
--- a/src/glx/XF86dri.c
+++ b/src/glx/XF86dri.c
@@ -36,7 +36,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
/* THIS IS NOT AN X CONSORTIUM STANDARD */
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
#define NEED_REPLIES
#include <X11/Xlibint.h>
diff --git a/src/glx/apple/Makefile b/src/glx/apple/Makefile
index 314dd4d3965..4c05013f3f6 100644
--- a/src/glx/apple/Makefile
+++ b/src/glx/apple/Makefile
@@ -2,7 +2,7 @@ INSTALL_DIR = /usr/X11
X11_DIR = $(INSTALL_DIR)
CC=gcc
-GL_CFLAGS=-Wall -ggdb3 -Os -DPTHREADS -D_REENTRANT -DGLX_USE_APPLEGL -DGLX_ALIAS_UNSUPPORTED $(RC_CFLAGS) $(CFLAGS)
+GL_CFLAGS=-Wall -ggdb3 -Os -DPTHREADS -D_REENTRANT -DGLX_DIRECT_RENDERING -DGLX_USE_APPLEGL -DGLX_ALIAS_UNSUPPORTED $(RC_CFLAGS) $(CFLAGS)
GL_LDFLAGS=-L$(INSTALL_DIR)/lib -L$(X11_DIR)/lib $(LDFLAGS) -Wl,-single_module
TCLSH=tclsh8.5
@@ -12,7 +12,7 @@ INSTALL=install
LN=ln
RM=rm
-INCLUDE=-I. -Iinclude -Iinclude/internal -I.. -I../../../include -I$(INSTALL_DIR)/include -I$(X11_DIR)/include
+INCLUDE=-I. -Iinclude -Iinclude/internal -I.. -I../../../include -I../../../src/mesa -I../../../src/mesa/glapi -I$(INSTALL_DIR)/include -I$(X11_DIR)/include
COMPILE=$(CC) $(INCLUDE) $(GL_CFLAGS) -c
#The directory with the final binaries.
diff --git a/src/glx/apple/apple_xgl_api_read.c b/src/glx/apple/apple_xgl_api_read.c
index 3dcb31b71ae..36357c7fc2e 100644
--- a/src/glx/apple/apple_xgl_api_read.c
+++ b/src/glx/apple/apple_xgl_api_read.c
@@ -68,10 +68,10 @@ SetRead(struct apple_xgl_saved_state *saved)
saved->swapped = true;
- if (apple_glx_make_current_context(dpy, gc->apple, gc->apple,
+ if (apple_glx_make_current_context(dpy, gc->driContext, gc->driContext,
gc->currentReadable)) {
/* An error occurred, so try to restore the old context state. */
- (void) apple_glx_make_current_context(dpy, gc->apple, gc->apple,
+ (void) apple_glx_make_current_context(dpy, gc->driContext, gc->driContext,
gc->currentDrawable);
saved->swapped = false;
}
@@ -85,7 +85,7 @@ UnsetRead(struct apple_xgl_saved_state *saved)
GLXContext gc = __glXGetCurrentContext();
Display *dpy = glXGetCurrentDisplay();
- if (apple_glx_make_current_context(dpy, gc->apple, gc->apple,
+ if (apple_glx_make_current_context(dpy, gc->driContext, gc->driContext,
gc->currentDrawable)) {
/*
* An error occurred restoring the drawable.
diff --git a/src/glx/apple/apple_xgl_api_stereo.c b/src/glx/apple/apple_xgl_api_stereo.c
index b50e3119cdf..7dd946f764e 100644
--- a/src/glx/apple/apple_xgl_api_stereo.c
+++ b/src/glx/apple/apple_xgl_api_stereo.c
@@ -42,7 +42,7 @@ glDrawBuffer(GLenum mode)
{
GLXContext gc = glXGetCurrentContext();
- if (gc && apple_glx_context_uses_stereo(gc->apple)) {
+ if (gc && apple_glx_context_uses_stereo(gc->driContext)) {
GLenum buf[2];
GLsizei n = 0;
@@ -77,7 +77,7 @@ glDrawBuffers(GLsizei n, const GLenum * bufs)
{
GLXContext gc = glXGetCurrentContext();
- if (gc && apple_glx_context_uses_stereo(gc->apple)) {
+ if (gc && apple_glx_context_uses_stereo(gc->driContext)) {
GLenum newbuf[n + 2];
GLsizei i, outi = 0;
bool have_back = false;
diff --git a/src/glx/apple/apple_xgl_api_viewport.c b/src/glx/apple/apple_xgl_api_viewport.c
index d3fbc7c41e0..f556eefa226 100644
--- a/src/glx/apple/apple_xgl_api_viewport.c
+++ b/src/glx/apple/apple_xgl_api_viewport.c
@@ -38,8 +38,8 @@ glViewport(GLint x, GLint y, GLsizei width, GLsizei height)
GLXContext gc = __glXGetCurrentContext();
Display *dpy = glXGetCurrentDisplay();
- if (gc && gc->apple)
- apple_glx_context_update(dpy, gc->apple);
+ if (gc && gc->driContext)
+ apple_glx_context_update(dpy, gc->driContext);
__gl_api.Viewport(x, y, width, height);
}
diff --git a/src/glx/dri2_glx.c b/src/glx/dri2_glx.c
index fa2b9878537..86b0a27648e 100644
--- a/src/glx/dri2_glx.c
+++ b/src/glx/dri2_glx.c
@@ -30,7 +30,7 @@
* Kristian Høgsberg (krh@redhat.com)
*/
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
#include <X11/Xlib.h>
#include <X11/extensions/Xfixes.h>
diff --git a/src/glx/dri_common.c b/src/glx/dri_common.c
index e4034161bb3..d6ce681d70e 100644
--- a/src/glx/dri_common.c
+++ b/src/glx/dri_common.c
@@ -33,7 +33,7 @@
* Kristian Høgsberg (krh@redhat.com)
*/
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
#include <unistd.h>
#include <dlfcn.h>
diff --git a/src/glx/dri_glx.c b/src/glx/dri_glx.c
index e47db82b70f..74afa60301d 100644
--- a/src/glx/dri_glx.c
+++ b/src/glx/dri_glx.c
@@ -32,7 +32,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
*/
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
#include <X11/Xlib.h>
#include <X11/extensions/Xfixes.h>
diff --git a/src/glx/drisw_glx.c b/src/glx/drisw_glx.c
index 1b94a56fd13..d8027cc96d5 100644
--- a/src/glx/drisw_glx.c
+++ b/src/glx/drisw_glx.c
@@ -21,7 +21,7 @@
* SOFTWARE.
*/
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
#include <X11/Xlib.h>
#include "glxclient.h"
diff --git a/src/glx/glx_pbuffer.c b/src/glx/glx_pbuffer.c
index 143cf87766b..6c34cda1543 100644
--- a/src/glx/glx_pbuffer.c
+++ b/src/glx/glx_pbuffer.c
@@ -325,7 +325,7 @@ GetDrawableAttribute(Display * dpy, GLXDrawable drawable,
}
}
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
{
__GLXDRIdrawable *pdraw = GetGLXDRIDrawable(dpy, drawable, NULL);
@@ -391,7 +391,7 @@ CreateDrawable(Display * dpy, const __GLcontextModes * fbconfig,
UnlockDisplay(dpy);
SyncHandle();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
do {
/* FIXME: Maybe delay __DRIdrawable creation until the drawable
* is actually bound to a context... */
@@ -455,7 +455,7 @@ DestroyDrawable(Display * dpy, GLXDrawable drawable, CARD32 glxCode)
UnlockDisplay(dpy);
SyncHandle();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
{
int screen;
__GLXdisplayPrivate *const priv = __glXInitialize(dpy);
diff --git a/src/glx/glxclient.h b/src/glx/glxclient.h
index 3519c20a7f3..958e1526c94 100644
--- a/src/glx/glxclient.h
+++ b/src/glx/glxclient.h
@@ -54,9 +54,7 @@
#include "GL/glxint.h"
#include "GL/glxproto.h"
#include "GL/internal/glcore.h"
-#ifndef GLX_USE_APPLEGL
#include "glapi/glapitable.h"
-#endif
#include "glxhash.h"
#if defined( PTHREADS )
# include <pthread.h>
@@ -99,8 +97,13 @@ typedef struct _glapi_table __GLapi;
#define containerOf(ptr, type, member) \
(type *)( (char *)ptr - offsetof(type,member) )
-#include <GL/internal/dri_interface.h>
+extern void DRI_glXUseXFont(Font font, int first, int count, int listbase);
+
+#endif
+
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
+#include <GL/internal/dri_interface.h>
/**
* Display dependent methods. This structure is initialized during the
@@ -187,8 +190,6 @@ extern __GLXDRIdisplay *dri2CreateDisplay(Display * dpy);
extern void dri2InvalidateBuffers(Display *dpy, XID drawable);
-extern void DRI_glXUseXFont(Font font, int first, int count, int listbase);
-
/*
** Functions to obtain driver configuration information from a direct
** rendering client application
@@ -199,10 +200,6 @@ extern const char *glXGetDriverConfig(const char *driverName);
#endif
-#ifdef GLX_USE_APPLEGL
-extern void DRI_glXUseXFont( Font font, int first, int count, int listbase );
-#endif
-
/************************************************************************/
#define __GL_CLIENT_ATTRIB_STACK_DEPTH 16
@@ -411,9 +408,14 @@ struct __GLXcontextRec
const __GLcontextModes *mode;
#ifdef GLX_DIRECT_RENDERING
+#ifdef GLX_USE_APPLEGL
+ void *driContext;
+ Bool do_destroy;
+#else
__GLXDRIcontext *driContext;
__DRIcontext *__driContext;
#endif
+#endif
/**
* The current read-drawable for this context. Will be None if this
@@ -455,11 +457,6 @@ struct __GLXcontextRec
unsigned long thread_id;
char gl_extension_bits[__GL_EXT_BYTES];
-
-#ifdef GLX_USE_APPLEGL
- void *apple;
- Bool do_destroy;
-#endif
};
#define __glXSetError(gc,code) \
@@ -514,7 +511,7 @@ struct __GLXscreenConfigsRec
*/
char *effectiveGLXexts;
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
/**
* Per screen direct rendering interface functions and data.
*/
@@ -625,7 +622,7 @@ struct __GLXdisplayPrivateRec
*/
__GLXscreenConfigs *screenConfigs;
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
/**
* Per display direct rendering interface functions and data.
*/
@@ -638,14 +635,12 @@ struct __GLXdisplayPrivateRec
extern GLubyte *__glXFlushRenderBuffer(__GLXcontext *, GLubyte *);
-#ifndef GLX_USE_APPLEGL
extern void __glXSendLargeChunk(__GLXcontext * gc, GLint requestNumber,
GLint totalRequests,
const GLvoid * data, GLint dataLen);
extern void __glXSendLargeCommand(__GLXcontext *, const GLvoid *, GLint,
const GLvoid *, GLint);
-#endif
/* Initialize the GLX extension for dpy */
extern __GLXdisplayPrivate *__glXInitialize(Display *);
@@ -805,7 +800,7 @@ extern GLboolean __glXGetMscRateOML(Display * dpy, GLXDrawable drawable,
int32_t * numerator,
int32_t * denominator);
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
GLboolean
__driGetMscRateOML(__DRIdrawable * draw,
int32_t * numerator, int32_t * denominator, void *private);
diff --git a/src/glx/glxcmds.c b/src/glx/glxcmds.c
index 50802b7e1fe..e9ec4c88c60 100644
--- a/src/glx/glxcmds.c
+++ b/src/glx/glxcmds.c
@@ -34,21 +34,22 @@
*/
#include "glxclient.h"
+#include "glapi.h"
+#include "glxextensions.h"
+#include "glcontextmodes.h"
+
+#ifdef GLX_DIRECT_RENDERING
#ifdef GLX_USE_APPLEGL
#include "apple_glx_context.h"
#include "apple_glx.h"
#include "glx_error.h"
+#define GC_IS_DIRECT(gc) ((gc)->isDirect)
#else
-#include "glapi.h"
-#endif
-#include "glxextensions.h"
-#include "glcontextmodes.h"
-
-#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
#include <sys/time.h>
#include <X11/extensions/xf86vmode.h>
#include "xf86dri.h"
#define GC_IS_DIRECT(gc) ((gc)->driContext != NULL)
+#endif
#else
#define GC_IS_DIRECT(gc) (0)
#endif
@@ -65,7 +66,7 @@ static const char __glXGLXClientVersion[] = "1.4";
/****************************************************************************/
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
static Bool windowExistsFlag;
static int
@@ -352,7 +353,7 @@ AllocateGLXContext(Display * dpy)
gc->maxSmallRenderCommandSize = bufSize;
#ifdef GLX_USE_APPLEGL
- gc->apple = NULL;
+ gc->driContext = NULL;
gc->do_destroy = False;
#endif
@@ -378,11 +379,12 @@ CreateContext(Display * dpy, int generic_id,
{
GLXContext gc;
#ifdef GLX_DIRECT_RENDERING
+#ifdef GLX_USE_APPLEGL
+ int errorcode;
+ bool x11error;
+#else
__GLXscreenConfigs *const psc = GetGLXScreenConfigs(dpy, screen);
#endif
-#ifdef GLX_USE_APPLEGL
- int errorcode;
- bool x11error;
#endif
if (dpy == NULL)
@@ -395,7 +397,7 @@ CreateContext(Display * dpy, int generic_id,
if (!gc)
return NULL;
-#ifndef GLX_USE_APPLEGL
+#ifndef GLX_USE_APPLEGL /* TODO: darwin indirect */
#ifdef GLX_DIRECT_RENDERING
if (allowDirect && psc->driScreen) {
gc->driContext = psc->driScreen->createContext(psc, fbconfig, gc,
@@ -475,9 +477,12 @@ CreateContext(Display * dpy, int generic_id,
#endif
gc->imported = GL_FALSE;
+ gc->renderType = renderType;
+
+ /* TODO: darwin: Integrate with above to do indirect */
#ifdef GLX_USE_APPLEGL
- if(apple_glx_create_context(&gc->apple, dpy, screen, fbconfig,
- shareList ? shareList->apple : NULL,
+ if(apple_glx_create_context(&gc->driContext, dpy, screen, fbconfig,
+ shareList ? shareList->driContext : NULL,
&errorcode, &x11error)) {
__glXSendError(dpy, errorcode, 0, X_GLXCreateContext, x11error);
__glXFreeContext(gc);
@@ -487,8 +492,6 @@ CreateContext(Display * dpy, int generic_id,
gc->currentContextTag = -1;
gc->mode = fbconfig;
gc->isDirect = allowDirect;
-#else
- gc->renderType = renderType;
#endif
return gc;
@@ -536,7 +539,7 @@ __glXFreeContext(__GLXcontext * gc)
XFree((char *) gc->version);
if (gc->extensions)
XFree((char *) gc->extensions);
-#ifndef GLX_USE_APPLEGL
+#ifndef GLX_USE_APPLEGL /* TODO: clientattrib */
__glFreeAttributeState(gc);
#endif
XFree((char *) gc->buf);
@@ -551,7 +554,7 @@ __glXFreeContext(__GLXcontext * gc)
static void
DestroyContext(Display * dpy, GLXContext gc)
{
-#ifndef GLX_USE_APPLEGL
+#ifndef GLX_USE_APPLEGL /* TODO: darwin: indirect */
xGLXDestroyContextReq *req;
GLXContextID xid;
CARD8 opcode;
@@ -577,7 +580,7 @@ DestroyContext(Display * dpy, GLXContext gc)
return;
}
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
/* Destroy the direct rendering context */
if (gc->driContext) {
(*gc->driContext->destroyContext) (gc->driContext, gc->psc, dpy);
@@ -606,8 +609,8 @@ DestroyContext(Display * dpy, GLXContext gc)
/* Destroy the handle if not current to anybody */
__glXUnlock();
#ifdef GLX_USE_APPLEGL
- if(gc->apple)
- apple_glx_destroy_context(&gc->apple, dpy);
+ if(gc->driContext)
+ apple_glx_destroy_context(&gc->driContext, dpy);
#endif
__glXFreeContext(gc);
}
@@ -694,7 +697,7 @@ glXWaitGL(void)
#ifdef GLX_USE_APPLEGL
glFinish();
#else
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
int screen;
__GLXDRIdrawable *pdraw =
@@ -741,9 +744,9 @@ glXWaitX(void)
__glXFlushRenderBuffer(gc, gc->pc);
#ifdef GLX_USE_APPLEGL
- apple_glx_waitx(dpy, gc->apple);
+ apple_glx_waitx(dpy, gc->driContext);
#else
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
int screen;
__GLXDRIdrawable *pdraw =
@@ -790,7 +793,7 @@ glXUseXFont(Font font, int first, int count, int listBase)
#ifdef GLX_USE_APPLEGL
DRI_glXUseXFont(font, first, count, listBase);
#else
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
DRI_glXUseXFont(font, first, count, listBase);
return;
@@ -827,7 +830,7 @@ glXCopyContext(Display * dpy, GLXContext source,
int errorcode;
bool x11error;
- if(apple_glx_copy_context(gc->apple, source->apple, dest->apple,
+ if(apple_glx_copy_context(gc->driContext, source->driContext, dest->driContext,
mask, &errorcode, &x11error)) {
__glXSendError(dpy, errorcode, 0, X_GLXCopyContext, x11error);
}
@@ -843,7 +846,7 @@ glXCopyContext(Display * dpy, GLXContext source,
return;
}
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
/* NOT_DONE: This does not work yet */
}
@@ -875,7 +878,6 @@ glXCopyContext(Display * dpy, GLXContext source,
}
-#ifndef GLX_USE_APPLEGL
/**
* Determine if a context uses direct rendering.
*
@@ -887,6 +889,9 @@ glXCopyContext(Display * dpy, GLXContext source,
static Bool
__glXIsDirect(Display * dpy, GLXContextID contextID)
{
+#ifndef GLX_USE_APPLEGL /* TODO: apple indirect */
+ return GC_IS_DIRECT(gc);
+#else
#if !defined(USE_XCB)
xGLXIsDirectReq *req;
xGLXIsDirectReply reply;
@@ -922,8 +927,8 @@ __glXIsDirect(Display * dpy, GLXContextID contextID)
return reply.isDirect;
#endif /* USE_XCB */
-}
#endif /* GLX_USE_APPLEGL */
+}
/**
* \todo
@@ -934,17 +939,6 @@ __glXIsDirect(Display * dpy, GLXContextID contextID)
PUBLIC Bool
glXIsDirect(Display * dpy, GLXContext gc)
{
-#ifdef GLX_USE_APPLEGL
- /*
- * This isn't an ideal test.
- * glXIsDirect should probably search a list of contexts.
- */
- if(NULL == gc) {
- __glXSendError(dpy, GLXBadContext, 0, X_GLXIsDirect, false);
- return False;
- }
- return gc->isDirect;
-#else
if (!gc) {
return GL_FALSE;
}
@@ -952,7 +946,6 @@ glXIsDirect(Display * dpy, GLXContext gc)
return GL_TRUE;
}
return __glXIsDirect(dpy, gc->xid);
-#endif /* GLX_USE_APPLEGL */
}
PUBLIC GLXPixmap
@@ -991,7 +984,7 @@ glXCreateGLXPixmap(Display * dpy, XVisualInfo * vis, Pixmap pixmap)
UnlockDisplay(dpy);
SyncHandle();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
do {
/* FIXME: Maybe delay __DRIdrawable creation until the drawable
* is actually bound to a context... */
@@ -1049,7 +1042,7 @@ glXDestroyGLXPixmap(Display * dpy, GLXPixmap glxpixmap)
UnlockDisplay(dpy);
SyncHandle();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
{
int screen;
__GLXdisplayPrivate *const priv = __glXInitialize(dpy);
@@ -1070,8 +1063,8 @@ glXSwapBuffers(Display * dpy, GLXDrawable drawable)
{
#ifdef GLX_USE_APPLEGL
GLXContext gc = glXGetCurrentContext();
- if(gc && apple_glx_is_current_drawable(dpy, gc->apple, drawable)) {
- apple_glx_swap_buffers(gc->apple);
+ if(gc && apple_glx_is_current_drawable(dpy, gc->driContext, drawable)) {
+ apple_glx_swap_buffers(gc->driContext);
} else {
__glXSendError(dpy, GLXBadCurrentWindow, 0, X_GLXSwapBuffers, false);
}
@@ -1085,7 +1078,7 @@ glXSwapBuffers(Display * dpy, GLXDrawable drawable)
xGLXSwapBuffersReq *req;
#endif
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
__GLXDRIdrawable *pdraw = GetGLXDRIDrawable(dpy, drawable, NULL);
if (pdraw != NULL) {
@@ -1587,7 +1580,7 @@ glXQueryExtensionsString(Display * dpy, int screen)
}
__glXCalculateUsableExtensions(psc,
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
(psc->driScreen != NULL),
#else
GL_FALSE,
@@ -1819,7 +1812,7 @@ glXQueryContext(Display * dpy, GLXContext ctx, int attribute, int *value)
int retVal;
/* get the information from the server if we don't have it already */
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (!ctx->driContext && (ctx->mode == NULL)) {
#else
if (ctx->mode == NULL) {
@@ -2566,7 +2559,7 @@ __glXGetSyncValuesOML(Display * dpy, GLXDrawable drawable,
return False;
}
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
_X_HIDDEN GLboolean
__driGetMscRateOML(__DRIdrawable * draw,
int32_t * numerator, int32_t * denominator, void *private)
@@ -3019,7 +3012,7 @@ __glXBindTexImageEXT(Display * dpy,
i++;
}
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
__GLXDRIdrawable *pdraw = GetGLXDRIDrawable(dpy, drawable, NULL);
@@ -3275,7 +3268,7 @@ static const struct name_address_pair GLX_functions[] = {
GLX_FUNCTION2(glXReleaseTexImageEXT, __glXReleaseTexImageEXT),
#endif
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
/*** DRI configuration ***/
GLX_FUNCTION(glXGetScreenDriver),
GLX_FUNCTION(glXGetDriverConfig),
@@ -3352,7 +3345,7 @@ PUBLIC void (*glXGetProcAddress(const GLubyte * procName)) (void)
#endif /* __GNUC__ */
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
/**
* Get the unadjusted system time (UST). Currently, the UST is measured in
* microseconds since Epoc. The actual resolution of the UST may vary from
diff --git a/src/glx/glxcurrent.c b/src/glx/glxcurrent.c
index 115fab4012c..691e8dfadf2 100644
--- a/src/glx/glxcurrent.c
+++ b/src/glx/glxcurrent.c
@@ -169,7 +169,7 @@ __glXSetCurrentContextNull(void)
{
__glXSetCurrentContext(&dummyContext);
#ifndef GLX_USE_APPLEGL
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
_glapi_set_dispatch(NULL); /* no-op functions */
_glapi_set_context(NULL);
#endif
@@ -284,7 +284,7 @@ SendMakeCurrentRequest(Display * dpy, CARD8 opcode,
}
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
static __GLXDRIdrawable *
FetchDRIDrawable(Display * dpy, GLXDrawable glxDrawable, GLXContext gc)
{
@@ -342,8 +342,8 @@ MakeContextCurrent(Display * dpy, GLXDrawable draw,
const GLXContext oldGC = __glXGetCurrentContext();
#ifdef GLX_USE_APPLEGL
bool error = apple_glx_make_current_context(dpy,
- (oldGC && oldGC != &dummyContext) ? oldGC->apple : NULL,
- gc ? gc->apple : NULL, draw);
+ (oldGC && oldGC != &dummyContext) ? oldGC->driContext : NULL,
+ gc ? gc->driContext : NULL, draw);
apple_glx_diagnostic("%s: error %s\n", __func__, error ? "YES" : "NO");
if(error)
@@ -386,7 +386,7 @@ MakeContextCurrent(Display * dpy, GLXDrawable draw,
return False;
}
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
/* Bind the direct rendering context to the drawable */
if (gc && gc->driContext) {
__GLXDRIdrawable *pdraw = FetchDRIDrawable(dpy, draw, gc);
@@ -421,7 +421,7 @@ MakeContextCurrent(Display * dpy, GLXDrawable draw,
return False;
}
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if ((dpy != oldGC->currentDpy || (gc && gc->driContext)) &&
!oldGC->isDirect && oldGC != &dummyContext) {
#else
@@ -439,7 +439,7 @@ MakeContextCurrent(Display * dpy, GLXDrawable draw,
oldGC->currentContextTag, None, None,
&dummy_reply);
}
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
else if (oldGC->driContext && oldGC != gc) {
oldGC->driContext->unbindContext(oldGC->driContext);
}
@@ -485,7 +485,7 @@ MakeContextCurrent(Display * dpy, GLXDrawable draw,
* previously destroyed, so we need to free the memory
* for the old handle.
*/
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
/* Destroy the old direct rendering context */
if (oldGC->driContext) {
oldGC->driContext->destroyContext(oldGC->driContext,
@@ -507,7 +507,7 @@ MakeContextCurrent(Display * dpy, GLXDrawable draw,
#ifndef GLX_USE_APPLEGL
gc->thread_id = _glthread_GetID();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (!gc->driContext) {
#endif
if (!IndirectAPI)
@@ -522,7 +522,7 @@ MakeContextCurrent(Display * dpy, GLXDrawable draw,
(void) glGetString(GL_VERSION);
__glXInitVertexArrayState(gc);
}
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
}
else {
gc->currentContextTag = -1;
diff --git a/src/glx/glxext.c b/src/glx/glxext.c
index 9aa992487ea..82d3a56f37d 100644
--- a/src/glx/glxext.c
+++ b/src/glx/glxext.c
@@ -259,7 +259,7 @@ FreeScreenConfigs(__GLXdisplayPrivate * priv)
}
Xfree((char *) psc->serverGLXexts);
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (psc->driver_configs) {
unsigned int j;
for (j = 0; psc->driver_configs[j]; j++)
@@ -299,7 +299,7 @@ __glXFreeDisplayPrivate(XExtData * extension)
priv->serverGLXversion = 0x0; /* to protect against double free's */
}
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
/* Free the direct rendering per display data */
if (priv->driswDisplay)
(*priv->driswDisplay->destroyDisplay) (priv->driswDisplay);
@@ -777,7 +777,7 @@ AllocAndFetchScreenConfigs(Display * dpy, __GLXdisplayPrivate * priv)
getVisualConfigs(dpy, priv, i);
getFBConfigs(dpy, priv, i);
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
psc->scr = i;
psc->dpy = dpy;
psc->drawHash = __glxHashCreate();
@@ -817,7 +817,7 @@ __glXInitialize(Display * dpy)
__GLXdisplayPrivate *dpyPriv;
XEDataObject dataObj;
int major, minor;
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
Bool glx_direct, glx_accel;
#endif
@@ -874,7 +874,7 @@ __glXInitialize(Display * dpy)
dpyPriv->serverGLXvendor = 0x0;
dpyPriv->serverGLXversion = 0x0;
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
glx_direct = (getenv("LIBGL_ALWAYS_INDIRECT") == NULL);
glx_accel = (getenv("LIBGL_ALWAYS_SOFTWARE") == NULL);
diff --git a/src/glx/indirect.c b/src/glx/indirect.c
index 42a225f6711..172727860e8 100644
--- a/src/glx/indirect.c
+++ b/src/glx/indirect.c
@@ -5198,7 +5198,7 @@ glDeleteTexturesEXT(GLsizei n, const GLuint * textures)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_DeleteTextures(GET_DISPATCH(), (n, textures));
} else
@@ -5269,7 +5269,7 @@ glGenTexturesEXT(GLsizei n, GLuint * textures)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GenTextures(GET_DISPATCH(), (n, textures));
} else
@@ -5334,7 +5334,7 @@ glIsTextureEXT(GLuint texture)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
return CALL_IsTexture(GET_DISPATCH(), (texture));
} else
@@ -5650,7 +5650,7 @@ glGetColorTableEXT(GLenum target, GLenum format, GLenum type, GLvoid * table)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetColorTable(GET_DISPATCH(), (target, format, type, table));
} else
@@ -5726,7 +5726,7 @@ glGetColorTableParameterfvEXT(GLenum target, GLenum pname, GLfloat * params)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetColorTableParameterfv(GET_DISPATCH(),
(target, pname, params));
@@ -5799,7 +5799,7 @@ glGetColorTableParameterivEXT(GLenum target, GLenum pname, GLint * params)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetColorTableParameteriv(GET_DISPATCH(),
(target, pname, params));
@@ -6125,7 +6125,7 @@ gl_dispatch_stub_356(GLenum target, GLenum format, GLenum type,
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetConvolutionFilter(GET_DISPATCH(),
(target, format, type, image));
@@ -6203,7 +6203,7 @@ gl_dispatch_stub_357(GLenum target, GLenum pname, GLfloat * params)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetConvolutionParameterfv(GET_DISPATCH(),
(target, pname, params));
@@ -6276,7 +6276,7 @@ gl_dispatch_stub_358(GLenum target, GLenum pname, GLint * params)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetConvolutionParameteriv(GET_DISPATCH(),
(target, pname, params));
@@ -6356,7 +6356,7 @@ gl_dispatch_stub_361(GLenum target, GLboolean reset, GLenum format,
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetHistogram(GET_DISPATCH(),
(target, reset, format, type, values));
@@ -6433,7 +6433,7 @@ gl_dispatch_stub_362(GLenum target, GLenum pname, GLfloat * params)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetHistogramParameterfv(GET_DISPATCH(), (target, pname, params));
} else
@@ -6504,7 +6504,7 @@ gl_dispatch_stub_363(GLenum target, GLenum pname, GLint * params)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetHistogramParameteriv(GET_DISPATCH(), (target, pname, params));
} else
@@ -6579,7 +6579,7 @@ gl_dispatch_stub_364(GLenum target, GLboolean reset, GLenum format,
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetMinmax(GET_DISPATCH(), (target, reset, format, type, values));
} else
@@ -6653,7 +6653,7 @@ gl_dispatch_stub_365(GLenum target, GLenum pname, GLfloat * params)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetMinmaxParameterfv(GET_DISPATCH(), (target, pname, params));
} else
@@ -6721,7 +6721,7 @@ gl_dispatch_stub_366(GLenum target, GLenum pname, GLint * params)
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetMinmaxParameteriv(GET_DISPATCH(), (target, pname, params));
} else
diff --git a/src/glx/singlepix.c b/src/glx/singlepix.c
index f5ebf4dfdbf..c4010d79bd0 100644
--- a/src/glx/singlepix.c
+++ b/src/glx/singlepix.c
@@ -119,7 +119,7 @@ void NAME(_gloffset_GetSeparableFilter) (GLenum target, GLenum format,
{
__GLXcontext *const gc = __glXGetCurrentContext();
-#ifdef GLX_DIRECT_RENDERING
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
if (gc->driContext) {
CALL_GetSeparableFilter(GET_DISPATCH(),
(target, format, type, row, column, span));
diff --git a/src/glx/xfont.c b/src/glx/xfont.c
index 6b55a6085b8..797fd7a4900 100644
--- a/src/glx/xfont.c
+++ b/src/glx/xfont.c
@@ -33,7 +33,7 @@
called by that routine when direct rendering is enabled.
*/
-#if defined(GLX_DIRECT_RENDERING) || defined(GLX_USE_APPLEGL)
+#ifdef GLX_DIRECT_RENDERING
#include "glxclient.h"