From b628fdd6e7ab02e2ad002b155d7842260459fccc Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Wed, 7 Dec 2016 13:24:59 +0000 Subject: [PATCH] configure: factor out commom egl/gbm checks Signed-off-by: Emil Velikov --- configure.ac | 47 ++++++++++++++++++----------------------------- 1 file changed, 18 insertions(+), 29 deletions(-) diff --git a/configure.ac b/configure.ac index e162f9b003c..1d719be352f 100644 --- a/configure.ac +++ b/configure.ac @@ -1970,26 +1970,27 @@ AC_SUBST([OSMESA_LIB_DEPS]) AC_SUBST([OSMESA_PC_REQ]) AC_SUBST([OSMESA_PC_LIB_PRIV]) -dnl -dnl gbm configuration -dnl -if test "x$enable_gbm" = xyes; then +require_dri_shared_libs_and_glapi() { if test "x$enable_static" = xyes; then - AC_MSG_ERROR([gbm cannot be build as static library]) + AC_MSG_ERROR([$1 cannot be build as static library]) fi - if test "x$enable_dri" = xyes; then - if test "x$enable_shared_glapi" = xno; then - AC_MSG_ERROR([gbm_dri requires --enable-shared-glapi]) - fi - else - # Strictly speaking libgbm does not require --enable-dri, although - # both of its backends do. Thus one can build libgbm without any - # backends if --disable-dri is set. - # To avoid unnecessary complexity of checking if at least one backend - # is available when building, just mandate --enable-dri. - AC_MSG_ERROR([gbm requires --enable-dri]) + if test "x$enable_dri" != xyes; then + # There is only a single backend which won't be build/used otherwise. + # XXX: Revisit this as the egl/haiku is a thing. + AC_MSG_ERROR([$1 requires --enable-dri]) + fi + + if test "x$enable_shared_glapi" != xyes; then + AC_MSG_ERROR([$1 requires --enable-shared-glapi]) fi +} + +dnl +dnl gbm configuration +dnl +if test "x$enable_gbm" = xyes; then + require_dri_shared_libs_and_glapi "gbm" fi AM_CONDITIONAL(HAVE_GBM, test "x$enable_gbm" = xyes) # FINISHME: GBM has a number of dependencies which we should add below @@ -2007,19 +2008,7 @@ if test "x$enable_egl" = xyes; then AC_CHECK_FUNC(mincore, [DEFINES="$DEFINES -DHAVE_MINCORE"]) - if test "x$enable_static" = xyes; then - AC_MSG_ERROR([egl cannot be build as static library]) - fi - - if test "x$enable_dri" = xyes; then - if test "x$enable_shared_glapi" = xno; then - AC_MSG_ERROR([egl_dri requires --enable-shared-glapi]) - fi - else - # Avoid building an "empty" libEGL. Drop/update this - # when other backends (haiku?) come along. - AC_MSG_ERROR([egl requires --enable-dri]) - fi + require_dri_shared_libs_and_glapi "egl" fi AM_CONDITIONAL(HAVE_EGL, test "x$enable_egl" = xyes) AC_SUBST([EGL_LIB_DEPS]) -- 2.30.2