mirror of
https://gitlab.freedesktop.org/wayland/wayland.git
synced 2025-11-02 09:01:39 -05:00
Check for cairo-egl instead of just cairo-gl
This commit is contained in:
parent
d711d0cd66
commit
8def264241
4 changed files with 13 additions and 13 deletions
|
|
@ -212,7 +212,7 @@ allocate_buffer(struct gears *gears)
|
||||||
window_draw(gears->window);
|
window_draw(gears->window);
|
||||||
|
|
||||||
gears->surface[gears->current] = window_get_surface(gears->window);
|
gears->surface[gears->current] = window_get_surface(gears->window);
|
||||||
#ifdef HAVE_CAIRO_GL
|
#ifdef HAVE_CAIRO_EGL
|
||||||
image = display_get_image_for_drm_surface(gears->display,
|
image = display_get_image_for_drm_surface(gears->display,
|
||||||
gears->surface[gears->current]);
|
gears->surface[gears->current]);
|
||||||
#else /* XXX: hack to make Wayland compile, even if this example doesn't run */
|
#else /* XXX: hack to make Wayland compile, even if this example doesn't run */
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,7 @@
|
||||||
#include <EGL/egl.h>
|
#include <EGL/egl.h>
|
||||||
#include <EGL/eglext.h>
|
#include <EGL/eglext.h>
|
||||||
|
|
||||||
#ifdef HAVE_CAIRO_GL
|
#ifdef HAVE_CAIRO_EGL
|
||||||
#include <cairo-gl.h>
|
#include <cairo-gl.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
@ -181,7 +181,7 @@ struct surface_data {
|
||||||
#define MULT(_d,c,a,t) \
|
#define MULT(_d,c,a,t) \
|
||||||
do { t = c * a + 0x7f; _d = ((t >> 8) + t) >> 8; } while (0)
|
do { t = c * a + 0x7f; _d = ((t >> 8) + t) >> 8; } while (0)
|
||||||
|
|
||||||
#ifdef HAVE_CAIRO_GL
|
#ifdef HAVE_CAIRO_EGL
|
||||||
|
|
||||||
struct drm_surface_data {
|
struct drm_surface_data {
|
||||||
struct surface_data data;
|
struct surface_data data;
|
||||||
|
|
@ -469,7 +469,7 @@ cairo_surface_t *
|
||||||
display_create_surface(struct display *display,
|
display_create_surface(struct display *display,
|
||||||
struct rectangle *rectangle)
|
struct rectangle *rectangle)
|
||||||
{
|
{
|
||||||
#ifdef HAVE_CAIRO_GL
|
#ifdef HAVE_CAIRO_EGL
|
||||||
if (display->drm) {
|
if (display->drm) {
|
||||||
return display_create_drm_surface(display, rectangle);
|
return display_create_drm_surface(display, rectangle);
|
||||||
}
|
}
|
||||||
|
|
@ -482,7 +482,7 @@ display_create_surface_from_file(struct display *display,
|
||||||
const char *filename,
|
const char *filename,
|
||||||
struct rectangle *rectangle)
|
struct rectangle *rectangle)
|
||||||
{
|
{
|
||||||
#ifdef HAVE_CAIRO_GL
|
#ifdef HAVE_CAIRO_EGL
|
||||||
if (display->drm) {
|
if (display->drm) {
|
||||||
return display_create_drm_surface_from_file(display, filename, rectangle);
|
return display_create_drm_surface_from_file(display, filename, rectangle);
|
||||||
}
|
}
|
||||||
|
|
@ -536,7 +536,7 @@ display_get_pointer_surface(struct display *display, int pointer,
|
||||||
cairo_surface_t *surface;
|
cairo_surface_t *surface;
|
||||||
|
|
||||||
surface = display->pointer_surfaces[pointer];
|
surface = display->pointer_surfaces[pointer];
|
||||||
#if HAVE_CAIRO_GL
|
#if HAVE_CAIRO_EGL
|
||||||
*width = cairo_gl_surface_get_width(surface);
|
*width = cairo_gl_surface_get_width(surface);
|
||||||
*height = cairo_gl_surface_get_height(surface);
|
*height = cairo_gl_surface_get_height(surface);
|
||||||
#else
|
#else
|
||||||
|
|
@ -630,7 +630,7 @@ window_create_surface(struct window *window)
|
||||||
cairo_surface_t *surface;
|
cairo_surface_t *surface;
|
||||||
|
|
||||||
switch (window->buffer_type) {
|
switch (window->buffer_type) {
|
||||||
#ifdef HAVE_CAIRO_GL
|
#ifdef HAVE_CAIRO_EGL
|
||||||
case WINDOW_BUFFER_TYPE_DRM:
|
case WINDOW_BUFFER_TYPE_DRM:
|
||||||
surface = display_create_surface(window->display,
|
surface = display_create_surface(window->display,
|
||||||
&window->allocation);
|
&window->allocation);
|
||||||
|
|
@ -1439,7 +1439,7 @@ init_drm(struct display *d)
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_CAIRO_GL
|
#ifdef HAVE_CAIRO_EGL
|
||||||
d->device = cairo_egl_device_create(d->dpy, d->ctx);
|
d->device = cairo_egl_device_create(d->dpy, d->ctx);
|
||||||
if (d->device == NULL) {
|
if (d->device == NULL) {
|
||||||
fprintf(stderr, "failed to get cairo drm device\n");
|
fprintf(stderr, "failed to get cairo drm device\n");
|
||||||
|
|
|
||||||
|
|
@ -51,7 +51,7 @@ display_get_compositor(struct display *display);
|
||||||
EGLDisplay
|
EGLDisplay
|
||||||
display_get_egl_display(struct display *d);
|
display_get_egl_display(struct display *d);
|
||||||
|
|
||||||
#ifdef HAVE_CAIRO_GL
|
#ifdef HAVE_CAIRO_EGL
|
||||||
EGLImageKHR
|
EGLImageKHR
|
||||||
display_get_image_for_drm_surface(struct display *display,
|
display_get_image_for_drm_surface(struct display *display,
|
||||||
cairo_surface_t *surface);
|
cairo_surface_t *surface);
|
||||||
|
|
|
||||||
|
|
@ -54,10 +54,10 @@ if test x$enable_wayland_compositor == xyes; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
PKG_CHECK_MODULES(CAIRO_GL, [cairo-gl],
|
PKG_CHECK_MODULES(CAIRO_EGL, [cairo-egl],
|
||||||
[have_cairo_gl=yes], [have_cairo_gl=no])
|
[have_cairo_egl=yes], [have_cairo_egl=no])
|
||||||
AS_IF([test "x$have_cairo_gl" = "xyes"],
|
AS_IF([test "x$have_cairo_egl" = "xyes"],
|
||||||
[AC_DEFINE([HAVE_CAIRO_GL], [1], [Have cairo-gl])])
|
[AC_DEFINE([HAVE_CAIRO_EGL], [1], [Have cairo-egl])])
|
||||||
|
|
||||||
if test $CC = gcc; then
|
if test $CC = gcc; then
|
||||||
GCC_CFLAGS="-Wall -g -Wstrict-prototypes -Wmissing-prototypes -fvisibility=hidden"
|
GCC_CFLAGS="-Wall -g -Wstrict-prototypes -Wmissing-prototypes -fvisibility=hidden"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue