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>
This commit is contained in:
@@ -769,7 +769,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;
|
||||
|
||||
@@ -224,10 +224,14 @@ CreateContext(Display *dpy, int generic_id, struct glx_config *config,
|
||||
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;
|
||||
|
||||
|
||||
+4
-3
@@ -779,11 +779,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();
|
||||
|
||||
Reference in New Issue
Block a user