apple: Build darwin using applegl rather than indirect

This reverts portions of 6849916170 that caused
the darwin config to fail to build due to missing implementations in that
commit.

See https://bugs.freedesktop.org/show_bug.cgi?id=29162

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
(cherry picked from commit 1885cf27c9)
This commit is contained in:
Jeremy Huddleston 2011-06-05 18:50:55 -04:00
parent 858db8cd4e
commit 9cbc705e83
3 changed files with 20 additions and 3 deletions

View file

@ -776,7 +776,19 @@ GarbageCollectDRIDrawables(struct glx_screen *psc);
extern __GLXDRIdrawable *
GetGLXDRIDrawable(Display *dpy, GLXDrawable drawable);
#endif
#ifdef GLX_USE_APPLEGL
extern struct glx_screen *
applegl_create_screen(int screen, struct glx_display * priv);
extern struct glx_context *
applegl_create_context(struct glx_screen *psc,
struct glx_config *mode,
struct glx_context *shareList, int renderType);
extern int
applegl_create_display(struct glx_display *display);
#endif
extern struct glx_context dummyContext;

View file

@ -228,10 +228,14 @@ CreateContext(Display * dpy, int generic_id,
return NULL;
gc = NULL;
#ifdef GLX_USE_APPLEGL
gc = applegl_create_context(psc, config, shareList, renderType);
#else
if (allowDirect && psc->vtable->create_context)
gc = psc->vtable->create_context(psc, config, shareList, renderType);
if (!gc)
gc = indirect_create_context(psc, config, shareList, renderType);
#endif
if (!gc)
return NULL;

View file

@ -764,11 +764,12 @@ AllocAndFetchScreenConfigs(Display * dpy, struct glx_display * priv)
psc = (*priv->driswDisplay->createScreen) (i, priv);
#endif
#if defined(GLX_USE_APPLEGL)
if (psc == NULL && priv->appleglDisplay)
psc = (*priv->appleglDisplay->createScreen) (i, priv);
#endif
if (psc == NULL)
psc = applegl_create_screen(i, priv);
#else
if (psc == NULL)
psc = indirect_create_screen(i, priv);
#endif
priv->screens[i] = psc;
}
SyncHandle();