diff --git a/configure.ac b/configure.ac
index b884220132baca8109d2a13a4476f7800e5a31e3..b044c966f782e9caa70b64aee9d1ef00a4231ba8 100644 (file)
--- a/configure.ac
+++ b/configure.ac
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
AC_PREREQ(2.60)
-AC_INIT([libdrm], 2.4.16, [dri-devel@lists.sourceforge.net], libdrm)
+AC_INIT([libdrm], 2.4.19, [dri-devel@lists.sourceforge.net], libdrm)
AC_USE_SYSTEM_EXTENSIONS
AC_CONFIG_SRCDIR([Makefile.am])
AM_INIT_AUTOMAKE([dist-bzip2])
AC_HEADER_STDC
AC_SYS_LARGEFILE
+AC_FUNC_ALLOCA
PKG_CHECK_MODULES(PTHREADSTUBS, pthread-stubs)
AC_SUBST(PTHREADSTUBS_CFLAGS)
[Enable support for using udev instead of mknod (default: disabled)]),
[UDEV=$enableval], [UDEV=no])
+AC_ARG_ENABLE(libkms,
+ AS_HELP_STRING([--disable-libkms],
+ [Disable KMS mm abstraction library (default: enabled)]),
+ [LIBKMS=$enableval], [LIBKMS=yes])
+
AC_ARG_ENABLE(intel,
AS_HELP_STRING([--disable-intel],
[Enable support for intel's KMS API (default: auto)]),
[INTEL=$enableval], [INTEL=auto])
+AC_ARG_ENABLE(radeon,
+ AS_HELP_STRING([--disable-radeon],
+ [Enable support for radeon's KMS API (default: auto)]),
+ [RADEON=$enableval], [RADEON=auto])
+
+AC_ARG_ENABLE(vmwgfx-experimental-api,
+ AS_HELP_STRING([--enable-vmwgfx-experimental-api],
+ [Install vmwgfx's experimental kernel API header (default: disabled)]),
+ [VMWGFX=$enableval], [VMWGFX=no])
+
AC_ARG_ENABLE(nouveau-experimental-api,
AS_HELP_STRING([--enable-nouveau-experimental-api],
[Enable support for nouveau's experimental API (default: disabled)]),
[NOUVEAU=$enableval], [NOUVEAU=no])
-AC_ARG_ENABLE(radeon-experimental-api,
- AS_HELP_STRING([--enable-radeon-experimental-api],
- [Enable support for radeon's KMS API (default: disabled)]),
- [RADEON=$enableval], [RADEON=no])
dnl ===========================================================================
dnl check compiler flags
AC_DEFINE(UDEV, 1, [Have UDEV support])
fi
+AM_CONDITIONAL(HAVE_LIBKMS, [test "x$LIBKMS" = xyes])
+
+AM_CONDITIONAL(HAVE_VMWGFX, [test "x$VMWGFX" = xyes])
+if test "x$VMWGFX" = xyes; then
+ AC_DEFINE(HAVE_VMWGFX, 1, [Have vmwgfx kernel headers])
+fi
+
AM_CONDITIONAL(HAVE_NOUVEAU, [test "x$NOUVEAU" = xyes])
+if test "x$NOUVEAU" = xyes; then
+ AC_DEFINE(HAVE_NOUVEAU, 1, [Have nouveau (nvidia) support])
+fi
AM_CONDITIONAL(HAVE_RADEON, [test "x$RADEON" = xyes])
fi
AM_CONDITIONAL(HAVE_LIBUDEV, [test "x$HAVE_LIBUDEV" = xyes])
-if test "x$INTEL" != "xno"; then
+if test "x$INTEL" != "xno" -o "x$RADEON" != "xno"; then
# Check for atomic intrinsics
AC_CACHE_CHECK([for native atomic primitives], drm_cv_atomic_primitives,
[
AC_CHECK_HEADER([atomic_ops.h], drm_cv_atomic_primitives="libatomic-ops")
fi
+ # atomic functions defined in <atomic.h> & libc on Solaris
+ if test "x$drm_cv_atomic_primitives" = "xnone"; then
+ AC_CHECK_FUNC([atomic_cas_uint],
+ drm_cv_atomic_primitives="Solaris")
+ fi
+
])
if test "x$drm_cv_atomic_primitives" = xIntel; then
- AC_DEFINE(HAVE_INTEL_ATOMIC_PRIMITIVES, 1,
+ AC_DEFINE(HAVE_LIBDRM_ATOMIC_PRIMITIVES, 1,
[Enable if your compiler supports the Intel __sync_* atomic primitives])
fi
if test "x$drm_cv_atomic_primitives" = "xlibatomic-ops"; then
fi
if test "x$drm_cv_atomic_primitives" = "xnone"; then
- if test "x$INTEL" != "xauto"; then
- AC_MSG_ERROR([libdrm_intel depends upon atomic operations, which were not found for your compiler/cpu. Try compiling with -march=native, or install the libatomics-op-dev package, or, failing both of those, disable support for Intel GPUs by passing --disable-intel to ./configure])
- else
- INTEL=no
- fi
+ if test "x$INTEL" != "xauto"; then
+ AC_MSG_ERROR([libdrm_intel depends upon atomic operations, which were not found for your compiler/cpu. Try compiling with -march=native, or install the libatomics-op-dev package, or, failing both of those, disable support for Intel GPUs by passing --disable-intel to ./configure])
+ else
+ AC_MSG_WARN([Disabling libdrm_intel. It depends on atomic operations, which were not found for your compiler/cpu. Try compiling with -march=native, or install the libatomics-op-dev package.])
+ INTEL=no
+ fi
+ if test "x$RADEON" != "xauto"; then
+ AC_MSG_ERROR([libdrm_radeon depends upon atomic operations, which were not found for your compiler/cpu. Try compiling with -march=native, or install the libatomics-op-dev package, or, failing both of those, disable support for Radeon support by passing --disable-radeon to ./configure])
+ else
+ AC_MSG_WARN([Disabling libdrm_radeon. It depends on atomic operations, which were not found for your compiler/cpu. Try compiling with -march=native, or install the libatomics-op-dev package.])
+ RADEON=no
+ fi
+
else
- INTEL=yes
+ if test "x$INTEL" != "xno"; then
+ INTEL=yes
+ fi
+ if test "x$RADEON" != "xno"; then
+ RADEON=yes
+ fi
fi
fi
AC_SUBST(WARN_CFLAGS)
AC_OUTPUT([
Makefile
+ libkms/Makefile
+ libkms/libkms.pc
intel/Makefile
intel/libdrm_intel.pc
radeon/Makefile
tests/Makefile
tests/modeprint/Makefile
tests/modetest/Makefile
+ tests/kmstest/Makefile
include/Makefile
include/drm/Makefile
libdrm.pc])
echo ""
echo "$PACKAGE_STRING will be compiled with:"
echo ""
+echo " libkms $LIBKMS"
echo " Intel API $INTEL"
+echo " vmwgfx API $VMWGFX"
echo " Radeon API $RADEON"
echo " Nouveau API $NOUVEAU"
echo ""