diff options
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index 2b8987f51..0d7438167 100644 --- a/configure.ac +++ b/configure.ac @@ -274,6 +274,10 @@ AC_ARG_ENABLE([egl-backend], [AS_HELP_STRING([--enable-egl-backend=@<:@yes/no@:>@], [Enable the EGL framebuffer backend (default=no)])], [enable_egl=$enableval], [enable_egl=no]) +AC_ARG_ENABLE([mir-backend], + [AS_HELP_STRING([--enable-mir-backend=@<:@yes/no@:>@], [Enable the Mir client backend (default=no)])], + [enable_mir=$enableval], + [enable_mir=no]) AC_ARG_ENABLE([cex100-backend], [AS_HELP_STRING([--enable-cex100-backend=@<:@yes/no@:>@], [Enable the CEx100 backend (default=no)])], [enable_cex100=$enableval], @@ -465,6 +469,45 @@ AS_IF([test "x$enable_win32" = "xyes"], SUPPORT_WIN32=1 ]) +AS_IF([test "x$enable_mir" = "xyes"], + [ + CLUTTER_BACKENDS="$CLUTTER_BACKENDS mir" + CLUTTER_INPUT_BACKENDS="$CLUTTER_INPUT_BACKENDS mir" + + SUPPORT_MIR=1 + SUPPORT_COGL=1 + + have_cogl_mir=no + SAVED_CFLAGS="${CFLAGS}" + CFLAGS="`$PKG_CONFIG --cflags $CLUTTER_BASE_PC_FILES`" + + # Manually check whether cogl has Mir support, as we can't rely on + # versioning yet. + AC_MSG_CHECKING([for Mir Cogl backend]) + AC_TRY_COMPILE([#include <cogl/cogl.h>], + [ + #ifndef COGL_HAS_EGL_PLATFORM_MIR_SUPPORT + #error "No Mir support in Cogl" + #endif + int main (void) { return 0; } + ], + AC_MSG_RESULT(yes) + have_cogl_mir=yes, + AC_MSG_RESULT(no) + have_cogl_mir=no) + + CFLAGS="${SAVED_CFLAGS}" + + AS_IF([test "x$have_cogl_mir" = "xno"], + [AC_MSG_ERROR([COGL_HAS_EGL_PLATFORM_MIR_SUPPORT not defined but the Mir backend has been explicitly enabled])]) + + PKG_CHECK_EXISTS([mirclient], + [BACKEND_PC_FILES="$BACKEND_PC_FILES mirclient"], + []) + + AC_DEFINE([HAVE_CLUTTER_MIR], [1], [Have the mir client backend]) + ]) + AS_IF([test "x$CLUTTER_BACKENDS" = "x"], [ AC_MSG_ERROR([No backend enabled. You need to enable at least one backend.]) @@ -519,6 +562,7 @@ AM_CONDITIONAL(SUPPORT_OSX, [test "x$SUPPORT_OSX" = "x1"]) AM_CONDITIONAL(SUPPORT_WIN32, [test "x$SUPPORT_WIN32" = "x1"]) AM_CONDITIONAL(SUPPORT_CEX100, [test "x$SUPPORT_CEX100" = "x1"]) AM_CONDITIONAL(SUPPORT_WAYLAND, [test "x$SUPPORT_WAYLAND" = "x1"]) +AM_CONDITIONAL(SUPPORT_MIR, [test "x$SUPPORT_MIR" = "x1"]) AM_CONDITIONAL(USE_COGL, [test "x$SUPPORT_COGL" = "x1"]) AM_CONDITIONAL(USE_TSLIB, [test "x$have_tslib" = "xyes"]) @@ -563,6 +607,10 @@ AS_IF([test "x$SUPPORT_EGL" = "x1"], AS_IF([test "x$SUPPORT_WAYLAND" = "x1"], [CLUTTER_CONFIG_DEFINES="$CLUTTER_CONFIG_DEFINES #define CLUTTER_WINDOWING_WAYLAND \"wayland\""]) +AS_IF([test "x$SUPPORT_MIR" = "x1"], + [CLUTTER_CONFIG_DEFINES="$CLUTTER_CONFIG_DEFINES +#define CLUTTER_WINDOWING_MIR \"mir\" +#define CLUTTER_INPUT_MIR \"mir\""]) AS_IF([test "x$SUPPORT_OSX" = "x1"], [CLUTTER_CONFIG_DEFINES="$CLUTTER_CONFIG_DEFINES #define CLUTTER_WINDOWING_OSX \"osx\" |