mirror of
https://git.yoctoproject.org/poky
synced 2026-04-18 12:32:12 +02:00
xf86-video-intel: upgrade to 2.99.912
Drop a backported patch that has been applied. Apply a patch from upstream to add enable/disable options for each DRI level, as .912 won't build if the X server doesn't support DRI3. Add PACKAGECONFIG options for each DRI level and enable DRI1 and DRI2. Add a PACKAGECONFIG option for the client tools, disabled by default as they're only useful on machines with hybrid discrete/integrated GPUs. (From OE-Core rev: ac029cf6a228a00956978f186aef2c0f05bb8731) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
eca8a56a4e
commit
7b455c5c60
@@ -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
|
||||
@@ -9,23 +9,28 @@ Infrastructure (DRI)."
|
||||
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=8730ad58d11c7bbad9a7066d69f7808e"
|
||||
|
||||
SRC_URI += "file://configure-dri.patch"
|
||||
|
||||
SRC_URI[md5sum] = "88d1a884f9b7bd07bf0755cfa34052d4"
|
||||
SRC_URI[sha256sum] = "7c8ffc492d59f34cac64093deb70717b4d9223cf416ecc6fa016ab2e8bde9501"
|
||||
|
||||
DEPENDS += "virtual/libx11 drm libpciaccess pixman"
|
||||
|
||||
SRC_URI += "file://compat-api-Map-changes-of-DamageUnregister-API-in-1..patch \
|
||||
"
|
||||
PACKAGECONFIG ??= "sna udev ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'dri dri1 dri2', '', d)}"
|
||||
|
||||
PACKAGECONFIG ??= "sna udev ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'dri', '', d)}"
|
||||
|
||||
PACKAGECONFIG[dri] = "--enable-dri,--disable-dri,xf86driproto dri2proto"
|
||||
PACKAGECONFIG[dri] = "--enable-dri,--disable-dri"
|
||||
PACKAGECONFIG[dri1] = "--enable-dri1,--disable-dri1,xf86driproto"
|
||||
PACKAGECONFIG[dri2] = "--enable-dri2,--disable-dri2,dri2proto"
|
||||
PACKAGECONFIG[dri3] = "--enable-dri3,--disable-dri3,dri3proto"
|
||||
PACKAGECONFIG[sna] = "--enable-sna,--disable-sna"
|
||||
PACKAGECONFIG[uxa] = "--enable-uxa,--disable-uxa"
|
||||
PACKAGECONFIG[udev] = "--enable-udev,--disable-udev,udev"
|
||||
PACKAGECONFIG[xvmc] = "--enable-xvmc,--disable-xvmc,libxvmc"
|
||||
PACKAGECONFIG[tools] = "--enable-tools,--disable-tools,libxinerama libxrandr libxdamage libxfixes libxcursor libxtst libxext libxrender"
|
||||
|
||||
# --enable-kms-only option is required by ROOTLESS_X
|
||||
EXTRA_OECONF += '${@base_conditional( "ROOTLESS_X", "1", " --enable-kms-only", "", d )}'
|
||||
|
||||
COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
|
||||
|
||||
SRC_URI[md5sum] = "a9a5c2c15766c06a024381efe0d724bb"
|
||||
SRC_URI[sha256sum] = "203d46064449da0e23a111418dfb189422ba96ea08707167c8dee463e2d745b1"
|
||||
FILES_${PN} += "${datadir}/polkit-1"
|
||||
Reference in New Issue
Block a user