aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/xorg-driver/xf86-video-intel/configure-dri.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-graphics/xorg-driver/xf86-video-intel/configure-dri.patch')
-rw-r--r--meta/recipes-graphics/xorg-driver/xf86-video-intel/configure-dri.patch166
1 files changed, 166 insertions, 0 deletions
diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-intel/configure-dri.patch b/meta/recipes-graphics/xorg-driver/xf86-video-intel/configure-dri.patch
new file mode 100644
index 0000000000..7fa9443d93
--- /dev/null
+++ b/meta/recipes-graphics/xorg-driver/xf86-video-intel/configure-dri.patch
@@ -0,0 +1,166 @@
+Add the ability to enable/disable specific versions of the DRI support.
+
+This is the following two commits from master squashed:
+ 7bc669dd4b7e3e5978e95e4131d1f9215afbc041
+ 5a0cb1049c2fa0586708719210a2d2cffa7a4491
+
+Upstream-Status: Backport
+Signed-off-by: Ross Burton <ross.burton@intel.com>
+
+diff --git a/configure.ac b/configure.ac
+index b3b6e8e..bd654f3 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -296,6 +296,21 @@ AC_ARG_ENABLE(dri,
+ [Disable DRI support [[default=auto]]]),
+ [DRI=$enableval],
+ [DRI=auto])
++AC_ARG_ENABLE(dri1,
++ AS_HELP_STRING([--disable-dri1],
++ [Disable DRI1 support [[default=yes]]]),
++ [DRI1=$enableval],
++ [DRI1=yes])
++AC_ARG_ENABLE(dri2,
++ AS_HELP_STRING([--disable-dri2],
++ [Disable DRI2 support [[default=yes]]]),
++ [DRI2=$enableval],
++ [DRI2=yes])
++AC_ARG_ENABLE(dri3,
++ AS_HELP_STRING([--disable-dri3],
++ [Disable DRI3 support [[default=yes]]]),
++ [DRI3=$enableval],
++ [DRI3=yes])
+
+ AC_ARG_ENABLE(xvmc, AS_HELP_STRING([--disable-xvmc],
+ [Disable XvMC support [[default=yes]]]),
+@@ -461,15 +476,15 @@ if test "x$UMS" = "xyes"; then
+ AC_DEFINE(UMS,1,[Assume UMS support])
+ fi
+
+-DRI1=no
++have_dri1=no
+ XORG_DRIVER_CHECK_EXT(XF86DRI, xf86driproto)
+-if test "x$_EXT_CHECK" != "xno" -a "x$DRI" != "xno" -a "x$UMS" = "xyes"; then
+- PKG_CHECK_MODULES(DRI1, [xf86driproto], [DRI1=$DRI], [DRI1=no])
++if test "x$_EXT_CHECK" != "xno" -a "x$DRI" != "xno" -a "x$DRI1" != "xno" -a "x$UMS" = "xyes"; then
++ PKG_CHECK_MODULES(DRI1, [xf86driproto], [have_dri1=$DRI], [have_dri1=no])
+ save_CFLAGS="$CFLAGS"
+ save_CPPFLAGS="$CPPFLAGS"
+ CFLAGS="$CFLAGS $XORG_CFLAGS $DRI1_CFLAGS $DRM_CFLAGS"
+ CPPFLAGS="$CPPFLAGS $XORG_CFLAGS $DRI1_CFLAGS $DRM_CFLAGS"
+- AC_CHECK_HEADERS([dri.h sarea.h dristruct.h], [], [DRI1=no],
++ AC_CHECK_HEADERS([dri.h sarea.h dristruct.h], [], [have_dri1=no],
+ [/* for dri.h */
+ #include <xf86str.h>
+ /* for dristruct.h */
+@@ -486,49 +501,55 @@ if test "x$_EXT_CHECK" != "xno" -a "x$DRI" != "xno" -a "x$UMS" = "xyes"; then
+ fi
+
+ AC_MSG_CHECKING([whether to include DRI1 support])
+-AC_MSG_RESULT([$DRI1])
++AC_MSG_RESULT([$have_dri1])
+
+-AM_CONDITIONAL(DRI1, test "x$DRI1" != "xno")
+-if test "x$DRI1" != "xno"; then
++AM_CONDITIONAL(DRI1, test "x$have_dri1" != "xno")
++if test "x$have_dri1" != "xno"; then
+ AC_DEFINE(HAVE_DRI1,1,[Enable DRI1 driver support])
+ dri_msg="$dri_msg DRI1"
+ else
+ DRI1_CFLAGS=""
+ DRI1_LIBS=""
+
+- if test "x$DRI" = "xyes" -a "x$UMS" = "xyes"; then
++ if test "x$DRI" = "xyes" -a "x$UMS" = "xyes" -a "x$DRI1" != "xno"; then
+ AC_MSG_ERROR([DRI1 requested but prerequisites not found])
+ fi
+ fi
+
+-DRI2=no
+-DRI3=no
++have_dri2=no
++have_dri3=no
+ if test "x$DRI" != "xno"; then
+- PKG_CHECK_MODULES(DRI2, [dri2proto >= 2.6], [DRI2=$DRI], [DRI2=no])
+- dridriverdir=`$PKG_CONFIG --variable=dridriverdir dri`
+- if test "x$dridriverdir" = "x"; then
+- dridriverdir="$libdir/dri"
+- fi
+- AC_DEFINE_DIR(DRI_DRIVER_PATH, dridriverdir, [Default DRI2 driver path])
+ if test "x$DRI2" != "xno"; then
++ PKG_CHECK_MODULES(DRI2, [dri2proto >= 2.6], [have_dri2=$DRI], [have_dri2=no])
++ fi
++ if test "x$have_dri2" != "xno"; then
+ save_CFLAGS=$CFLAGS
+ CFLAGS="$XORG_CFLAGS $DRM_CFLAGS $DRI1_CFLAGS $DRI2_CFLAGS"
+- AC_CHECK_HEADERS([dri2.h], [], [DRI2=no], [
++ AC_CHECK_HEADERS([dri2.h], [], [have_dri2=no], [
+ #include <dixstruct.h>
+ #include <drm.h>
+ ])
+ CFLAGS=$save_CFLAGS
+ fi
+-
+- XORG_DRIVER_CHECK_EXT(DRI3, dri3proto)
+- if test "x$_EXT_CHECK" != "xno"; then
+- PKG_CHECK_MODULES(DRI3, [dri3proto], [DRI3=$DRI], [])
++ if test "x$have_dri2" != "xno"; then
++ dridriverdir=`$PKG_CONFIG --variable=dridriverdir dri`
++ if test "x$dridriverdir" = "x"; then
++ dridriverdir="$libdir/dri"
++ fi
++ AC_DEFINE_DIR(DRI_DRIVER_PATH, dridriverdir, [Default have_dri2 driver path])
+ fi
++
+ if test "x$DRI3" != "xno"; then
++ XORG_DRIVER_CHECK_EXT(DRI3, dri3proto)
++ if test "x$_EXT_CHECK" != "xno"; then
++ PKG_CHECK_MODULES(DRI3, [dri3proto], [have_dri3=$DRI], [])
++ fi
++ fi
++ if test "x$have_dri3" != "xno"; then
+ save_CFLAGS=$CFLAGS
+ CFLAGS="$XORG_CFLAGS $DRI3_CFLAGS"
+- AC_CHECK_DECL(DRI3, [], [DRI3=no], [#include <xorg-server.h>])
+- AC_CHECK_HEADERS([misyncstr.h misyncshm.h], [], [DRI3=no], [
++ AC_CHECK_DECL(DRI3, [], [have_dri3=no], [#include <xorg-server.h>])
++ AC_CHECK_HEADERS([misyncstr.h misyncshm.h], [], [have_dri3=no], [
+ #include <xorg-server.h>
+ #include <xf86str.h>
+ #include <misync.h>
+@@ -538,13 +559,13 @@ if test "x$DRI" != "xno"; then
+ fi
+
+ AC_MSG_CHECKING([whether to include DRI2 support])
+-AM_CONDITIONAL(DRI2, test "x$DRI2" != "xno")
+-AC_MSG_RESULT([$DRI2])
+-if test "x$DRI2" != "xno"; then
++AM_CONDITIONAL(DRI2, test "x$have_dri2" != "xno")
++AC_MSG_RESULT([$have_dri2])
++if test "x$have_dri2" != "xno"; then
+ AC_DEFINE(HAVE_DRI2,1,[Enable DRI2 driver support])
+ dri_msg="$dri_msg DRI2"
+ else
+- if test "x$DRI" = "xyes" -a "x$KMS" = "xyes"; then
++ if test "x$DRI" = "xyes" -a "x$DRI2" != "xno" -a "x$KMS" = "xyes"; then
+ AC_MSG_ERROR([DRI2 requested but prerequisites not found])
+ fi
+
+@@ -553,13 +574,13 @@ else
+ fi
+
+ AC_MSG_CHECKING([whether to include DRI3 support])
+-AM_CONDITIONAL(DRI3, test "x$DRI3" != "xno")
+-AC_MSG_RESULT([$DRI3])
+-if test "x$DRI3" != "xno"; then
++AM_CONDITIONAL(DRI3, test "x$have_dri3" != "xno")
++AC_MSG_RESULT([$have_dri3])
++if test "x$have_dri3" != "xno"; then
+ AC_DEFINE(HAVE_DRI3,1,[Enable DRI3 driver support])
+ dri_msg="$dri_msg DRI3"
+ else
+- if test "x$DRI" = "xyes" -a "x$KMS" = "xyes"; then
++ if test "x$DRI" = "xyes" -a "x$DRI3" != "xno" -a "x$KMS" = "xyes"; then
+ AC_MSG_ERROR([DRI3 requested but prerequisites not found])
+ fi
+ fi