From: Nicolas Boichat Date: Thu, 28 Apr 2016 10:41:38 +0000 (+0800) Subject: configure.ac: Add support for Android builds X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=27d713a004da1918d1c5699b077734eceb0ebd75;p=mesa.git configure.ac: Add support for Android builds Add support for EGL android platform. Also, detect when --host finishes with -android. In that case, we do not set _GNU_SOURCE, and define autoconf symbol HAVE_ANDROID, so that Android-specific workarounds can be applied. Signed-off-by: Nicolas Boichat Reviewed-by: Emil Velikov [Emil Velikov: Rebase on top of HAVE_EGL_PLATFORM_NULL removal] Signed-off-by: Emil Velikov --- diff --git a/configure.ac b/configure.ac index 070bae20dc2..47c138a6277 100644 --- a/configure.ac +++ b/configure.ac @@ -255,7 +255,11 @@ _SAVE_CPPFLAGS="$CPPFLAGS" dnl Compiler macros DEFINES="-D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS" AC_SUBST([DEFINES]) +android=no case "$host_os" in +*-android) + android=yes + ;; linux*|*-gnu*|gnu*) DEFINES="$DEFINES -D_GNU_SOURCE" ;; @@ -267,6 +271,8 @@ cygwin*) ;; esac +AM_CONDITIONAL(HAVE_ANDROID, test "x$android" = xyes) + dnl Add flags for gcc and g++ if test "x$GCC" = xyes; then CFLAGS="$CFLAGS -Wall" @@ -1986,6 +1992,9 @@ for plat in $egl_platforms; do AC_MSG_ERROR([EGL platform surfaceless requires libdrm >= $LIBDRM_REQUIRED]) ;; + android) + ;; + *) AC_MSG_ERROR([EGL platform '$plat' does not exist]) ;; @@ -2010,6 +2019,7 @@ AM_CONDITIONAL(HAVE_PLATFORM_X11, echo "$egl_platforms" | grep -q 'x11') AM_CONDITIONAL(HAVE_PLATFORM_WAYLAND, echo "$egl_platforms" | grep -q 'wayland') AM_CONDITIONAL(HAVE_EGL_PLATFORM_DRM, echo "$egl_platforms" | grep -q 'drm') AM_CONDITIONAL(HAVE_EGL_PLATFORM_SURFACELESS, echo "$egl_platforms" | grep -q 'surfaceless') +AM_CONDITIONAL(HAVE_EGL_PLATFORM_ANDROID, echo "$egl_platforms" | grep -q 'android') AM_CONDITIONAL(HAVE_EGL_DRIVER_DRI2, test "x$HAVE_EGL_DRIVER_DRI2" != "x") diff --git a/src/egl/Makefile.am b/src/egl/Makefile.am index 407cc69b53e..95ee6ccc496 100644 --- a/src/egl/Makefile.am +++ b/src/egl/Makefile.am @@ -84,6 +84,11 @@ AM_CFLAGS += -DHAVE_SURFACELESS_PLATFORM dri2_backend_FILES += drivers/dri2/platform_surfaceless.c endif +if HAVE_EGL_PLATFORM_ANDROID +AM_CFLAGS += -DHAVE_ANDROID_PLATFORM +dri2_backend_FILES += drivers/dri2/platform_android.c +endif + if HAVE_EGL_DRIVER_DRI2 AM_CFLAGS += \ -I$(top_srcdir)/src/loader \