aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/xorg-driver/xf86-video-intel/configure-dri.patch
blob: 7fa9443d9373a4dc5622495a7e02c14ee03738e7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
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