----- Original Message ----- > Hi > > Apparently, it is available on macos: > https://trac.macports.org/browser/trunk/dports/graphics/libepoxy/Portfile > > but your patch looks correct nonetheless (with the commit summary updated) Ah it may be just epoxy/egl.h not availale on macos, my bad > > ----- Original Message ----- > > Signed-off-by: Christophe de Dinechin <dinechin@xxxxxxxxxx> > > --- > > configure.ac | 13 ++++++++++--- > > src/Makefile.am | 2 +- > > src/spice-widget-priv.h | 6 +++--- > > src/spice-widget.c | 27 ++++++++++++++------------- > > 4 files changed, 28 insertions(+), 20 deletions(-) > > > > diff --git a/configure.ac b/configure.ac > > index a6ac2de..caa2dc9 100644 > > --- a/configure.ac > > +++ b/configure.ac > > @@ -74,9 +74,16 @@ esac > > AC_MSG_RESULT([$os_mac]) > > AM_CONDITIONAL([OS_MAC],[test "$os_mac" = "yes"]) > > > > -AC_CHECK_HEADERS([sys/socket.h netinet/in.h arpa/inet.h]) > > -AC_CHECK_HEADERS([termios.h]) > > - > > +AC_CHECK_HEADERS([sys/socket.h netinet/in.h arpa/inet.h termios.h]) > > +AC_CHECK_HEADERS([epoxy/egl.h], > > + [have_egl=yes], > > + [have_egl=no]) > > +AC_MSG_CHECKING([if we can use EGL in libepoxy)]) > > +AC_MSG_RESULT([$have_egl]) > > +AM_CONDITIONAL([HAVE_EGL],[test "$have_egl" = "yes"]) > > +AS_IF([test "$have_egl" = "yes"], > > + AC_DEFINE([HAVE_EGL], [1], [Define if supporting EGL])) > > + > > AC_CHECK_LIBM > > AC_SUBST(LIBM) > > > > diff --git a/src/Makefile.am b/src/Makefile.am > > index 4fa7357..bb7ad6c 100644 > > --- a/src/Makefile.am > > +++ b/src/Makefile.am > > @@ -145,7 +145,7 @@ SPICE_GTK_SOURCES_COMMON += \ > > spice-widget-cairo.c \ > > $(NULL) > > > > -if !OS_WIN32 > > +if HAVE_EGL > > SPICE_GTK_SOURCES_COMMON += \ > > spice-widget-egl.c \ > > $(NULL) > > diff --git a/src/spice-widget-priv.h b/src/spice-widget-priv.h > > index e29e1b7..5b3216f 100644 > > --- a/src/spice-widget-priv.h > > +++ b/src/spice-widget-priv.h > > @@ -24,7 +24,7 @@ > > #include <windows.h> > > #endif > > > > -#ifndef G_OS_WIN32 > > +#ifdef HAVE_EPOXY_EGL_H > > #include <epoxy/egl.h> > > #endif > > > > @@ -133,7 +133,7 @@ struct _SpiceDisplayPrivate { > > int x11_accel_denominator; > > int x11_threshold; > > #endif > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > struct { > > gboolean context_ready; > > gboolean enabled; > > @@ -150,7 +150,7 @@ struct _SpiceDisplayPrivate { > > gboolean call_draw_done; > > SpiceGlScanout scanout; > > } egl; > > -#endif > > +#endif // HAVE_EGL > > }; > > > > int spice_cairo_image_create (SpiceDisplay *display); > > diff --git a/src/spice-widget.c b/src/spice-widget.c > > index 5bbba8f..91aed58 100644 > > --- a/src/spice-widget.c > > +++ b/src/spice-widget.c > > @@ -235,7 +235,7 @@ static gint get_display_id(SpiceDisplay *display) > > > > static bool egl_enabled(SpiceDisplayPrivate *d) > > { > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > return d->egl.enabled; > > #else > > return false; > > @@ -574,7 +574,7 @@ static void grab_notify(SpiceDisplay *display, gboolean > > was_grabbed) > > } > > > > #if GTK_CHECK_VERSION(3,16,0) > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > /* Ignore GLib's too-new warnings */ > > G_GNUC_BEGIN_IGNORE_DEPRECATIONS > > static gboolean > > @@ -646,7 +646,7 @@ static void spice_display_init(SpiceDisplay *display) > > gtk_stack_set_visible_child(d->stack, area); > > > > #if GTK_CHECK_VERSION(3,16,0) > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > /* Ignore GLib's too-new warnings */ > > G_GNUC_BEGIN_IGNORE_DEPRECATIONS > > area = gtk_gl_area_new(); > > @@ -977,6 +977,7 @@ static void set_mouse_accel(SpiceDisplay *display, > > gboolean enabled) > > } > > #else > > g_warning("Mouse acceleration code missing for your platform"); > > + (void) d; > > #endif > > } > > > > @@ -1305,7 +1306,7 @@ static gboolean do_color_convert(SpiceDisplay > > *display, > > GdkRectangle *r) > > return true; > > } > > > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > static void set_egl_enabled(SpiceDisplay *display, bool enabled) > > { > > SpiceDisplayPrivate *d = display->priv; > > @@ -1341,7 +1342,7 @@ static gboolean draw_event(GtkWidget *widget, cairo_t > > *cr, gpointer data) > > SpiceDisplayPrivate *d = display->priv; > > g_return_val_if_fail(d != NULL, false); > > > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > if (egl_enabled(d) && > > g_str_equal(gtk_stack_get_visible_child_name(d->stack), > > "draw-area")) { > > spice_egl_update_display(display); > > @@ -2101,7 +2102,7 @@ static void size_allocate(GtkWidget *widget, > > GtkAllocation *conf, gpointer data) > > d->ww = conf->width; > > d->wh = conf->height; > > recalc_geometry(widget); > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > if (egl_enabled(d)) > > spice_egl_resize_display(display, conf->width, conf->height); > > #endif > > @@ -2144,7 +2145,7 @@ static void realize(GtkWidget *widget) > > static void unrealize(GtkWidget *widget) > > { > > spice_cairo_image_destroy(SPICE_DISPLAY(widget)); > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > spice_egl_unrealize_display(SPICE_DISPLAY(widget)); > > #endif > > > > @@ -2500,7 +2501,7 @@ static void update_area(SpiceDisplay *display, > > .height = height > > }; > > > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > if (egl_enabled(d)) { > > const SpiceGlScanout *so = > > spice_display_get_gl_scanout(SPICE_DISPLAY_CHANNEL(d->display)); > > @@ -2597,7 +2598,7 @@ static void invalidate(SpiceChannel *channel, > > .height = h > > }; > > > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > set_egl_enabled(display, false); > > #endif > > > > @@ -2661,7 +2662,7 @@ static void cursor_set(SpiceCursorChannel *channel, > > } else > > g_warn_if_reached(); > > > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > if (egl_enabled(d)) > > spice_egl_cursor_set(display); > > #endif > > @@ -2833,7 +2834,7 @@ static void inputs_channel_event(SpiceChannel > > *channel, > > SpiceChannelEvent event, > > spice_display_set_keypress_delay(display, delay); > > } > > > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > G_GNUC_INTERNAL > > void spice_display_widget_gl_scanout(SpiceDisplay *display) > > { > > @@ -2942,7 +2943,7 @@ static void channel_new(SpiceSession *s, SpiceChannel > > *channel, gpointer data) > > mark(display, primary.marked); > > } > > > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > spice_g_signal_connect_object(channel, "notify::gl-scanout", > > G_CALLBACK(spice_display_widget_gl_scanout), > > display, G_CONNECT_SWAPPED); > > @@ -3102,7 +3103,7 @@ GdkPixbuf *spice_display_get_pixbuf(SpiceDisplay > > *display) > > g_return_val_if_fail(d != NULL, NULL); > > g_return_val_if_fail(d->display != NULL, NULL); > > > > -#ifndef G_OS_WIN32 > > +#if HAVE_EGL > > if (egl_enabled(d)) { > > GdkPixbuf *tmp; > > > > -- > > 2.11.0 (Apple Git-81) > > > > _______________________________________________ > > Spice-devel mailing list > > Spice-devel@xxxxxxxxxxxxxxxxxxxxx > > https://lists.freedesktop.org/mailman/listinfo/spice-devel > > > _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel