OSDN Git Service

Merge remote-tracking branch 'origin/master' into marshmallow-x86
[android-x86/external-libdrm.git] / configure.ac
index a04ce87..e5158b7 100644 (file)
@@ -20,7 +20,7 @@
 
 AC_PREREQ([2.63])
 AC_INIT([libdrm],
-        [2.4.68],
+        [2.4.80],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=DRI],
         [libdrm])
 
@@ -28,6 +28,7 @@ AC_CONFIG_HEADERS([config.h])
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_AUX_DIR([build-aux])
+PKG_PROG_PKG_CONFIG
 
 # Require xorg-macros minimum of 1.12 for XORG_WITH_XSLTPROC
 m4_ifndef([XORG_MACROS_VERSION],
@@ -53,16 +54,29 @@ AC_USE_SYSTEM_EXTENSIONS
 AC_SYS_LARGEFILE
 AC_FUNC_ALLOCA
 
-AC_CHECK_HEADERS([sys/mkdev.h sys/sysctl.h sys/select.h])
+AC_HEADER_MAJOR
+AC_CHECK_HEADERS([sys/sysctl.h sys/select.h])
 
 # Initialize libtool
 LT_PREREQ([2.2])
 LT_INIT([disable-static])
 
-
-PKG_CHECK_MODULES(PTHREADSTUBS, pthread-stubs)
-AC_SUBST(PTHREADSTUBS_CFLAGS)
-AC_SUBST(PTHREADSTUBS_LIBS)
+dnl pthread-stubs is mandatory on BSD platforms, due to the nature of the
+dnl project. Even then there's a notable issue as described in the project README
+case "$host_os" in
+linux* | cygwin* | darwin* | solaris* | *-gnu* | gnu*)
+    pthread_stubs_possible="no"
+    ;;
+* )
+    pthread_stubs_possible="yes"
+    ;;
+esac
+
+if test "x$pthread_stubs_possible" = xyes; then
+    PKG_CHECK_MODULES(PTHREADSTUBS, pthread-stubs >= 0.4)
+    AC_SUBST(PTHREADSTUBS_CFLAGS)
+    AC_SUBST(PTHREADSTUBS_LIBS)
+fi
 
 pkgconfigdir=${libdir}/pkgconfig
 AC_SUBST(pkgconfigdir)
@@ -131,6 +145,11 @@ AC_ARG_ENABLE(vc4,
              [Enable support for vc4's API (default: auto, enabled on arm)]),
              [VC4=$enableval], [VC4=auto])
 
+AC_ARG_ENABLE(etnaviv-experimental-api,
+             AS_HELP_STRING([--enable-etnaviv-experimental-api],
+             [Enable support for etnaviv's experimental API (default: disabled)]),
+             [ETNAVIV=$enableval], [ETNAVIV=no])
+
 AC_ARG_ENABLE(install-test-programs,
                  AS_HELP_STRING([--enable-install-test-programs],
                  [Install test programs (default: no)]),
@@ -273,6 +292,9 @@ if test "x$drm_cv_atomic_primitives" = "xnone"; then
 
        LIBDRM_ATOMICS_NOT_FOUND_MSG($TEGRA, tegra, NVIDIA Tegra, tegra-experimental-api)
        TEGRA=no
+
+       LIBDRM_ATOMICS_NOT_FOUND_MSG($ETNAVIV, etnaviv, Vivante, etnaviv-experimental-api)
+       ETNAVIV=no
 else
        if test "x$INTEL" = xauto; then
                case $host_cpu in
@@ -412,6 +434,11 @@ if test "x$VC4" = xyes; then
        AC_DEFINE(HAVE_VC4, 1, [Have VC4 support])
 fi
 
+AM_CONDITIONAL(HAVE_ETNAVIV, [test "x$ETNAVIV" = xyes])
+if test "x$ETNAVIV" = xyes; then
+       AC_DEFINE(HAVE_ETNAVIV, 1, [Have etnaviv support])
+fi
+
 AM_CONDITIONAL(HAVE_INSTALL_TESTS, [test "x$INSTALL_TESTS" = xyes])
 if test "x$INSTALL_TESTS" = xyes; then
        AC_DEFINE(HAVE_INSTALL_TESTS, 1, [Install test programs])
@@ -437,13 +464,6 @@ fi
 AC_MSG_RESULT([$CAIRO])
 AM_CONDITIONAL(HAVE_CAIRO, [test "x$CAIRO" = xyes])
 
-# For enumerating devices in test case
-PKG_CHECK_MODULES(LIBUDEV, libudev, [HAVE_LIBUDEV=yes], [HAVE_LIBUDEV=no])
-if test "x$HAVE_LIBUDEV" = xyes; then
-       AC_DEFINE(HAVE_LIBUDEV, 1, [Have libudev support])
-fi
-AM_CONDITIONAL(HAVE_LIBUDEV, [test "x$HAVE_LIBUDEV" = xyes])
-
 # xsltproc for docbook manpages
 AC_ARG_ENABLE([manpages],
               AS_HELP_STRING([--enable-manpages], [enable manpages @<:@default=auto@:>@]),
@@ -523,6 +543,8 @@ AC_CONFIG_FILES([
        tegra/libdrm_tegra.pc
        vc4/Makefile
        vc4/libdrm_vc4.pc
+       etnaviv/Makefile
+       etnaviv/libdrm_etnaviv.pc
        tests/Makefile
        tests/modeprint/Makefile
        tests/modetest/Makefile
@@ -535,6 +557,7 @@ AC_CONFIG_FILES([
        tests/exynos/Makefile
        tests/tegra/Makefile
        tests/nouveau/Makefile
+       tests/etnaviv/Makefile
        tests/util/Makefile
        man/Makefile
        libdrm.pc])
@@ -554,4 +577,5 @@ echo "  EXYNOS API     $EXYNOS"
 echo "  Freedreno API  $FREEDRENO (kgsl: $FREEDRENO_KGSL)"
 echo "  Tegra API      $TEGRA"
 echo "  VC4 API        $VC4"
+echo "  Etnaviv API    $ETNAVIV"
 echo ""